Software effort prediction: a hyper-heuristic decision-tree based approach

  • Authors:
  • Márcio P. Basgalupp;Rodrigo C. Barros;Tiago S. da Silva;André C. P. L. F. de Carvalho

  • Affiliations:
  • Universidade Federal de São Paulo - UNIFESP, SP, Brazil;ICMC-USP, São Carlos - SP, Brazil;ICMC-USP, São Carlos - SP, Brazil;ICMC-USP, São Carlos - SP, Brazil

  • Venue:
  • Proceedings of the 28th Annual ACM Symposium on Applied Computing
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

Software effort prediction is an important task within software engineering. In particular, machine learning algorithms have been widely-employed to this task, bearing in mind their capability of providing accurate predictive models for the analysis of project stakeholders. Nevertheless, none of these algorithms has become the de facto standard for metrics prediction given the particularities of different software projects. Among these intelligent strategies, decision trees and evolutionary algorithms have been continuously employed for software metrics prediction, though mostly independent from each other. A recent work has proposed evolving decision trees through an evolutionary algorithm, and applying the resulting tree in the context of software maintenance effort prediction. In this paper, we raise the search-space level of an evolutionary algorithm by proposing the evolution of a decision-tree algorithm instead of the decision tree itself --- an approach known as hyper-heuristic. Our findings show that the decision-tree algorithm automatically generated by a hyper-heuristic is capable of statistically outperforming state-of-the-art top-down and evolution-based decision-tree algorithms, as well as traditional logistic regression. The ability of generating a highly-accurate comprehensible predictive model is crucial in software projects, considering that it allows the stakeholder to properly manage the team's resources with an improved confidence in the model predictions.