Title
Characteristics of multiple-component defects and architectural hotspots: a large system case study
Abstract
The architecture of a large software system is widely considered important for such reasons as: providing a common goal to the stakeholders in realising the envisaged system; helping to organise the various development teams; and capturing foundational design decisions early in the development. Studies have shown that defects originating in system architectures can consume twice as much correction effort as that for other defects. Clearly, then, scientific studies on architectural defects are important for their improved treatment and prevention. Previous research has focused on the extent of architectural defects in software systems. For this paper, we were motivated to ask the following two complementary questions in a case study: (i) How do multiple-component defects (MCDs)--which are of architectural importance--differ from other types of defects in terms of (a) complexity and (b) persistence across development phases and releases? and (ii) How do highly MCD-concentrated components (the so called, architectural hotspots) differ from other types of components in terms of their (a) interrelationships and (b) persistence across development phases and releases? Results indicate that MCDs are complex to fix and are persistent across phases and releases. In comparison to a non-MCD, a MCD requires over 20 times more changes to fix it and is 6 to 8 times more likely to cross a phase or a release. These findings have implications for defect detection and correction. Results also show that 20% of the subject system's components contain over 80% of the MCDs and that these components are 2---3 times more likely to persist across multiple system releases than other components in the system. Such MCD-concentrated components constitute architectural "hotspots" which management can focus upon for preventive maintenance and architectural quality improvement. The findings described are from an empirical study of a large legacy software system of size over 20 million lines of code and age over 17 years.
Year
DOI
Venue
2011
10.1007/s10664-011-9155-y
Empirical Software Engineering
Keywords
Field
DocType
Software architecture,Architectural hotspot,Multiple-component defects,Large legacy system,Case study,Architectural quality,Software maintenance
Architecture,Systems engineering,Computer science,Software system,Software architecture,Software maintenance,Architectural pattern,Empirical research,Legacy system,Source lines of code
Journal
Volume
Issue
ISSN
16
5
1382-3256
Citations 
PageRank 
References 
7
0.71
47
Authors
7
Name
Order
Citations
PageRank
Zude Li1498.73
Nazim H. Madhavji269080.29
Syed Shariyar Murtaza3759.23
Mechelle Gittens4959.16
Andriy V. Miranskyy57716.44
David Godwin6414.06
Enzo Cialini7312.91