search menu icon-carat-right cmu-wordmark

Enabling Incremental Iterative Development at Scale: Quality Attribute Refinement and Allocation in Practice

Technical Report
This report describes industry practices used to develop business capabilities and suggests approaches to enable large-scale iterative development, or agile at scale.
Publisher

Software Engineering Institute

CMU/SEI Report Number
CMU/SEI-2015-TR-008
DOI (Digital Object Identifier)
10.1184/R1/6573455.v1

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 June 24, 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-Jun-24}
}

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: 24-Jun-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 24 Jun. 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