A novel composite model approach to improve software quality prediction

Salah Bouktif, Faheem Ahmed, Issa Khalil, Giuliano Antoniol

Research output: Contribution to journalArticle

14 Citations (Scopus)

Abstract

Context:: How can quality of software systems be predicted before deployment? In attempting to answer this question, prediction models are advocated in several studies. The performance of such models drops dramatically, with very low accuracy, when they are used in new software development environments or in new circumstances. Objective: The main objective of this work is to circumvent the model generalizability problem. We propose a new approach that substitutes traditional ways of building prediction models which use historical data and machine learning techniques. Method: In this paper, existing models are decision trees built to predict module fault-proneness within the NASA Critical Mission Software. A genetic algorithm is developed to combine and adapt expertise extracted from existing models in order to derive a "composite" model that performs accurately in a given context of software development. Experimental evaluation of the approach is carried out in three different software development circumstances. Results: The results show that derived prediction models work more accurately not only for a particular state of a software organization but also for evolving and modified ones. Conclusion: Our approach is considered suitable for software data nature and at the same time superior to model selection and data combination approaches. It is then concluded that learning from existing software models (i.e., software expertise) has two immediate advantages; circumventing model generalizability and alleviating the lack of data in software-engineering.

Original languageEnglish
Pages (from-to)1298-1311
Number of pages14
JournalInformation and Software Technology
Volume52
Issue number12
DOIs
Publication statusPublished - 1 Dec 2010
Externally publishedYes

Fingerprint

Composite materials
Software engineering
Decision trees
NASA
Learning systems
Genetic algorithms

Keywords

  • Decision trees
  • Fault-proneness
  • Genetic algorithm
  • Software quality prediction

ASJC Scopus subject areas

  • Software
  • Information Systems
  • Computer Science Applications

Cite this

A novel composite model approach to improve software quality prediction. / Bouktif, Salah; Ahmed, Faheem; Khalil, Issa; Antoniol, Giuliano.

In: Information and Software Technology, Vol. 52, No. 12, 01.12.2010, p. 1298-1311.

Research output: Contribution to journalArticle

Bouktif, Salah ; Ahmed, Faheem ; Khalil, Issa ; Antoniol, Giuliano. / A novel composite model approach to improve software quality prediction. In: Information and Software Technology. 2010 ; Vol. 52, No. 12. pp. 1298-1311.
@article{5b1dc09482b0404abef4b1abf62d3348,
title = "A novel composite model approach to improve software quality prediction",
abstract = "Context:: How can quality of software systems be predicted before deployment? In attempting to answer this question, prediction models are advocated in several studies. The performance of such models drops dramatically, with very low accuracy, when they are used in new software development environments or in new circumstances. Objective: The main objective of this work is to circumvent the model generalizability problem. We propose a new approach that substitutes traditional ways of building prediction models which use historical data and machine learning techniques. Method: In this paper, existing models are decision trees built to predict module fault-proneness within the NASA Critical Mission Software. A genetic algorithm is developed to combine and adapt expertise extracted from existing models in order to derive a {"}composite{"} model that performs accurately in a given context of software development. Experimental evaluation of the approach is carried out in three different software development circumstances. Results: The results show that derived prediction models work more accurately not only for a particular state of a software organization but also for evolving and modified ones. Conclusion: Our approach is considered suitable for software data nature and at the same time superior to model selection and data combination approaches. It is then concluded that learning from existing software models (i.e., software expertise) has two immediate advantages; circumventing model generalizability and alleviating the lack of data in software-engineering.",
keywords = "Decision trees, Fault-proneness, Genetic algorithm, Software quality prediction",
author = "Salah Bouktif and Faheem Ahmed and Issa Khalil and Giuliano Antoniol",
year = "2010",
month = "12",
day = "1",
doi = "10.1016/j.infsof.2010.07.003",
language = "English",
volume = "52",
pages = "1298--1311",
journal = "Information and Software Technology",
issn = "0950-5849",
publisher = "Elsevier",
number = "12",

}

TY - JOUR

T1 - A novel composite model approach to improve software quality prediction

AU - Bouktif, Salah

AU - Ahmed, Faheem

AU - Khalil, Issa

AU - Antoniol, Giuliano

PY - 2010/12/1

Y1 - 2010/12/1

N2 - Context:: How can quality of software systems be predicted before deployment? In attempting to answer this question, prediction models are advocated in several studies. The performance of such models drops dramatically, with very low accuracy, when they are used in new software development environments or in new circumstances. Objective: The main objective of this work is to circumvent the model generalizability problem. We propose a new approach that substitutes traditional ways of building prediction models which use historical data and machine learning techniques. Method: In this paper, existing models are decision trees built to predict module fault-proneness within the NASA Critical Mission Software. A genetic algorithm is developed to combine and adapt expertise extracted from existing models in order to derive a "composite" model that performs accurately in a given context of software development. Experimental evaluation of the approach is carried out in three different software development circumstances. Results: The results show that derived prediction models work more accurately not only for a particular state of a software organization but also for evolving and modified ones. Conclusion: Our approach is considered suitable for software data nature and at the same time superior to model selection and data combination approaches. It is then concluded that learning from existing software models (i.e., software expertise) has two immediate advantages; circumventing model generalizability and alleviating the lack of data in software-engineering.

AB - Context:: How can quality of software systems be predicted before deployment? In attempting to answer this question, prediction models are advocated in several studies. The performance of such models drops dramatically, with very low accuracy, when they are used in new software development environments or in new circumstances. Objective: The main objective of this work is to circumvent the model generalizability problem. We propose a new approach that substitutes traditional ways of building prediction models which use historical data and machine learning techniques. Method: In this paper, existing models are decision trees built to predict module fault-proneness within the NASA Critical Mission Software. A genetic algorithm is developed to combine and adapt expertise extracted from existing models in order to derive a "composite" model that performs accurately in a given context of software development. Experimental evaluation of the approach is carried out in three different software development circumstances. Results: The results show that derived prediction models work more accurately not only for a particular state of a software organization but also for evolving and modified ones. Conclusion: Our approach is considered suitable for software data nature and at the same time superior to model selection and data combination approaches. It is then concluded that learning from existing software models (i.e., software expertise) has two immediate advantages; circumventing model generalizability and alleviating the lack of data in software-engineering.

KW - Decision trees

KW - Fault-proneness

KW - Genetic algorithm

KW - Software quality prediction

UR - http://www.scopus.com/inward/record.url?scp=77957365028&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=77957365028&partnerID=8YFLogxK

U2 - 10.1016/j.infsof.2010.07.003

DO - 10.1016/j.infsof.2010.07.003

M3 - Article

AN - SCOPUS:77957365028

VL - 52

SP - 1298

EP - 1311

JO - Information and Software Technology

JF - Information and Software Technology

SN - 0950-5849

IS - 12

ER -