This Article 
 Bibliographic References 
 Add to: 
Using Patterns to Capture Architectural Decisions
July/August 2007 (vol. 24 no. 4)
pp. 38-45
Neil B. Harrison, Utah Valley State College
Paris Avgeriou, University of Groningen
Uwe Zdun, Vienna University of Technology
All of software design involves developers making decisions and reifying those decisions in code. The decisions made during software architecting are particularly significant, as they have systemwide implications, especially on quality attributes. However, architects often fail to document their decisions well. This leads to architectural erosion: decisions made during later development might conflict with the original architectural decisions and thus cause significant system disruptions. Researchers are investigating various methods and tools to help architects effectively document their decisions. However, such documentation remains difficult, so we often lose knowledge of key architectural decisions. Architecture patterns can be an important way to capture and recover this knowledge. They are easy to use and provide a rich set of information about rationale, consequences, and related decisions. This article is part of a special issue on software patterns.
Index Terms:
software architecture, patterns, decision documentation, quality attributes, design rationale, architectural knowledge
Neil B. Harrison, Paris Avgeriou, Uwe Zdun, "Using Patterns to Capture Architectural Decisions," IEEE Software, vol. 24, no. 4, pp. 38-45, July-Aug. 2007, doi:10.1109/MS.2007.124