Software Cost Estimation: A State-of-the-Art Statistical and Visualization Approach for Missing Data

Software Cost Estimation: A State-of-the-Art Statistical and Visualization Approach for Missing Data

Panagiota Chatzipetrou (Department of Informatics, CERIS, Örebro University School of Business, Örebro, Sweden)
DOI: 10.4018/IJSSMET.2019070102


Software cost estimation (SCE) is a critical phase in software development projects. A common problem in building software cost models is that the available datasets contain projects with lots of missing categorical data. There are several techniques for handling missing data in the context of SCE. The purpose of this article is to show a state-of-art statistical and visualization approach of evaluating and comparing the effect of missing data on the accuracy of cost estimation models. Five missing data techniques were used: multinomial logistic regression, listwise deletion, mean imputation, expectation maximization and regression imputation; and compared with respect to their effect on the prediction accuracy of a least squares regression cost model. The evaluation is based on various expressions of the prediction error. The comparisons are conducted using statistical tests, resampling techniques and visualization tools like the regression error characteristic curves.
Article Preview


Software Cost Estimation (SCE) is one of the most important and most difficult activities in software development. The process of predicting the cost, in terms of effort or time, is one of the most difficult tasks the software project managers have to estimate (Jorgensen & Shepperd, 2007). Moreover, SCE is usually based on incomplete and noisy data, thus statistical analysis and modeling is required. Cost estimations may be performed before, during or even after the development of software.

A substantial part of the research on SCE concerns the construction of software cost estimation models where their scope is twofold: first, a theoretical framework is provided appropriate for describing and interpreting the dependencies of cost with the characteristics of the project. Second, they can be utilized to produce efficient cost predictions.

In the process of constructing cost models, a major problem arises from the fact that missing values are often present. Missing data usually are responsible for misleading results regarding the accuracy of the cost model which may reduce their explanatory and prediction ability.

Some techniques estimate or “impute” the missing values. The resulting complete data can then be analysed and modelled by “common” statistical techniques. These methods are called imputation methods. However, most of the imputation methods produce continuous estimates, which are not realistic replacements when the variables are categorical. Since the majority of the variables in the software datasets are categorical with many missing values, it is reasonable to use an imputation method producing categorical values, fill the incomplete dataset and then construct a prediction model.

The methods of handling missing data are directly related to the mechanisms that caused the incompleteness Little and Rubin (2002) report three different Missing Data Mechanisms: (1) Missing Completely at Random(MCAR), where the missing values in a variable are unrelated to the values of any other variables, whether missing or valid. (2) Non-Ignorable missingness(NI), which is the opposite of MCAR since the probability of having missing values in a variable depends on the variable itself. (3) Missing at Random(MAR), an intermediate situation between MCAR and NI. The probability of having missing values does not depend on the variable itself but on the values of some other variable.

In order to handle the missing data, different missing data techniques (MDTs) are used. According to Little and Rubin (2002): (1) Listwise Deletion(LD), a deletion method where cases with missing values for any of the variables are omitted from the analysis. (2) Mean imputation(MI), the missing observations of a certain variable are replaced with the mean of the observed values in that variable. (3) Regression Imputation(RI), where the missing values are estimated through the application of multiple regression where the variable with missing data is considered as the dependent one and all other variables as predictors. (4) Expectation Maximization(EM), an iterative two step procedure obtaining the maximum likelihood estimates of a model starting from an initial guess. Each iteration consists of two steps: The Expectation (E) step that finds the distribution for the missing data based on the known values for the observed variables and the current estimate of the parameters and the Maximization (M) step that replaces the missing data with the expected value. (5) Multinomial Logistic Regression(MLR), which is used to model the relationship between a polytomous dependent variable and a set of k predictor variables which are either categorical (factors) or numerical. MLR can be used for imputation by considering as dependent the categorical variable with the missing values and as predictors all the others. (Sentas et al., 2004; Hosmer and Lemeshow, 1989).

MLR method was compared with the four other missing data techniques. The experimentation was designed to explore the effects of imputation on the prediction error produced by a regression model and showed the efficiency of MLR as an imputation method. The comparison was based on measuring the impact of each of the MDTs on the predictive accuracy of a cost estimation model.

The structure of the paper is the following: First the problem is formulated and then the related work in the area is outlined. Next, the dataset used in the analysis and the statistical methods are described. Then, the results of the statistical analysis along with discussion of the findings is presented. Finally, conclusions with possible future research directions is provided.

Complete Article List

Search this Journal:
Open Access Articles: Forthcoming
Volume 12: 6 Issues (2021): Forthcoming, Available for Pre-Order
Volume 11: 4 Issues (2020)
Volume 10: 4 Issues (2019)
Volume 9: 4 Issues (2018)
Volume 8: 4 Issues (2017)
Volume 7: 4 Issues (2016)
Volume 6: 4 Issues (2015)
Volume 5: 4 Issues (2014)
Volume 4: 4 Issues (2013)
Volume 3: 4 Issues (2012)
Volume 2: 4 Issues (2011)
Volume 1: 4 Issues (2010)
View Complete Journal Contents Listing