Release Planning in Software Product Lines Using a Genetic Algorithm
Release planning for incremental software development is to select and assign features in sequence of releases along a specified planning horizon. It includes the technical precedence inherent in the features, the conflicting priorities as determined by the representative stakeholders, and the balance between required and available resources. The complexity of this consideration is getting more complicated when planning releases in software product lines. The problem is formulated as a precedence-constrained multiple 0-1 knapsack problem. In this research a genetic algorithm is developed for solving the release planning problems in software product lines as well as tests for the proposed solution methodology are conducted using data generated randomly.