DynaReP: A Discrete Event Simulation Model for Re-planning of Software Releases

Software release planning can be described as a process consisting of the following three phases: (i) strategic release planning, i.e., the assignment of features to subsequent releases; (ii) operational release planning, i.e., the allocation of resources to tasks within each individual release; and (iii) dynamic re-planning, i.e., the revision of plans in order to handle unexpected changes imposed on product/project managers responsible for the realization of individual releases. Example changes include the addition or removal of features and/or developers, adjustments due to overestimated developer productivity, or underestimated work volume of feature-specific tasks, and adjusted degrees of task dependencies. The research presented in this paper mainly focuses on phase (iii) in conjunction to phase (ii) of the release planning process, assuming that phase (i) has already been completed. For that purpose, we present a discrete-event simulation model called DynaReP (Dynamic Re-Planner), which can be used for operational planning and re-planning of individual software releases. The applicability, effectiveness, and efficiency of DynaReP are illustrated through a series of typical planning and re-planning scenarios.