Part of the book series:Lecture Notes in Computer Science ((TAOSD,volume 5560))
580Accesses
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.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
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)
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)
Clarke, S., Baniassad, E.: Aspect-Oriented Analysis and Design: The Theme Approach. Addison Wesley, Reading (2005)
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)
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)
Jacobson, I., Ng, P.-W.: Aspect Oriented Software Development with Use Cases. Addison-Wesley Professional, Reading (2004)
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)
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)
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)
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)
Rashid, A.: Views, Aspects and Roles: Symphony or Random Noise? In: Panel Statement at Views, Aspects and Roles Workshop associated with ECOOP 2005 (2005)
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)
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)
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)
de Micheaux, N.L., Rambaud, C.: Confluence for Graph Transformations. Theoretical Computer Science 154, 329–348 (1996)
Wagner, R.: Developing Model Transformations with Fujaba. In: International Fujaba Days, Bayreuth, Germany, pp. 79–82 (2006)
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)
Boner, J., Vasseur, A.: Tutorial on AspectWerkz for Dynamic Aspect-Oriented Programming. In: Aspect Oriented Software Development (2004)
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)
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)
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)
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)
Nicoara, A., Alonso, G.: Dynamic AOP with PROSE. In: International Workshop on Adaptive and Self-Managing Enterprise Applications at CAiSE, Porto, Portugal (2005)
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)
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)
Aldrich, J.: Open Modules: Modular Reasoning about Advice. In: Black, A.P. (ed.) ECOOP 2005. LNCS, vol. 3586, pp. 144–168. Springer, Heidelberg (2005)
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)
Gomaa, H.: Designing Software Product Lines with UML: From Use Cases to Pattern-based Software Architectures. Addison-Wesley Object Technology Series (2005)
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)
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
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)
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)
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)
Reddy, R., Solberg, A., France, R., Ghosh, S.: Composing Sequence Models Using Tags. In: Aspect Oriented Modeling Workshop at MODELS 2006 (2006)
Whittle, J., Araújo, J.: Scenario Modelling with Aspects. In: IEE Proceedings - Software, August 2004, vol. 151, pp. 157–172 (2004)
Klein, J., Kienzle, J.: Reusable Aspect Models. In: Aspect Oriented Modeling Workshop at MODELS 2007 (2007)
Katara, M., Katz, S.: Architectural Views of Aspects. In: Aspect-Oriented Software Development (AOSD), Boston, Massachusetts, pp. 1–10 (2003)
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)
Kim, D.-K., Whittle, J.: Generating UML Models from Domain Patterns. In: Software Engineering Research, Management and Applications, pp. 166–173 (2005)
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)
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)
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)
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)
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)
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)
Mostefaoui, F., Vachon, J.: Design-level Detection of Interactions in Aspect-UML Models using Alloy. Journal of Object Technology 6, 137–165 (2007)
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)
Douence, R., Fradet, P., Südholt, M.: Composition, reuse and interaction analysis of stateful aspects. In: Aspect Oriented Software Development, pp. 141–150 (2004)
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)
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)
Author information
Authors and Affiliations
Dept. of Computing, Lancaster University, Bailrigg, Lancaster, LA1 4YW
Jon Whittle
Dept. of Information and Software Engineering, George Mason University, Fairfax, VA, 22030
Praveen Jayaraman & Ahmed Elkhodary
Dept. of Informatics, FCT, Universidade Nova de Lisboa, 2829-516, Caparica, Portugal
Ana Moreira & João Araújo
- Jon Whittle
You can also search for this author inPubMed Google Scholar
- Praveen Jayaraman
You can also search for this author inPubMed Google Scholar
- Ahmed Elkhodary
You can also search for this author inPubMed Google Scholar
- Ana Moreira
You can also search for this author inPubMed Google Scholar
- João Araújo
You can also search for this author inPubMed Google Scholar
Editor information
Editors and Affiliations
Department of Computer Science, The Technion, 32000, Haifa, Israel
Shmuel Katz
IBM Thomas J. Watson Research Center, P.O. Box 704, 10598, Yorktown Heights, NY, USA
Harold Ossher
Computer Science Department, Colorado State University, 80523-1873, Fort Collins, CO, USA
Robert France
IRISA, Université de Rennes 1, Campus de Beaulieu, 35042, Rennes Cedex, France
Jean-Marc Jézéquel
Rights 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
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)
Share this chapter
Anyone you share the following link with will be able to read this content:
Sorry, a shareable link is not currently available for this article.
Provided by the Springer Nature SharedIt content-sharing initiative