Abstract
The paper presents STAIRS [1], an approach to the compositional development of UML interactions supporting the specification of mandatory as well as potential behavior. STAIRS has been designed to facilitate the use of interactions for requirement capture as well as test specification. STAIRS assigns a precise interpretation to the various steps in incremental system development based on an approach to refinement known from the field of formal methods and provides thereby a foundation for compositional analysis. An interaction may characterize three main kinds of traces. A trace may be (1) positive in the sense that it is valid, legal or desirable, (2) negative meaning that it is invalid, illegal or undesirable, or (3) inconclusive meaning that it is considered irrelevant for the interaction in question. The basic increments in system development proposed by STAIRS, are structured into three main kinds referred to as supplementing, narrowing and detailing. Supplementing categorizes inconclusive traces as either positive or negative. Narrowing reduces the set of positive traces to capture new design decisions or to match the problem more adequately. Detailing involves introducing a more detailed description without significantly altering the externally observable behavior.
Similar content being viewed by others
References
Haugen, Ø. and Stølen, K.: STAIRS—Steps to analyze interactions with refinement semantics. In: Sixth International Conference on UML (UML'2003), no. 2863 in Lecture Notes in Computer Science, pp. 388–402. Springer (2003)
Hoare, C.A.R.: Proof of correctness of data representations. Acta Informatica 1, 271–282 (1972)
Jones, C.B.: Formal development of correct algorithms: An example based on Earley's recogniser. In: ACM Conference on Proving Assertions about Programs, no. 7 in SIGPLAN Notices, pp. 150–169 (1972)
Milner, R.: An algebraic definition of simulation between programs. In: International Joint Conference on Artificial Intelligence, pp. 481–489. Kaufmann (1971)
de Roever, W.-P.: The quest for compositionality: A survey of assertion-based proof systems for concurrent programs: Part 1. In Formal Models in Programming, pp. 181–205. North-Holland (1985)
Jones, C.B.: Development Methods for Computer Programs Including a Notion of Interference. PhD thesis, Oxford University (1981)
Haugen, Ø., Husa, K.E., Runde, R.K., Stølen, K.: Why timed sequence diagrams require three-event semantics. Technical Report 309, Department of Informatics, University of Oslo (2004)
Object Management Group.: UML 2.0 Superstructure Specification, document: ptc/04-10-02 edition (2004)
Haugen, Ø., Møller-Pedersen, B., Weigert, T.: Structural modeling with UML 2.0. In: UML for Real, pp. 53–76. Kluwer (2003)
Jones, C.B.: Systematic Software Development Using VDM. Prentice-Hall (1986)
Abadi, M., Lamport, L.: Conjoining specifications. ACM Trans. Prog. Lang. Sys. 17, 507–533 (1995)
Broy, M., Stølen, K.: Specification and Development of Interactive Systems: Focus on Streams, Interfaces, and Refinement. Springer, Berlin Heidelberg New York (2001)
Haugen, Ø.: Using MSC-92 effectively. In: 7th SDL Forum (SDL'95), pp. 37–49. North-Holland (1995)
International Telecommunication Union.: Recommendation Z.120—Message Sequence Chart (MSC) (1993)
International Telecommunication Union.: Recommendation Z.120 Annex B: Algebraic Semantics of Message Sequence Charts (1994)
International Telecommunication Union.: Recommendation Z.120 Annex B: Formal Semantics of Message Sequence Charts (1998)
Reniers, M.A.: Message Sequence Chart: Syntax and Semantics. PhD thesis, Eindhoven University of Technology (1998)
Combes, P., Pickin, S., Renard, B., Olsen, F.: MSCs to express service requirements as properties on an SDL model: Application to service interaction detection. In: 7th SDL Forum (SDL'95), pp. 243–256. North-Holland (1995)
Damm, W., Harel, D.: LSCs: Breathing life into message sequence charts. In: Formal Methods for Open Object-Based Distributed Systems (FMOODS'99), pp. 293–311. Kluwer (1999)
Haugen, Ø.: MSC-2000 interaction diagrams for the new millennium. Computer Networks 35, 721–732 (2001)
Harel, D., Marelly, R.: Specifying and executing behavioral requirements: The play-in/play-out approach. Soft. Sys. Model. 2, 82–107 (2003)
Krüuger, I.: Distributed System Design with Message Sequence Charts. PhD thesis, Technische Universität München (2000)
Jacobson, I., Booch, G., Rumbaugh, J.: The Unified Software Development Process. Addison-Wesley (1999)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Haugen, Ø., Husa, K.E., Runde, R.K. et al. STAIRS towards formal design with sequence diagrams. Softw Syst Model 4, 355–357 (2005). https://doi.org/10.1007/s10270-005-0087-0
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10270-005-0087-0