Til hovedinnhold

A study of cyclic dependencies on defect profile of software components

A study of cyclic dependencies on defect profile of software components

Kategori
Vitenskapelig artikkel
Sammendrag
Background:
Empirical evidence shows that dependency cycles among software components are pervasive in real-life software systems, although such cycles are known to be detrimental to software quality attributes such as understandability, testability, reusability, build-ability and maintainability.

Research goals:
Can the use of extended object-oriented metrics make us better understand the relationships among cyclic related components and their defect-proneness?

Approach:
First, we extend such metrics to mine and classify software components into two groups – the cyclic and the non-cyclic ones. Next, we have performed an empirical study of six software applications. Using standard statistical tests on four different hypotheses, we have determined the significance of the defect profiles of both groups.

Results:
Our results show that most defects and defective components are concentrated in cyclic-dependent components, either directly or indirectly.

Discussion and conclusion:
These results have important implications for software maintenance and system testing. By identifying the most defect-prone set in a software system, it is possible to effectively allocate testing resources in a cost efficient manner. Based on these results, we demonstrate how additional structural properties could be collected to understand component's defect proneness and aid decision process in refactoring defect-prone cyclic related components.
Språk
Engelsk
Forfatter(e)
  • Tosin Daniel Oyetoyan
  • Daniela Soares Cruzes
  • Reidar Conradi
Institusjon(er)
  • Norges teknisk-naturvitenskapelige universitet
  • SINTEF Digital / Software Engineering, Safety and Security
År
Publisert i
Journal of Systems and Software
ISSN
0164-1212
Forlag
Elsevier
Årgang
86
Hefte nr.
12
Side(r)
3162 - 3182