Journal Article

Case-Based Reasoning for Reducing Software Development Effort.

Adam Brady, Tim Menzies, Oussama El-Rawas, Ekrem Kocaguneli, Jacky W. Keung
J. Softw. Eng. Appl. 2010 10.4236/jsea.2010.311118

Abstract

How can we best find project changes that most improve project estimates? Prior solutions to this problem required the use of standard software process models that may not be relevant to some new project. Also, those prior solutions suffered from limited verification (the only way to assess the results of those studies was to run the recommendations back through the standard process models). Combining case-based reasoning and contrast set learning, the W system requires no underlying model. Hence, it is widely applicable (since there is no need for data to conform to some software process models). Also, W's results can be verified (using holdout sets). For example, in the experiments reported here, W found changes to projects that greatly reduced estimate median and variance by up to 95% and 83% (respectively). Keywords: Software Effort Estimation, Case Based Reasoning, Effort Estimation 1. Introduction Existing research in effort estimations focuses mostly on deriving estimates from past project data using (e.g.) parametric models [1] or case-based reasoning (CBR) [2] or genetic algorithms [3]. That research is curiously silent on how to change a project in order to, say, reduce development effort. That is, that research reports what is and not what should be changed. Previously [4-7], we have tackled this problem using STAR/NOVA, a suite of AI search algorithms that explored the input space of standard software process models to find project options that most reduced the effort estimates. That approach had some drawbacks including 1) the dependency of the data to be in the format of the standard process models, 2) the implementation complexity of the Monte Carlo simulator and the AI search engines, and 3) the lack of an independent verification module (the only way to assess the results of those studies was to run the recommendations back through the standard process models). This paper describes "W", a simpler, yet more general solution to the problem of finding project changes that most improves project estimates. Combining case-based reasoning and contrast set learning, W requires no underlying parametric model. Hence, W can be applied to Copyright © 2010

Keywords