The optimization of success probability for software projects using genetic algorithms

  • Authors:
  • Francisco Reyes;Narciso Cerpa;Alfredo Candia-Véjar;Matthew Bardeen

  • Affiliations:
  • Facultad de Ingeniería, Universidad de Talca, Camino Los Niches Km. 1, Curicó, Chile;Facultad de Ingeniería, Universidad de Talca, Camino Los Niches Km. 1, Curicó, Chile;Facultad de Ingeniería, Universidad de Talca, Camino Los Niches Km. 1, Curicó, Chile;Facultad de Ingeniería, Universidad de Talca, Camino Los Niches Km. 1, Curicó, Chile

  • Venue:
  • Journal of Systems and Software
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

The software development process is usually affected by many risk factors that may cause the loss of control and failure, thus which need to be identified and mitigated by project managers. Software development companies are currently improving their process by adopting internationally accepted practices, with the aim of avoiding risks and demonstrating the quality of their work. This paper aims to develop a method to identify which risk factors are more influential in determining project outcome. This method must also propose a cost effective investment of project resources to improve the probability of project success. To achieve these aims, we use the probability of success relative to cost to calculate the efficiency of the probable project outcome. The definition of efficiency used in this paper was proposed by researchers in the field of education. We then use this efficiency as the fitness function in an optimization technique based on genetic algorithms. This method maximizes the success probability output of a prediction model relative to cost. The optimization method was tested with several software risk prediction models that have been developed based on the literature and using data from a survey which collected information from in-house and outsourced software development projects in the Chilean software industry. These models predict the probability of success of a project based on the activities undertaken by the project manager and development team. The results show that the proposed method is very useful to identify those activities needing greater allocation of resources, and which of these will have a higher impact on the projects success probability. Therefore using the measure of efficiency has allowed a modular approach to identify those activities in software development on which to focus the project's limited resources to improve its probability of success. The genetic algorithm and the measure of efficiency presented in this paper permit model independence, in both prediction of success and cost evaluation.