Skip to main content
Log in

LSCs: Breathing Life into Message Sequence Charts

  • Published:
Formal Methods in System Design Aims and scope Submit manuscript

Abstract

While message sequence charts (MSCs) are widely used in industry to document the interworking of processes or objects, they are expressively weak, being based on the modest semantic notion of a partial ordering of events as defined, e.g., in the ITU standard. A highly expressive and rigorously defined MSC language is a must for serious, semantically meaningful tool support for use-cases and scenarios. It is also a prerequisite to addressing what we regard as one of the central problems in behavioral specification of systems: relating scenario-based inter-object specification to state-machine intra-object specification. This paper proposes an extension of MSCs, which we call live sequence charts (or LSCs), since our main extension deals with specifying “liveness”, i.e., things that must occur. In fact, LSCs allow the distinction between possible and necessary behavior both globally, on the level of an entire chart and locally, when specifying events, conditions and progress over time within a chart. This makes it possible to specify forbidden scenarios, for example, and enables naturally specified structuring constructs such as subcharts, branching and iteration.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. R. Alur, G.J. Holzmann, and D. Peled, “An analyzer for message sequence charts,” in T. Margaria and B. Steffen (Eds.), Tools and Algorithms for the Construction and Analysis of Systems (TACAS'96). Lecture Notes in Computer Science, Vol. 1055, Springer-Verlag, 1996, pp. S.35–48.

    Google Scholar 

  2. R. Alur, G.J. Holzmann, and D. Peled, “An analyzer for message sequence charts,” Software—Concepts and Tools, Vol. 17, No. 2, pp. 70–77, 1996.

    Google Scholar 

  3. J.R. Burch, E.M. Clarke, K.L. McMillan, D.L. Dill, and J. Hwang, “Symbolic model checking: 1020 states and beyond,” Information and Computation, Vol. 98, No. 2, pp. 142–170, 1992.

    Google Scholar 

  4. J.R. Burch, E.M. Clarke, K.L. McMillan, and D.L. Dill, “Sequential circuit verification using symbolic model checking,” in Proc. 27th ACM/IEEE Design Automation Conference, 1990, pp. 46–51.

  5. G. Booch, I. Jacobson, and J. Rumbaugh, Unified Modeling Language for Object-Oriented Development, Rational Software Corporation, 1996.

  6. H. Ben-Abdallah and S. Leue, “Expressing, and Analyzing Timing Constraints in Message Sequence Chart Specifications,” Technical Report 97–04, Department of Electrical and Computer Engineering, University of Waterloo, 1997.

  7. H. Ben-Abdallah and S. Leue, “Timing constraints in message sequence chart specifications,” in Proc. 10th International Conference on Formal Description Techniques FORTE/PSTV'97, Chapman and Hall, 1997.

  8. U. Brockmeyer and G. Wittich, “Tamagotchis need not die–verification of Statemate designs,” in Tools and Algorithms for the Construction and Analysis of Systems (TACAS'98), 1998, LNCS 1384, pp. 217–231.

  9. U. Brockmeyer and G. Wittich, “Real-Time verification of STATEMATE designs,” in Proc. CAV 98, LNCS 1427, pp. 537–541.

  10. M. Broy, C. Hofmann, I. Kröger, and M. Schmidt, “A graphical description technique for communication in software architectures,” in Joint 1997 Asia Pacific Software Engineering Conference and International Computer Science Conference (APSEC'97/ICSC'97), 1997.

  11. W. Damm, M. Eckrich, U. Brockmeyer, H.-J. Holberg, and G. Wittich, “Einsatz formaler Methoden zur Erhöhung der Sicherheit eingebetteter Systeme im Kfz,” in 17. VDI/VW-Gemeinschaftstagung System-Engineering in der Kfz-Entwicklung, VDI-Tagungsbericht, 1997.

  12. W. Damm, B. Josko, H. Hungar, and A. Pnueli, “A compositional real-time semantics for STATEMATE designs,” in Proc. COMPOS'97. Lecture Notes in Computer Science 1536, pp. 186–238, Springer Verlag, 1998.

  13. W. Damm, B. Josko, and R. Schlör, “Specification and verification of VHDL-based system-level hardware designs,” in E. Börger (Ed.), Specification and Validation Methods, Oxford University Press, 1995, pp. 331–410.

  14. W. Damm and A. Pnueli, “Verifying out-of-order execution,” in D.K. Probst (Ed.), Advances in Hardware Design andVerification: IFIPWG10.5 International Conference on Correct Hardware Design and Verification Methods (CHARME), Montreal, Canada, Chapman and Hall, 1997, pp. 23–47.

    Google Scholar 

  15. B.P. Douglass, Doing Hard Time: Developing Real-Time Systems with UML, Objects, Frameworks, and Patterns, Addison Wesley, Reading, MA, 1999.

    Google Scholar 

  16. K. Feyerabend and B. Josko, “A visual formalism for real time requirement specifications,” in M. Bertran and T. Rus (Eds.), Transformation-Based Reactive Systems Development, Proc. 4th International AMAST Workshop on Real-Time Systems and Concurrent and Distributed Software, ARTS'97. Lecture Notes in Computer Science, Vol. 1231, Springer-Verlag, 1997, pp. 156–168.

    Google Scholar 

  17. J. Grabowski, P. Graubmann, and E. Rudolph, “Towards a Petri net based semantics definition for message sequence charts,” in O. Ffrgemand and A. Sarma (Eds.), SDL'93: Using Objects, Proc. 6th SDL Forum, North-Holland, 1993, pp. 179–190.

  18. D. Harel, “Statecharts: A visual formalism for complex systems,” Science of Computer Programming, Vol. 8, pp. 231–274, 1987.

    Google Scholar 

  19. D. Harel, “From play-in scenarios to code: An achievable dream,” Computer, to appear. Preliminary version in Tom Maibaum (Ed.), Proc. Fundamental Approaches to Software Engineering (FASE). Lecture Notes in Computer Science, Vol. 1783, Springer-Verlag, 2000, pp. 22–34, IEE Computer 34:1, Jan. 2001, pp. 53–60.

    Google Scholar 

  20. D. Harel and E. Gery, “Executable object modeling with statecharts,” IEEE Computer, Vol. 30, No. 7, pp. 31–42, 1997.

    Google Scholar 

  21. D. Harel, H. Lachover, A. Naamad, A. Pnueli, M. Politi, R. Sherman, A. Shtull-Trauring, and M. Trakhtenbrot, “STATEMATE: A working environment for the development of complex reactive systems,” IEEE Trans. Software Engineering, Vol. 16, pp. 403–414, 1990.

    Google Scholar 

  22. D. Harel and H. Kugler, “Synthesizing object systems from LSC specifications,” in Proc. Fifth Int. Conf. on Implementation and Application of Automata (CIAA 2000). July 2000 Lecture Notes in Computer Science, Springer-Verlag, 2000.

  23. D. Harel and M. Politi, Modeling Reactive Systems with Statecharts: The STATEMATE Approach, McGraw-Hill, 1998.

  24. J. Helbig and P. Kelb, “An OBDD representation of statecharts,” in Proc. European Design and Test Conference (EDAC), 1994, pp. 142–148.

  25. I. Jacobson, Object-Oriented Software Engineering: A Use Case Driven Approach, Addison-Wesley, Reading, MA, 1992.

    Google Scholar 

  26. K. Koskimies and E. Makinen, “Automatic synthesis of state machines from trace diagrams,” Software— Practice and Experience, Vol. 24, No. 7, pp. 643–658, 1994.

    Google Scholar 

  27. K. Koskimies, T. Systa, J. Tuomi, and T. Mannisto, “Automated support for modeling OO software,” IEEE Software, Vol. 15, No. 1, pp. 87–94, 1998.

    Google Scholar 

  28. I. Krüger, R. Grosu, P. Scholz, and M. Broy, “From MSCs to Statecharts,” in Proc. DIPES'98, Kluwer, 1999.

  29. P.B. Ladkin and S. Leue, “Interpreting message flow graphs,” Formal Aspects of Computing, Vol. 7, No. 5, pp. 473–509, 1995.

    Google Scholar 

  30. S. Leue, L. Mehrmann, and M. Rezai, “Synthesizing ROOM models from message sequence chart specifications,” University of Waterloo Tech. Report 98–06, 1998.

  31. R. Schlör, “Symbolic timing diagrams: A visual formalism for model verification,” Dissertation, Universität Oldenburg, 1998, March 2001.

  32. R. Schlör and W. Damm, “Specification and verification of system level hardware designs using timing diagrams,” in Proc. European Conference on Design Automation, Paris, France, Feb. 1993, pp. 518–524.

  33. R. Schlör, B. Josko, and D. Werth, “Using a visual formalism for design verification in industrial environments,” in Proc. Workshop on Visualization Issues for Formal Methods, VISUAL'98. Lecture Notes in Computer Science 1385, Springer-Verlag, 1998, pp. 208–221.

  34. ITU-TS Recommendation Z.120: Message Sequence Chart (MSC), ITU-TS, Geneva, 1996.

  35. ITU-TS Recommendation Z.120: Message Sequence Chart (MSC)Annex B: Algebraic Semantics of Message Sequence Charts, ITU-TS, Geneva, 1995.

  36. Various documents on the Unified Modeling Language (UML), available from the Object Management Group (OMG), http://www.omg.org.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Damm, W., Harel, D. LSCs: Breathing Life into Message Sequence Charts. Formal Methods in System Design 19, 45–80 (2001). https://doi.org/10.1023/A:1011227529550

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1011227529550

Navigation