ABSTRACT
Model-driven software development improves the way software is developed by capturing key features of the system in models which are developed and refined as the system is created. During the system's lifecycle models are combined and transformed between different levels of abstraction and viewpoints. Aspect-oriented techniques improve software development by providing modularization constructs for the encapsulation of crosscutting concerns. Existing research has already investigated many ways of combining the two paradigms. This paper contributes by presenting XWeave, a model weaver that supports weaving of both models and meta models. XWeave supports the composition of different architectural viewpoints and eases model evolution. Furthermore, the tool plays an important role in software product line engineering, as variable parts of architectural models can be woven according to some product configuration. The concepts are illustrated with an example of a home automation system.
- Stahl, T., and Völter, M. Model-Driven Software Development. Wiley & Sons, 2006. Google ScholarDigital Library
- AOSD website, http://www.aosd.netGoogle Scholar
- Filman, R., Elrad, T., Clarke, S., and Aksit M. Aspect-Oriented Software Development. Addison-Wesley, 2004. Google ScholarDigital Library
- AspectJ website, http://www.eclipse.org/aspectj/Google Scholar
- CaesarJ website, http://www.caesarj.org/Google Scholar
- Concern Manipulation Environment (CME) website, http://www.research.ibm.com/cme/Google Scholar
- First Workshop on Models and Aspects --- Handling Crosscutting Concerns in MDSD, Glasgow, UK, July, 2005. http://www.st.informatik.tu-darmstadt.de:8080/ecoop2005/maw/Google Scholar
- Second Workshop on Models and Aspects --- Handling Crosscutting Concerns in MDSD, Nantes, France, July, 2006. http://www.kircher-schwanninger.de/workshops/MDD&AOSD/Google Scholar
- Aspect-oriented Modelling Workshops, http://www.aspect-modeling.org/Google Scholar
- Clarke, S., and Baniassad, E. Aspect-Oriented Analysis and Design. The Theme Approach. Addison-Wesley, 2005. Google ScholarDigital Library
- Simmonds, D., Solberg, A., Reddy, R., France, R., and Ghosh, R. An Aspect Oriented Model Driven Framework. In Proceedings of the Ninth IEEE The Enterprise Computing Conference (EDOC), Enschede, Netherlands, September, 2005. Google ScholarDigital Library
- Sánchez, P., Magno, J., Fuentes, L., Moreira, A., and Araújo, J. Towards MDD Transformations from AO Requirements into AO Architecture. In Proceedings of the Third European Workshop on Software Architecture (EWSA), Nantes, France, September, 2006. Google ScholarDigital Library
- Eclipse Modeling Framework website, http://www.eclipse.org/emfGoogle Scholar
- openArchitecture Ware Documentation website, http://www.eclipse.org/gmt/oaw/doc/Google Scholar
- openArchitecture Ware website, http://www.eclipse.org/gmt/oawGoogle Scholar
- Lopez-Herrejon, R., E. Towards Crosscutting Metrics for Aspect-Based Features. In Proceedings of the First Workshop on Aspect-Oriented Product Line Engineering (AOPLE), Portland, Oregon, October, 2006.Google Scholar
- OMG MetaObject Facility website, http://www.omg.org/mof/Google Scholar
- Pohl, K., Böckle, G., and van der Linden, F. Software Product Line Engineering. Foundations, Principles, and Techniques. Springer, 2005. Google ScholarDigital Library
- Czarnecki, K., and Antkiewicz, M. Mapping Features to Models: A Template Approach Based on Superimposed Variants. In Proceedings of the Fourth International Conference on Generative Programming and Component Engineering (GPCE), Tallinn, Estonia, September, 2005. Google ScholarDigital Library
- Eclipse Graphical Modeling Framework website, http://www.eclipse.org/gmfGoogle Scholar
- Atlas Model Weaver website, http://www.eclipse.org/gmt/amwGoogle Scholar
- C-SAW website, http://www.cis.uab.edu/gray/Research/C-SAW/Google Scholar
- Clarke, S. Composition of Object-Oriented Design Models. PhD thesis, Dublin City University, 2001.Google Scholar
- Stein, D., Hanenberg, S., and Unland, R. Modeling Pointcuts. In Proceedings of the Early Aspects Workshop, Lancaster, UK, March, 2004.Google Scholar
- pure::variants Variant Management Tool website, http://www.pure-systems.com/3.0.htmlGoogle Scholar
- OMG UML 2.0 Object Constraint Language website, http://www.uml.orgGoogle Scholar
Index Terms
- XWeave: models and aspects in concert
Recommendations
Aspect-Oriented Model-Driven Software Product Line Engineering
Transactions on Aspect-Oriented Software Development VISoftware product line engineering aims to reduce development time, effort, cost, and complexity by taking advantage of the commonality within a portfolio of similar products. The effectiveness of a software product line approach directly depends on how ...
Deriving detailed design models from an aspect-oriented ADL using MDD
Software architects can separate crosscutting concerns more appropriately by using an aspect-oriented ADL, concretely AO-ADL. This paper illustrates how aspect-orientation and model-driven development technologies can be used to enhance the system ...
Tool-Supported Refactoring of Existing Object-Oriented Code into Aspects
Aspect-Oriented Programming (AOP) provides mechanisms for the separation of crosscutting concerns—functionalities scattered through the system and tangled with the base code. Existing systems are a natural testbed for the AOP approach since they often ...
Comments