UML Aspect Specification Using Role Models

  • Geri Georg
  • Robert France
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2425)


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.

Unable to display preview. Download preview PDF.


  1. 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. 2.
    Bergenti, F. and A. Poggi. Promoting reuse in aspect-oriented languages by means of aspect views.Google Scholar
  3. 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. 4.
    Clarke, S. and R. J. Walker. 2001. Composition patterns: an approach to designing reusable aspects.Google Scholar
  5. 5.
    Fiadeiro, J. L. Co-ordination based development and evolution.Google Scholar
  6. 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. 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. 8.
    France, R. and G. Georg. 2002. Modeling fault tolerant concerns using aspects. submitted to ISSRE 2002.Google Scholar
  9. 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. 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. 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. 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. 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. 14.
    Object Management Group. 2001. Unified Modeling Language V. 1.4., September.
  15. 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. 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. 17.
    Silva, A. R. Separation and composition of overlapping and interacting concerns.Google Scholar
  18. 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.
  19. 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. 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. 21.
    Warmer, J. and A. Kleppe. 1999. The Object Constraint Language, Addison Wesley Longman, Inc.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2002

Authors and Affiliations

  • Geri Georg
    • 1
  • Robert France
    • 2
  1. 1.Agilent LaboratoriesAgilent TechnologiesFort CollinsUSA
  2. 2.Department of Computer ScienceColorado State UniversityFort CollinsUSA

Personalised recommendations