An intermediate metamodel for failure-based behavior of performance and reliability

Software quality analysis is an important part in getting better software systems. Performing software quality analysis during design time enhances design decisions. In order to assist design decisions and the quality analysis, the design model, which is annotated with quality information, must be transformed into analysis model to execute software analysis part. To achieve this purpose, a main idea is to define model transformation that takes some input from design model and transformed into analysis model. However, both model inherits heterogeneous notation and semantic that could be difficult to perform direct model transformation. To solve this shortcoming, the intermediate metamodel, which is based on failure behavior, is defined as to capture the essential quality information particularly for performance and reliability and be able to transform into a multiple analysis model. In this paper, the intermediate metamodel is presented and focusing on the mapping rules for model transformation from design model to intermediate model. First, the design model (annotated sequence diagram) is modeled and then is transformed into intermediate model (output of intermediate metamodel) by following the defined mapping rules. Then, the intermediate model is constructed to obtain failure based behavior factors. The intermediate metamodel is applied on a simple case study to show the applicability of the intermediate metamodel.

[1]  Antonio Puliafito,et al.  From UML to Petri Nets: The PCM-Based Methodology , 2011, IEEE Transactions on Software Engineering.

[2]  Michael R. Lyu Software Reliability Engineering: A Roadmap , 2007, Future of Software Engineering (FOSE '07).

[3]  Volker Gruhn,et al.  Model-Driven Software Development , 2005 .

[4]  Dorina C. Petriu,et al.  Towards automatic derivation of a product performance model from a UML software product line model , 2008, WOSP '08.

[5]  Enrico Zio,et al.  Reliability engineering: Old problems and new challenges , 2009, Reliab. Eng. Syst. Saf..

[6]  C. Murray Woodside,et al.  An intermediate metamodel with scenarios and resources for generating performance models from UML designs , 2007, Software & Systems Modeling.

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

[8]  Heiko Koziolek,et al.  Parameterized Reliability Prediction for Component-Based Software Architectures , 2010, QoSA.

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

[10]  KoziolekHeiko,et al.  The Palladio component model for model-driven performance prediction , 2009 .

[11]  Eila Niemelä,et al.  A Survey on Software Architecture Analysis Methods , 2002, IEEE Trans. Software Eng..

[12]  Simona Bernardi,et al.  A dependability profile within MARTE , 2011, Software & Systems Modeling.

[13]  Vincenzo Grassi,et al.  Filling the gap between design and performance/reliability models of component-based systems: A model-driven approach , 2007, J. Syst. Softw..

[14]  Hannes Schwarz,et al.  Model-Driven Software Development , 2013 .

[15]  Swapna S. Gokhale,et al.  An analytical approach to architecture-based software performance and reliability prediction , 2004, Perform. Evaluation.

[16]  Connie U. Smith,et al.  Introduction to Software Performance Engineering: Origins and Outstanding Problems , 2007, SFM.

[17]  Bruce Powel Douglass,et al.  Real Time UML: Advances in the UML for Real-Time Systems (3rd Edition) , 2004 .

[18]  Christoph Lauer,et al.  Fault tree synthesis from UML models for reliability analysis at early design stages , 2011, SOEN.

[19]  C. Murray Woodside,et al.  From Annotated Software Designs (UML SPT/MARTE) to Model Formalisms , 2007, SFM.

[20]  Katerina Goseva-Popstojanova,et al.  Architecture-based approach to reliability assessment of software systems , 2001, Perform. Evaluation.