A study on the role of software architecture in the evolution and quality of software

Ehsan Kouroshfar, Mehdi Mirakhorli, Hamid Bagheri, Lu Xiao, Sam Malek, Yuanfang Cai

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

32 Scopus citations

Abstract

Conventional wisdom suggests that a software system's architecture has a significant impact on its evolution. Prior research has studied the evolution of software using the information of how its files have changed together in their revision history. No prior study, however, has investigated the impact of architecture on the evolution of software from its change history. This is mainly because most open-source software systems do not document their architectures. We have overcome this challenge using several architecture recovery techniques. We used the recovered models to examine if co-changes spanning multiple architecture modules are more likely to introduce bugs than co-changes that are within modules. The results show that the co-changes that cross architectural module boundaries are more correlated with defects than co-changes within modules, implying that, to improve accuracy, bug predictors should also take the software architecture of the system into consideration.

Original languageEnglish
Title of host publicationProceedings - 12th Working Conference on Mining Software Repositories, MSR 2015
Pages246-257
Number of pages12
ISBN (Electronic)9780769555942
DOIs
StatePublished - 4 Aug 2015
Event12th Working Conference on Mining Software Repositories, MSR 2015 - Florence, Italy
Duration: 16 May 201517 May 2015

Publication series

NameIEEE International Working Conference on Mining Software Repositories
Volume2015-August
ISSN (Print)2160-1852
ISSN (Electronic)2160-1860

Conference

Conference12th Working Conference on Mining Software Repositories, MSR 2015
Country/TerritoryItaly
CityFlorence
Period16/05/1517/05/15

Keywords

  • Defects
  • Software Architecture
  • Software Repositories

Fingerprint

Dive into the research topics of 'A study on the role of software architecture in the evolution and quality of software'. Together they form a unique fingerprint.

Cite this