TY - JOUR
T1 - Predicting stability of open-source software systems using combination of bayesian classifiers
AU - Bouktif, Salah
AU - Sahraoui, Houari
AU - Ahmed, Faheem
N1 - Funding Information:
This study was supported by the National Natural Science Foundation of China (41125010 and 41402112), the 973 Project (2012CB214703) and the National Science and Technology Major Project (2011ZX05007). Grateful acknowledgments are made to the PetroChina Southwest Oil & Gas Field Company (China National Petroleum Corporation [CNPC]) and the Langfang Branch, PetroChina Research Institute of Petroleum Exploration and Development (CNPC) for providing geologic information and test data for this study. We thank Platte River Associates, Inc. for the provision of the basin modeling software.
PY - 2014/4
Y1 - 2014/4
N2 - The use of free and Open-Source Software (OSS) systems is gaining momentum. Organizations are also now adopting OSS, despite some reservations, particularly about the quality issues. Stability of software is one of the main features in software quality management that needs to be understood and accurately predicted. It deals with the impact resulting from software changes and argues that stable components lead to a cost-effective software evolution. Changes are most common phenomena present in OSS in comparison to proprietary software. This makes OSS system evolution a rich context to study and predict stability. Our objective in this work is to build stability prediction models that are not only accurate but also interpretable, that is, able to explain the link between the architectural aspects of a software component and its stability behavior in the context of OSS. Therefore, we propose a new approach based on classifiers combination capable of preserving prediction interpretability. Our approach is classifier-structure dependent. Therefore, we propose a particular solution for combining Bayesian classifiers in order to derive a more accurate composite classifier that preserves interpretability. This solution is implemented using a genetic algorithm and applied in the context of an OSS large-scale system, namely the standard Java API. The empirical results show that our approach outperforms state-of-the-art approaches from both machine learning and software engineering.
AB - The use of free and Open-Source Software (OSS) systems is gaining momentum. Organizations are also now adopting OSS, despite some reservations, particularly about the quality issues. Stability of software is one of the main features in software quality management that needs to be understood and accurately predicted. It deals with the impact resulting from software changes and argues that stable components lead to a cost-effective software evolution. Changes are most common phenomena present in OSS in comparison to proprietary software. This makes OSS system evolution a rich context to study and predict stability. Our objective in this work is to build stability prediction models that are not only accurate but also interpretable, that is, able to explain the link between the architectural aspects of a software component and its stability behavior in the context of OSS. Therefore, we propose a new approach based on classifiers combination capable of preserving prediction interpretability. Our approach is classifier-structure dependent. Therefore, we propose a particular solution for combining Bayesian classifiers in order to derive a more accurate composite classifier that preserves interpretability. This solution is implemented using a genetic algorithm and applied in the context of an OSS large-scale system, namely the standard Java API. The empirical results show that our approach outperforms state-of-the-art approaches from both machine learning and software engineering.
KW - Bayesian classifiers
KW - Genetic algorithm
KW - Software stability prediction
UR - http://www.scopus.com/inward/record.url?scp=84899074097&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84899074097&partnerID=8YFLogxK
U2 - 10.1145/2555596
DO - 10.1145/2555596
M3 - Article
AN - SCOPUS:84899074097
SN - 2158-656X
VL - 5
JO - ACM Transactions on Management Information Systems
JF - ACM Transactions on Management Information Systems
IS - 1
M1 - 3
ER -