From UML to LQN by XML algebra-based model transformations

The change of focus from code to models promoted by OMG's Model Driven Development raises the need for verification of non-functional characteristics of UML models. such as performance, reliability, scalability, security, etc. Many modeling formalisms, techniques and tools have been developed over the years for the analysis of different non-functional characteristics. The challenge is not to reinvent new analysis methods for UML models, but to bridge the gap between UML-based software development tools and different kinds of existing analysis tools. Traditionally, the analysis models were built "by hand". However, a new trend is starting to emerge, that involves the automatic transformation of UML models (annotated with extra information) into various kinds of analysis models. This paper proposes a transformation method of an annotated UML model into a performance model. The mapping between the input model and the output model is defined at a higher level of abstraction based on graph transformation concepts, whereas the implementation of the transformation rules and algorithm uses lower-level XML trees manipulations techniques, such as XML algebra. The target performance model used as an example in this paper is the Layered Queueing Network (LQN); however, the transformation approach can be easily tailored to other performance modelling formalisms.

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

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

[3]  Dorina C. Petriu,et al.  Performance Analysis with UML , 2003, UML for Real.

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

[5]  Susanna Donatelli,et al.  From UML sequence diagrams and statecharts to analysable petri net models , 2002, WOSP '02.

[6]  A. Schfürr,et al.  Programmed graph replacement systems , 1997 .

[7]  Jan Jürjens,et al.  Automated Verification of UMLsec Models for Security Requirements , 2004, UML.

[8]  José Merseguer,et al.  Performance by unified model analysis (PUMA) , 2005, WOSP '05.

[9]  Stephen Gilmore,et al.  Analysing UML 2.0 activity diagrams in the software performance engineering process , 2004, WOSP '04.

[10]  Javier Campos,et al.  From UML activity diagrams to Stochastic Petri nets: application to software performance engineering , 2004, WOSP '04.

[11]  C. Murray Woodside,et al.  A Metamodel for Generating Performance Models from UML Designs , 2004, UML.

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

[13]  Raffaela Mirandola,et al.  Deriving a queueing network based performance model from UML diagrams , 2000, WOSP '00.

[14]  Christian Kirkegaard,et al.  Static analysis of XML transformations in Java , 2003, IEEE Transactions on Software Engineering.

[15]  Andy Schürr,et al.  Introduction to PROGRESS, an Attribute Graph Grammar Based Specification Language , 1990, WG.

[16]  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.

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