Abstract
In enterprise application development and other software construction projects, a critical success factor is to make sound architectural decisions. Text templates and tool support for capturing architectural decisions exist, but have failed to reach broad adoption so far. One of the inhibitors we perceived on large-scale industry projects is that architectural decision capturing is regarded as a retrospective and therefore unwelcome documentation task which does not provide any benefit during the original design work. A major problem of such a retrospective approach is that the decision rationale is not available to decision makers when they identify, make, and enforce decisions. Often a large, possibly distributed, community of decision makers is involved in these three steps. In this paper, we propose a new conceptual framework for proactive decision identification, decision maker collaboration, and decision enforcement. Based on a meta model capturing reuse and collaboration aspects explicitly, our framework instantiates decision models from requirements models and re usable decision templates. These templates capture know ledge gained on other projects em ploy ing the same architectural style. As an exemplary application of these concepts to service-oriented architecture shows, reusable architectural decision models can speed up the decision identification and improve the quality of the decision making. Reusable architectural decision models can also simplify the exchange of architecture design rationale within and between project teams, and expose decision out come as model transformation parameters in model-driven software development.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Abrams, S., Bloom, B., Keyser, P., Kimelman, D., Nelson, E., Neuberger, W., Roth, T., Simmonds, I., Tang, S., Vlissides, J.: Architectural Thinking and Modeling with the Architects’ Workbench. IBM Systems Journal 45 (2006)
Arsanjani, A.: Service-oriented modeling and architecture, IBM developerWorks (2004), http://www.ibm.com/developerworks/webservices/library/ws-soa-design1
Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 2nd edn. Addison Wesley, Reading (2003)
Beck, K.: Extreme Programming Explained. Addison Wesley, Reading (2000)
Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, M.: Pattern-Oriented Software Architecture – a System of Patterns. Wiley, Chichester (1996)
Falessi, D., Becker, M., Cantone, G.: Design Decision Rationale: Experiences and Steps Towards a more Systematic Approach. In: Workshop on Sharing and Reusing Architectural Knowledge, ACM SIGSOFT Software Engineering. Notes 31, 5 (2006)
Fowler, M.: Patterns of Enterprise Application Architecture. Addison Wesley, Reading (2003)
Fowler, M.: UML Distilled. Addison Wesley, Reading (2000)
Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns – Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1995)
Hitchins, D.: Advanced Systems Thinking, Engineering, and Management. Artech House Publishers (2003)
Hohpe, G., Woolf, B.: Enterprise Integration Patterns. Addison Wesley, Reading (2004)
IBM Corporation: SOA and Web Services Best Practices, Academy of Technology Report (2004)
IBM Corporation, SOA Governance and Management Method, http://www.ibm.com/software/solutions/soa/gov/method
International Standards Organization (ISO), ISO/IEC 9126-1:2001, Software Quality Attributes, Software engineering – Product quality, Part 1: Quality model (2001)
Jansen, A., Bosch, J.: Software Architecture as a Set of Architectural Design Decisions. In: Proceedings of the 5th Working IEEE/IFIP Conference on Software Architecture (Wicsa 2005), IEEE Computer Society Press, Los Alamitos (2005)
Johnston, S.: RUP Plug-In for SOA V1.0, IBM developerWorks (2005), http://www.ibm.com/developerworks/rational/library/05/510_soaplug
Koehler, J., Hauser, R., Küster, J., Ryndina, K., Vanhatalo, J., Wahler, M.: The Role of Visual Modeling and Model Transformations in Business-driven Development. In: Proceedings of the 5th International Workshop on Graph Transformation and Visual Modeling Techniques, Elsevier, Amsterdam (2006)
Krafzig, D., Banke, K., Slama, D.: Enterprise SOA. Prentice-Hall, Upper Saddle River (2005)
Kruchten, P.: The Rational Unified Process: An Introduction. Addison-Wesley, Reading (2003)
Kruchten, P., Lago, P., van Vliet, H.: Building up and reasoning about architectural knowledge. In: Hofmeister, C., Crnkovic, I., Reussner, R. (eds.) QoSA 2006. LNCS, vol. 4214, Springer, Heidelberg (2006)
Lee, J., Lai, K.: What’s in Design Rationale?. Human-Computer Interaction 6 (3 & 4) (1991)
MacLean, A., Young, R., Bellotti, V., Moran, T.: Questions, Options, and Criteria: Elements of Design Space Analysis, Human-Computer Interaction 6 (3 & 4) (1991)
OASIS. Web Services Business Process Execution Language (WSBPEL), Version 1.1 (2003), http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsbpel
Schuster, N., Zimmermann, O., Pautasso, C.: ADkwik: Web 2.0 Collaboration System for Architectural Decision Engineering. In: Proceedings of the Nineteenth International Conference on Software Engineering & Knowledge Engineering (SEKE 2007), KSI (2007)
Software Engineering Institute, Capability Maturity Model® Integration (CMMI), http://www.sei.cmu.edu/cmmi
Svahnberg, M., Wohlin, C., Lundberg, L., Mattsson, M.: A Quality-Driven Decision Support Method for Identifying Software Architecture Candidates. International Journal of Software Engineering and Knowledge Management 13(5) (2003)
Tang, A., Babar, M.A., Gorton, I., Han, J.: A Survey of the Use and Documentation of Architecture Design Rationale. In: Proceedings of the 5th Working IEEE/IFIP Conference on Software Architecture (Wicsa 2005), IEEE Computer Society Press, Los Alamitos (2005)
Tyree, J., Akerman, A.: Architecture Decisions: Demystifying Architecture. IEEE Software 22 (2005)
Zdun, U., Dustdar, S.: Model-Driven and Pattern-Based Integration of Process-Driven SOA Models, Internationales Begegnungs- und Forschungszentrum fuer Informatik (IBFI), Schloss Dagstuhl, Germany, http://drops.dagstuhl.de/opus/volltexte/2006/820
Zimmermann, O., Doubrovski, V., Grundler, J., Hogg, K.: Service-Oriented Architecture and Business Process Choreography in an Order Management Scenario. In: ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 2005), ACM Press, New York (2005)
Zimmermann, O., Grundler, J., Tai, S., Leymann, F.: Architectural Decisions and Patterns for Transactional Workflows in SOA. In: Krämer, B., Lin, K.-J., Narasimhan, P. (eds.) ICSOC 2007. LNCS, vol. 4749, pp. 81–93 (2007)
Zimmermann, O., Koehler, J., Leymann, F.: The Role of Architectural Decisions in Model-Driven Service-Oriented Architecture Construction. In: Proceedings of the OOPSLA 2006 Workshop on Best Practices and Methodologies in Service-Oriented Architectures, Unipub (2006)
Zimmermann, O., Milinski, M., Craes, M., Oellermann, F.: Second Generation Web Services-Oriented Architecture in Production in the Finance Industry. In: ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 2004), ACM Press, New York (2004)
Zimmermann, O., Tomlinson, M., Peuser, S.: Perspectives on Web Services. Springer, Heidelberg (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2007 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Zimmermann, O., Gschwind, T., Küster, J., Leymann, F., Schuster, N. (2007). Reusable Architectural Decision Models for Enterprise Application Development. In: Overhage, S., Szyperski, C.A., Reussner, R., Stafford, J.A. (eds) Software Architectures, Components, and Applications. QoSA 2007. Lecture Notes in Computer Science, vol 4880. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-77619-2_2
Download citation
DOI: https://doi.org/10.1007/978-3-540-77619-2_2
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-77617-8
Online ISBN: 978-3-540-77619-2
eBook Packages: Computer ScienceComputer Science (R0)