Electronic International Standard Serial Number (EISSN)
Software projects estimations are a crucial component of successful software development. There have been many approaches that deal with this problem by using different kinds of techniques. Most of the successful techniques rely on one shot prediction of some variables, as cost, quality or risk, taking into account some metrics. However, these techniques usually are not able to deal with uncertainty on the data, the relationships among metrics or the temporal aspect of projects. During the last decade, some researchers have proposed the use of Bayesian Belief Networks (BBNs) to perform better estimations, by explicitly taking into account the previous shortcomings. But, these approaches were based on manually defining those BBNs and handling only one of the estimation variables (cost, quality or risk). In this paper, we present an approach for semi-automatically building BBNs by using machine learning techniques. We describe two algorithms to generate such BBNs. The first one generates one-shot BBNs, while the second one generates BBNs that take into account the temporal aspect of project development. We performed experiments on real data coming from two software companies, obtaining a 63% of accuracy on multi-class classification. Our main interest was to find a semantically correct model that can be trained with future projects to increase its accuracy. In this sense, we introduce a well-balanced approach to make good predictions with strong explanatory power.