Skip to main content

From Software Models to Performance Models

  • Chapter
Model-Based Software Performance Analysis

Abstract

This chapter focuses on the transformational approaches from software system specifications to performance models. These transformations aim at filling the gap between the software development process and the performance analysis by generating performance model ready to be validated from the software models. Three approaches are discussed in detail presenting their foundations and their application to an e-commerce case study. Moreover, the chapter briefly reviews representatives of other transformational approaches present in the literature. All the presented approaches are discussed with respect to a set of relevant dimensions such as software specification, performance model, evaluation methods and level of automated support for performance prediction.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 54.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Readers that are not familiar with the basic concepts of Model-Driven Engineering, such as model/metamodel hierarchy, can refer to [36] for an introductory reading on this topic.

  2. 2.

    The Client–Server with blocking client is graphically described in Fig. 5.11 and the corresponding mapping rule is graphically illustrated in Fig. 5.13.

  3. 3.

    XSLT is a language for transforming a source document expressed in a tree format (which usually represents the information in a XML file) into a target document expressed in a tree format.

References

  1. JavaSim. http://javasim.ncl.ac.uk/

  2. The Perl programming language. http://www.perl.org/

  3. ObjecTime Ltd.: Developer 5.1 Reference Manual. ObjecTime Ltd. (1998)

    Google Scholar 

  4. OPNET Manuals: Mil 3, Inc. (1999)

    Google Scholar 

  5. Aquilani, F., Balsamo, S., Inverardi, P.: Performance analysis at the software architecture design level. Performance Evaluation 45(4), 205–221 (2001)

    Article  Google Scholar 

  6. ArgoUML: Object-oriented design tool with cognitive support

    Google Scholar 

  7. Arief, L.B., Speirs, N.A.: A UML tool for an automatic generation of simulation programs. In: Proceedings of the Second International Workshop on Software and Performance, WOSP00, September 2000, pp. 71–76 (2000)

    Chapter  Google Scholar 

  8. Balsamo, S., De Nitto Persone, V., Inverardi, P.: A review on queueing network models with finite capacity queues for software architectures performance prediction. Perform. Eval. 51(2/4), 269–288 (2003)

    Article  Google Scholar 

  9. Balsamo, S., De Nitto Personé, V., Onvural, R.: Analysis of Queueing Networks with Blocking. Kluwer Academic Publishers, Dordrecht (2001)

    MATH  Google Scholar 

  10. Balsamo, S., Di Marco, A., Inverardi, P., Simeoni, M.: Model-based performance prediction in software development: A survey. IEEE Transactions of Software Engineering 30(5), 295–310 (2004)

    Article  Google Scholar 

  11. Balsamo, S., Donatiello, L., van Dijk, N.: Bounded performance analysis of parallel processing systems. IEEE Transactions on Parallel and Distributed Systems 9, 1041–1056 (1998)

    Article  Google Scholar 

  12. Balsamo, S., Marzolla, M.: A simulation-based approach to software performance modeling. In: Inverardi, P. (ed.) Proc. Joint 9th European Software Engineering Conference (ESEC) & 11th SIGSOFT Symposium on the Foundations of Software Engineering (FSE-11), Helsinki, FI, September 1–5, 2003. ACM Press, New York (2003)

    Google Scholar 

  13. Balsamo, S., Marzolla, M.: Towards performance evaluation of mobile systems in UML. In: di Martino, B., Yang, L.T., Bobenau, C. (eds.) Proc. of the European Simulation and Modelling Conference (ESMc’03), EUROSIS-ETI, Naples, Italy, October 27–29, 2003, pp. 61–68 (2003)

    Google Scholar 

  14. Bernardi, S., Donatelli, S., Merseguer, J.: From UML sequence diagrams and statecharts to analysable petri net models. In: Proceedings of the Third International Workshop on Software and Performance (WOSP02), July 2002, pp. 35–45 (2002)

    Chapter  Google Scholar 

  15. Bertolino, A., Mirandola, R.: Towards component-based software performance engineering. In: Proc. 6th Workshop on Component-Based Software Engineering: Automated Reasoning and Prediction, ACM/IEEE 25th International Conference on Software Engineering ICSE 2003, Portland, Oregon, USA, pp. 1–6 (2003)

    Google Scholar 

  16. Bertolino, A., Mirandola, R.: CB-SPE tool: Putting component-based performance engineering into practice. In: CBSE, pp. 233–248 (2004)

    Google Scholar 

  17. Bézivin, J.: On the unification power of models. Software and System Modeling 4(2), 171–188 (2005)

    Article  Google Scholar 

  18. Cortellessa, V., Di Marco, A., Inverardi, P.: Integrating performance and reliability analysis in a non-functional mda framework. In: Proceedings of the 10th International Conference on Fundamental Approaches to Software Engineering (FASE 2007), pp. 57–71 (2007)

    Google Scholar 

  19. Cortellessa, V., Iazeolla, G., Mirandola, R.: Early generation of performance models for object-oriented systems. IEE Proceedings-Software 147(3), 61–72 (2000)

    Article  Google Scholar 

  20. Cortellessa, V., Mirandola, R.: PRIMA-UML: a performance validation incremental methodology on early UML diagrams. Science of Computer Programming 44(1) (2002)

    Google Scholar 

  21. De Miguel, M., Lambolais, T., Hannouz, M., Betgé-Brezetz, S., Piekarec, S.: UML extensions for the specification and evaluation of latency constraints in architectural models. In: Proceedings of the Second International Workshop on Software and Performance (WOSP00), September 2000, pp. 83–880 (2000)

    Chapter  Google Scholar 

  22. Di Marco, A.: Model-based performance analysis of software architectures. PhD thesis, Dipartimento di Informatica, Università degli Studi de L’Aquila, L’Aquila, Italy (2005)

    Google Scholar 

  23. Di Marco, A., Inverardi, P.: Compositional generation of software architecture performance qn models. In: Fourth Working IEEE/IFIP Conference on Software Architecture (WICSA), pp. 37–46 (2004)

    Chapter  Google Scholar 

  24. Franks, G., Hubbard, A., Majumdar, S., Petriu, D.C., Rolia, J., Woodside, C.M.: A toolset for performance engineering and software design of client-server systems. Performance Evaluation 24(1–2), 117–135 (1995)

    Article  MATH  Google Scholar 

  25. Franks, G., Maly, P., Woodside, M., Petriu, D.C., Hubbard, A.: Layered queueing network solver and simulator user manual. http://www.sce.carleton.ca/rads/lqns/LQNSUserMan.pdf (2005)

  26. Booch, G., Rumbaugh, I.J.: The Unified Modeling Language User Guide. Addison-Wesley, Reading (1999)

    Google Scholar 

  27. Gómez-Martínez, E., Merseguer, J.: ArgoSPE: model-based software performance engineering. In: Donatelli, S., Thiagarajan, P.S. (eds.) Petri Nets and Other Models of Concurrency – 27th International Conference on Applications and Theory of Petri Nets and Other Models of Concurrency (ICATPN 2006), Turku, Finland, 2006. Lecture Notes in Computer Science, vol. 4024, pp. 401–410. Springer, Berlin (2006)

    Google Scholar 

  28. Grassi, V., Mirandola, R.: PRIMAmob-UML: A methodology for performance analysis of mobile software architectures. In: Proceedings of the Third International Workshop on Software and Performance (WOSP02), Rome, Italy, July 2002, pp. 262–274 (2002)

    Chapter  Google Scholar 

  29. Gu, G., Petriu, D.C.: XSLT transformation from UML models to LQN performance models. In: Proceedings of the Third International Workshop on Software and Performance (WOSP02), Rome, Italy, July 2002, pp. 227–234 (2002)

    Chapter  Google Scholar 

  30. Gu, G.P., Petriu, D.C.: From UML to LQN by XML algebra-based model transformations. In: Proceedings of the Fifth ACM Workshop on Software and Performance (WOSP 2005), pp. 99–110 (2005)

    Chapter  Google Scholar 

  31. Kleinrock, L.: Queueing Systems, vol. 1: Theory. Wiley, New York (1975)

    Google Scholar 

  32. Kouvatsos, D.D., Balsamo, S.: Queueing networks with blocking. Perform. Eval. 51(2/4), 79–81 (2003)

    Article  Google Scholar 

  33. Lazowska, E.D., Kahorjan, J., Graham, G.S., Sevcik, K.C.: Quantitative System Performance: Computer System Analysis Using Queueing Network Models. Prentice-Hall, Englewood Cliffs (1984)

    Google Scholar 

  34. López-Grao, J.P., Merseguer, J., Campos, J.: From UML activity diagrams to Stochastic Petri nets: application to software performance engineering. In: WOSP ’04: Proceedings of the Fourth International Workshop on Software and Performance, New York, NY, USA, 2004, pp. 25–36. ACM Press, New York (2004). doi:10.1145/974044.974048

    Chapter  Google Scholar 

  35. Marzolla, M.: Simulation-based performance modeling of UML software architectures. PhD Thesis TD-2004-1, Dipartimento di Informatica, Università Ca’ Foscari di Venezia, Mestre, Italy (February 2004)

    Google Scholar 

  36. Object Management Group: UML profile, for schedulability, performance, and time. OMG document ptc/2002-03-02. http://www.omg.org/cgi-bin/doc?ptc/2002-03-02

  37. Object Management Group: Unified modeling language (UML), version 1.4, OMG documentation. http://www.omg.org/techonology/documents/formal/uml.htm

  38. Object Management Group: Unified modeling language: superstructure – version 2.1.1, formal/2007-02-05. http://www.omg.org/docs/formal/07-11-04.pdf (2007)

  39. Object Management Group: UML profile for MARTE, ptc/08-06-09. http://www.omgmarte.org/Documents/Specifications/08-06-09.pdf (2008)

  40. Object Management Group (OMG): XML metadata interchange (XMI) specification, version 2.0, 2002

    Google Scholar 

  41. Petriu, D.C.: Approximate mean value analysis of client-server systems with multi-class requests. In: Proceedings of the ACM SIGMETRICS Conference on Measurement and Modeling of Computer Systems, Performance Evaluation Review, 1994

    Google Scholar 

  42. Petriu, D.C., Shen, H.: Applying the UML performance profile: Graph grammar-based derivation of LQN models from UML specifications. In: Proceedings of Computer Performance Evaluation, Modelling Techniques and Tools 12th International Conference, TOOLS 2002. London, UK, 2002. Lecture Notes in Computer Science, vol. 2324, pp. 159–177, (2002)

    Google Scholar 

  43. Petriu, D.C., Wang, X.: From UML descriptions of high-level software architectures to LQN performance models. In: Verlag, S. (ed.) Proceedings of AGTIVE’99, pp. 47–62 (1999)

    Google Scholar 

  44. Petriu, D.C., Wang, X.: Deriving software performance models from architectural patterns by graph transformations. In: TAGT’98: Selected Papers from the 6th International Workshop on Theory and Application of Graph Transformations, London, UK, 2000, pp. 475–488. Springer, Berlin (2000)

    Google Scholar 

  45. Petriu, D.C., Woodside, C.M.: Software performance models from system scenarios in use case maps. In: Proceedings of Computer Performance Evaluation, Modelling Techniques and Tools 12th International Conference, TOOLS 2002. Lecture Notes in Computer Science, vol. 2324, pp. 141–158 (2002)

    Google Scholar 

  46. Sauer, C.H., MacNair, E.A.: Queueing network software for systems modeling. In: Research Report RC-7143, IBM Thomas J. Watson Research Center, Yorktown Heights (1978)

    Google Scholar 

  47. SEAlab – Software Quality Group, Dipartimento di Informatica, Università dell’Aquila: MOSQUITO 1.6 User Manual (2008).

    Google Scholar 

  48. Smith, C.U.: Performance Engineering of Software Systems. Addison-Wesley, Reading (1990)

    Google Scholar 

  49. Smith, C.U., Williams, L.G.: Performance engineering evaluation of object-oriented systems with SPE•EDTM. In: Proceedings of Computer Performance Evaluation, Berlin, Germany, 1997. Lecture Notes in Computer Science, vol. 1245, pp. 135–154 (1997)

    Google Scholar 

  50. Smith, C.U., Williams, L.G.: Performance Solutions: A Practical Guide to Creating Responsive, Scalable Software. Addison-Wesley, Reading (2002)

    Google Scholar 

  51. Varki, E., Dowdy, L.W.: Analysis of balanced fork-join queueing networks. In: Proceedings of the ACM SIGMETRICS Conference on Measurement and Modeling of Computer Systems (1996)

    Google Scholar 

  52. Veran, M., Potier, D.: QNAP 2: a portable environment for queueing systems modelling. In: Rapport de recherche de l’INRIA-Rocquencourt. http://www.inria.fr/rrrt/rr-0314.html (1984)

    Google Scholar 

  53. Williams, L.G., Smith, C.U.: Performance evaluation of software architectures. In: ACM Proceedings of the First Workshop on Software and Performance, pp. 164–177

    Google Scholar 

  54. Williams, L.G., Smith, C.U.: PASA: A method for the performance assessment of software architectures. In: Proceedings of the Third International Workshop on Software and Performance (WOSP02), Rome, Italy, July 2002, pp. 179–189 (2002)

    Chapter  Google Scholar 

  55. Woodside, C.M., Hrischuk, C., Selic, B., Brayarov, S.: Automated performance modeling of software generated by a design environment. Performance Evaluation 45, 107–123 (2001)

    Article  MATH  Google Scholar 

  56. Woodside, C.M., Neilson, J., Petriu, S., Mjumdar, S.: The stochastic rendezvous network model for performance of synchronous client-server-like distributed software. IEEE Transaction on Computer 44, 20–34 (1995)

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Vittorio Cortellessa .

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Cortellessa, V., Di Marco, A., Inverardi, P. (2011). From Software Models to Performance Models. In: Model-Based Software Performance Analysis. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-13621-4_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-13621-4_5

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-13620-7

  • Online ISBN: 978-3-642-13621-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics