Location of Repository

Architectural reflection for software evolution

By Stephen Rank


Software evolution is expensive. Lehman identifies several\ud problems associated with it: Continuous adaptation, increasing complexity, continuing growth, and declining quality. This paper proposes that a reflective software engineering environment will address these problems by employing languages and techniques from the software\ud architecture community.\ud \ud Creating a software system will involve manipulating a collection of views, including low-level code views and high-level architectural views which will be tied together using reflection. This coupling will allow the development environment to automatically identify inconsistencies between the views, and support software engineers in managing architectures during evolution.\ud \ud This paper proposes a research programme which will result in a software engineering environment which addresses problems of software evolution and the maintenance of consistency between architectural views of a software system

Topics: G610 Software Design, G600 Software Engineering
Year: 2005
OAI identifier: oai:eprints.lincoln.ac.uk:74

Suggested articles



  1. (2002). A Re ective Architecture to Support Dynamic Software Evolution.
  2. (1998). A.: A re ective approach to support software evolution. In:
  3. (1995). Architectural blueprints|The \4+1" view model of software architecture. doi
  4. (1998). Architectural re ection: Bridging the gap between a running system and its speci In:
  5. (2005). Component state mapping for runtime evolution. In:
  6. (2002). Documenting Software Architectures: Views and Beyond. doi
  7. (2001). Dynamic software evolution and the k-component model. In:
  8. (2004). Evolving pointcut de to get software evolution. In:
  9. (2000). Extreme Programming Explained: Embrace Change.
  10. (1992). Foundations for the study of software architecture. doi
  11. (1993). Procedure calls are the assembly language of software interconnection: Connectors deserve class status. doi
  12. (1998). Redmiles, D.F.: Software architecture critics in the Argo design environment. doi
  13. (1996). Software Architecture: Perspectives on an Emerging Discipline.
  14. (2000). Software maintenance and evolution. In: doi
  15. (1990). Software maintenance management: Changes in the last decade. doi
  16. (2004). Using architectural models at runtime: Research challenges. In: doi
  17. (1997). W.M.: Metrics and laws of software evolution|The nineties view. doi

To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.