Litcius/Paper detail

Sequential Model Optimization for Software Effort Estimation

Tianpei Xia, Rui Shu, Xipeng Shen, Tim Menzies

2020IEEE Transactions on Software Engineering23 citationsDOI

Abstract

Many methods have been proposed to estimate how much effort is required to build and maintain software. Much of that research tries to recommend a single method – an approach that makes the dubious assumption that one method can handle the diversity of software project data. To address this drawback, we apply a configuration technique called “ROME” (Rapid Optimizing Methods for Estimation), which uses sequential model-based optimization (SMO) to find what configuration settings of effort estimation techniques work best for a particular data set. We test this method using data from 1161 traditional waterfall projects and 120 contemporary projects (from GitHub). In terms of magnitude of relative error and standardized accuracy, we find that ROME achieves better performance than the state-of-the-art methods for both traditional waterfall and contemporary projects. In addition, we conclude that we should not recommend <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">one</i> method for estimation. Rather, it is better to search through a wide range of different methods to find what works best for the local data. To the best of our knowledge, this is the largest effort estimation experiment yet attempted and the only one to test its methods on traditional waterfall and contemporary projects.

Topics & Concepts

Computer scienceWaterfallWaterfall modelSoftwareSet (abstract data type)Range (aeronautics)EstimationCOCOMOData miningSoftware developmentMachine learningSoftware engineeringSoftware constructionProgramming languageSystems engineeringArchaeologyComposite materialEngineeringMaterials scienceHistorySoftware Engineering ResearchSoftware Reliability and Analysis ResearchSoftware Testing and Debugging Techniques
Sequential Model Optimization for Software Effort Estimation | Litcius