• DocumentCode
    2024963
  • Title

    Metrics of Software Architecture Changes Based on Structural Distance

  • Author

    Nakamura, T. ; Basili, V.R.

  • Author_Institution
    Dept. of Comput. Sci., Maryland Univ., College Park, MD
  • fYear
    2005
  • fDate
    19-22 Sept. 2005
  • Firstpage
    24
  • Lastpage
    24
  • Abstract
    Software architecture is an important form of abstraction, representing the overall system structure and the relationship among components. When software is modified from one version to another, its architecture may change. Software modification involving architectural change is often difficult when the change goes beyond the original architectural design, involving changes to the connectivity of multiple components. Existing research has looked at architectural change at the level of architecture metrics such as size, complexity, coupling and cohesion, which abstract a particular version of the software in isolation. In this paper, we argue that this level of abstraction is often too high to characterize some interesting aspects of the architectural change process, and propose an approach that takes into account the change in connectivity from version to version of individual components. In this approach, two endpoints of a major change are taken as reference points, and intermediate connectivity changes are examined relative to the endpoints. We define a distance measure between software structures using a graph kernel function, which is quite powerful as it is applicable to any software structure representable as a graph. Using this distance measure, we define a metric which models the architecture change as a transition between two endpoints. In addition to theoretical analysis of the approach, we present empirical results obtained by applying the approach to open-source software projects to evaluate its validity and usefulness
  • Keywords
    configuration management; graph theory; object-oriented programming; public domain software; software architecture; software maintenance; software metrics; architectural change; architectural design; architecture metrics; component connectivity; component relationship; graph kernel function; open-source software projects; software architecture; software metrics; software modification; software structure; software version; structural distance; system structure; Appraisal; Computer industry; Decision making; Education; Educational institutions; Industrial training; Laboratories; Programming; Software engineering; Software maintenance;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Metrics, 2005. 11th IEEE International Symposium
  • Conference_Location
    Como
  • ISSN
    1530-1435
  • Print_ISBN
    0-7695-2371-4
  • Type

    conf

  • DOI
    10.1109/METRICS.2005.35
  • Filename
    1509302