Abstract
Support for capturing architectural knowledge has been identified as an important research challenge. As the basis for an approach for recovering design decisions and capturing their rationale we have performed an expert survey in practice to gain insights into the different kinds, influence factors, and sources for design decisions and also on how they are currently captured in practice. The survey has been performed with software architects, software team leads, and senior developers from six different companies in Austria with more than 10 years of experience in software development on average. The survey confirms earlier work by other authors on design decision classification and influence factors but also identifies additional kinds of decisions and influence factors not mentioned in this previous work. In addition, we gained insight into the practice of capturing, the relative importance of different decisions and influence factors, and on potential sources for recovering decisions.
Keywords
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Babar, M.A., Dingsøyr, T., Lago, P., van Vliet, H. (eds.): Software Architecture Knowledge Management: Theory and Practice. Springer (2009)
Lee, J.: Design rationale systems: Understanding the issues. IEEE Intelligent Systems 12(3), 78–85 (1997)
Capilla, R., Nava, F., Carrillo, C.: Effort estimation in capturing architectural knowledge. In: 23rd IEEE/ACM International Conference on Automated Software Engineering, pp. 208–217 (2008)
Lee, L., Kruchten, P.: Capturing software architectural design decisions. In: Canadian Conference on Electrical and Computer Engineering, pp. 686–689 (2007)
Tang, A., Babar, M.A., Gorton, I., Han, J.: A survey of architecture design rationale. J. Syst. Softw. 79(12), 1792–1804 (2006)
Capilla, R., Dueñas, J.C., Nava, F.: Viability for codifying and documenting architectural design decisions with tool support. J. Softw. Maint. Evol. 22(2), 81–119 (2010)
Jansen, A., Bosch, J., Avgeriou, P.: Documenting after the fact: Recovering architectural design decisions. J. Syst. Softw. 81(4), 536–557 (2008)
Eloranta, V.P., Koskimies, K.: Agile software architecture knowledge management. In: Babar, M.A., Brown, A.W., Koskimies, K., Mistrik, I. (eds.) Agile Software Architecture: Aligning Agile Processes and Software Architecture. Elsevier (to appear, 2013)
van Heesch, U., Eloranta, V.P.P., Avgeriou, P., Koskimies, K., Harrison, N.: DCAR - decision-centric architecture reviews. IEEE Softw. Early Access (2013)
Clements, P., Kazman, R., Klein, M.: Evaluating Software Architectures: Methods and Case Studies. Addison-Wesley Professional (2001)
Miesbauer, C., Weinreich, R.: Capturing and maintaining architectural knowledge using context information. In: Joint 10th Working Conf. on Software Architecture & 6th European Conf. on Software Architecture. IEEE (2012)
Weinreich, R., Miesbauer, C., Buchgeher, G., Kriechbaum, T.: Extracting and facilitating architecture in service-oriented software systems. In: Joint 10th Working Conf. on Software Architecture & 6th European Conf. on Software Architecture. IEEE (2012)
Kruchten, P.: An ontology of architectural design decisions in software intensive systems. In: 2nd Groningen Workshop on Software Variability, pp. 54–61 (2004)
Kruchten, P.: Documentation of software architecture from a knowledge management perspective design representation. In: Ali Babar, M., Dingsøoyr, T., Lago, P., Vliet, H. (eds.) Software Architecture Knowledge Management, pp. 39–57. Springer, Heidelberg (2009)
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, pp. 43–58. Springer, Heidelberg (2006)
Zimmermann, O., Koehler, J., Leymann, F., Polley, R., Schuster, N.: Managing architectural decision models with dependency relations, integrity constraints, and production rules. Journal of Systems and Software 82(8), 1249–1267 (2009)
Buber, R., Holzmüller, H.H. (eds.): Qualitative Marktforschung. Betriebswirtschaftlicher Verlag Dr. Th. Gabler/GWV Fachverlage GmbH, Wiesbaden (2007)
Helfferich, C.: Die Qualität qualitativer Daten Manual für die Durchführung qualitativer Interviews. VS, Verl. für Sozialwiss. Wiesbaden (2011)
Mayring, P.: Einführung in die qualitative Sozialforschung: eine Anleitung zu qualitativem Denken. Beltz, Weinheim (2002)
de Boer, R.C., van Vliet, H.: Experiences with semantic wikis for architectural knowledge management. In: 2011 Ninth Working IEEE/IFIP Conference on Software Architecture, pp. 32–41 (2011)
Tang, A.: Software designers, are you biased? In: Proceedings of the 6th International Workshop on SHAring and Reusing Architectural Knowledge, SHARK 2011, pp. 1–8. ACM, New York (2011)
Adolph, S., Hall, W., Kruchten, P.: Using grounded theory to study the experience of software development. Empirical Software Engineering 16(4), 487–513 (2011)
Gasson, S.: Rigor in grounded theory research: An interpretive perspective on generating theory from qualitative field studies. In: Whitman, M.E., Woszczynski, A.B. (eds.) The Handbook of Information Systems Research. Idea Group Inc. (IGI) (2004)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Miesbauer, C., Weinreich, R. (2013). Classification of Design Decisions – An Expert Survey in Practice. In: Drira, K. (eds) Software Architecture. ECSA 2013. Lecture Notes in Computer Science, vol 7957. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-39031-9_12
Download citation
DOI: https://doi.org/10.1007/978-3-642-39031-9_12
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-39030-2
Online ISBN: 978-3-642-39031-9
eBook Packages: Computer ScienceComputer Science (R0)