Abstract
Architectural technical debt in a software-intensive system is driven by design decisions about its structure, frameworks, technologies, languages, etc. Unlike code-level technical debt, which can be readily detected by static analysers, and can often be refactored with minimal efforts, architectural debt is hard to detect, and its remediation is wide-ranging, daunting, and often avoided. The objective of this study is to develop a better understanding of how software development organisations conceptualize their architectural debt, and how they deal with it, if at all. We used a grounded theory method, eliciting qualitative data from software architects and senior technical staff from a wide range of software development organizations. The result of the study, i.e., the theory emerging from the collected data, constitutes an encompassing conceptual theory of architectural debt, identifying and relating concepts such as symptoms, causes, consequences, and management strategies. By grounding the findings in empirical data, the theory provides researchers and practitioners with evidence of which crucial factors of architectural technical debt are experienced in industrial contexts.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Due to space limitations, in this paper we do not discuss in detail the categories with direct semantics in our theory (ATD, Artifact, Tool, and System), and the marginal categories related to human factors (Person and Communication).
- 2.
References
Adolph, S., Hall, W., Kruchten, P.: Using grounded theory to study the experience of software development. Empirical Softw. Eng. 16(4), 487–513 (2011)
Alves, N., Mendes, T.S., de Mendonça, M.G., SpÃnola, R.O., Shull, F., Seaman, C.: Identification and management of technical debt: a systematic mapping study. Inf. Softw. Technol. 70, 100–121 (2016)
Avgeriou, P., Kruchten, P., Ozkaya, I., Seaman, C.: Managing Technical Debt in Software Engineering. Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik (2016)
Besker, T., Martini, A., Bosch, J.: Managing architectural technical debt: a unified model and systematic literature review. J. Syst. Softw. 135, 1–6 (2018)
Bourque, P., Fairley, R.E.: Guide to the Software Engineering Body of Knowledge. IEEE Computer Society (2014)
Brooks Jr, F.P.: The Mythical Man-Month, Anniversary edn. Addison-Wesley (1995)
Fowler, M.: Refactoring: Improving the Design of Existing Code. Addison-Wesley Professional (2018)
Ghanbari, H., Besker, T., Martini, A., Bosch, J.: Looking for peace of mind?: Manage your (technical) debt: an exploratory field study. In: ACM/IEEE EMSE Symposium (2017)
Glaser, B.: Theoretical Sensitivity. Sociology Press (1978)
Glaser, B.: Basics of Grounded Theory Analysis: Emergence vs Forcing. Sociology Press (1992)
Glaser, B.: The Grounded Theory Perspective III: Theoretical Coding. Sociology Press (2005)
Glaser, B., Strauss, A.: Discovery of Grounded Theory: Strategies for Qualitative Research. Aldine (1967)
Glaser, B.G., Holton, J.: Remodeling grounded theory. In: Forum Qualitative Sozialforschung/Forum: Qualitative Social Research, vol. 5 (2004)
Hoda, R., Noble, J.: Becoming Agile: A Grounded Theory of Agile Transitions in Practice. In: International Conference on Software Engineering. IEEE Press (2017)
Kruchten, P.: What colour is your backlog? (2008). https://tinyurl.com/y6f7vhpx. Accessed 10 May 2020
Kruchten, P., Nord, R., Ozkaya, I.: Technical debt: from metaphor to theory and practice. IEEE Softw. 29(6), 18–21 (2012)
Kruger, J., Dunning, D.: Unskilled and unaware of it: how difficulties in recognizing one’s own incompetence lead to inflated self-assessments. J. Pers. Soc. Psychol. 77(6), 1121 (1999)
Li, Z., Avgeriou, P., Liang, P.: A systematic mapping study on technical debt and its management. J. Syst. Softw. 101, 193–220 (2015)
Li, Z., Liang, P., Avgeriou, P.: Architecture viewpoints for documenting architectural technical debt. In: Software Quality Assurance, pp. 85–132. Elsevier (2016)
Li, Z., Liang, P., Avgeriou, P., Guelfi, N., Ampatzoglou, A.: An empirical investigation of modularity metrics for indicating architectural technical debt. In: International ACM Conference on Quality of Software Architectures (2014)
Martini, A., Bosch, J.: The danger of architectural technical debt: contagious debt and vicious circles. In: WICSA Conference. IEEE (2015)
Martini, A., Bosch, J.: Towards prioritizing architecture technical debt: information needs of architects and product owners. In: Euromicro Conference on Software Engineering and Advanced Applications, pp. 422–429. IEEE (2015)
Martini, A., Bosch, J.: On the interest of architectural technical debt: uncovering the contagious debt phenomenon. J. Softw.: Evol. Process 29, e1877 (2017)
Martini, A., Bosch, J., Chaudron, M.: Investigating architectural technical debt accumulation and refactoring over time: A multiple-case study. Inf. Softw. Technol. 67, 237–253 (2015)
Oliver, D., Serovich, J., Mason, T.: Constraints and opportunities with interview transcription: towards reflection in qualitative research. Soc. Forces 84, 1273 (2005)
Roveda, R., Fontana, F.A., Pigazzini, I., Zanoni, M.: Towards an architectural debt index. In: Euromicro Conference on Software Engineering and Advanced Applications. IEEE (2018)
Stol, K.J., Ralph, P., Fitzgerald, B.: Grounded theory in software engineering research: a critical review and guidelines. In: IEEE/ACM International Conference on Software Engineering (2016)
Szyperski, C., Gruntz, D., Murer, S.: Component Software: Beyond Object-Oriented Programming. Pearson Education (2002)
Urquhart, C., Lehmann, H., Myers, M.D.: Putting the ‘theory’ back into grounded theory: guidelines for grounded theory studies in information systems. Inf. Syst. J. 20(4), 357–381 (2010)
Verdecchia, R., Lago, P., Malavolta, I., Ozkaya, I.: ATDx: building an architectural technical debt index. In: ENASE Conference (2020)
Verdecchia, R., Malavolta, I., Lago, P.: Architectural technical debt identification: the research landscape. In: IEEE/ACM TechDebt Conference (2018)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Verdecchia, R., Kruchten, P., Lago, P. (2020). Architectural Technical Debt: A Grounded Theory. In: Jansen, A., Malavolta, I., Muccini, H., Ozkaya, I., Zimmermann, O. (eds) Software Architecture. ECSA 2020. Lecture Notes in Computer Science(), vol 12292. Springer, Cham. https://doi.org/10.1007/978-3-030-58923-3_14
Download citation
DOI: https://doi.org/10.1007/978-3-030-58923-3_14
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-58922-6
Online ISBN: 978-3-030-58923-3
eBook Packages: Computer ScienceComputer Science (R0)