Abstract
Scenario languages are widely used in software development. Typical usage scenarios, forbidden behaviors, test cases, and many more aspects can be depicted with graphical scenarios. Scenario languages were introduced into the Unified Modeling Language (UML) under the name of Sequence Diagrams. The 2.0 version of UML changed Sequence Diagrams significantly and the expressiveness of the language was highly increased. However, the complexity of the language (and the diversity of the goals Sequence Diagrams are used for) yields several possible choices in its semantics. This paper collects and categorizes the semantic choices in the language, surveys the formal semantics proposed for Sequence Diagrams, and presents how these approaches handle the various semantic choices.
Similar content being viewed by others
References
Bowles, J.K.F.: Decomposing interactions. In: 11th International Conference on Algebraic Methodology and Software Technology (AMAST 2006), pp. 189–203. Springer, New York (2006). doi:10.1007/11784180
Broy, M., Cengarle, M., Grönniger, H., Rumpe, B.: Modular description of a comprehensive semantics model for the UML (Version 2.0). Technical report 2008-06, Carl-Friedrich-Gauß-Fakultät, Technische Universität Braunschweig (2008)
Cavarra, A., Filipe, J.K.: Combining Sequence Diagrams and OCL for liveness. In: Proceedings of Semantic Foundations of Engineering Design Languages (SFEDL), ETAPS 2004. Barcelona, Spain (2004)
Cavarra A., Filipe J.K.: Formalizing liveness-enriched Sequence Diagrams using ASMs. In: Zimmermann, W., Thalheim, B. (eds) Abstract State Machines, pp. 62–77. Springer, New York (2004)
Cengarle, M.: System model for UML–the interactions case. In: Methods for Modelling Software Systems (MMOSS), number 06351 in Dagstuhl Seminar Proceedings, Dagstuhl, Germany, 2007. Internationales Begegnungs- und Forschungszentrum für Informatik (IBFI), Schloss Dagstuhl, Germany
Cengarle, M., Knapp, A.: UML 2.0 Interactions: semantics and refinement. In: 3rd International Workshop on Critical Systems Development with UML (CSDUML’04, Proceedings), pp. 85–99 (2004)
Cengarle, M., Knapp, A.: Operational semantics of UML 2.0 interactions. Technical report TUM-I0505. Institut für Informatik, Technische Universitat München (2005)
Cengarle, M., Knapp, A.: An Institution for UML 2.0 interactions. Technical report TUM-I0808, Institut für Informatik, Technische Universität München (2008)
Cengarle M., Graubmann P., Wagner S.: Semantics of UML 2.0 interactions with variabilities. Electr. Notes Theor. Comput. Sci. 160, 141–155 (2006)
Damm W., Harel D.: LSCs: breathing life into message sequence charts. Form. Methods Syst. Des. 19(1), 45–80 (2001). doi:10.1023/A:1011227529550
Dan, H., Hierons, R.M., Counsell, S.: A thread-tag based semantics for Sequence Diagrams. In: Software Engineering and Formal Methods (SEFM 2007), pp. 173–182 (2007). IEEE Computer Society
Eichner, C., Fleischhack, H., Meyer, R., Schrimpf, U., Stehno, C.: Compositional semantics for UML 2.0 Sequence Diagrams using Petri Nets. In: SDL2005: Model Driven Systems Design. Springer, New York (2005)
Fernandes, J., Tjell, S., Jorgensen, J.B., Ribeiro, O.: Designing tool support for translating use cases and UML 2.0 Sequence Diagrams into a coloured Petri Net. In: Proceedings of Sixth International Workshop on Scenarios and State Machines (SCESM ‘07), Washington, DC, USA. IEEE Computer Society (2007)
Filipe J.K.: Modelling concurrent interactions. Theor. Comput. Sci. 351(2), 203–220 (2006)
Grosu, R., Smolka, S.: Safety-liveness semantics for UML 2.0 Sequence Diagrams. In: Fifth International Conference on Application of Concurrency to System Design (ACSD ‘05), pp. 6–14, Washington, DC, USA. IEEE (2005)
Hallal H., Boroday S., Petrenko A., Ulrich A.: A formal approach to property testing in causally consistent distributed traces. Form. Asp. Comput. 18(1), 63–83 (2006)
Hammal, Y.: Branching time semantics for UML 2.0 Sequence Diagrams. In: Formal Techniques for Networked and Distributed Systems, pp. 259–274. Springer, New York (2006)
Harel D., Marelly R.: Come, Let’s Play: Scenario-Based Programming Using LSCs and the Play-Engine. Springer-Verlag, New York (2003)
Harel D., Maoz S.: Assert and negate revisited: modal semantics for UML Sequence Diagrams. Softw. Syst. Model. 7(2), 237–253 (2008)
Harel, D., Kleinbort, A., Maoz, S.: S2A: a compiler for multi-modal UML Sequence Diagrams. In: Proceedings of International Conference on Fundamental Approaches to Software Engineering (FASE 2007), pp. 121–124 (2007)
Haugen, Ø., Husa, K., Runde, R., Stølen, K.: Why timed Sequence Diagrams require three-event semantics. Technical report 309, University of Oslo. Revised December 2006
Haugen Ø., Husa K., Runde R., Stølen K.: STAIRS towards formal design with Sequence Diagrams. Softw. Syst. Model. 4(4), 355–357 (2005)
International Telecommunication Union. Recommendation Z.120: Message sequence chart (MSC) (2004)
Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., Peterson, A.S.: Feature-oriented domain analysis (FODA) feasibility study. Technical report CMU/SEI-90-TR-021, Carnegie Mellon University (1990)
Klose, J.: Live sequence charts: a graphical formalism for the specification of communication behavior. PhD thesis, C. v.O. Universitat Oldenburg (2003)
Knapp, A., Wuttke, J.: Model checking of UML 2.0 interactions. In: Kühne, T. (ed.) Models in Software Engineering, Workshops and Symposia at MoDELS 2006, pp. 42–51. Springer, New York (2006)
Lund, M.S., Stølen, K.: A fully general operational semantics for UML 2.0 Sequence Diagrams with potential and mandatory choice. In: 14th International Symposium on Formal Methods (FM 2006), pp. 380–395 (2006)
Lund, M.S.: Operational analysis of sequence diagram specifications. PhD thesis, University of Oslo (2008)
Micskei, Z., Waeselynck, H.: UML 2.0 Sequence Diagrams’ semantics. LAAS technical report no. 08389, 37 pp (August 2008)
Mooij, A.J., Goga, N., Romijn, J.M.: Non-local choice and beyond: intricacies of MSC choice nodes. In: Proceedings of Fundamental Approaches to Software Engineering, pp. 273–288. Springer, New York (2005)
Muscholl, A., Peled, D.: Deciding properties of message sequence charts. In: Proceedings of Dagstuhl Seminar on Scenarios: Models, Transformations and Tools, LNCS 3466, pp. 43–65. Springer, New York (2005)
Object Management Group: UML Specification, ad/97-08-11 (1997)
Object Management Group: UML 2.2 Superstructure Specification, formal/09-02-02. http://www.omg.org/docs/formal/09-02-02.pdf (2009)
Object Management Group: UML 2.0 Testing Profile, V1.0, formal/05-07-07, July 2005
Pickin, S., Jézéquel, J.M.: Using UML Sequence Diagrams as the basis for a formal test description language. In: 4th International Conference on Integrated Formal Methods (IFM 2004), pp. 481–500. Springer, New York (2004)
Pickin, S.: Test des composants logiciels pour les télécommunications. PhD thesis, Université de Rennes, France (2003)
Runde, R.: STAIRS—understanding and developing specifications expressed as UML interaction diagrams. PhD thesis, University of Oslo (January 2007)
Runde, R., Haugen, Ø., Stølen, K.: How to transform UML neg into a useful construct. In: Norsk Informatikkonferanse (NIK’05), pp. 55–66. Tapir (2005)
Selic, B.: On the semantic foundations of standard UML 2.0. In: SFM-RT 2004, Bertinoro, Italy, September 13–18, 2004, Revised Lectures, pp. 181–199. Springer, New York (2004)
Sengupta B., Cleaveland R.: Triggered message sequence charts. Trans. Soft. Eng. 32(8), 587–607 (2006). doi:10.1109/TSE.2006.82
Shen, H., Virani, A., Niu, J.: Formalize UML 2 Sequence Diagrams, High Assurance Systems Engineering Symposium, 2008. HASE 2008. 11th IEEE, pp. 437–440, 3–5 Dec 2008
Shen, H., Virani, A., Niu, J.: Formalize UML 2 Sequence Diagrams. Technical report CS-TR-2008-13, University of Texas at San Antonio (2008)
Störrle, H.: Semantics of interactions in UML 2.0. In: IEEE Symposium on Human Centric Computing Languages and Environments (HCC 2003), pp. 129–136. IEEE Computer Society (2003)
Störrle, H.: Assert, Negate and Refinement in UML-2 Interactions, Workshop on Critical Systems Development with UML (CSDUML’03). Technical report TUM-I0317, pp. 79–94. Institut für Informatik, Technische Universität München (2003)
Störrle, H.: Trace semantics of interactions in UML 2.0. Technical report, Institut für Informatik, Ludwig-Maximilians-Universität München (2004)
Waeselynck, H., et al.: Refined design and testing framework, methodology and application results, Hidenets D5.3. http://www.hidenets.aau.dk/Public+Deliverables (2008)
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by Dr. Oystein Haugen.
This work was partially supported by the ReSIST Network of Excellence (IST 026764) funded by the European Union under the Information Society Sixth Framework Programme.
Rights and permissions
About this article
Cite this article
Micskei, Z., Waeselynck, H. The many meanings of UML 2 Sequence Diagrams: a survey. Softw Syst Model 10, 489–514 (2011). https://doi.org/10.1007/s10270-010-0157-9
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10270-010-0157-9