This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Architectural Decisions as Reusable Design Assets
January/February 2011 (vol. 28 no. 1)
pp. 64-69
Olaf Zimmermann, IBM Research-Zurich
Architectural decisions are design decisions that are hard to make or costly to change. Hence, mature software engineering and architecture design methods emphasize the importance of architectural decision-making and capture. Capturing decisions after the fact is important, but many inhibitors limit its practice, such as the lack of immediate benefits. The author introduces a novel architectural decision modeling framework called Service-Oriented Architecture (SOA) Decision Modeling (SOAD) that supports repurposing architectural decisions from documentation artifacts to design guides. The SOAD metamodel distinguishes decisions required from decisions made. The article presents several examples dealing with pattern-based SOA design. It also discusses SOAD usage scenarios, which include education, knowledge exchange, design method, review technique, and governance instruments.

1. L. Bass, P. Clements, and R. Kazman, Software Architecture in Practice, 2nd ed., Addison-Wesley, 2003.
2. N. Rozanski and E. Woods, Software Systems Architecture: Working with Stakeholders Using Viewpoints and Perspectives, Addison-Wesley, 2005.
3. P. Eeles and P. Cripps, The Process of Software Architecting, Addison-Wesley, 2010.
4. M. Fowler, "Who Needs an Architect?" IEEE Software, vol. 20, no. 5, 2003, pp. 2–4.
5. G. Booch internal conference presentation to IBM Academy of Technology, 27 Apr., 2009.
6. O. Zimmermann, "An Architectural Decision Modeling Framework for Service-Oriented Architecture Design," PhD thesis, Univ. of Stuttgart, 2009.
7. F. Buschmann, K. Henney, and D. Schmidt, Pattern-Oriented Software Architecture, Vol. 4 − A Pattern Language for Distributed Computing, Wiley, 2007.
8. IBM Unified Method Framework, work product description (ARC 0513), IBM, 2009.
9. M. Ali Babar et al., eds., Software Architecture Knowledge Management: Theory and Practice, Springer, 2009.
10. O. Zimmermann et al., "Managing Architectural Decision Models with Dependency Relations, Integrity Constraints, and Production Rules," J. Systems and Software and Services, vol. 82, no. 8, 2009, pp. 1246–1267.
11. J. Tyree and A. Ackerman, "Architecture Decisions: Demystifying Architecture," IEEE Software, vol. 22, no. 2, 2005, pp. 19–27.
12. M. Fowler, Patterns of Enterprise Appli-cation Architecture, Addison-Wesley, 2003.
13. G. Hohpe and B. Woolf, Enterprise Integration Patterns, Addison-Wesley, 2004.
14. U. Zdun, C. Hentrich, and S. Dustdar, "Modeling Process-Driven and Service-Oriented Architectures Using Patterns and Pattern Primitives," ACM Trans. Web, vol. 1, no. 3, 2007, article no. 3; doi.10.1145/1281480.1281484.
15. M. Nowak, C. Pautasso, and O. Zimmermann, "Architectural Decision Modeling with Reuse: Challenges and Opportunities," Proc. 2010 ICSE Workshop Sharing and Reusing Architectural Knowledge (SHARK 10), ACM Press, 2010, pp. 13–20.

Index Terms:
Software architecture, service-oriented architecture, SOA, architectural decision, enterprise application, architectural patterns
Citation:
Olaf Zimmermann, "Architectural Decisions as Reusable Design Assets," IEEE Software, vol. 28, no. 1, pp. 64-69, Jan.-Feb. 2011, doi:10.1109/MS.2011.3
Usage of this product signifies your acceptance of the Terms of Use.