Skip to main content

Concern-Oriented Behaviour Modelling with Sequence Diagrams and Protocol Models

  • Conference paper
  • First Online:
Behavior Modeling -- Foundations and Applications

Part of the book series: Lecture Notes in Computer Science ((LNISA,volume 6368))

Abstract

Concern-Oriented REuse (CORE) is a multi-view modelling approach that builds on the disciplines of model-driven engineering, software product lines and aspect-orientation to define broad units of reuse, so called concerns. Concerns specify the essence of a design solution and its different variations, if any, using multiple structural and behavioural views, and expose the encapsulated functionality through a three-part interface: a variation, a customization and a usage interface. Concerns can reuse other concerns, and model composition techniques are used to create complex models in which these concerns are intertwined. In such a context, specifying the composition of the models is a non-trivial task, in particular when it comes to specifying the composition of behavioural models. This is the case for CORE message views, which define behaviour using sequence diagrams. In this paper we describe how we added an additional behavioural view to CORE – the state view – that specifies the allowed invocation protocol of class instances. We discuss why Protocol Modelling, a compositional modelling approach based on state diagrams, is an appropriate notation to specify such a state view, and show how we added support for protocol modelling to the CORE metamodel. Finally, we demonstrate how to model using the new state views by means of an example, and explain how state views can be exploited to model-check the correctness of behavioural compositions.

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 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.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

Notes

  1. 1.

    TouchCORE, the CORE tool, allows the reuse of existing classes provided by the programming language or frameworks being used.

  2. 2.

    For simplicity and readability reasons, the state machine with the getters and query operations from Association \(<\) Ordered \(>\) were not added to Fig. 15. To create the actual woven model it suffices to add to each of the depicted states all self-transitions of the state Available from the state view in Association \(<\) Ordered \(>\).

  3. 3.

    addCheckpointable and addBackupCopy are the same operation add of class |Data as it is shown in the instantiation compartment of the Fig. 17.

References

  1. TouchCORE Tool. http://touchcore.cs.mcgill.ca

  2. Al Abed, W., Bonnet, V., Schöttle, M., Yildirim, E., Alam, O., Kienzle, J.: TouchRAM: a multitouch-enabled tool for aspect-oriented software design. In: Czarnecki, K., Hedin, G. (eds.) SLE 2012. LNCS, vol. 7745, pp. 275–285. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  3. Alam, O., Kienzle, J., Mussbacher, G.: Concern-oriented software design. In: Moreira, A., Schätz, B., Gray, J., Vallecillo, A., Clarke, P. (eds.) MODELS 2013. LNCS, vol. 8107, pp. 604–621. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  4. Elrad, T., Bader, A., Mahoney, M., Aldawud, O.: Using aspects to abstract and modularize statecharts. In: 5th Aspect-Oriented Modeling Workshop in Conjunction with UML 2004 (2004)

    Google Scholar 

  5. Hoare, C.: Communicating Sequential Processes. Prentice-Hall International, London (1985)

    Google Scholar 

  6. International Telecommunication Union (ITU-T). Recommendation Z.151 (10/12): User Requirements Notation (URN) - Language Definition, October 2012

    Google Scholar 

  7. Kang, K., Cohen, S., Hess, J., Novak, W., Peterson, S.: Feature-oriented domain analysis (FODA) feasibility study. Tech. Rep. CMU/SEI-90-TR-21, Software Engineering Institute, CMU (1990)

    Google Scholar 

  8. Kienzle, J.: Open Multithreaded Transactions – A Transaction Model for Concurrent Object-Oriented Programming. Kluwer Academic Publishers, Dordrecht (2003)

    Google Scholar 

  9. Kienzle, J., Al Abed, W., Klein, J.: Aspect-oriented multi-view modeling. In: Proceedings of the 8th International Conference on Aspect-Oriented Software Development - AOSD 2009, 1–6 March 2009, pp. 87–98. ACM Press, March 2009

    Google Scholar 

  10. Kienzle, J., Duala-Ekoko, E., Gélineau, S.: AspectOPTIMA: A case study on aspect dependencies and interactions. In: Rashid, A., Ossher, H. (eds.) Transactions on AOSD V. LNCS, vol. 5490, pp. 187–234. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  11. Kienzle, J., Gélineau, S.: AO challenge: implementing the ACID properties for transactional objects. In: Proceedings of the 5th International Conference on Aspect-Oriented Software Development - AOSD 2006, 20–24 March 2006. ACM Press, pp. 202–213, March 2006

    Google Scholar 

  12. Klein, J., Kienzle, J.: Reusable aspect models. In: 11th Aspect-Oriented Modeling Workshop, Nashville, TN, USA, 30 September 2007, September 2007

    Google Scholar 

  13. McNeile, A., Roubtsova, E.: Composition semantics for executable and evolvable behavioral modeling in MDA. In: BM-MDA 2009 Proceedings of the 1st Workshop on Behaviour Modelling in Model-Driven Architecture, pp. 1–8 (2009)

    Google Scholar 

  14. McNeile, A., Roubtsova, E.: Aspect-oriented development using protocol modeling. In: Katz, S., Mezini, M., Kienzle, J. (eds.) Transactions on Aspect-Oriented Software Development VII. LNCS, vol. 6210, pp. 115–150. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  15. McNeile, A., Simons, N.: Protocol modelling: a modelling approach that supports reusable behavioural abstractions. Softw. Syst. Model. 5(1), 91–107 (2006)

    Article  Google Scholar 

  16. Miller, G.: The magical number seven, plus or minus two: some limits on our capacity for processing information. Psycholog. Rev. 63(2), 81 (1956)

    Article  Google Scholar 

  17. Object Management Group. Unified Modeling Language: Superstructure (v 2.4.1), December 2011

    Google Scholar 

  18. Rashid, A., Ossher, H. (eds.): Transactions on Aspect-Oriented Development (TAOSD VI), vol. 5490. Springer, Heidelberg (2009). Special Issue on Dependencies and Interactions with Aspects

    Google Scholar 

  19. Rossi, M., Brinkkemper, S.: Complexity metrics for systems development methods and techniques. Inf. Syst. 21(2), 209–227 (1996)

    Article  Google Scholar 

  20. Rumpe, B.: Towards model and language composition. In: Proceedings of the First Workshop on the Globalization of Domain Specific Languages, GlobalDSL 2013, pp. 4–7. ACM, New York (2013)

    Google Scholar 

  21. Schmidt, D.C.: Model-driven engineering. IEEE Comput. 39, 41–47 (2006)

    Article  Google Scholar 

  22. Schöttle, M.: Aspect-Oriented Behavior Modeling in Practice. M.Sc. Thesis, Department of Computer Science, Karlsruhe University of Applied Sciences, September 2012

    Google Scholar 

  23. Schöttle, M., Kienzle, J.: On the challenges of composing multi-view models. In: The GEMOC 2013 Workshop Co-located with the 16th International Conference on Model Driven Engineering Languages and Systems (MODELS 2013), October 2013

    Google Scholar 

  24. Sweller, J.: Cognitive load during problem solving: effects on learning. Cogn. Sci. 12(2), 257–285 (1988)

    Article  Google Scholar 

  25. Whittle, J.: The truth about model-driven development in industry - and why researchers should care (2012). http://www.slideshare.net/jonathw/whittle-modeling-wizards-2012/

  26. Whittle, J., Hutchinson, J., Rouncefield, M., Burden, H., Heldal, R.: Industrial adoption of model-driven engineering: are the tools really the problem? In: Moreira, A., Schätz, B., Gray, J., Vallecillo, A., Clarke, P. (eds.) MODELS 2013. LNCS, vol. 8107, pp. 1–17. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  27. Zhang, G., Hölzl, M.: HiLA: high-level aspects for UML state machines. In: Ghosh, S. (ed.) MODELS 2009. LNCS, vol. 6002, pp. 104–118. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Matthias Schöttle .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Al Abed, W., Schöttle, M., Ayed, A., Kienzle, J. (2015). Concern-Oriented Behaviour Modelling with Sequence Diagrams and Protocol Models. In: Roubtsova, E., McNeile, A., Kindler, E., Gerth, C. (eds) Behavior Modeling -- Foundations and Applications. Lecture Notes in Computer Science(), vol 6368. Springer, Cham. https://doi.org/10.1007/978-3-319-21912-7_10

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-21912-7_10

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-21911-0

  • Online ISBN: 978-3-319-21912-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics