This paper will be published by IEEE for the 35th International Conference on Software Engineering (ICSE 2013).
Projects seeking rapid, sustainable delivery are combining agile and architecture practices to manage competing goals of speed in the short term and stability. In a recent study, we interviewed eight government and commercial project teams that have adopted incremental and iterative software development approaches and identified a mix of Agile and architecture practices that teams apply to rapidly field software and minimize disruption and delay. In this paper, we elaborate one practice from this study, Prototyping with quality attribute focus, to gain a better understanding of how this practice works and what the benefits of the approach are. As we analyzed this practice, we observed that it leverages rapid feedback cycles weaving requirements and architecture, characteristic of the Twin Peaks concept, at three levels: feature development/sprint, release, and portfolio planning levels. We also observed that each of these cycles have differing degrees of separation and cadences. We also describe several regularly occurring integration points within the Scrum framework that allow for synching (weaving of architecture and requirements). We describe the practice in some detail and also discuss a few enablers that keep the practice working smoothly.