Architecture Decisions: Who, How, and When?

The way in which architectural decisions are made changes when more agile development methods are used. This chapter focuses on architectural decisions and how they are made in industrial settings. From our literature research and experience, we have constructed three axes on which the architectural decision process of projects or companies can be projected. We evaluate this framework with five industrial case studies in which we have participated. In all of the cases, the differences between two points in time (phases) were evaluated. These differences helped us identify what aspects influence the efficiency of the project/company. The presented Triple-A Framework can be used in other projects to help locate places where the architectural process can be improved when the agility of a project changes. © 2014 Elsevier Inc. All rights reserved.

[1]  Philippe Kruchten,et al.  Software architecture and agile software development: a clash of two cultures? , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[2]  Peng Liang,et al.  Ontology-based Software Architecture Documentation , 2012, 2012 Joint Working IEEE/IFIP Conference on Software Architecture and European Conference on Software Architecture.

[3]  Rick Kazman,et al.  The architecture tradeoff analysis method , 1998, Proceedings. Fourth IEEE International Conference on Engineering of Complex Computer Systems (Cat. No.98EX193).

[4]  Claes Wohlin,et al.  A comparison of issues and advantages in agile and incremental development between state of the art and an industrial case , 2009, J. Syst. Softw..

[5]  Jeff Tyree,et al.  Architecture decisions: demystifying architecture , 2005, IEEE Software.

[6]  Philippe Kruchten,et al.  The Rational Unified Process: An Introduction , 1998 .

[7]  James O. Coplien,et al.  Lean Architecture: for Agile Software Development , 2010 .

[8]  Jan Bosch,et al.  Software Architecture as a Set of Architectural Design Decisions , 2005, 5th Working IEEE/IFIP Conference on Software Architecture (WICSA'05).

[9]  Muhammad Ali Babar,et al.  An industrial case of exploiting product line architectures in agile software development , 2009, SPLC.

[10]  Jonathan Rasmusson,et al.  The Agile Samurai: How Agile Masters Deliver Great Software , 2010 .

[11]  David Garlan,et al.  Documenting software architectures: views and beyond , 2002, 25th International Conference on Software Engineering, 2003. Proceedings..

[12]  Daniel Sundmark,et al.  What Does Research Say about Agile and Architecture? , 2010, 2010 Fifth International Conference on Software Engineering Advances.

[13]  Johan F. Hoorn,et al.  The lonesome architect , 2009, 2009 Joint Working IEEE/IFIP Conference on Software Architecture & European Conference on Software Architecture.

[14]  K. Eisenhardt Building theories from case study research , 1989, STUDI ORGANIZZATIVI.

[15]  Stefan Seedorf,et al.  Ontobrowse: A Semantic Wiki for Sharing Knowledge about Software Architectures , 2007, SEKE.

[16]  Patricia Lago,et al.  Architectural Knowledge: Getting to the Core , 2007, QoSA.

[17]  Antony Tang,et al.  An analysis of decision-centric architectural design approaches , 2009, 2009 ICSE Workshop on Sharing and Reusing Architectural Knowledge.

[18]  Jos Nijhuis,et al.  Design Decisions: The Bridge between Rationale and Architecture , 2006 .

[19]  Philippe Kruchten,et al.  What do software architects really do? , 2008, J. Syst. Softw..

[20]  Henrik Kniberg,et al.  Scrum and XP from the Trenches: Enterprise Software Development , 2007 .

[21]  Petra Bosch-Sijtsema,et al.  Introducing agile customer‐centered development in a legacy software product line , 2011, Softw. Pract. Exp..

[22]  Morten T. Hansen,et al.  What's your strategy for managing knowledge? , 1999, Harvard business review.

[23]  Muhammad Ali Babar,et al.  Agility and Architecture: Can They Coexist? , 2010, IEEE Softw..

[24]  R. Malan,et al.  Less is more with minimalist architecture , 2002 .

[25]  Philippe Kruchten,et al.  An Ontology of Architectural Design Decisions in Software-Intensive Systems , 2004 .

[26]  Robert L. Nord,et al.  Applied Software Architecture , 1999, Addison Wesley object technology series.