• DocumentCode
    1823894
  • Title

    Avoiding architectural degeneration: an evaluation process for software architecture

  • Author

    Lindvall, Mikael ; Tesoriero, Roseanne ; Costa, Patricia

  • fYear
    2002
  • fDate
    2002
  • Firstpage
    77
  • Lastpage
    86
  • Abstract
    Software systems undergo constant change causing the architecture of the system to degenerate over time. Redirecting development effort toward reversing system degeneration takes extra effort and delays the release of the next version. The value of an improved architecture is clear to technical staff, but it is often difficult to convince upper management that the extra effort is necessary. Improved architecture is intangible and does not translate into visible user features that can be marketed. Due to a lack of representative metrics, technical staff has problems arguing that stopping degeneration is indeed necessary and that the effort will result in an improved architecture that will pay off. We believe that architectural metrics would give technical staff better tools to argue their case. This paper defines and uses a set of architectural metrics and outlines a process for analyzing architecture to support such an argument. The paper reports on a case study from a project where we restructured the architecture of an existing client-server system written in Java while adding new functionality. The modules of the existing version of the system were "library-oriented" and had a disorganized communication structure. The new architecture is based on components and utilizes the mediator design pattern. The goal of the study is to evaluate the new architecture from a maintainability perspective.
  • Keywords
    Java; client-server systems; object-oriented programming; software architecture; software maintenance; software metrics; software reusability; Java; architectural degeneration; architectural metrics; case study; client-server system; management; mediator design pattern; object oriented programming; software architecture evaluation process; software components; software maintainability; software metrics; staff; Client-server systems; Computer architecture; Ear; Electrical capacitance tomography; Identity-based encryption; Java; Read only memory; Software architecture; Software systems;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Metrics, 2002. Proceedings. Eighth IEEE Symposium on
  • ISSN
    1530-1435
  • Print_ISBN
    0-7695-1339-5
  • Type

    conf

  • DOI
    10.1109/METRIC.2002.1011327
  • Filename
    1011327