Understanding component co-evolution with a study on Linux

After a software system has been delivered, it inevitably has to change to remain useful. Evolutionary coupling measures the change dependencies between software components. Reference coupling measures the architecture dependencies between software components. In this paper, we present a method to c...

Full description

Saved in:
Bibliographic Details
Published inEmpirical software engineering : an international journal Vol. 12; no. 2; pp. 123 - 141
Main Author Yu, Liguo
Format Journal Article
LanguageEnglish
Published Dordrecht Springer Nature B.V 01.04.2007
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:After a software system has been delivered, it inevitably has to change to remain useful. Evolutionary coupling measures the change dependencies between software components. Reference coupling measures the architecture dependencies between software components. In this paper, we present a method to correlate evolutionary coupling and reference coupling. We study the evolution of 597 consecutive versions of Linux and measure the evolutionary coupling and reference coupling among 12 kernel modules. We compare 12 pairs of evolutionary coupling data and reference coupling data. The results show that linear correlation exists between evolutionary coupling and reference coupling. We conclude that in Linux, the dependencies between software components induced via the system architecture have noticeable effects on kernel module co-evolution.[PUBLICATION ABSTRACT]
Bibliography:ObjectType-Article-2
SourceType-Scholarly Journals-1
ObjectType-Feature-1
content type line 23
ISSN:1382-3256
1573-7616
DOI:10.1007/s10664-006-9000-x