Abstract
Petri nets and statecharts can model concurrent systems in a succinct way. While translations from statecharts to Petri nets exist, a well-defined translation from Petri nets to statecharts is lacking. Such a translation should map an input net to a corresponding statechart, having a structure and behaviour similar to that of the input net. Since statecharts can only model a restricted form of concurrency, not every Petri net has a corresponding statechart. We identify a class of Petri nets, called statechartable nets, that can be translated to corresponding statecharts. Statechartable Petri nets are structurally defined using the novel notion of an area. We also define a structural translation that maps each statechartable Petri net to a corresponding statechart. The translation is proven sound and complete for statechartable Petri nets.
Article PDF
Similar content being viewed by others
Avoid common mistakes on your manuscript.
References
Ameedeen MA, Bordbar B (2008) A model driven approach to represent sequence diagrams as free choice Petri nets. In: Proc. EDOC 2008. IEEE Computer Society, pp 213–221
Bernardinello L, de Cindio F (1992) A survey of basic net models and modular net classes. In: Rozenberg G (ed) Advances in Petri nets 1992. Lecture notes in computer science, vol 609. Springer, Berlin, pp 304–351
Drusinsky D, Harel D (1994) On the power of bounded concurrency I: finite automata. J ACM 41(3): 517–539
Desel J, Juhás G (2001) What is a Petri net? Informal answers for the informed reader. In: Ehrig H, Juhás G, Padberg J, and Rozenberg G (eds) Unifying Petri nets. Lecture notes in computer science, vol 2128. Springer, Berlin, pp 1–27
Eshuis R (2005) On nets with structured concurrency. Beta Working Paper Series, WP 155, Eindhoven University of Technology
Eshuis R (2009) Reconciling statechart semantics. Sci Comput Program 74(3): 65–99
Eshuis R (2009) Translating safe Petri nets to statecharts in a structure-preserving way. In: Cavalcanti A, Dams D (eds) FM 2009. Lecture notes in computer science, vol 5850. Springer, Berlin, pp 239–255
Grumberg O, Katz S (2007) Veritech: a framework for translating among model description notations. STTT 9(2): 119–132
Grahlmann B (1997) The PEP tool. In Grumberg O (ed) Proc. CAV ’97. Lecture notes in computer science, vol 1254. Springer, Berlin, pp 440–443
Hammal Y (2005) A formal semantics of UML statecharts by means of timed Petri nets. In: Wang F (ed) Proc. FORTE 2005. Lecture notes in computer science, vol 3731. Springer, Berlin, pp 38–52
Harel D (1987) Statecharts: a visual formalism for complex systems. Sci Comput Program 8(3): 231–274
Harel D (1988) On visual formalisms. Commun ACM 31(5): 514–530
Harel D, Kahana C-A (1992) On statecharts with overlapping. ACM Trans Softw Eng Methodol 1(4):399–421
Harel D, Kugler H (2002) Synthesizing state-based object systems from LSC specifications. Int J Found Comput Sci 13(1): 5–51
Huszerl G, Majzik I, Pataricza A, Kosmidis K, Dal Cin M (2002) Quantitative analysis of UML statechart models of dependable systems. Comput J 45(3):260–277
Harel D, Naamad A (1996) The STATEMATE semantics of statecharts. ACM Trans Softw Eng Methodol 5(4): 293–333
Harel D, Pnueli A, Schmidt JP, Sherman S (1987) On the formal semantics of statecharts. In: Proceedings of the second IEEE symposium on logic in computation. IEEE, pp 54–64
Jensen K (1992) Coloured Petri nets. Basic concepts, analysis methods and practical use. In: EATCS monographs on theoretical computer Science. Springer, Berlin
Kishinevsky M, Cortadella J, Kondratyev A, Lavagno L, Taubin A, Yakovlev A (1997) Coupling asynchrony and interrupts: place chartnets. In: Azéma P, Balbo G (eds) Proc ICATPN 1997 Lecture notes in computer science, vol 1248. Springer, Berlin, pp 328–347
Kluge O (2003) Modelling a railway crossing with message sequence charts and petri nets. In: Ehrig H, Reisig W, Rozenberg G, Weber H (eds) Petri Net technology for communication-based systems. Lecture notes in computer science, vol 2472. Springer, Berlin, pp 197–218
The Mathworks. Stateflow user’s guide. http://www.mathworks.com
Murata T (1989) Petri nets: properties, analysis, and applications. In: Proc IEEE 77(4):541–580
Petri CA (1962) Kommunikation mit Automaten. PhD thesis, Institut für instrumentelle Mathematik, Bonn
Pnueli A, Shalev M (1991) What is in a step: on the semantics of statecharts. In: Ito T, Meyer AR (eds) Theoretical aspects of computer software. Lecture notes in computer science, vol 526. Springer, Berlin, pp 244–265
Reisig W (1985) Petri Nets: an introduction. In: EATCS monographs on theoretical computer science, vol 4. Springer, Berlin
Rausch M, Krogh B (1997) Transformations between different model forms in discrete event systems. In: Proc IEEE SMC 1997, vol 3, pp 2841–2846
Reisig W, Rozenberg G (eds) (1998) Lectures on Petri nets I: advances in Petri nets. In: Lecture notes in computer science, vol 1492. Springer, Berlin
Schnabel M, Nenninger G, Krebs V (1999) Konvertierung sicherer Petri-netze in statecharts (in German). Automatisierungstechnik 47(12):571–580
Saldhana JA, Shatz SM, Hu Z (2001) Formalization of object behavior and interactions from UML models. Int J Softw Eng Knowl Eng 11(6):643–673
UML Revision Taskforce. OMG UML specification v. 1.5. Object Management Group, 2003. OMG Document Number formal/2003-03-01
UML Revision Taskforce. UML 2.0 superstructure specification. Object Management Group, 2003. OMG Document Number ptc/03-07-06
Van Gorp P, Eshuis R (2010) Transforming process models: executable rewrite rules versus a formalized java program. In: Petriu DC, Rouquette N, Haugen Ø (eds) Proc MoDELS 2010. Lecture notes in computer science, vol 6395. Springer, Berlin, pp 258–272
Whittle J, Schumann J (2000) Generating statechart designs from scenarios. In: Proc ICSE, pp 314–323
Acknowledgments
The comments of one of the anonymous referees helped to significantly improve the presentation.
Open Access
This article is distributed under the terms of the Creative Commons Attribution Noncommercial License which permits any noncommercial use, distribution, and reproduction in any medium, provided the original author(s) and source are credited.
Author information
Authors and Affiliations
Corresponding author
Additional information
Jim Woodcock
Rights and permissions
Open Access This is an open access article distributed under the terms of the Creative Commons Attribution Noncommercial License (https://creativecommons.org/licenses/by-nc/2.0), which permits any noncommercial use, distribution, and reproduction in any medium, provided the original author(s) and source are credited.
About this article
Cite this article
Eshuis, R. Statechartable Petri nets. Form Asp Comp 25, 659–681 (2013). https://doi.org/10.1007/s00165-011-0204-5
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00165-011-0204-5