Models for "Optimization of Software Release Planning Considering Architectural Dependencies Amid Competing Interests in Value and Cost"
Within any incremental development paradigm, there exists a tension between the desire to deliver value to the customer early and the desire to reduce cost by avoiding architectural refactoring and rework in subsequent releases. What is lacking is an analytical framework that quantifies benefits and risks of choosing one or the other of these strategies or a blend of the two. In the paper associated with this repository (cited below), we demonstrate the use of design structure and domain mapping matrices for analyzing architectural dependencies and propose a set of optimization-based decision-making tools to support effective release planning. This Mendeley Data repository provides the code for the three optimization models (i.e., development paths) discussed in the paper. The models are built in the GAMS optimization software and solved using the Outer Approximation with both Equality Relaxation and Augmented Penalty (OA/ER/AP) algorithm, which is available as part of the DICOPT solver in GAMS. You will need both the basic GAMS module as well as the DICOPT solver to be able to use these models. The associated article: Sangwan, R.S., Negahban, A,. Nord, R.L, Ozkaya, I., (2020). Optimization of Software Release Planning Considering Architectural Dependencies Amid Competing Interests in Value and Cost. IEEE Transactions on Software Engineering (under review).