Technical Debt Management with Genetic Algorithms

Sri Harsha Vathsavayi, Kari Systä · 2016

Management of technical debt is a challenging and poorly understood task, and it is becoming even harder in the case of modern software engineering practices like Agile development and Continuous Delivery. In this research we assume an agile software development and management process where the organization selects the tasks in the beginning of each sprint. The candidate tasks include implementation of new features with assumed business value and paying back technical debt. The organization needs to select a combination of tasks that is implementable by the available resources and maximize the benefit for the organization. The required optimization problem in a large project is complex and is also a multi-objective problem, which involves trade-off between short-term and long-term value delivered by the software. In this paper, we apply a multiobjective genetic algorithm for solving such an optimization problem. The potential of the algorithm is demonstrated by applying it to a student project.

Read the paper · More papers on PaperTik