skip to main content
10.1145/2188286.2188319acmconferencesArticle/Chapter ViewAbstractPublication PagesicpeConference Proceedingsconference-collections
research-article

An industrial case study of performance and cost design space exploration

Published:22 April 2012Publication History

ABSTRACT

Determining the trade-off between performance and costs of a distributed software system is important as it enables fulfilling performance requirements in a cost-efficient way. The large amount of design alternatives for such systems often leads software architects to select a suboptimal solution, which may either waste resources or cannot cope with future workloads. Recently, several approaches have appeared to assist software architects with this design task. In this paper, we present a case study applying one of these approaches, i.e. PerOpteryx, to explore the design space of an existing industrial distributed software system from ABB. To facilitate the design exploration, we created a highly detailed performance and cost model, which was instrumental in determining a cost-efficient architecture solution using an evolutionary algorithm. The case study demonstrates the capabilities of various modern performance modeling tools and a design space exploration tool in an industrial setting,provides lessons learned, and helps other software architects in solving similar problems.

References

  1. ArgoSPE plug-in for ArgoUML. argospe.tigris.org/.Google ScholarGoogle Scholar
  2. Core Scenario Model. www.sce.carleton.ca/rads/puma/.Google ScholarGoogle Scholar
  3. Java Modelling Tools. jmt.sourceforge.net/.Google ScholarGoogle Scholar
  4. KlaperSuite. klaper.sourceforge.net/.Google ScholarGoogle Scholar
  5. Layered Queueing Network Solver software package. www.sce.carleton.ca/rads/lqns/.Google ScholarGoogle Scholar
  6. Möbius tool. www.mobius.illinois.edu/.Google ScholarGoogle Scholar
  7. Oris Tool. www.stlab.dsi.unifi.it/oris/.Google ScholarGoogle Scholar
  8. Palladio Software Architecture Simulator. www.palladio-simulator.com/.Google ScholarGoogle Scholar
  9. PEPA Tools. www.dcs.ed.ac.uk/pepa/tools/.Google ScholarGoogle Scholar
  10. PRISM probabilistic model checker. www.prismmodelchecker.org/.Google ScholarGoogle Scholar
  11. QPME - Queueing Petri net Modeling Environment. descartes.ipd.kit.edu/projects/qpme/.Google ScholarGoogle Scholar
  12. SHARPE. people.ee.duke.edu/~kst/software_packages.html.Google ScholarGoogle Scholar
  13. SPE-ED Performance Modeling Tool. www.perfeng.com/sped.htm.Google ScholarGoogle Scholar
  14. TwoTowers tool. www.sti.uniurb.it/bernardo/twotowers/.Google ScholarGoogle Scholar
  15. GreatSPN - GRaphical Editor and Analyzer for Timed and Stochastic Petri Nets. www.di.unito.it/~greatspn, 2008.Google ScholarGoogle Scholar
  16. Dynatrace - Application Performance Management and Monitoring. www.dynatrace.com, 2011.Google ScholarGoogle Scholar
  17. Neotys Neoload Load Testing Tool. www.neotys.com/product/overview-neoload.html, 2011.Google ScholarGoogle Scholar
  18. Sawmill - Universal log file analysis tool. www.sawmill.net, 2011.Google ScholarGoogle Scholar
  19. M. L. Abbott and M. T. Fisher. The art of scalability. Addison-Wesley, 2009.Google ScholarGoogle Scholar
  20. A. Aleti, S. Bjornander, L. Grunske, and I. Meedeniya. Archeopterix: An extendable tool for architecture optimization of AADL models. Proc. of the ICSE Workshop on MOMPES, pages 61--71, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. S. Balsamo, A. Di Marco, P. Inverardi, and M. Simeoni. Model-based performance prediction in software development: a survey. IEEE Trans. on SE, 30(5):295--310, May 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. C. A. Coello Coello, C. Dhaenens, and L. Jourdan. Multi-objective combinatorial optimization: Problematic and context. In Advances in Multi-Objective Nature Inspired Computing, volume 272 of Studies in Computational Intelligence, pages 1--21. Springer, 2010.Google ScholarGoogle ScholarCross RefCross Ref
  23. T. de Gooijer. Performance Modeling of ASP.Net Web Service Applications: an Industrial Case Study. Master's thesis, Mälardalen University, Västerå s, Sweden, 2011.Google ScholarGoogle Scholar
  24. K. Deb, S. Agrawal, A. Pratap, and T. Meyarivan. A fast elitist non-dominated sorting genetic algorithm for multi-objective optimization: NSGA-II. In Parallel Problem Solving from Nature PPSN VI, volume 1917/2000, pages 849--858. Springer, 2000. Google ScholarGoogle Scholar
  25. A. Díaz Pace, H. Kim, L. Bass, P. Bianco, and F. Bachmann. Integrating quality-attribute reasoning frameworks in the archE design assistant. In Proc. 4th Int. Conf. on the Quality of Software-Architectures (QoSA 2008), volume 5281, pages 171--188, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. G. Franks, T. Omari, C. M. Woodside, O. Das, and S. Derisavi. Enhanced modeling and solution of layered queueing networks. IEEE Trans. on SE, 35(2):148--161, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. N. Huber, S. Becker, C. Rathfelder, J. Schweflinghaus, and R. Reussner. Performance modeling in industry: a case study on storage virtualization. In Proc. of ICSE'10, pages 1--10. ACM, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Y. Jin, A. Tang, J. Han, and Y. Liu. Performance Evaluation and Prediction for Legacy Information Systems. In Proc. of ICSE'07, pages 540--549. Ieee, May 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. S. Kounev. Performance Modeling and Evaluation of Distributed Component-Based Systems Using Queueing Petri Nets. IEEE Trans. on SE, 32(7):486--502, July 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. A. Koziolek, H. Koziolek, and R. Reussner. PerOpteryx: Automated Application of Tactics in Multi-Objective Software Architecture Optimization. In Proc. 7th Int. Conf. on the Quality of Software Architectures (QoSA'11), pages 33--42. ACM, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. A. Koziolek and R. Reussner. Towards a generic quality optimisation framework for component-based system models. In Proc. 14th Int. ACM Sigsoft Symposium on Component-based Software Engineering (CBSE'11), pages 103--108. ACM, June 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. H. Koziolek. Performance evaluation of component-based software systems: A survey. Performance Evaluation, 67(8):634--658, Aug. 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. H. Koziolek, B. Schlich, C. Bilich, R. Weiss, S. Becker, K. Krogmann, M. Trifu, R. Mirandola, and A. Koziolek. An Industrial Case Study on Quality Impact Prediction for Evolving Service-Oriented Software. In Proc. of ICSE'11, SEIP Track. ACM, May 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. A. Koziolek (Martens), H. Koziolek, S. Becker, and R. Reussner. Automatically improve software architecture models for performance, reliability, and cost using evolutionary algorithms. Proceedings of ICPE'10, pages 105--116, January 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. C. Letner and R. Gimarc. A Methodology for Predicting the Scalability of Distributed Production Systems. In CMG Conference, volume 1, page 223. Computer Measurement Group; 1997, 2005.Google ScholarGoogle Scholar
  36. V. Liu, I. Gorton, and A. Fekete. Design-level performance prediction of component-based applications. IEEE Trans. on SE, 31(11):928--941, Nov. 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. D. A. Menascé, J. M. Ewing, H. Gomaa, S. Malex, and J. a. P. Sousa. A framework for utility-based service oriented design in SASSY. In Proceedings of ICPE'10, pages 27--36. ACM, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. S. T. Redwine JR and W. E. Riddle. Software Technology Maturation. In Proc. of ICSE'85, pages 189--200. IEEE, 1985. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. C. U. Smith and L. G. Williams. Performance Solutions. Addison-Wesley, 2002.Google ScholarGoogle Scholar
  40. J. Xu. Rule-based automatic software performance diagnosis and improvement. Performance Evaluation, 67(8):585--611, Aug. 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. An industrial case study of performance and cost design space exploration

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in
            • Published in

              cover image ACM Conferences
              ICPE '12: Proceedings of the 3rd ACM/SPEC International Conference on Performance Engineering
              April 2012
              362 pages
              ISBN:9781450312028
              DOI:10.1145/2188286

              Copyright © 2012 ACM

              Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

              Publisher

              Association for Computing Machinery

              New York, NY, United States

              Publication History

              • Published: 22 April 2012

              Permissions

              Request permissions about this article.

              Request Permissions

              Check for updates

              Qualifiers

              • research-article

              Acceptance Rates

              Overall Acceptance Rate252of851submissions,30%

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader