Normal view MARC view

Can we predict the generation of bugs? Software architecture and quality in open-source development

Author: Sosa, Manuel ; Mihm, Jürgen ; Browing, TysonINSEAD Area: Technology and Operations Management Series: Working Paper ; 2009/45/TOM Publisher: Fontainebleau : INSEAD, 2009.Language: EnglishType of document: INSEAD Working PaperAbstract: We empirically study how the architecture of software products relates to their quality. Using an architectural representation that accounts for both the hierarchical and dependency relationships between subsystems and components, we define a new construct, system cyclicality. System cyclicality recognizes component loops, which are akin to design iterations, a concept typically associated with models of product development processes rather than products. System cyclicality captures the fraction of mutually interdependent components in a system. Through a multilevel analysis of several open-source, Java-based applications developed by the Apache Software Foundation, we examine the relationship between system cyclicality and the generation of bugs. At the system level, we examine 122 releases representing 19 applications and find that system cyclicality is positively associated with the number of bugs in the system. At the component level, we examine 30,057 components and find that components involved in loops are more likely to be affected by a larger number of bugs. Overall, our results suggest that system cyclicality is a key determinant in the generation of bugs. Hence, managers are likely to benefit from proactively examining the architecture of the system they develop and monitoring its cyclicality as one of their strategies to reduce defects. Next title: Product architecture and quality: a study of open-source software development (RV of 2009/45/TOM) - Sosa, Manuel;Mihm, Jürgen;Browning, Tyso - 2010 - INSEAD Working Paper
Tags: No tags from this library for this title. Log in to add tags.
Item type Current location Collection Call number Status Date due Barcode Item holds
INSEAD Working Paper Asia Campus
Archives
Print Available BC008792
INSEAD Working Paper Europe Campus
Archives
Print Available BC008791
Total holds: 0

We empirically study how the architecture of software products relates to their quality. Using an architectural representation that accounts for both the hierarchical and dependency relationships between subsystems and components, we define a new construct, system cyclicality. System cyclicality recognizes component loops, which are akin to design iterations, a concept typically associated with models of product development processes rather than products. System cyclicality captures the fraction of mutually interdependent components in a system. Through a multilevel analysis of several open-source, Java-based applications developed by the Apache Software Foundation, we examine the relationship between system cyclicality and the generation of bugs. At the system level, we examine 122 releases representing 19 applications and find that system cyclicality is positively associated with the number of bugs in the system. At the component level, we examine 30,057 components and find that components involved in loops are more likely to be affected by a larger number of bugs. Overall, our results suggest that system cyclicality is a key determinant in the generation of bugs. Hence, managers are likely to benefit from proactively examining the architecture of the system they develop and monitoring its cyclicality as one of their strategies to reduce defects.

Do not digitize

There are no comments for this item.

Log in to your account to post a comment.
Koha 18.11 - INSEAD Catalogue
Home | Contact Us | What's Koha?