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”.
Similar content being viewed by others
References
Bowen B, Schneider FB (1985) Defining liveness. Inf Process Lett 21(4): 181–185
Bowles JKF (2006) Decomposing interactions. In: Algebraic methodology and software technology (AMAST 2006). LNCS, vol 4019. Springer, Berlin, pp 189–203
Broy M, Stølen K (2001) Specification and development of interactive systems: FOCUS on streams, interfaces, and refinement. Springer, Berlin
Back R-J, von Wright J (1998) Refinement calculus: a systematic introduction. Springer, Berlin
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
Cavarra A, Filipe JK (2005) Combining sequence diagrams and OCL for liveness. Electron Notes Theor Comput Sci 115: 19–38
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
Damm W, Harel D (2001) LSC’s: breathing life into message sequence charts. Formal Methods Syst Des 19(1): 45–80
Filipe JK (2006) Modelling concurrent interactions. Theor Comput Sci 351(2): 203–220
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
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
Haugen Ø, Husa KE, Runde RK, Stølen K (2005) STAIRS towards formal design with sequence diagrams. Softw Syst Model 4(4): 349–458
Harel D, Marelly R (2003) Come, let’s play: scenario-based programming using LSCs and the play-engine. Springer, Berlin
Harel D, Maoz S (2008) Assert and negate revisited: modal semantics for UML sequence diagrams. Softw Syst Model 7(2): 237–252
Hoare CAR (1985) Communicating sequential processes. Prentice-Hall
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
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
Jacob J (1989) On the derivation of secure components. In: Proceedings of the IEEE symposium on security and privacy, pp 242–247
Juristo N, Moreno AM, Vegas S (2004) Reviewing 25 years of testing technique experiments. Empirical Softw Eng 9(1–2): 7–44
Jürjens J (2001) Secrecy-preserving refinement. In: Formal methods for increasing software productivity (FME 2001). LNCS, vol 2021. Springer, Berlin, pp 135–152
Krüger IH (2000) Distributed system design with message sequence charts. PhD thesis. Technische Universität München
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
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
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
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
Lund MS (2008) Operational analysis of sequence diagram specifications. PhD thesis, University of Oslo
Lund MS (2009) Model-based testing with the escalator tool. Telektronikk 105(1): 117–125
Lee D, Yannakakis M (1996) Principles and methods of testing finite state machines—a survey. Proc IEEE 84(8): 1090–1123
Micskei Z, Waeselynck H (2010) The many meanings of UML 2 sequence diagrams: a survey. Softw Syst Model (Online First), 1–26
Object Management Group (2006) Object constraint language 2.0, document: formal/2006-05-01 edition
Object Management Group (2010) UML 2.3 superstructure specification, document: formal/2010-05-05 edition
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
Runde RK, Øystein H, Stølen K (2005) Refining UML interactions with underspecification and nondeterminism. Nordic J Comput 12(2): 157–188
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
Roscoe AW (1998) The theory and practice of concurrency. Prentice-Hall
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
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
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
Sengupta B, Cleaveland R (2006) Triggered message sequence charts. IEEE Trans Softw Eng 32(8): 587–607
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
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
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
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
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
Walicki M, Meldal S (2001) Nondeterminism vs. underspecification. In: Proceedings systemics, cybernetics and informatics (ISAS-SCI 2001). IIIS, pp 551–555
Author information
Authors and Affiliations
Corresponding author
Additional information
by Jim Woodcock
Rights 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
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00165-011-0192-5