Performance evaluation of UML software architectures with multiclass Queueing Network models

Software performance based on performance models can be applied at early phases of the software development cycle to characterize the quantitative behavior of software systems. We propose an approach based on queueing networks models for performance prediction of software systems at the software architecture level, specified by UML. Starting from annotated UML Use Case, Activity and Deployment diagrams we derive a performance models based on multichain and multiclass Queueing Networks (QN). The UML model is annotated according to the UML Profile for Schedulability, Performance and Time Specification. The proposed algorithm translates the annotated UML specification into QN performance models, which can then be analyzed using standard solution techniques. Performance results are reported back at the software architecture level in the UML diagrams. As our approach can be fully automated and uses standard UML annotations, it can be integrated with other performance modeling approaches. Specifically, we discuss how this QN-based approach can be integrated with an existing simulation-based performance modeling tool.

[1]  Vincenzo Grassi,et al.  PRIMAmob-UML: a methodology for performance analysis of mobile software architectures , 2002, WOSP '02.

[2]  Dorina C. Petriu,et al.  Applying the UML Performance Profile: Graph Grammar-Based Derivation of LQN Models from UML Specifications , 2002, Computer Performance Evaluation / TOOLS.

[3]  Dorina C. Petriu,et al.  XSLT transformation from UML models to LQN performance models , 2002, WOSP '02.

[4]  Myron Hlynka,et al.  Queueing Networks and Markov Chains (Modeling and Performance Evaluation With Computer Science Applications) , 2007, Technometrics.

[5]  Stephen S. Lavenberg,et al.  Computer Performance Modeling Handbook , 1983, Int. CMG Conference.

[6]  Connie U. Smith,et al.  Performance evaluation of software architectures , 1998, WOSP '98.

[7]  Connie U. Smith,et al.  Performance Engineering of Software Systems , 1990, SIGMETRICS Perform. Evaluation Rev..

[8]  S. Mohan,et al.  Performance Solutions: A Practical Guide to Creating Responsive, Scalable Software [Book Review] , 2003, IEEE Software.

[9]  Paola Inverardi,et al.  Model-based performance prediction in software development: a survey , 2004, IEEE Transactions on Software Engineering.

[10]  Simonetta Balsamo,et al.  UML-PSI: the UML performance simulator , 2004, First International Conference on the Quantitative Evaluation of Systems, 2004. QEST 2004. Proceedings..

[11]  Moreno Marzolla,et al.  Simulation-based performance modeling of UML software architectures , 2004 .

[12]  Paola Inverardi,et al.  Compositional generation of software architecture performance QN models , 2004, Proceedings. Fourth Working IEEE/IFIP Conference on Software Architecture (WICSA 2004).

[13]  Moreno Marzolla,et al.  Simulation Modeling of UML Software Architectures , 2003 .

[14]  Xin Wang,et al.  From UML Descriptions of High-Level Software Architectures to LQN Performance Models , 1999, AGTIVE.

[15]  Vittorio Cortellessa,et al.  PRIMA-UML: a performance validation incremental methodology on early UML diagrams , 2002, Sci. Comput. Program..

[16]  Bran Selic,et al.  Automated performance modeling of software generated by a design environment , 2001, Perform. Evaluation.

[17]  Daniel A. Menascé,et al.  A Method for Design and Performance Modeling of Client/Server Systems , 2000, IEEE Trans. Software Eng..

[18]  K. Mani Chandy,et al.  Open, Closed, and Mixed Networks of Queues with Different Classes of Customers , 1975, JACM.

[19]  Paola Inverardi,et al.  Experimenting different software architectures performance techniques: a case study , 2004, WOSP '04.