• DocumentCode
    994552
  • Title

    Sustainable architectures by combining flexibility and strictness in Object Teams

  • Author

    Herrmann, S.

  • Author_Institution
    Tech. Univ. Berlin, Germany
  • Volume
    151
  • Issue
    2
  • fYear
    2004
  • fDate
    4/5/2004 12:00:00 AM
  • Firstpage
    57
  • Lastpage
    66
  • Abstract
    Unanticipated software evolution requires powerful techniques for separation of concerns to cleanly integrate a new feature into a design which did not pre-plan for this feature. Aspect-oriented programming languages provide mechanisms by which such integration can be performed in noninvasive ways. This advantage is commonly achieved for the price of introducing invisible links and control flows in an application, which are perceived as an obstacle to understandability, analysability and safety. The resulting trade-off between flexibly structuring crosscutting concerns and rigorously pursuing program safety tends to endanger the usefulness of current AOSD approaches for long term evolution. The model of Object Teams combines ideas from many programming languages, providing greater expressiveness for flexible software composition than each of its predecessors. In the paper it is argued that Object Teams also provide strong concepts for encapsulation, which help for modular comprehension and analysis of aspect-oriented programs developed in this model. Combining the different concepts of Object Teams allows one to balance flexibility and strictness so as to provide exactly the openness that is needed for integrating unanticipated changes while sustaining a crisp architecture.
  • Keywords
    data encapsulation; object-oriented programming; programming languages; software architecture; AOSD approach; Object Team; aspect-oriented programming language; encapsulation; sustainable architecture;
  • fLanguage
    English
  • Journal_Title
    Software, IEE Proceedings -
  • Publisher
    iet
  • ISSN
    1462-5970
  • Type

    jour

  • DOI
    10.1049/ip-sen:20040168
  • Filename
    1301261