On the Use of Graph Transformation in the Modeling and Verification of Dynamic Behavior in UML Models

The use of the UML specification language for modelling dynamic behaviors of systems is very widespread. UML Statecharts and Collaboration diagrams are widely used to model dynamic behaviors of systems. However, the lack of firm semantics for the UML modeling notations makes the detection of behavioral inconsistencies difficult in the initial phases of development. The use of formal methods makes such error detection possible but the learning cost is high. Integrating UML with a suitable formal notation is a promising approach that makes UML more precise and amenable to rigorous analysis. In this paper, we present the benefits of a similar approach that is the integration of UML Statechart and Collaboration diagrams and Colored Petri Nets models. The result is an automated approach and a tool environment that formally transforms dynamic behaviors of systems expressed using UML models into their equivalent Colored Petri Nets models for analysis purposes. To make the analysis easier, the obtained models are used to generate automatically their equivalent description in the input language of the INA Petri net analyzer. The approach is based on Graph Transformation and the Meta-Modeling tool ATOM 3 is used. The approach is illustrated through an example.

[1]  Juan de Lara,et al.  Meta-modelling and graph grammars for multi-paradigm modelling in AToM3 , 2004, Software & Systems Modeling.

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

[3]  Zhijiang Dong,et al.  Integrating UML Statechart and Collaboration Diagrams Using Hierarchical Predicate Transition Nets , 2001, pUML.

[4]  Juan de Lara,et al.  AToM3: A Tool for Multi-formalism and Meta-modelling , 2002, FASE.

[5]  Kurt Jensen,et al.  Coloured Petri Nets: Modelling and Validation of Concurrent Systems , 2009 .

[6]  Serge Haddad,et al.  Application and Theory of Petri Nets , 2012, Lecture Notes in Computer Science.

[7]  Allaoua Chaoui,et al.  Modeling and Verification of Dynamic Behavior in UML Models: A Graph Transformation Approach , 2009, SEDE.

[8]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[9]  Hartmut Ehrig,et al.  Integrating Meta-modelling Aspects with Graph Transformation for Efficient Visual Language Definition and Model Manipulation , 2004, FASE.

[10]  Allaoua Chaoui,et al.  A Formal Framework and a Tool for the Specification and Analysis of G-Nets Models Based on Graph Transformation , 2009, ICDCN.

[11]  Juan de Lara,et al.  Computer Aided Multi-paradigm Modelling to Process Petri-Nets and Statecharts , 2002, ICGT.

[12]  Tadao Murata,et al.  Petri nets: Properties, analysis and applications , 1989, Proc. IEEE.

[13]  Sol M. Shatz,et al.  Formalization of Object Behavior and Interactions from UML Models , 2001, Int. J. Softw. Eng. Knowl. Eng..

[14]  Allaoua Chaoui,et al.  A Graphical Environment for Petri Nets INA Tool Based on Meta-Modelling and Graph Grammars , 2008 .

[15]  Stephen J. Mellor,et al.  Object lifecycles: modeling the world in states , 1992 .

[16]  Kurt Lautenbach,et al.  System Modelling with High-Level Petri Nets , 1981, Theor. Comput. Sci..

[17]  Grzegorz Rozenberg,et al.  Handbook of Graph Grammars and Computing by Graph Transformations, Volume 1: Foundations , 1997 .

[18]  Kalle Lyytinen,et al.  MetaEdit+: A Fully Configurable Multi-User and Multi-Tool CASE and CAME Environment , 1996, CAiSE.

[19]  Dorothea Blostein,et al.  Issues in the Practical Use of Graph Rewriting , 1994, TAGT.

[20]  강문설 [서평]「The Unified Modeling Language User Guide」 , 1999 .