Skip to main content

UML Behavior: Inheritance and Implementation in Current Object-Oriented Languages

  • Conference paper
  • First Online:
Book cover «UML»’99 — The Unified Modeling Language (UML 1999)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1723))

Included in the following conference series:

Abstract

The UML dynamic model is described using notions like state, event or active object that current object-oriented languages don’t support. When the implementation is not done using a state machine interpreter, these notions had to be translated into the target language. This work aims to study how to translate as automatically as possible UML state diagrams into current objectoriented languages (OOLs), distinguishing sequential and concurrent execution. This translation requires to map UML notions onto OOLs ones, to adapt the abstract state machine, and to add information to state diagrams. Behavior inheritance is a key problem, and both theoretical and practical solutions are examined to ensure behavior substitutability. Then, two main ways for state representation are compared from the inheritance point of view, and automatic code generation is discussed.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Agha G., Actors: a Model of Concurrent Computation in Distributed Systems, MIT Press, Cambridge, 1986

    Google Scholar 

  2. S.D. Brookes and C.A.R Hoare and A.W. Roscoe, “A Theory of Communicating Sequential Processes”, Journal of the ACM, Vol 31(3), 1984, p.560–599

    Article  MATH  MathSciNet  Google Scholar 

  3. R. Cleaveland, J. Parrow, B. Steffen, “The Concurrency Workbench: A Semantics Based Tool for the Verification of Concurrent Systems”, ACM Trans. on Programming Languages and Systems, Vol.15(1), 1993, p.36–72

    Article  Google Scholar 

  4. Cook S., Daniels J., Designing Object Systems, Prentice Hall, 1994

    Google Scholar 

  5. K.K. Dhara, G.T. Leavens, “Forcing Behavioral Subtyping Through Specification Inheritance”, Proc. Int. conf. on Software Engineering, 1996, pp258–267

    Google Scholar 

  6. J.C. Fernandez, L. Mounier, “On the Fly Verification of behavioural Equivalences and Preorders”. Workshop on Computer-Aided Verification, Springer Verlag, LNCS 575, 1991

    Google Scholar 

  7. Gamma E., Helm R., Johnson R., Vlissides J., “Design Patterns: Elements of Reusable Object-Oriented Software.”, Addison Wesley, 1994.

    Google Scholar 

  8. Harel D., “Statecharts: A Visual Formalism for Complex Systems”, Science of Computer Programming, 1987, p.231–274

    Google Scholar 

  9. Harel D., Gery E., “Executable Object Modeling with Statecharts”, IEEE Computers, July 1997, Vol 30(7), pp31–42

    Google Scholar 

  10. C.A.R. Hoare, Communicating Sequential Processes, Prentice-Hall, 1985

    Google Scholar 

  11. Java Documentation, Sun Microsystems

    Google Scholar 

  12. D. G. Kafura and R. G. Lavender. “Concurrent Object-Oriented Languages and the Inheritance Anomaly”, in Parallel Computers: Theory and Practice, IEEE Press, 1995, pp.165–198

    Google Scholar 

  13. H. Lecoeuche, J.L. Sourrouille, “Introducing states in the object model.”, Proc. TOOLS’93 USA, p.69–81

    Google Scholar 

  14. B.H. Liskov, J.M. Wing, “A Behavioural Notion of Subtyping”, ACM Trans. On Programming Languages and Systems, Vol 16(6), 1994, p.1811–1841

    Article  Google Scholar 

  15. Matsuoka S., Taura K., Yonezawa A., “Highly Efficient and Encapsulated Re-use of Synchronization Code in Concurrent O-O Languages”, OOPSLA’93, ACM Sigplan Notices, 1993 pp. 109–126.

    Google Scholar 

  16. B. Meyer, Object Oriented Software Construction, Prentice Hall, 1988

    Google Scholar 

  17. O. Nierstrasz. “Regular types for active objects”, OOPSLA’93, ACM Sigplan notices 1993, Vol. 28(10), p.1–15

    Article  Google Scholar 

  18. B. Paech, B. Rumpe, “A new Concept of Refinement used for Behaviour Modelling with Automata”, Formal Methods Europe, Springer Verlag, LNCS 873, p.154–175

    Google Scholar 

  19. Papathomas M., “Concurrency in Object-Oriented Programming Languages”, In. Object-Oriented Software Composition, Prentice Hall, 1995, pp.31–68

    Google Scholar 

  20. J. Rumbaugh, “Controlling code. How to implement dynamic models”, JOOP, Vol.6(2), 1993, pp.25–30

    Google Scholar 

  21. J.L. Sourrouille, “Should subclasses inherit of all states and transitions?”, Report on Object Analysis and Design, Vol 2(6), 1996, p.19–21

    Google Scholar 

  22. J.L. Sourrouille, “A framework for the definition of behaviour inheritance”, JOOP, Vol 9(1), 1996, p.17–21

    Google Scholar 

  23. Sourrouille J.L., “Une sémantique pour l’héritage de comportement”, LMO’97, 1997, pp.131–146

    Google Scholar 

  24. B. Stroustrup, The C++ Programming Language, Addison-Wesley, 2nd edition, 1992

    Google Scholar 

  25. C. Tomlinson and V. Singh. “Inheritance and synchronization with enabled-sets”, OOPSLA’89, ACM Sigplan Notices, 1989, pp. 103–112

    Google Scholar 

  26. “OMG Unified Modeling Language Specification (draft)”, Version 1.3, March 1999.

    Google Scholar 

  27. E.Y. Wang, H.A. Richter, B.H.C. Cheng, “Formalizing and Integrating the Dynamic Model within OMT”, Proc. ACM ICSE 1997, p.45–55

    Google Scholar 

  28. P. Wegner and S. Zdonik, “Inheritance as an Incremental Modification Mechanism or What Like Is and Isn’t Like”, Proc. ECOOP 1988, Springer Verlag, p.55–77

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Sourrouille, J.L. (1999). UML Behavior: Inheritance and Implementation in Current Object-Oriented Languages. In: France, R., Rumpe, B. (eds) «UML»’99 — The Unified Modeling Language. UML 1999. Lecture Notes in Computer Science, vol 1723. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-46852-8_33

Download citation

  • DOI: https://doi.org/10.1007/3-540-46852-8_33

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-66712-4

  • Online ISBN: 978-3-540-46852-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics