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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 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.
- 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
JavaSim. http://javasim.ncl.ac.uk/
The Perl programming language. http://www.perl.org/
ObjecTime Ltd.: Developer 5.1 Reference Manual. ObjecTime Ltd. (1998)
OPNET Manuals: Mil 3, Inc. (1999)
Aquilani, F., Balsamo, S., Inverardi, P.: Performance analysis at the software architecture design level. Performance Evaluation 45(4), 205–221 (2001)
ArgoUML: Object-oriented design tool with cognitive support
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)
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)
Balsamo, S., De Nitto Personé, V., Onvural, R.: Analysis of Queueing Networks with Blocking. Kluwer Academic Publishers, Dordrecht (2001)
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)
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)
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)
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)
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)
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)
Bertolino, A., Mirandola, R.: CB-SPE tool: Putting component-based performance engineering into practice. In: CBSE, pp. 233–248 (2004)
Bézivin, J.: On the unification power of models. Software and System Modeling 4(2), 171–188 (2005)
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)
Cortellessa, V., Iazeolla, G., Mirandola, R.: Early generation of performance models for object-oriented systems. IEE Proceedings-Software 147(3), 61–72 (2000)
Cortellessa, V., Mirandola, R.: PRIMA-UML: a performance validation incremental methodology on early UML diagrams. Science of Computer Programming 44(1) (2002)
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)
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)
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)
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)
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)
Booch, G., Rumbaugh, I.J.: The Unified Modeling Language User Guide. Addison-Wesley, Reading (1999)
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)
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)
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)
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)
Kleinrock, L.: Queueing Systems, vol. 1: Theory. Wiley, New York (1975)
Kouvatsos, D.D., Balsamo, S.: Queueing networks with blocking. Perform. Eval. 51(2/4), 79–81 (2003)
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)
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
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)
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
Object Management Group: Unified modeling language (UML), version 1.4, OMG documentation. http://www.omg.org/techonology/documents/formal/uml.htm
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)
Object Management Group: UML profile for MARTE, ptc/08-06-09. http://www.omgmarte.org/Documents/Specifications/08-06-09.pdf (2008)
Object Management Group (OMG): XML metadata interchange (XMI) specification, version 2.0, 2002
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
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)
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)
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)
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)
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)
SEAlab – Software Quality Group, Dipartimento di Informatica, Università dell’Aquila: MOSQUITO 1.6 User Manual (2008).
Smith, C.U.: Performance Engineering of Software Systems. Addison-Wesley, Reading (1990)
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)
Smith, C.U., Williams, L.G.: Performance Solutions: A Practical Guide to Creating Responsive, Scalable Software. Addison-Wesley, Reading (2002)
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)
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)
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
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)
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)
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)
Author information
Authors and Affiliations
Corresponding author
Rights 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)