Abstract
The state diagram notation, a derivative of Harel’s StateCharts, is an important component of the Unified Modeling Language (UML). It is the primary means of describing object behaviour: by associating a state diagram with a particular class, a designer may specify how objects of that class should perform sequences of actions in response to incoming events.
This paper explains that, under the default interpretation, state diagrams are adequate only for designs in which: each object may admit at most one thread of execution; different threads of execution could never interfere; and it is impossible for an object to invoke an operation upon itself. The paper argues that these limitations are unsatisfactory.
An alternative interpretation is then presented, in which separate diagrams are used to describe the object state and the transient, operation state. The resulting separation of concerns – between control flow and state abstraction – produces a simpler, more scalable approach to specification, and one that is adequate for the precise description of concurrent behaviour.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Davies, J., Crichton, C.: Refinement and concurrency in UML. In: Proceedings of REFINE 2002. Springer, Heidelberg (2002)
Engels, G., Küster, J.M., Groenewegen, L.: Consistent interaction of software components. In: Integrated Design and Process technology. Society for Design and Process Science (June 2002)
Engels, G., Küster, J.M., Heckel, R., Groenewegen, L.: A methodology for specifying and analyzing consistency of object-oriented behavioral models. In: 8th European Software Engineering Conference, and ACM SIGSOFT Symposium on the Foundations of Software Engineering (2001)
Fischer, C., Olderog, E.-R., Wehrheim, H.: A CSP view on UML-RT structure diagrams. In: Hussmann, H. (ed.) FASE 2001. LNCS, vol. 2029, pp. 91–108. Springer, Heidelberg (2001)
Frankel, D.: Model Driven Architecture: Applying MDA to Enterprise Computing. Wiley, Chichester (2003)
FSEL – Formal Systems (Europe) Ltd. The FDR2 refinement checker, http://www.fsel.com
Object Management Group. UML 2.0 Superstructure Draft Adopted Specification (2003), http://www.omg.org/cgi-bin/doc?ptc/2003-07-06
Harel, D., Gery, E.: Executable object modeling with Statecharts. IEEE Computer 30(7), 31–42 (1997)
Küster, J.M., Stehr, J.: Towards explicit behavioral consistency concepts in the uml. In: Proceedings of SCESM 2003 workshop. IEEE, Los Alamitos (2003)
Ober, I., Stan, I.: On the concurrent object model of UML. In: Amestoy, P.R., Berger, P., Daydé, M., Duff, I.S., Frayssé, V., Giraud, L., Ruiz, D. (eds.) Euro-Par 1999. LNCS, vol. 1685, p. 1377. Springer, Heidelberg (1999)
Roscoe, A.W.: Theory and Practice of Concurrency. Prentice-Hall, Englewood Cliffs (1997)
Sunyé, G., Pollet, D., Le Traon, Y., Jézéquel, J.-M.: Refactoring UML models. In: Gogolla, M., Kobryn, C. (eds.) UML 2001. LNCS, vol. 2185, pp. 134–148. Springer, Heidelberg (2001)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Davies, J., Crichton, C. (2003). Using State Diagrams to Describe Concurrent Behaviour. In: Dong, J.S., Woodcock, J. (eds) Formal Methods and Software Engineering. ICFEM 2003. Lecture Notes in Computer Science, vol 2885. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-39893-6_8
Download citation
DOI: https://doi.org/10.1007/978-3-540-39893-6_8
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-20461-9
Online ISBN: 978-3-540-39893-6
eBook Packages: Springer Book Archive