The goal of software release planning is to plan the appropriate scope for the next release while taking into account the availability of resources, the priorities of the candidate require-ments and any other factors and constraints that affect the requirements selection. Previous research on release planning has focussed on algorithmic, model-based solutions that expect the requirements selection factors and release constraints to be known. In reality, the factors and constraints are rarely known beforehand. Furthermore, modern, agile software development methods are based on rapid development cycles and constant communication between stakeholders instead of planning and plan execution.
This dissertation presents three case studies on release planning methods that were applied by two large and one small agile software development organizations. The goals of this research were to study how the organizations performed release planning, how the release planning methods affected the team-level planning practices, and what benefits the organizations gained and what challenges they faced in applying the methods. The cases were studied with observations, interviews and surveys and with quantitative requirements analysis.
The case organizations employed different release planning methods. In Case Agilefant, a model-based method was applied by asking stakeholders to vote on the different priorities of the candidate requirements. In Case F-Secure, the release planning method regularly gathered all stakeholders of the project into the same space to plan the next release. In Case Ericsson, the method was continuous and based on the incremental elaboration of requirements. The team-level planning practices mostly followed the Scrum guidance. The first identified chal-lenge was that the candidate requirements were not identified, selected and prepared in a way that supported the release planning methods. The second challenge was the immature adoption of agile. The benefits identified in the methods were the mediation of multiple opinions, high efficiency, the creation of high-quality plans and the increased developer motivation.
The results implicate that release planning should not be considered a task that managers perform in isolation from the developers. The tacit knowledge of the whole organization should be harnessed in release planning. In addition, this dissertation depicts several challenges that an organization may face when planning a release and puts forward ways these challenges may be overcome. The results of this dissertation also implicate that model-based release planning research should focus on how release planning is performed in practice before proposing new models and algorithms.
Ville Heikkilä (Aalto University): Case studies on release planning in agile development organizations