Formal Verification of UML Statechart Diagrams via Graph Transformation to Generalized Stochastic Petri Nets: A Meta-Modeling Approach
Abstract
The Unified Modeling Language (UML) is a widely adopted standard for visualizing, specifying, constructing, and documenting software system artifacts. It enables developers to design diagrams that effectively represent complex relationships and processes. Despite its versatility, UML lacks the formal notation necessary for rigorous analysis and verification. % To address this limitation, we propose an approach for transforming Statechart Diagrams (STD), a type of UML behavioral diagram, into Generalized Stochastic Petri Nets (GSPN). GSPNs provide a well-established framework for representing and analyzing concurrency, timing, synchronization, precedence, and priority in processes. Using the meta-modeling tool AToM3, we create meta-models for both STDs and GSPNs. Additionally, a graph grammar is developed to facilitate automatic transformation. This approach enables the creation of a tool for modeling and verifying Statechart diagrams. The proposed method is validated through a case study involving an automatic gearbox system with six states and multiple transitions. The transformation successfully handled models of moderate complexity (up to 20 states and 30 transitions). It enabled verification in under 5 seconds using the PIPE tool, detecting potential design flaws such as deadlocks and unsafe states.
Keywords
References
- B. Rumpe, Modeling with UML. Springer, 2016, vol. 98. [Online]. Available: https://doi.org/10.1007/978-3-319-33933-7
- O. Group et al., “Unified modeling language,” http://www.uml.org, 2001.
- T. Murata, “Petri nets: Properties, analysis and applications,” Proceedings of the IEEE, vol. 77, no. 4, pp. 541–580, 1989. [Online]. Available: https://doi.org/10.1109/5.24143
- M. A. Marsan, G. Balbo, G. Conte, S. Donatelli, and G. Franceschinis, “Modeling with generalized stochastic petri nets,” ACM SIGMETRICS Performance Evaluation Review, vol. 26, no. 2, p. 2, 1998. [Online]. Available: https://doi.org/10.1145/288197.581193
- E. Guerra and J. de Lara, “A framework for the verification of UML models: examples using petri nets,” in JISBD, vol. 2003, 2003, pp. 325–334.
- N. J. Dingle, W. J. Knottenbelt, and T. Suto, “Pipe2: a tool for the performance evaluation of generalized stochastic petri nets,” ACM SIGMETRICS Performance Evaluation Review, vol. 36, no. 4, pp. 34–39, 2009. [Online]. Available: https://doi.org/10.1145/1530873.1530881
- E. André, S. Liu, Y. Liu, C. Choppy, J. Sun, and J. S. Dong, “Formalizing UML state machines for automated verification – a survey,” ACM Comput. Surv., vol. 55, no. 13s, Jul. 2023. [Online]. Available: https://doi.org/10.1145/3579821
- C. Choppy, K. Klai, and H. Zidani, “Formal verification of UML state diagrams: a petri net based approach,” ACM SIGSOFT Software Engineering Notes, vol. 36, no. 1, pp. 1–8, 2011. [Online]. Available: https://doi.org/10.1145/1921532.1921561
Details
Primary Language
English
Subjects
Computer Software, Software Testing, Verification and Validation
Journal Section
Research Article
Early Pub Date
June 22, 2026
Publication Date
June 30, 2026
Submission Date
January 27, 2026
Acceptance Date
April 24, 2026
Published in Issue
Year 2026 Volume: 9 Number: 3
