Compositional Semantics for UML 2.0 Sequence Diagrams Using Petri Nets

  • Christoph Eichner
  • Hans Fleischhack
  • Roland Meyer
  • Ulrik Schrimpf
  • Christian Stehno
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3530)


With the introduction of UML 2.0, many improvements to diagrams have been incorporated into the language. Some of the major changes were applied to sequence diagrams, which were enhanced with most of the concepts from ITU-T’s Message Sequence Charts, and more. In this paper, we introduce a formal semantics for most concepts of sequence diagrams by means of Petri nets as a formal model. Thus, we are able to express the partially ordered and concurrent behaviour of the diagrams natively within the model. Moreover, the use of coloured high-level Petri nets allows a comprehensive and efficient structure for data types and control elements. The proposed semantics is defined compositionally, based on basic Petri net composition operations.


Sequence Diagram Interaction Diagram Compositional Semantic Message Sequence Chart Interaction Frame 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Agha, G., de Cindio, F., Rozenberg, G.: Concurrent Object-Oriented Programming and Petri Nets, Advances in Petri Nets. LNCS, vol. 2001. Springer, Heidelberg (2001)zbMATHCrossRefGoogle Scholar
  2. 2.
    Bernardi, S., Donatelli, S., Merseguer, J.: From UML sequence diagrams and statecharts to analysable petri net models. In: Balsamo, S., Inverardi, P., Selic, B. (eds.) Workshop on Software and Performance 2002, Rome, Italy, pp. 35–45. ACM Press, New York (2002)Google Scholar
  3. 3.
    Best, E., Fra̧czak, W., Hopkins, R.P., Klaudel, H., Pelz, E.: M-nets: an Algebra of High-level Petri Nets, with an Application to the Semantics of Concurrent Programming Languages. Acta Informatica 35(10), 813–857 (1998)zbMATHCrossRefMathSciNetGoogle Scholar
  4. 4.
    Damm, W., Harel, D.: LSCs: Breathing Life into Message Sequence Charts. Formal Methods in System Design 19(1), 45–80 (2001)zbMATHCrossRefGoogle Scholar
  5. 5.
    Devillers, R., Klaudel, H., Koutny, M., Pommereau, F.: Asynchronous Box Calculus. Fundamenta Informaticae 54(1), 1–50 (2003)MathSciNetGoogle Scholar
  6. 6.
    Fleischhack, H., Grahlmann, B.: A Petri Net Semantics for B(PN)2 with Procedures. In: Agha, G., Russo, S. (eds.) Parallel and Distributed Software Engineering, pp. 15–27. IEEE Computer Society, Los Alamitos (1997)Google Scholar
  7. 7.
    Fleischhack, H., Grahlmann, B.: A Compositional Petri Net Semantics for SDL. In: Desel, J., Silva, M. (eds.) ICATPN 1998. LNCS, vol. 1420, pp. 144–164. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  8. 8.
    Fowler, M.: UML Distilled. The Addison-Wesley Object Technology Series. Addison-Wesley Longman, Reading (2004)Google Scholar
  9. 9.
    Gehrke, T., Huhn, M., Rensink, A., Wehrheim, H.: An Algebraic Semantics for Message Sequence Charts Documents. In: Budkowski, S., Cavalli, A.R., Najm, E. (eds.) Formal Description Techniques and Protocol Specification, Testing and Verification (FORTE/PSTV 1998), pp. 3–18. Kluwer Academic Press, Dordrecht (1998)Google Scholar
  10. 10.
    Heymer, S.: A Semantics for MSC Based on Petri Net Components. In: SAM 200, Col de Porte, Grenoble, France, pp. 262–275, VERIMAG, IRISA, SDL Forum (2000)Google Scholar
  11. 11.
    ITU-T. Recommendation Z.120 (11/99): Message Sequence Charts ITU-T, Geneva (2000)Google Scholar
  12. 12.
    Jeckle, M., Rupp, C., Hahn, J., Zengler, B., Queins, S.: UML 2 glasklar. Hanser (2004)Google Scholar
  13. 13.
    Jensen, K.: Coloured Petri Nets — Basic Concepts, Analysis Methods and Practical Use. In: EATCS Monographs in Computer Science, vol. 1. Springer, Heidelberg (1992)Google Scholar
  14. 14.
    Katoen, J.-P., Lambert, L.: Pomsets for Message Sequence Charts. In: König, H., Langendörfer, P. (eds.) Formale Beschreibungstechniken für verteilte Systeme, Cottbus, June 1998, pp. 197–207. GI/ITG, Shaker Verlag (1998)Google Scholar
  15. 15.
    Kluge, O.: 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. LNCS, vol. 2472, pp. 197–218. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  16. 16.
    Lilius, J.: OB(PN)2: An object based petri net programming notation. In: Agha, et al. (eds.) [1], pp. 247–275.Google Scholar
  17. 17.
    Murata, T.: Petri nets: Properties, analysis and applications. Proceedings of the IEEE 77(4), 541–580 (1989)Google Scholar
  18. 18.
    Object Management Group. UML 2.0 Superstructure Specification, 03-08-02 edition (August 2003)Google Scholar
  19. 19.
    Project P-UMLaut,
  20. 20.
    Priese, L., Wimmel, H.: Theoretische Informatik: Petri-Netze. Springer, Heidelberg (2002)Google Scholar
  21. 21.
    Reisig, W.: Petri nets – An introduction. Springer, Heidelberg (1985)zbMATHGoogle Scholar
  22. 22.
    Reniers, M.A.: Message Sequence Charts. PhD thesis, Eindhoven University of Technology (1999)Google Scholar
  23. 23.
    Störrle, H.: Semantics of Interactions in UML 2.0. In: 2003 IEEE Symposium on Human Centric Computing Languages and Environments, Auckland, New Zealand, pp. 129–136. IEEE Computer Society, Los Alamitos (2003)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Christoph Eichner
    • 1
  • Hans Fleischhack
    • 1
  • Roland Meyer
    • 1
  • Ulrik Schrimpf
    • 1
  • Christian Stehno
    • 1
  1. 1.Parallel Systems Group, Department for Computing ScienceCarl von Ossietzky UniversitätOldenburgGermany

Personalised recommendations