Empirical Software Engineering, International Symposium on
Download PDF

Abstract

Delivering software in an incremental fashion implicitly reduces many of the risks associated with delivering large software projects. However, adopting a process, where requirements are delivered in releases means decisions have to be made on which requirements should be delivered in which release. This paper describes a method called EVOLVE+, based on a genetic algorithm and aimed at the evolutionary planning of incremental software development. The method is initially evaluated using a sample project. The evaluation involves an investigation of the trade-off relationship between risk and the overall benefit. The link to empirical research is two-fold: Firstly, our model is based on interaction with industry and randomly generated data for effort and risk of requirements. The results achieved this way are the first step for a more comprehensive evaluation using real-world data. Secondly, we try to approach uncertainty of data by additional computational effort providing more insight into the problem solutions: (i) Effort estimates are considered to be stochastic variables following a given probability function; (ii) Instead of offering just one solution, the L-best (L>1) solutions are determined. This provides support in finding the most appropriate solution, reflecting implicit preferences and constraints of the actual decision-maker. Stability intervals are given to indicate the validity of solutions and to allow the problem parameters to be changed without adversely affecting the optimality of the solution.
Like what you’re reading?
Already a member?
Get this article FREE with a new membership!