TY - JOUR
T1 - Optimization of Software Release Planning Considering Architectural Dependencies, Cost, and Value
AU - Sangwan, Raghvinder S.
AU - Negahban, Ashkan
AU - Nord, Robert L.
AU - Ozkaya, Ipek
N1 - Funding Information:
This material is based upon work funded and supported by the Department of Defense under Contract No. FA8702-15-D-0002 with Carnegie Mellon University for the operation of the Software Engineering Institute, a federally funded research and development center
Publisher Copyright:
© 1976-2012 IEEE.
PY - 2022/4/1
Y1 - 2022/4/1
N2 - 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 opportunities and risks of choosing one or the other of these strategies or a blend of the two. This article demonstrates the use of design structure and domain mapping matrices for analyzing architectural dependencies and proposes an optimization-based decision-making technique to support effective release planning. The optimization models recommend the order in which architectural elements and features should be implemented across different releases so as to: (a) minimize rework cost; (b) maximize early value delivery; or (c) optimize an integrated measure of cost and value. These analytic models can be applied earlier in the life cycle and, hence, provide timely information about the progress and changes that occur at each iteration.
AB - 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 opportunities and risks of choosing one or the other of these strategies or a blend of the two. This article demonstrates the use of design structure and domain mapping matrices for analyzing architectural dependencies and proposes an optimization-based decision-making technique to support effective release planning. The optimization models recommend the order in which architectural elements and features should be implemented across different releases so as to: (a) minimize rework cost; (b) maximize early value delivery; or (c) optimize an integrated measure of cost and value. These analytic models can be applied earlier in the life cycle and, hence, provide timely information about the progress and changes that occur at each iteration.
UR - http://www.scopus.com/inward/record.url?scp=85128824304&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85128824304&partnerID=8YFLogxK
U2 - 10.1109/TSE.2020.3020013
DO - 10.1109/TSE.2020.3020013
M3 - Article
AN - SCOPUS:85128824304
SN - 0098-5589
VL - 48
SP - 1369
EP - 1384
JO - IEEE Transactions on Software Engineering
JF - IEEE Transactions on Software Engineering
IS - 4
ER -