Skip to main content

MATA: A Unified Approach for Composing UML Aspect Models Based on Graph Transformation

  • Chapter
Book cover Transactions on Aspect-Oriented Software Development VI

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

Abstract

This paper describes MATA (Modeling Aspects Using a Transformation Approach), a UML aspect-oriented modeling (AOM) technique that uses graph transformations to specify and compose aspects. Graph transformations provide a unified approach for aspect modeling in that the methods presented here can be applied to any modeling language with a well-defined metamodel. This paper, however, focuses on UML class diagrams, sequence diagrams and state diagrams. MATA takes a different approach to AOM since there are no explicit joinpoints. Rather, any model element can be a joinpoint, and composition is a special case of model transformation. The graph transformation execution engine, AGG, is used in MATA to execute model compositions, and critical pair analysis is used to automatically detect structural interactions between different aspect models. MATA has been applied to a number of realistic case studies and is supported by a tool built on top of IBM Rational Software Modeler.

This paper is an extended version of a paper previously published at the 2007 International MODELS conference [1]. There was also a workshop paper on the MATA tool [2]. The main new contributions are the section on code generation and the evaluation and discussion section. The section on aspect interactions is also new.

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. Whittle, J., Moreira, A., Araújo, J., Rabbi, R., Jayaraman, P., Elkhodary, A.: An Expressive Aspect Composition Language for UML State Diagrams. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 514–528. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  2. Whittle, J., Jayaraman, P.: MATA: A Tool for Aspect-Oriented Modeling based on Graph Transformation. In: Workshop on Aspect Oriented Modeling at the International MODELS Conference, Nashville, TN (2007)

    Google Scholar 

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

    Google Scholar 

  4. France, R., Ray, I., Georg, G., Ghosh, S.: Aspect-oriented approach to early design modeling. In: IEE Proceedings - Software, vol. 151, pp. 173–186 (2004)

    Google Scholar 

  5. Cottenier, T., van den Berg, A., Elrad, T.: Motorola WEAVR: Model Weav-ing in a Large Industrial Context. In: Aspect-Oriented Software Development (AOSD), Vancouver, Canada (2007)

    Google Scholar 

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

    Google Scholar 

  7. Reddy, Y.R., Ghosh, S., France, R., Straw, G., Bieman, J., McEachen, N., Song, E., Georg, G.: Directives for Composing Aspect-Oriented Design Class Models. In: Rashid, A., Aksit, M. (eds.) Transactions on Aspect-Oriented Software Development I. LNCS, vol. 3880, pp. 75–105. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  8. Fleury, F., Baudry, B., France, R., Ghosh, S.: A Generic Approach for Automatic Model Composition. In: Workshop on Aspect Oriented Modeling at MODELS 2007 (2007)

    Google Scholar 

  9. Zhang, G., Hölzl, M., Knapp, A.: Enhancing UML State Machines with Aspects. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 529–543. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  10. Lopez-Herrejon, R., Batory, D.: Modeling Features in Aspect-Based Product Lines with Use Case Slices: An Exploratory Case Study. In: Kühne, T. (ed.) MoDELS 2006. LNCS, vol. 4364, pp. 6–16. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  11. Rashid, A.: Views, Aspects and Roles: Symphony or Random Noise? In: Panel Statement at Views, Aspects and Roles Workshop associated with ECOOP 2005 (2005)

    Google Scholar 

  12. Douence, R., Fritz, T., Loriant, N., Menaud, J.-M., Segura-Devillechaise, M., Sudholt, M.: An Expressive Aspect Language for System Applications with Arachne. In: Aspect-Oriented Software Development (AOSD), Chicago, Illinois, pp. 27–38 (2005)

    Google Scholar 

  13. Stein, D., Hanenberg, S., Unland, R.: Expressing Different Conceptual Models of Join Point Selections in Aspect-Oriented Design. In: Aspect-Oriented Software Development (AOSD), Bonn, Germany, pp. 15–26 (2006)

    Google Scholar 

  14. Markovic, S., Baar, T.: Refactoring OCL Annotated UML Class Diagrams. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 280–294. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  15. de Micheaux, N.L., Rambaud, C.: Confluence for Graph Transformations. Theoretical Computer Science 154, 329–348 (1996)

    Article  MATH  MathSciNet  Google Scholar 

  16. Wagner, R.: Developing Model Transformations with Fujaba. In: International Fujaba Days, Bayreuth, Germany, pp. 79–82 (2006)

    Google Scholar 

  17. Balogh, A., Varro, D.: Advanced Model Transformation Language Constructs in the VIATRA2 Framework. In: ACM Symposium on Applied Computing (Model Transformation Track), Dijon, France, pp. 1280–1287 (2006)

    Google Scholar 

  18. Boner, J., Vasseur, A.: Tutorial on AspectWerkz for Dynamic Aspect-Oriented Programming. In: Aspect Oriented Software Development (2004)

    Google Scholar 

  19. Moreira, A., Rashid, A., Araújo, J.: A Multi-Dimensional Separation of Concerns in Requirements Engineering. In: International Conference on Requirements Engineering (RE), Paris, France, pp. 285–296 (2005)

    Google Scholar 

  20. Rudolf, M.: Utilizing Constraint Satisfaction Techniques for Efficient Graph Pattern Matching. In: Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.) TAGT 1998. LNCS, vol. 1764, pp. 238–251. Springer, Heidelberg (2000)

    Google Scholar 

  21. Taentzer, G.: AGG: A Graph Transformation Environment for Modeling and Validation of Software. In: Pfaltz, J.L., Nagl, M., Böhlen, B. (eds.) AGTIVE 2003. LNCS, vol. 3062, pp. 446–453. Springer, Heidelberg (2004)

    Google Scholar 

  22. Jayaraman, P.: Interaction Verification and Model Composition in Product Lines Using MATA in Dept. of Information and Software Engineering. MS Thesis Fairfax, VA. George Mason University, USA (2007)

    Google Scholar 

  23. Nicoara, A., Alonso, G.: Dynamic AOP with PROSE. In: International Workshop on Adaptive and Self-Managing Enterprise Applications at CAiSE, Porto, Portugal (2005)

    Google Scholar 

  24. Mussbacher, G., Amyot, D., Whittle, J., Weiss, M.: Flexible and Expressive Composition Rules with Aspect-Oriented Use Case Maps (AoUCM). In: Moreira, A., Grundy, J. (eds.) Early Aspects Workshop 2007 and EACSL 2007. LNCS, vol. 4765, pp. 19–38. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  25. Griswold, W., Sullivan, K., Song, Y., Shonle, M., Tewari, N., Cai, Y., Rajan, H.: Modular Software Design with Crosscutting Interfaces. IEEE Software 23, 51–60 (2006)

    Article  Google Scholar 

  26. Aldrich, J.: Open Modules: Modular Reasoning about Advice. In: Black, A.P. (ed.) ECOOP 2005. LNCS, vol. 3586, pp. 144–168. Springer, Heidelberg (2005)

    Google Scholar 

  27. Jayaraman, P., Whittle, J., Elkhodary, A., Gomaa, H.: Model Composition in Product Lines and Feature Interaction Detection using Critical Pair Analysis. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 151–165. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  28. Gomaa, H.: Designing Software Product Lines with UML: From Use Cases to Pattern-based Software Architectures. Addison-Wesley Object Technology Series (2005)

    Google Scholar 

  29. Kohno, T., Stubblefield, A., Rubin, A., Wallach, D.: Analysis of an Electronic Voting System. In: IEEE Symposium on Security and Privacy, pp. 27–40. IEEE Computer Society Press, Los Alamitos (2004)

    Chapter  Google Scholar 

  30. Hartong, M., Goel, R., Wijesekera, D.: Use Misuse Case Driven Forensic Analysis of Positive Train Control: A Preliminary Study. In: 2nd IFIP WG 11.9 International Conference on Digital Forensics, Orlando, FL

    Google Scholar 

  31. Araújo, J., Whittle, J., Kim, D.-K.: Modeling and Composing Scenario-Based Requirements with Aspects. In: International Conference on Requirements Engineering, Kyoto, Japan, pp. 58–67 (2004)

    Google Scholar 

  32. Song, E., Reddy, R., France, R.B., Ray, I., Georg, G., Alexander, R.: Verifiable Composition of Access Control and Application Features. In: ACM Symposium on Access Control Models and Technologies (SACMAT), Stockholm, Sweden, pp. 120–129 (2005)

    Google Scholar 

  33. Klein, J., Helouet, L., Jézéquel, J.-M.: Semantic-Based Weaving of Scenarios. In: Aspect-Oriented Software Development (AOSD), Vancouver, Canada, pp. 27–38 (2006)

    Google Scholar 

  34. Reddy, R., Solberg, A., France, R., Ghosh, S.: Composing Sequence Models Using Tags. In: Aspect Oriented Modeling Workshop at MODELS 2006 (2006)

    Google Scholar 

  35. Whittle, J., Araújo, J.: Scenario Modelling with Aspects. In: IEE Proceedings - Software, August 2004, vol. 151, pp. 157–172 (2004)

    Google Scholar 

  36. Klein, J., Kienzle, J.: Reusable Aspect Models. In: Aspect Oriented Modeling Workshop at MODELS 2007 (2007)

    Google Scholar 

  37. Katara, M., Katz, S.: Architectural Views of Aspects. In: Aspect-Oriented Software Development (AOSD), Boston, Massachusetts, pp. 1–10 (2003)

    Google Scholar 

  38. Kim, D.-K.: Evaluating Conformance of UML Models to Design Patterns. In: International Conference on the Engineering of Complex Computer Systems (ICECCS), Shanghai, China, pp. 30–31 (2005)

    Google Scholar 

  39. Kim, D.-K., Whittle, J.: Generating UML Models from Domain Patterns. In: Software Engineering Research, Management and Applications, pp. 166–173 (2005)

    Google Scholar 

  40. Kim, D.K.: A Pattern-Based Technique for Developing UML Models of Access Control Systems. In: 30th Annual International Computer Software and Applications Conference (COMPSAC), Chicago, IL, pp. 317–324 (2006)

    Google Scholar 

  41. Baudry, B., Fleurey, F., France, R., Reddy, R.: Exploring the Relationship between Model Composition and Model Transformation. In: Aspect Oriented Modeling Workshop at MODELS 2005 (2005)

    Google Scholar 

  42. France, R., Fleurey, F., Reddy, R., Baudry, B., Ghosh, S.: Providing Support for Model Composition in Metamodels. In: IEEE International EDOC Conference, Annapolis, Maryland (2007)

    Google Scholar 

  43. Zhang, J., Cottenier, T., van den Berg, A., Gray, J.: Aspect Interference and Composition in the Motorola Aspect-Oriented Modeling Weaver. In: Aspect Oriented Modeling Workshop at MODELS 2006 (2006)

    Google Scholar 

  44. Sanen, F., Loughran, N., Rashid, A., Nedos, A., Jackson, A., Clarke, S., Truyen, E., Joosen, W.: Classifying and Documenting Aspect Interactions. In: Workshop on Aspects, Components and Patterns for Infrastructure Software at AOSD, Bonn, Germany (2006)

    Google Scholar 

  45. Bakre, S., Elrad, T.: Scenario-based Resolution of Aspect Interactions with Aspect Interaction Charts. In: Aspect-Oriented Software Development, Vancouver, Canada, pp. 1–6 (2007)

    Google Scholar 

  46. Mostefaoui, F., Vachon, J.: Design-level Detection of Interactions in Aspect-UML Models using Alloy. Journal of Object Technology 6, 137–165 (2007)

    Google Scholar 

  47. Douence, R., Fradet, P., Südholt, M.: A Framework for the Detection and Resolution of Aspect Interactions. In: Generative Programming and Component Engineering, Pittsburgh, PA, pp. 173–188 (2002)

    Google Scholar 

  48. Douence, R., Fradet, P., Südholt, M.: Composition, reuse and interaction analysis of stateful aspects. In: Aspect Oriented Software Development, pp. 141–150 (2004)

    Google Scholar 

  49. Nejati, S., Sabetzadeh, M., Chechik, M., Easterbrook, S., Zave, P.: Matching and Merging of Statecharts Specifications. In: International Conference on Software Engineering, pp. 54–64 (2007)

    Google Scholar 

  50. Chitchyan, R., Rashid, A., Rayson, P., Waters, R.: Semantics-Based Com-position for Aspect-Oriented Requirements Engineering. In: Aspect-Oriented Software Development (AOSD), Vancouver, Canada, pp. 36–48 (2007)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Whittle, J., Jayaraman, P., Elkhodary, A., Moreira, A., Araújo, J. (2009). MATA: A Unified Approach for Composing UML Aspect Models Based on Graph Transformation. In: Katz, S., Ossher, H., France, R., Jézéquel, JM. (eds) Transactions on Aspect-Oriented Software Development VI. Lecture Notes in Computer Science, vol 5560. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-03764-1_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-03764-1_6

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-03763-4

  • Online ISBN: 978-3-642-03764-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics