Home > Research > Publications & Outputs > The relationship between evolutionary coupling ...

Links

Text available via DOI:

View graph of relations

The relationship between evolutionary coupling and defects in large industrial software

Research output: Contribution to journalJournal articlepeer-review

Published

Standard

The relationship between evolutionary coupling and defects in large industrial software. / Kirbas, Serkan; Caglayan, Bora; Hall, Tracy; Counsell, Steve; Bowes, David; Sen, Alper; Bener, Ayse.

In: Journal of Software: Evolution and Process, Vol. 29, No. 4, e1842, 01.04.2017.

Research output: Contribution to journalJournal articlepeer-review

Harvard

Kirbas, S, Caglayan, B, Hall, T, Counsell, S, Bowes, D, Sen, A & Bener, A 2017, 'The relationship between evolutionary coupling and defects in large industrial software', Journal of Software: Evolution and Process, vol. 29, no. 4, e1842. https://doi.org/10.1002/smr.1842

APA

Kirbas, S., Caglayan, B., Hall, T., Counsell, S., Bowes, D., Sen, A., & Bener, A. (2017). The relationship between evolutionary coupling and defects in large industrial software. Journal of Software: Evolution and Process, 29(4), [e1842]. https://doi.org/10.1002/smr.1842

Vancouver

Kirbas S, Caglayan B, Hall T, Counsell S, Bowes D, Sen A et al. The relationship between evolutionary coupling and defects in large industrial software. Journal of Software: Evolution and Process. 2017 Apr 1;29(4). e1842. https://doi.org/10.1002/smr.1842

Author

Kirbas, Serkan ; Caglayan, Bora ; Hall, Tracy ; Counsell, Steve ; Bowes, David ; Sen, Alper ; Bener, Ayse. / The relationship between evolutionary coupling and defects in large industrial software. In: Journal of Software: Evolution and Process. 2017 ; Vol. 29, No. 4.

Bibtex

@article{5bc966484d93419997b5e31843ba2670,
title = "The relationship between evolutionary coupling and defects in large industrial software",
abstract = "Evolutionary coupling (EC) is defined as the implicit relationship between 2 or more software artifacts that are frequently changed together. Changing software is widely reported to be defect-prone. In this study, we investigate the effect of EC on the defect proneness of large industrial software systems and explain why the effects vary. We analysed 2 large industrial systems: a legacy financial system and a modern telecommunications system. We collected historical data for 7 years from 5 different software repositories containing 176 thousand files. We applied correlation and regression analysis to explore the relationship between EC and software defects, and we analysed defect types, size, and process metrics to explain different effects of EC on defects through correlation. Our results indicate that there is generally a positive correlation between EC and defects, but the correlation strength varies. Evolutionary coupling is less likely to have a relationship to software defects for parts of the software with fewer files and where fewer developers contributed. Evolutionary coupling measures showed higher correlation with some types of defects (based on root causes) such as code implementation and acceptance criteria. Although EC measures may be useful to explain defects, the explanatory power of such measures depends on defect types, size, and process metrics.",
keywords = "evolutionary coupling, industrial software, legacy software, measurement, mining software repositories, software defects",
author = "Serkan Kirbas and Bora Caglayan and Tracy Hall and Steve Counsell and David Bowes and Alper Sen and Ayse Bener",
year = "2017",
month = apr,
day = "1",
doi = "10.1002/smr.1842",
language = "English",
volume = "29",
journal = "Journal of Software: Evolution and Process",
issn = "2047-7481",
publisher = "John Wiley and Sons Ltd",
number = "4",

}

RIS

TY - JOUR

T1 - The relationship between evolutionary coupling and defects in large industrial software

AU - Kirbas, Serkan

AU - Caglayan, Bora

AU - Hall, Tracy

AU - Counsell, Steve

AU - Bowes, David

AU - Sen, Alper

AU - Bener, Ayse

PY - 2017/4/1

Y1 - 2017/4/1

N2 - Evolutionary coupling (EC) is defined as the implicit relationship between 2 or more software artifacts that are frequently changed together. Changing software is widely reported to be defect-prone. In this study, we investigate the effect of EC on the defect proneness of large industrial software systems and explain why the effects vary. We analysed 2 large industrial systems: a legacy financial system and a modern telecommunications system. We collected historical data for 7 years from 5 different software repositories containing 176 thousand files. We applied correlation and regression analysis to explore the relationship between EC and software defects, and we analysed defect types, size, and process metrics to explain different effects of EC on defects through correlation. Our results indicate that there is generally a positive correlation between EC and defects, but the correlation strength varies. Evolutionary coupling is less likely to have a relationship to software defects for parts of the software with fewer files and where fewer developers contributed. Evolutionary coupling measures showed higher correlation with some types of defects (based on root causes) such as code implementation and acceptance criteria. Although EC measures may be useful to explain defects, the explanatory power of such measures depends on defect types, size, and process metrics.

AB - Evolutionary coupling (EC) is defined as the implicit relationship between 2 or more software artifacts that are frequently changed together. Changing software is widely reported to be defect-prone. In this study, we investigate the effect of EC on the defect proneness of large industrial software systems and explain why the effects vary. We analysed 2 large industrial systems: a legacy financial system and a modern telecommunications system. We collected historical data for 7 years from 5 different software repositories containing 176 thousand files. We applied correlation and regression analysis to explore the relationship between EC and software defects, and we analysed defect types, size, and process metrics to explain different effects of EC on defects through correlation. Our results indicate that there is generally a positive correlation between EC and defects, but the correlation strength varies. Evolutionary coupling is less likely to have a relationship to software defects for parts of the software with fewer files and where fewer developers contributed. Evolutionary coupling measures showed higher correlation with some types of defects (based on root causes) such as code implementation and acceptance criteria. Although EC measures may be useful to explain defects, the explanatory power of such measures depends on defect types, size, and process metrics.

KW - evolutionary coupling

KW - industrial software

KW - legacy software

KW - measurement

KW - mining software repositories

KW - software defects

U2 - 10.1002/smr.1842

DO - 10.1002/smr.1842

M3 - Journal article

AN - SCOPUS:85012964590

VL - 29

JO - Journal of Software: Evolution and Process

JF - Journal of Software: Evolution and Process

SN - 2047-7481

IS - 4

M1 - e1842

ER -