Skip to main content
Log in

Relating computer systems to sequence diagrams: the impact of underspecification and inherent nondeterminism

  • Original Article
  • Published:
Formal Aspects of Computing

Abstract

Having a sequence diagram specification and a computer system, we need to answer the question: Is the system compliant with the sequence diagram specification in the desired way? We present a procedure for answering this question for sequence diagrams with underspecification and inherent nondeterminism. The procedure is independent of any concrete technology, and relies only on the execution traces that may be produced by the system. If all traces are known, the procedure results in either “compliant” or “not compliant”. If only a subset of the traces is known, the conclusion may also be “likely compliant” or “likely not compliant”.

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.

Institutional subscriptions

Similar content being viewed by others

References

  1. Bowen B, Schneider FB (1985) Defining liveness. Inf Process Lett 21(4): 181–185

    Article  MATH  Google Scholar 

  2. Bowles JKF (2006) Decomposing interactions. In: Algebraic methodology and software technology (AMAST 2006). LNCS, vol 4019. Springer, Berlin, pp 189–203

  3. Broy M, Stølen K (2001) Specification and development of interactive systems: FOCUS on streams, interfaces, and refinement. Springer, Berlin

  4. Back R-J, von Wright J (1998) Refinement calculus: a systematic introduction. Springer, Berlin

    Book  MATH  Google Scholar 

  5. Cavarra A, Filipe JK (2004) Formalizing liveness-enriched sequence diagrams using ASMs. In: Abstract state machines (ASM 2004). LNCS, vol 3052. Springer, Berlin, pp 62–77

  6. Cavarra A, Filipe JK (2005) Combining sequence diagrams and OCL for liveness. Electron Notes Theor Comput Sci 115: 19–38

    Article  Google Scholar 

  7. Cengarle MV, Knapp A (2004) UML 2.0 interactions: semantics and refinement. In: Proceedings 3rd international workshop on critical systems development with UML (CSDUML’04). Technical report TUM-I0415. Institut für Informatik, Technische Universität München, pp 85–99

  8. Damm W, Harel D (2001) LSC’s: breathing life into message sequence charts. Formal Methods Syst Des 19(1): 45–80

    Article  MATH  Google Scholar 

  9. Filipe JK (2006) Modelling concurrent interactions. Theor Comput Sci 351(2): 203–220

    Article  MATH  Google Scholar 

  10. Gaudel M-C (1995) Testing can be formal, too. In: Theory and practice of software development (TAPSOFT’95). LNCS, vol 915. Springer, Berlin, pp 82–96

  11. Grosu R, Smolka SA (2005) Safety-liveness semantics for UML 2.0 sequence diagrams. In: Proceedings applications of concurrency to system design (ACSD’05). IEEE Computer Society, pp 6–14

  12. Haugen Ø, Husa KE, Runde RK, Stølen K (2005) STAIRS towards formal design with sequence diagrams. Softw Syst Model 4(4): 349–458

    Article  Google Scholar 

  13. Harel D, Marelly R (2003) Come, let’s play: scenario-based programming using LSCs and the play-engine. Springer, Berlin

  14. Harel D, Maoz S (2008) Assert and negate revisited: modal semantics for UML sequence diagrams. Softw Syst Model 7(2): 237–252

    Article  Google Scholar 

  15. Hoare CAR (1985) Communicating sequential processes. Prentice-Hall

  16. Haugen Ø, Stølen K (2003) STAIRS—steps to analyze interactions with refinement semantics. In: The unified modeling language. Modeling languages and applications (UML 2003). LNCS, vol 2863. Springer, Berlin, pp 388–402

  17. International Standards Organization (1989) Information processing systems—open systems interconnection—LOTOS—a formal description technique based on the temporal ordering of observational behaviour—ISO 8807

  18. Jacob J (1989) On the derivation of secure components. In: Proceedings of the IEEE symposium on security and privacy, pp 242–247

  19. Juristo N, Moreno AM, Vegas S (2004) Reviewing 25 years of testing technique experiments. Empirical Softw Eng 9(1–2): 7–44

    Article  Google Scholar 

  20. Jürjens J (2001) Secrecy-preserving refinement. In: Formal methods for increasing software productivity (FME 2001). LNCS, vol 2021. Springer, Berlin, pp 135–152

  21. Krüger IH (2000) Distributed system design with message sequence charts. PhD thesis. Technische Universität München

  22. Knapp A, Wuttke J (2007) Model checking of UML 2.0 interactions. In: Models in software engineering. LNCS, vol 4364. Springer, Berlin, pp 42–51

  23. Larsen PG, Arentoft MM, Monahan BQ, Bear S (1989) Towards a formal semantics of the BSI/VDM specification language. In: Information processing 89: proceedings IFIP 11th world computer congress. Elsevier, Amsterdam, pp 95–100

  24. Lund MS, Refsdal A, Stølen K (2010) Semantics of UML models for dynamic behavior. A survey of different approaches. In: Model-based engineering of embedded real-time systems. LNCS, vol 6100. Springer, Berlin, pp 77–103

  25. Lund MS, Stølen K (2006) Deriving tests from UML 2.0 sequence diagrams with neg and assert. In: Proceedings 1st international workshop on automation of software test (AST’06). ACM Press, pp 22–28

  26. Lund MS (2008) Operational analysis of sequence diagram specifications. PhD thesis, University of Oslo

  27. Lund MS (2009) Model-based testing with the escalator tool. Telektronikk 105(1): 117–125

    MathSciNet  Google Scholar 

  28. Lee D, Yannakakis M (1996) Principles and methods of testing finite state machines—a survey. Proc IEEE 84(8): 1090–1123

    Article  Google Scholar 

  29. Micskei Z, Waeselynck H (2010) The many meanings of UML 2 sequence diagrams: a survey. Softw Syst Model (Online First), 1–26

  30. Object Management Group (2006) Object constraint language 2.0, document: formal/2006-05-01 edition

  31. Object Management Group (2010) UML 2.3 superstructure specification, document: formal/2010-05-05 edition

  32. Runde RK, Haugen Ø, Stølen K (2005) How to transform UML neg into a useful construct. In: Proceedings Norsk Informatikkonferanse (NIK 2005), Tapir, pp 55–66

  33. Runde RK, Øystein H, Stølen K (2005) Refining UML interactions with underspecification and nondeterminism. Nordic J Comput 12(2): 157–188

    MathSciNet  MATH  Google Scholar 

  34. Roscoe B (1995) CSP and determinism in security modelling. In: Proceedings 1995 IEEE symposium on security and privacy. IEEE Computer Society Press, pp 114–127

  35. Roscoe AW (1998) The theory and practice of concurrency. Prentice-Hall

  36. Runde RK, Refsdal A, Stølen K (2007) Relating computer systems to sequence diagrams with underspecification, inherent nondeterminism and probabilistic choice. Part 2: probabilistic choice. Technical report 347, Department of Informatics, University of Oslo

  37. Runde RK, Refsdal A, Stølen K (2011) Relating computer systems to sequence diagrams—the impact of underspecification and inherent nondeterminism. Technical report 410, Department of Informatics, University of Oslo

  38. Steen M, Bowman H, Derrick J, and Boiten E (1997) Disjunction of LOTOS specifications. In: Formal description techniques and protocol specification, testing and verification (FORTE X/PSTV XVII ’97). Chapman & Hall, pp 177–192

  39. Sengupta B, Cleaveland R (2006) Triggered message sequence charts. IEEE Trans Softw Eng 32(8): 587–607

    Article  Google Scholar 

  40. Seehusen F, Stølen K (2006) Information flow property preserving transformation of UML interaction diagrams. In: Proceedings symposium on access control models and technologies (SACMAT 2006). ACM, New York, pp 150–159

  41. Seehusen F, Solhaug B, Stølen K (2009) Adherence preserving refinement of trace-set properties in STAIRS: exemplified for information flow properties and policies. Softw Syst Model 8(1): 45–65

    Article  Google Scholar 

  42. Störrle H (2003) Assert, negate and refinement in UML-2 interactions. In: Proceedings 2nd international workshop on critical systems development with UML (CSDUML’03). Technical report TUM-I0317, Institut für Informatik, Technische Universität München, pp 79–93

  43. Tretmans J (1999) Testing concurrent systems: a formal approach. In: Proceedings 10th international conference on concurrency theory (CONCUR’99). LNCS, vol 1664. Springer, Berlin, pp 46–65

  44. Uchitel S, Brunet G, Chechik M (2007) Behaviour model synthesis from properties and scenarios. In: Proceedings 29th international conference in software engineering (ISCE’07). IEEE Computer Society, pp 34–43

  45. Walicki M, Meldal S (2001) Nondeterminism vs. underspecification. In: Proceedings systemics, cybernetics and informatics (ISAS-SCI 2001). IIIS, pp 551–555

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ragnhild Kobro Runde.

Additional information

by Jim Woodcock

Rights and permissions

Reprints and permissions

About this article

Cite this article

Runde, R.K., Refsdal, A. & Stølen, K. Relating computer systems to sequence diagrams: the impact of underspecification and inherent nondeterminism. Form Asp Comp 25, 159–187 (2013). https://doi.org/10.1007/s00165-011-0192-5

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00165-011-0192-5

Keywords

Navigation