UML Aspect Specification Using Role Models
We demonstrate a flexible technique for aspect specification using the UML. The technique uses Role Models to specify design aspects. Roles allow greater flexibility in an aspect over other template-based techniques (e.g. profile extensions). While Role Models do allow us to create templates, they also allow us to create flexible specifications that can be applied by identifying existing model elements that can play aspect roles either as is, or with augmentation based on the aspect specification. This additional capability means that our aspect designs can be applied to specific system designs with fewer constraints on the designer and the initial system models.
We demonstrate this flexibility by applying a design aspect developed for one problem domain to a problem in a different domain. No changes are needed in the aspect models, although not all portions of the aspect specification are used in the second problem. In addition, there is no need to constrain the problem in the new application of the aspect; the specification technique is flexible enough that we can apply the aspect without change. We are also able to use the same set of weaving rules to compose the aspect with models of the new problem.
Unable to display preview. Download preview PDF.
- 1.Andrade, L. F. and J. L. Fiadeiro. 2001. Coordination technologies for managing information system evolution. Proceedings CAISE’01. LNCS, Springer-Verlag.Google Scholar
- 2.Bergenti, F. and A. Poggi. Promoting reuse in aspect-oriented languages by means of aspect views.Google Scholar
- 3.Bergmans, L. and M. Aksit. 2001. Composing crosscutting concerns using composition filters. Communications of the ACM 44(10, October):51–57.Google Scholar
- 4.Clarke, S. and R. J. Walker. 2001. Composition patterns: an approach to designing reusable aspects.Google Scholar
- 5.Fiadeiro, J. L. Co-ordination based development and evolution.Google Scholar
- 6.France, R. B., D. K. Kim, and E. Song. 2002. Patterns as precise characterizatons of designs. Technical Report 02-101, Computer Science Department, Colorado State University.Google Scholar
- 7.France, R., D. K. Kim, E. Song, and S. Ghosh. 2001. Using roles to characterize model families. Proceedings of the Tenth OOPSLA Workshop on Behavioral Semantics: Back to the Basics.Google Scholar
- 8.France, R. and G. Georg. 2002. Modeling fault tolerant concerns using aspects. submitted to ISSRE 2002.Google Scholar
- 9.Gray, J., T. Bapty, S. Neema, and J. Tuck. 2001. handling crosscutting constraints in domain-specific modeling. Communications of the ACM 44(10, October):87–93.Google Scholar
- 10.Jurjens, J. 2001. Towards development of secure systems using UMLsec. 4th International Conference on Fundamental Approaches to Software Engineering (FASE 2001):187–200.Google Scholar
- 11.Kiczales, G., E. Hilsdale, J. Hugunin, M. Kersten, J. Palm, and W. G. Griswold. 2001. Getting started with AspectJ. Communications of the ACM 44(10, October):59–65.Google Scholar
- 12.Lieberherr, K., D. Orleans, and J. Ovlinger. 2001. Aspect-oriented programming with adaptive methods. Communications of the ACM 44(10, October):39–41.Google Scholar
- 13.Netinant, P., T. Elrad, and M. E. Fayad. 2001. A layered apporach to building open aspect-oriented systems. Communications of the ACM 44(10, October):83–85.Google Scholar
- 14.Object Management Group. 2001. Unified Modeling Language V. 1.4. http://www.omg.org, September.
- 15.Ossher, H. and p. Tarr. 2001. Using multidimensional separation of concerns to (re)shape evolving software. Communications of the ACM 44(10, October):43–50.Google Scholar
- 16.Pace, J. A. D. and M. R. Campo. 2001. Analyzing the role of aspects in software design. Communications of the ACM 44(10, October).Google Scholar
- 17.Silva, A. R. Separation and composition of overlapping and interacting concerns.Google Scholar
- 18.Silva, A. R. 1999. Separation and composition of overlapping and interacting concerns. In OOPSLA’ 99, Multi-Dimensional Separation of Concerns in Object-Oriented Systems. http://www.esw.inesc.pt/dasco/.
- 19.Sullivan, G. T. 2001. Aspect-oriented programming using reflection and metaobject protocols. Communications of the ACM 44(10, October):95–97.Google Scholar
- 20.Suzuki, J. and Y. Yamamoto. 1999. Extending UML with aspects: Aspect support in the design phase. Proceedings of the third ECOOP Aspect-Oriented Programming Workshop.Google Scholar
- 21.Warmer, J. and A. Kleppe. 1999. The Object Constraint Language, Addison Wesley Longman, Inc.Google Scholar