@article {12148, title = {Metrics of software architecture changes based on structural distance}, journal = {IEEE METRICS}, year = {2005}, month = {2005///}, pages = {8 - 8}, abstract = {Software architecture is an important form of abstrac-tion, representing the overall system structure and the re- lationship among components. When software is modified from one version to another, its architecture may change. Software modification involving architectural change is of- ten difficult when the change goes beyond the original ar- chitectural design, involving changes to the connectivity of multiple components. Existing research has looked at ar- chitectural 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 pa- per, 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 inter- mediate 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 repre- sentable as a graph. Using this distance measure, we define a metric which models the architecture change as a transi- tion between two endpoints. In addition to theoretical anal- ysis of the approach, we present empirical results obtained by applying the approach to open-source software projects to evaluate its validity and usefulness. }, author = {Nakamura, T. and Basili, Victor R.} }