Skip to main content

Part of the book series: Lecture Notes in Computer Science ((TAOSD,volume 4620))

Abstract

Handling aspects within models looks promising for managing crosscutting concerns early in the software life-cycle, up from programming to design, analysis and even requirements. At the modeling level, even complex behavioral aspects can easily be described for instance as pairs of sequence diagrams: one for the pointcut specifying the behavior to detect, and the second one for an advice representing the wanted behavior at the join point. While this is fine for informal documentation purposes, or even intuitive enough when a single aspect has to be woven, a more precise semantics of both join point detection and advice weaving is needed for using these modeling artifacts for Model Driven Engineering activities such as code generation or test synthesis. This paper proposes various interpretations for pointcuts that allow multiple behavioral aspects to be statically woven. The idea is to allow join points to match a pointcut even when some extra-messages occur in between. However, with this new way of specifying join points, the composition of the advice with the detected part cannot any longer be just a replacement of the detected part by the advice. We have to consider the events (or the messages) of the join point, but also the events which occur between them, and merge them with the behavior specified within the advice. We thus also propose a formal definition of a new merge operator, and describe its implementation on the Kermeta platform.

This work has been partially supported by the European Network of Excellence on Aspect-Oriented Software Development (AOSD-Europe), 2004–2008.

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 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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Allan, C., Avgustinov, P., Christensen, A.S., Hendren, L., Kuzins, S., Lhotak, O., de Moor, O., Sereni, D., Sittampalam, G., Tibble, J.: Adding trace matching with free variables to aspect. In: OOPSLA 2005. Proceedings of the 20th annual ACM SIGPLAN conference on Object oriented programming, systems, languages, and applications, vol. 40, pp. 345–364. ACM Press, New York (2005)

    Chapter  Google Scholar 

  2. Araujo, J., Whittle, J., Kim.: Modeling and composing scenario-based requirements with aspects. In: Proceedings of RE 2004, Kyoto, Japan (September 2004)

    Google Scholar 

  3. E. Aspect (2006), http://www.early-aspects.net/

  4. Bockisch, C., Kanthak, S., Haupt, M., Arnold, M., Mezini, M.: Efficient control flow quantification. In: OOPSLA 2006. Proceedings of the 21th annual ACM SIGPLAN conference on Object oriented programming, systems, languages, and applications, vol. 41, pp. 125–138. ACM Press, New York (2006)

    Chapter  Google Scholar 

  5. Budinsky, F., Steinberg, D., Merks, E., Ellersick, R., Grose, T.: Eclipse Modeling Framework. The Eclipse Series. Addison Wesley Professional, Reading (2003)

    Google Scholar 

  6. Clarke, S.: Composition of Object-Oriented Software Design Models. PhD thesis, Dublin City University (2001)

    Google Scholar 

  7. Clarke, S., Baniassad, E.: Aspect-Oriented Analysis and Design: The Theme Approach. Addison-Wesley, Reading (2005)

    Google Scholar 

  8. Damm, W., Harel, D.: LSCs: Breathing life into message sequence charts. vol. 19, pp. 45–80 (2001)

    Google Scholar 

  9. Davey, B.A., Priestley, H.A.: Introduction to Lattices and Order. Cambridge Mathematical Textbooks (1990)

    Google Scholar 

  10. Douence, R., Fradet, P., Südholt, M.: A framework for the detection and resolution of aspect interactions. In: Batory, D., Consel, C., Taha, W. (eds.) GPCE 2002. LNCS, vol. 2487, Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  11. Douence, R., Motelet, O., Südholt, M.: A formal definition of crosscuts. In: Yonezawa, A., Matsuoka, S. (eds.) Metalevel Architectures and Separation of Crosscutting Concerns. LNCS, vol. 2192, pp. 170–186. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  12. France, R.B., Kim, D.-K., Ghosh, S., Song, E.: A uml-based pattern specification technique. IEEE TSE 30(3), 193–206 (2004)

    Google Scholar 

  13. ITU-TS. ITU-TS Recommendation Z.120: Message Sequence Chart (MSC). ITU-TS, Geneva (September 1999)

    Google Scholar 

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

    Google Scholar 

  15. Kiczales, G.: The fun has just begun. Keynote of AOSD 2003 (2003)

    Google Scholar 

  16. 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–355. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  17. Klein, J., Caillaud, B., Hélouët, L.: Merging scenarios. In: Workshop on FMICS, pp. 209–226, Linz, Austria (September 2004)

    Google Scholar 

  18. Klein, J., Hélouet, L., Jézéquel, J.-M.: Semantic-based weaving of scenarios. In: AOSD, Bonn, Germany, March 2006, ACM Press, New York (2006)

    Google Scholar 

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

    Google Scholar 

  20. Muller, P.-A., Fleurey, F., Vojtisek, D., Drey, Z., Pollet, D., Fondement, F., Studer, P., Jézéquel, J.-M.: On executable meta-languages applied to model transformations. In: Model Transformation. In: Practice Workshop, Jamaica (2005)

    Google Scholar 

  21. OMG. Uml superstructure, v2.0. OMG Document number formal/05-07-04 (2005)

    Google Scholar 

  22. Omondo (2006), http://www.omondo.com

  23. Ostermann, K., Mezini, M., Bockisch, C.: Expressive pointcuts for increased modularity. In: Black, A.P. (ed.) ECOOP 2005. LNCS, vol. 3586, Springer, Heidelberg (2005)

    Google Scholar 

  24. Rashid, A., Moreira, A.M.D., Araújo, J.: Modularisation and composition of aspectual requirements. In: Proceedings of AOSD 2003, pp. 11–20 (2003)

    Google Scholar 

  25. Reddy, R., France, R., Ghosh, S., Fleurey, F., Baudry, B.: Model composition - a signature-based approach. In: AOM Workshop, Montego Bay (October 2005)

    Google Scholar 

  26. Stein, D., Hanenberg, S., Unland, R.: Expressing different conceptual models of join point selection in aspect-oriented design. In: AOSD, Bonn, Mars (2006)

    Google Scholar 

  27. TopCaseD, (2006), http://www.topcased.org/

  28. Walker, R.J., Viggers, K.: Implementing protocols via declarative event patterns. In: ACM Sigsoft International Symposium on Foundations of Software Engineering (FSE-12). 29(6), 159–169, (2004)

    Google Scholar 

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

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Awais Rashid Mehmet Aksit

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Klein, J., Fleurey, F., Jézéquel, JM. (2007). Weaving Multiple Aspects in Sequence Diagrams. In: Rashid, A., Aksit, M. (eds) Transactions on Aspect-Oriented Software Development III. Lecture Notes in Computer Science, vol 4620. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-75162-5_7

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-75162-5_7

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-75161-8

  • Online ISBN: 978-3-540-75162-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics