Model-Based Techniques for Performance Engineering of Business Information Systems

  • Samuel Kounev
  • Nikolaus Huber
  • Simon Spinner
  • Fabian Brosig
Part of the Lecture Notes in Business Information Processing book series (LNBIP, volume 109)

Abstract

With the increasing adoption of virtualization and the transition towards Cloud Computing platforms, modern business information systems are becoming increasingly complex and dynamic. This raises the challenge of guaranteeing system performance and scalability while at the same time ensuring efficient resource usage. In this paper, we present a historical perspective on the evolution of model-based performance engineering techniques for business information systems focusing on the major developments over the past several decades that have shaped the field. We survey the state-of-the-art on performance modeling and management approaches discussing the ongoing efforts in the community to increasingly bridge the gap between high-level business services and low level performance models. Finally, we wrap up with an outlook on the emergence of self-aware systems engineering as a new research area at the intersection of several computer science disciplines.

Keywords

business information systems performance scalability predictive modeling simulation 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Computing missing service demand parameters for performance models. In: CMG 2008, pp. 241–248 (2008)Google Scholar
  2. 2.
    Banks, J., Carson, J.S., Nelson, B.L., Nicol, D.M.: Discrete-Event System Simulation, 3rd edn. Prentice Hall, Upper Saddle River (2001)Google Scholar
  3. 3.
    Bard, Y., Shatzoff, M.: Statistical methods in computer performance analysis. Current Trends in Programming Methodology, III (1978)Google Scholar
  4. 4.
    Bause, F.: Queueing Petri Nets - A formalism for the combined qualitative and quantitative analysis of systems. In: Proceedings of the 5th International Workshop on Petri Nets and Performance Models, Toulouse, France, October 19-22 (1993)Google Scholar
  5. 5.
    Bause, F., Kritzinger, F.: Stochastic Petri Nets - An Introduction to the Theory, 2nd edn. Vieweg Verlag (2002)Google Scholar
  6. 6.
    Becker, S., Koziolek, H., Reussner, R.: The Palladio component model for model-driven performance prediction. Journal of Syst. and Softw. 82, 3–22 (2009)CrossRefGoogle Scholar
  7. 7.
    Bernardi, S., Donatelli, S., Merseguer, J.: From UML sequence diagrams and statecharts to analysable petri net models. In: Proc. on WOSP 2002, pp. 35–45 (2002)Google Scholar
  8. 8.
    Bertolino, A., Mirandola, R.: CB-SPE Tool: Putting Component-Based Performance Engineering into Practice. In: Crnković, I., Stafford, J.A., Schmidt, H.W., Wallnau, K. (eds.) CBSE 2004. LNCS, vol. 3054, pp. 233–248. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  9. 9.
    Bolch, G., Greiner, S., Meer, H.D., Trivedi, K.S.: Queueing Networks and Markov Chains: Modeling and Performance Evaluation with Computer Science Applications, 2nd edn. John Wiley & Sons, Inc. (April 2006)Google Scholar
  10. 10.
    Bondarev, E., de With, P., Chaudron, M., Muskens, J.: Modelling of input-parameter dependency for performance predictions of component-based embedded systems. In: Proc. on EUROMICRO 2005, pp. 36–43 (2005)Google Scholar
  11. 11.
    Bondarev, E., Muskens, J., de With, P., Chaudron, M., Lukkien, J.: Predicting real-time properties of component assemblies: a scenario-simulation approach. In: Proc. of the 30th Euromicro Conference, pp. 40–47 (2004)Google Scholar
  12. 12.
    Brosig, F., Huber, N., Kounev, S.: Automated Extraction of Architecture-Level Performance Models of Distributed Component-Based Systems. In: 26th IEEE/ACM International Conference On Automated Software Engineering (ASE 2011), Oread, Lawrence, Kansas (November 2011)Google Scholar
  13. 13.
    Courtois, M., Woodside, M.: Using regression splines for software performance analysis. In: Proceedings of the International Workshop on Software and Performance (2000)Google Scholar
  14. 14.
    Descartes Research Group (December 2011), http://www.descartes-research.net
  15. 15.
    Eskenazi, E., Fioukov, A., Hammer, D.: Performance Prediction for Component Compositions. In: Crnković, I., Stafford, J.A., Schmidt, H.W., Wallnau, K. (eds.) CBSE 2004. LNCS, vol. 3054, pp. 280–293. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  16. 16.
    Gomaa, H., Menascé, D.: Performance Engineering of Component-Based Distributed Software Systems. In: Dumke, R.R., Rautenstrauch, C., Schmietendorf, A., Scholz, A. (eds.) WOSP 2000 and GWPESD 2000. LNCS, vol. 2047, pp. 40–55. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  17. 17.
    Grassi, V., Mirandola, R., Sabetta, A.: Filling the gap between design and performance/reliability models of component-based systems: A model-driven approach. Journal of Systems and Software 80(4), 528–558 (2007)CrossRefGoogle Scholar
  18. 18.
    Gu, G.P., Petriu, D.C.: XSLT transformation from UML models to LQN performance models. In: Proc. on WOSP 2002, pp. 227–234 (2002)Google Scholar
  19. 19.
    Henss, J.: Performance prediction for highly distributed systems. In: Proc. on WCOP 2010, vol. 14, pp. 39–46. Karlsruhe Institue of Technology (2010)Google Scholar
  20. 20.
    Hissam, S., Moreno, G., Stafford, J., Wallnau, K.: Packaging Predictable Assembly. In: Bishop, J.M. (ed.) CD 2002. LNCS, vol. 2370, pp. 108–124. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  21. 21.
    Hrischuk, C.E., Woodside, M., Rolia, J.A., Iversen, R.: Trace-Based Load Characterization for Generating Performance Software Models. IEEE Trans. on Softw. Eng. (1999)Google Scholar
  22. 22.
    Israr, T., Woodside, M., Franks, G.: Interaction tree algorithms to extract effective architecture and layered performance models from traces. J. Syst. Softw. (2007)Google Scholar
  23. 23.
    Kounev, S.: Performance Engineering of Distributed Component-Based Systems - Benchmarking, Modeling and Performance Prediction. PhD Thesis. Shaker Verlag (December 2005)Google Scholar
  24. 24.
    Kounev, S.: Performance Modeling and Evaluation of Distributed Component-Based Systems using Queueing Petri Nets. IEEE Transactions on Software Engineering 32(7), 486–502 (2006)CrossRefGoogle Scholar
  25. 25.
    Kounev, S.: Software Performance Evaluation. In: Wiley Encyclopedia of Computer Science and Engineering, Wiley-Interscience, John Wiley & Sons Inc. (September 2008) ISBN-10: 0471383937, ISBN-13: 978-0471383932Google Scholar
  26. 26.
    Kounev, S.: Self-Aware Software and Systems Engineering: A Vision and Research Roadmap. GI Softwaretechnik-Trends 31(4) (November 2011)Google Scholar
  27. 27.
    Kounev, S., Brosig, F., Huber, N., Reussner, R.: Towards self-aware performance and resource management in modern service-oriented systems. In: Proc. of the 7th IEEE Intl. Conf. on Services Computing (SCC 2010). IEEE Computer Society (2010)Google Scholar
  28. 28.
    Kounev, S., Buchmann, A.: Performance Modelling of Distributed E-Business Applications using Queuing Petri Nets. In: Proceedings of the 2003 IEEE International Symposium on Performance Analysis of Systems and Software (2003)Google Scholar
  29. 29.
    Kounev, S., Buchmann, A.: SimQPN - a tool and methodology for analyzing queueing Petri net models by means of simulation. Performance Evaluation 63(4-5), 364–394 (2006)CrossRefGoogle Scholar
  30. 30.
    Koziolek, H.: Parameter dependencies for reusable performance specifications of software components. PhD thesis, University of Karlsruhe, TH (2008)Google Scholar
  31. 31.
    Koziolek, H.: Performance evaluation of component-based software systems: A survey. Performance Evaluation 67(8), 634–658 (2009)CrossRefGoogle Scholar
  32. 32.
    Koziolek, H., Reussner, R.: A Model Transformation from the Palladio Component Model to Layered Queueing Networks. In: Kounev, S., Gorton, I., Sachs, K. (eds.) SIPEW 2008. LNCS, vol. 5119, pp. 58–78. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  33. 33.
    Kumar, D., Tantawi, A., Zhang, L.: Real-time performance modeling for adaptive software systems. In: VALUETOOLS 2009: Proceedings of the Fourth International ICST Conference on Performance Evaluation Methodologies and Tools, pp. 1–10. ICST (Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering), Brussels (2009)Google Scholar
  34. 34.
    Law, A., Kelton, D.W.: Simulation Modeling and Analysis, 3rd edn. McGraw Hill Companies, Inc. (2000)Google Scholar
  35. 35.
    Liu, Z., Wynter, L., Xia, C.H., Zhang, F.: Parameter inference of queueing models for IT systems using end-to-end measurements. Performance Evaluation 63(1), 36–60 (2006)CrossRefGoogle Scholar
  36. 36.
    Lu, L., Zhang, H., Jiang, G., Chen, H., Yoshihira, K., Smirni, E.: Untangling mixed information to calibrate resource utilization in virtual machines. In: Proceedings of the 8th ACM International Conference on Autonomic Computing, ICAC 2011, pp. 151–160. ACM, New York (2011)Google Scholar
  37. 37.
    MacNair, E.A.: An introduction to the Research Queueing Package. In: WSC 1985: Proceedings of the 17th Conference on Winter Simulation, pp. 257–262. ACM Press, New York (1985)CrossRefGoogle Scholar
  38. 38.
    Di Marco, A., Inverardi, P.: Compositional generation of software architecture performance QN models. In: Working IEEE/IFIP Conf. on Software Architecture, p. 37 (2004)Google Scholar
  39. 39.
    Di Marco, A., Mirandola, R.: Model Transformation in Software Performance Engineering. In: Hofmeister, C., Crnković, I., Reussner, R. (eds.) QoSA 2006. LNCS, vol. 4214, pp. 95–110. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  40. 40.
    Marzolla, M., Balsamo, S.: UML-PSI: The UML performance simulator. Quantitative Eval. of Syst., 340–341 (2004)Google Scholar
  41. 41.
    Meier, P., Kounev, S., Koziolek, H.: Automated Transformation of Palladio Component Models to Queueing Petri Nets. In: 19th IEEE/ACM International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems (MASCOTS 2011), Singapore, July 25-27 (2011)Google Scholar
  42. 42.
    Menascé, D., Almeida, V.: Capacity Planning for Web Performance: Metrics, Models and Methods. Prentice Hall, Upper Saddle River (1998)Google Scholar
  43. 43.
    Menascé, D., Almeida, V.: Scaling for E-Business - Technologies, Models, Performance and Capacity Planning. Prentice Hall, Upper Saddle River (2000)Google Scholar
  44. 44.
    Menascé, D., Almeida, V., Fonseca, R., Mendes, M.: A Methodology for Workload Characterization of E-commerce Sites. In: Proceedings of the 1st ACM Conference on Electronic Commerce, Denver, Colorado, United States, pp. 119–128 (November 1999)Google Scholar
  45. 45.
    Menascé, D.A., Almeida, V., Dowdy, L.W.: Capacity Planning and Performance Modeling - From Mainframes to Client-Server Systems. Prentice Hall, Englewood Cliffs (1994)Google Scholar
  46. 46.
    Menascé, D.A., Almeida, V., Dowdy, L.W.: Performance by Design. Prentice Hall (2004)Google Scholar
  47. 47.
    Menascé, D.A., Gomaa, H.: A Method for Desigh and Performance Modeling of Client/Server Systems. IEEE Transactions on Software Engineering 26(11) (November 2000)Google Scholar
  48. 48.
    Mohr, J., Penansky, S.: A forecasting oriented workload characterization methodology. CMG Transactions 36 (June 1982)Google Scholar
  49. 49.
    Pacifici, G., Segmuller, W., Spreitzer, M., Tantawi, A.: CPU demand for web serving: Measurement analysis and dynamic estimation. Performance Evaluation 65(6-7), 531–553 (2008)CrossRefGoogle Scholar
  50. 50.
    Petriu, D., Woodside, M.: An intermediate metamodel with scenarios and resources for generating performance models from UML designs. Software and Systems Modeling (SoSyM) 6(2), 163–184 (2007)CrossRefGoogle Scholar
  51. 51.
    Rolia, J., Vetland, V.: Parameter estimation for performance models of distributed application systems. In: CASCON 1995: Proceedings of the 1995 Conference of the Centre for Advanced Studies on Collaborative Research, p. 54. IBM Press (1995)Google Scholar
  52. 52.
    Sitaraman, M., Kulczycki, G., Krone, J., Ogden, W.F., Reddy, A.L.N.: Performance specification of software components. SIGSOFT Softw. Eng. Notes 26(3), 3–10 (2001)CrossRefGoogle Scholar
  53. 53.
    Smith, C.U.: Performance Engineering of Software Systems. Addison-Wesley Longman Publishing Co., Inc., Boston (1990)Google Scholar
  54. 54.
    Smith, C.U., Lladó, C.M., Cortellessa, V., Di Marco, A., Williams, L.G.: From UML models to software performance results: an SPE process based on XML interchange formats. In: WOSP 2005: Proceedings of the 5th International Workshop on Software and Performance, pp. 87–98. ACM Press, New York (2005)CrossRefGoogle Scholar
  55. 55.
    Smith, C.U., Williams, L.G.: Performance Solutions - A Practical Guide to Creating Responsive, Scalable Software. Addison-Wesley (2002)Google Scholar
  56. 56.
    Tribastone, M., Gilmore, S.: Automatic extraction of PEPA performance models from UML activity diagrams annotated with the MARTE profile. In: Proc. on WOSP 2008 (2008)Google Scholar
  57. 57.
    Trivedi, K.S.: Probability and Statistics with Reliability, Queueing and Computer Science Applications, 2nd edn. John Wiley & Sons, Inc. (2002)Google Scholar
  58. 58.
    Westermann, D., Happe, J.: Towards performance prediction of large enterprise applications based on systematic measurements. In: WCOP (2010)Google Scholar
  59. 59.
    Woodside, M., Franks, G., Petriu, D.: The future of software performance engineering. In: Future of Software Engineering (FOSE 2007), pp. 171–187. IEEE Computer Society, Los Alamitos (2007)CrossRefGoogle Scholar
  60. 60.
    Woodside, M., Neilson, J., Petriu, D., Majumdar, S.: The Stochastic Rendezvous Network Model for Performance of Synchronous Client-Server-Like Distributed Software. IEEE Transactions on Computers 44(1), 20–34 (1995)CrossRefGoogle Scholar
  61. 61.
    Wu, X., Woodside, M.: Performance modeling from software components. SIGSOFT Softw. E. Notes 29(1), 290–301 (2004)CrossRefGoogle Scholar
  62. 62.
    Zhang, L., Xia, C.H., Squillante, M.S., Iii, W.N.M.: Workload service requirements analysis: A queueing network optimization approach. In: Proceedings of the 10th IEEE International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunications Systems, MASCOTS 2002, p. 23. IEEE Computer Society, Washington, DC (2002)CrossRefGoogle Scholar
  63. 63.
    Zheng, T., Woodside, C.M., Litoiu, M.: Performance model estimation and tracking using optimal filters. IEEE Transactions on Software Engineering 34(3), 391–406 (2008)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Samuel Kounev
    • 1
  • Nikolaus Huber
    • 1
  • Simon Spinner
    • 2
  • Fabian Brosig
    • 1
  1. 1.Karlsruhe Institute of Technology (KIT)KarlsruheGermany
  2. 2.FZI Research Center for Information TechnologyKarlsruheGermany

Personalised recommendations