Enabling Incremental Iterative Development at Scale: Quality Attribute Refinement and Allocation in Practice
• Technical Report
Publisher
Software Engineering Institute
CMU/SEI Report Number
CMU/SEI-2015-TR-008DOI (Digital Object Identifier)
10.1184/R1/6573455.v1Topic or Tag
Abstract
Lengthy requirements, design, integration, test, and assurance cycles delay delivery, resulting in late discovery of mismatched assumptions and system-level rework. In response, development methods that enable frequent iterations with small increments of functionality, such as agile practices, have become popular. But such methods de-emphasize architectural analysis; they assume the emergence or existence of a stable architecture. Yet as the business goals and context evolve, the architecture must also change, which requires allocating increments of quality attribute requirements to iterations along with other business capabilities. Quality attribute requirements (also called nonfunctional requirements) are hard to separate into smaller increments since they often crosscut many aspects of the product. As a result, allocation is uneven since it is challenging to decompose them and understand their value. Working with quality attribute requirements in an incremental and iterative fashion involves solving two problems: separating high-level requirements into their constituent parts and allocating them to iterations to fulfill the requirement. Underpinning both problems is the need for measurements to show that the requirement is satisfied. This report describes industry principles and practices used to smooth the development of business capabilities and suggests some approaches to enabling large-scale iterative development, or “agile at scale.”
Part of a Collection
Agile Architecting Collection
Cite This Technical Report
Ernst, N., Bellomo, S., Nord, R., & Ozkaya, I. (2015, June 4). Enabling Incremental Iterative Development at Scale: Quality Attribute Refinement and Allocation in Practice. (Technical Report CMU/SEI-2015-TR-008). Retrieved December 30, 2024, from https://doi.org/10.1184/R1/6573455.v1.
@techreport{ernst_2015,
author={Ernst, Neil and Bellomo, Stephany and Nord, Robert and Ozkaya, Ipek},
title={Enabling Incremental Iterative Development at Scale: Quality Attribute Refinement and Allocation in Practice},
month={{Jun},
year={{2015},
number={{CMU/SEI-2015-TR-008},
howpublished={Carnegie Mellon University, Software Engineering Institute's Digital Library},
url={https://doi.org/10.1184/R1/6573455.v1},
note={Accessed: 2024-Dec-30}
}
Ernst, Neil, Stephany Bellomo, Robert Nord, and Ipek Ozkaya. "Enabling Incremental Iterative Development at Scale: Quality Attribute Refinement and Allocation in Practice." (CMU/SEI-2015-TR-008). Carnegie Mellon University, Software Engineering Institute's Digital Library. Software Engineering Institute, June 4, 2015. https://doi.org/10.1184/R1/6573455.v1.
N. Ernst, S. Bellomo, R. Nord, and I. Ozkaya, "Enabling Incremental Iterative Development at Scale: Quality Attribute Refinement and Allocation in Practice," Carnegie Mellon University, Software Engineering Institute's Digital Library. Software Engineering Institute, Technical Report CMU/SEI-2015-TR-008, 4-Jun-2015 [Online]. Available: https://doi.org/10.1184/R1/6573455.v1. [Accessed: 30-Dec-2024].
Ernst, Neil, Stephany Bellomo, Robert Nord, and Ipek Ozkaya. "Enabling Incremental Iterative Development at Scale: Quality Attribute Refinement and Allocation in Practice." (Technical Report CMU/SEI-2015-TR-008). Carnegie Mellon University, Software Engineering Institute's Digital Library, Software Engineering Institute, 4 Jun. 2015. https://doi.org/10.1184/R1/6573455.v1. Accessed 30 Dec. 2024.
Ernst, Neil; Bellomo, Stephany; Nord, Robert; & Ozkaya, Ipek. Enabling Incremental Iterative Development at Scale: Quality Attribute Refinement and Allocation in Practice. CMU/SEI-2015-TR-008. Software Engineering Institute. 2015. https://doi.org/10.1184/R1/6573455.v1