Skip to main content

Abstract

The idea behind Aspect-Oriented Modeling (AOM) is to apply aspect-oriented techniques to (software) models with the aim of modularizing crosscutting concerns. This can be done within different modeling notations, at different levels of abstraction, and at different moments during the software development process. This paper demonstrates the applicability of AOM during the software design phase by presenting parts of an aspect-oriented design of a crisis management system. The design solution proposed in this paper is based on the Reusable Aspect Models (RAM) approach, which allows a modeler to express the structure and behavior of a complex system using class, state and sequence diagrams encapsulated in several aspect models. The paper describes how the model of the “create mission” functionality of the server backend can be decomposed into 23 inter-dependent aspect models. The presentation of the design is followed by a discussion on the lessons learned from the case study. Next, RAM is compared to 8 other AOM approaches according to 6 criteria: language, concern composition, asymmetric and symmetric composition, maturity, and tool support. To conclude the paper, a discussion section points out the features of RAM that specifically support reuse.

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

Access this chapter

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

Similar content being viewed by others

References

  1. Klein, J., Kienzle, J.: Reusable Aspect Models. In: 11th Aspect-Oriented Modeling Workshop, Nashville, TN, USA, September 30 (2007)

    Google Scholar 

  2. Kienzle, J., Abed, W.A., Klein, J.: Aspect-Oriented Multi-View Modeling. In: Proceedings of the 8th International Conference on Aspect-Oriented Software Development - AOSD 2009, March 1-6, pp. 87–98. ACM Press, New York (2009)

    Chapter  Google Scholar 

  3. Abed, W.A., Kienzle, J.: Aspect-Oriented Modeling and Information Hiding. In: 14th Aspect-Oriented Modeling Workshop, Denver, CO, USA, October 4, pp. 1–6 (2009)

    Google Scholar 

  4. Kienzle, J., Gélineau, S.: AO Challenge: Implementing the ACID Properties for Transactional Objects. In: AOSD 2006, pp. 202–213. ACM Press, New York (2006)

    Chapter  Google Scholar 

  5. Kienzle, J., Bölükbaşi, G.: AspectOPTIMA: An Aspect-Oriented Framework for the Generation of Transaction Middleware. Technical Report SOCS-TR-2008.4, McGill University, Montreal, Canada (2008)

    Google Scholar 

  6. Bölükbaşi, G.: Aspectual Decomposition of Transactions. Master’s thesis, School of Computer Science, McGill University, Montreal, Canada (June 2007)

    Google Scholar 

  7. Kienzle, J., Guelfi, N., Mustafiz, S.: Crisis Management Systems: A Case Study for Aspect-Oriented Modeling. Transactions on Aspect-Oriented Software Development 7, 1–22 (2010)

    Google Scholar 

  8. Kienzle, J.: Reusable Aspect Models of the Crisis Management System (2009), http://www.cs.mcgill.ca/~joerg/SEL/RAM_Case_Study.html

  9. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns. Addison Wesley, Reading (1995)

    Google Scholar 

  10. Riehle, D., Siberski, W., Bäumer, D., Megert, D., Zülighoven, H.: Serializer, pp. 293–312 (1997)

    Google Scholar 

  11. Chitchyan, R., Fabry, J., Katz, S., Rensink, A.: Special Section on Dependencies and Interactions with Aspects. Transactions on Aspect-Oriented Software Development 5, 133–134 (2009)

    Article  Google Scholar 

  12. Kienzle, J., Guelfi, N., Mustafiz, S.: Crisis Management Systems – A Case Study for Aspect-Oriented Modeling. Technical Report SOCS-TR-2009.3, McGill University, Montreal, Canada (2009)

    Google Scholar 

  13. Rashid, A.: Aspect-Oriented Database Systems. Springer, Heidelberg (2004)

    MATH  Google Scholar 

  14. Kienzle, J., Duala-Ekoko, E., Gélineau, S.: AspectOPTIMA: A Case Study on Aspect Dependencies and Interactions. Transactions on Aspect-Oriented Software Development 5, 187–234 (2009)

    Article  Google Scholar 

  15. Schauerhuber, A., Schwinger, W., Kapsammer, E., Retschitzegger, W., Wimmer, M., Kappel, G.: A survey on aspect-oriented modeling approaches. Technical report, Business Informatics Group, Vienna University of Technology (2006), http://www.wit.at/people/schauerhuber/publications/aomSurvey/

  16. Stein, D., Hanenberg, S., Unland, R.: A UML-based aspect-oriented design notation for aspectJ. In: AOSD, pp. 106–112 (2002)

    Google Scholar 

  17. Stein, D., Hanenberg, S., Unland, R.: Expressing different conceptual models of join point selections in aspect-oriented design. In: AOSD 2006: Proceedings of the 5th international conference on Aspect-Oriented Software Development, pp. 15–26. ACM Press, New York (2006)

    Chapter  Google Scholar 

  18. Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W.G.: An overview of aspectj. In: Knudsen, J.L. (ed.) ECOOP 2001. LNCS, vol. 2072, pp. 327–353. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  19. Hanenberg, S., Stein, D., Unland, R.: From aspect-oriented design to aspect-oriented programs: tool-supported translation of jpdds into code. In: AOSD 2007 (2007)

    Google Scholar 

  20. Pawlak, R., Duchien, L., Florin, G., Legond-Aubry, F., Seinturier, L., Martelli, L.: A uml notation for aspect-oriented software design. In: First Workshop on Aspect-Oriented Modeling with UML, AOSD 2002 (2002)

    Google Scholar 

  21. Pawlak, R., Seinturier, L., Duchien, L., Martelli, L., Legond-Aubry, F., Florin, G.: Aspect-oriented software development with java aspect components. aspect-oriented software development. In: Filman, R.E., Elrad, T., Clarke, S., Aksit, M. (eds.), ch. 16, pp. 343–369 (2005)

    Google Scholar 

  22. Jacobson, I., Ng, P.W.: Aspect-Oriented Software Development with Use Cases. Addison-Wesley, Reading (2004)

    Google Scholar 

  23. Klein, J., Hélouet, L., Jézéquel, J.M.: Semantic-based weaving of scenarios. In: AOSD 2006: Proceedings of the 5th international conference on Aspect-Oriented Software Development, Bonn, Germany, ACM, New York (2006)

    Google Scholar 

  24. Klein, J., Fleurey, F., Jézéquel, J.M.: Weaving multiple aspects in sequence diagrams. Transactions on Aspect-Oriented Software Development (TAOSD) III, 167–199 (2007)

    Google Scholar 

  25. Cottenier, T., van den Berg, A., Elrad, T.: Joinpoint inference from behavioral specification to implementation. In: Ernst, E. (ed.) ECOOP 2007. LNCS, vol. 4609, pp. 476–500. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  26. Cottenier, T., Berg, A.V.D., Elrad, T.: The motoroal weavr: Model weaving in a large industrial context. In: Industry Track of the 5th International Conference on Aspect-Oriented Software Development (AOSD 2006), Bonn, Germany, ACM, New York (2006)

    Google Scholar 

  27. Aldawud, O., Elrad, T., Bader, A.: Uml profile for aspect-oriented software development. In: 3rd International Workshop on Aspect Oriented Modeling, In conjonction of AOSD 2003, Boston, Massachusetts (March 2003)

    Google Scholar 

  28. Elrad, T., Aldawud, O., Bader, A.: Expressing aspects using uml behavioral and structural diagrams. In: Filman, R.E., Elrad, T., Clarke, S., Aksit, M. (eds.) Aspect-oriented software development (2005)

    Google Scholar 

  29. Clarke, S., Baniassad, E.: Aspect-Oriented Analysis and Design: The Theme Approach. Addison Wesley, Reading (2005) ISBN: 0-321-24674-8

    Google Scholar 

  30. France, R., Ray, I., Georg, G., Ghosh, S.: Aspect-oriented approach to early design modelling. IEE Proceedings Software, 173–185 (August 2004)

    Google Scholar 

  31. Reddy, R., Ghosh, S., France, R.B., Straw, G., Bieman, J.M., Song, E., Georg, G.: Directives for composing aspect-oriented design class models. Transactions on Aspect-Oriented Software Development (TAOSD) I, 75–105 (2006)

    Article  Google Scholar 

  32. Fleurey, F., Baudry, B., France, R., Ghosh, S.: A generic approach for automatic model composition. In: 11th Workshop on Aspect-Oriented Modeling, AOM at Models 2007 (2007)

    Google Scholar 

  33. OMG: Uml superstructure, v2.1.1 (OMG Document number formal/07-02-05)

    Google Scholar 

  34. Whittle, J., Araújo, J.: Scenario modelling with aspects. IEE Proceedings - Software 151(4), 157–172 (2004)

    Article  Google Scholar 

  35. Whittle, J., Jayaraman, P.: Mata: A tool for aspect-oriented modeling based on graph transformation. In: 11th Workshop on Aspect-Oriented Modeling, AOM at Models 2007 (2007)

    Google Scholar 

  36. Morin, B., Klein, J., Kienzle, J., Barais, O., Jézéquel, J.M.: Geko: A generic aspect model weaver. Transactions on Aspect Oriented Software Development, TAOSD (2010) (Under Submission (major changes))

    Google Scholar 

  37. Klein, J., Kienzle, J., Morin, B., Jézéquel, J.M.: Aspect model unweaving. In: Schürr, A., Selic, B. (eds.) MODELS 2009. LNCS, vol. 5795, pp. 514–530. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  38. Morin, B., Klein, J., Barais, O., Jezequel, J.-M.: A generic weaver for supporting product lines. In: Early Aspects Workshop at ICSE, Germany, ACM, New York (2008)

    Google Scholar 

  39. Harrison, W.H., Ossher, H.L., Tarr, P.L., Harrison, W.: Asymmetrically vs. symmetrically organized paradigms for software composition. Technical report, Research Report RC22685, IBM Thomas J. Watson Research (2002)

    Google Scholar 

  40. Muller, P.-A., Fleurey, F., Jézéquel, J.-M.: Weaving executability into object-oriented meta-languages. In: MODELS/UML 2005. LNCS, Springer, Heidelberg (2005)

    Google Scholar 

  41. Parnas, D.L.: On the criteria to be used in decomposing systems into modules. Communications of the ACM 15(12), 1053–1058 (1972)

    Article  Google Scholar 

  42. France, R., Fleurey, F., Reddy, R., Baudry, B., Ghosh, S.: Providing Support for Model Composition in Metamodels. In: Entreprise Distributed Object Computing Conference, EDOC 2007, Annapolis, MD, USA (2007)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Kienzle, J., Al Abed, W., Fleurey, F., Jézéquel, JM., Klein, J. (2010). Aspect-Oriented Design with Reusable Aspect Models. In: Katz, S., Mezini, M., Kienzle, J. (eds) Transactions on Aspect-Oriented Software Development VII. Lecture Notes in Computer Science, vol 6210. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-16086-8_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-16086-8_8

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-16085-1

  • Online ISBN: 978-3-642-16086-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics