Abstract
Architectural Technical Debt (ATD) is a metaphor used to describe decisions taken by software architects to accomplish short-term goals but possibly negatively affecting the long-term health of the system. However, ATD doesn’t receive enough attention for the architect teams because it is hard to identify, to measure, to prioritize, and its value is related to long-term maintenance and evolution of a system. In this research, we propose a model-driven approach that focuses on building a binary classification model for ATD identification based on the information gathered from artifacts produced during architecture design. This model will allow software architects to support the managing of conscious and unconscious ATD in their software projects. This proposal focuses on TD at the architecture-level only without considering source code. The effectiveness of this proposal will be evaluated using case studies and expert interviews.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
(Meta)model of Eclipse Modeling Framework (EMF).
References
Alves, N.S., 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 (dagstuhl seminar 16162). In: Dagstuhl Reports. No. 4, 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–16 (2018)
Bogner, A., Menz, W.: The theory-generating expert interview: epistemological interest, forms of knowledge, interaction. Interviewing Experts, pp. 43–80. Palgrave Macmillan, UK, London (2009). https://doi.org/10.1057/9780230244276_3
Brondum, J., Zhu, L.: Visualising architectural dependencies. In: 2012 Third International Workshop on Managing Technical Debt (MTD), pp. 7–14 (June 2012)
Díaz-Pace, J.A., Tommasel, A., Godoy, D.: Towards anticipation of architectural smells using link prediction techniques. In: 2018 IEEE 18th International Working Conference on Source Code Analysis and Manipulation (SCAM), pp. 62–71. IEEE (2018)
Ernst, N.A., Bellomo, S., Ozkaya, I., Nord, R.L., Gorton, I.: Measure it? manage it? ignore it? software practitioners and technical debt. In: Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering, pp. 50–60. ESEC/FSE 2015, ACM, New York, USA (2015)
Falessi, D., Cantone, G., Kazman, R., Kruchten, P.: Decision-making techniques for software architecture design: a comparative survey. ACM Comput. Surv. (CSUR) 43(4), 33 (2011)
Freire, S., et al.: Surveying software practitioners on technical debt payment practices and reasons for not paying off debt items. In: Proceedings of the Evaluation and Assessment in Software Engineering, pp. 210–219. EASE 2020, Association for Computing Machinery, New York, USA (2020)
Kitchenham, B., Brereton, O.P., Budgen, D., Turner, M., Bailey, J., Linkman, S.: Systematic literature reviews in software engineering - a systematic literature review. Inf. Softw. Technol. 51(1), 7–15 (2009)
Kruchten, P.: Strategic management of technical debt: tutorial synopsis. In: 2012 12th International Conference on Quality Software, pp. 282–284 (August 2012)
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.: Chapter 9- architectural debt management in value-oriented architecting. In: Economics-Driven Software Architecture, pp. 183–204. Morgan Kaufmann, Boston (2014)
Li, Z., Liang, P., Avgeriou, P.: Chapter 5- architecture viewpoints for documenting architectural technical debt. In: Software Quality Assurance, pp. 85–132. Morgan Kaufmann, Boston (2016)
Li, Z., Liang, P., Avgeriou, P., Guelfi, N., Ampatzoglou, A.: An empirical investigation of modularity metrics for indicating architectural technical debt. In: Proceedings of the 10th International ACM Sigsoft Conference on Quality of Software Architectures, pp. 119–128. QoSA 2014, ACM, New York, USA (2014)
Marinescu, R.: Assessing technical debt by identifying design flaws in software systems. IBM J. Res. Dev. 56(5), 1–9 (2012)
Martini, A., Besker, T., Bosch, J.: The introduction of technical debt tracking in large companies. In: 2016 23rd Asia-Pacific Software Engineering Conference (APSEC), pp. 161–168 (December 2016)
Martini, A., Sikander, E., Madlani, N.: A semi-automated framework for the identification and estimation of architectural technical debt: a comparative case-study on the modularization of a software component. Inf. Softw. Technol. 93, 264–279 (2018)
Nord, R.L., Ozkaya, I., Sangwan, R.S., Koontz, R.J.: Architectural dependency analysis to understand rework costs for safety-critical systems. In: Companion Proceedings of the 36th International Conference on Software Engineering, pp. 185–194. ICSE Companion 2014, ACM, New York, USA (2014)
Pérez, B., et al.: What are the practices used by software practitioners on technical debt payment? results from an international family of surveys. In: To appear in the Proceedings of the 3rd International Conference on Technical Debt. TechDebt, ACM (2020)
Pérez, B., et al.: Familiarity, causes and reactions of software practitioners to the presence of technical debt: a replicated study in the chilean software industry. In: 2019 38th International Conference of the Chilean Computer Science Society (SCCC), pp. 1–7 (2019)
Rios, N., et al.: Hearing the voice of software practitioners on causes, effects, and practices to deal with documentation debt. In: Madhavji, N., Pasquale, L., Ferrari, A., Gnesi, S. (eds.) REFSQ 2020. LNCS, vol. 12045, pp. 55–70. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-44429-7_4
Rios, N., Mendonça, M.G., Seaman, C., Spinola, R.O.: Causes and effects of the presence of technical debt in agile software projects (2019)
Rios, N., Spínola, R.O., Mendonça, M., Seaman, C.: The most common causes and effects of technical debt: first results from a global family of industrial surveys. In: Proceedings of the 12th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, p. 39. ACM (2018)
Verdecchia, R., Malavolta, I., Lago, P.: Architectural technical debt identification: the research landscape. In: International Conference on Technical Debt (TechDebt) (2018)
Xiao, L., Cai, Y., Kazman, R., Mo, R., Feng, Q.: Identifying and quantifying architectural debt. In: Proceedings of the 38th International Conference on Software Engineering, pp. 488–498. ICSE 2016, ACM, New York, USA (2016)
Zengyang Li, P.L., Avgeriou, P.: Architectural technical debt identification based on architecture decisions and change scenarios. In: 2015 12th Working IEEE/IFIP Conference on Software Architecture, pp. 65–74 (May 2015)
Acknowledgments
The author is working under the supervision of Prof. Darío Correal.
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
Pérez, B. (2020). A Semiautomatic Approach to Identify Architectural Technical Debt from Heterogeneous Artifacts. In: Muccini, H., et al. Software Architecture. ECSA 2020. Communications in Computer and Information Science, vol 1269. Springer, Cham. https://doi.org/10.1007/978-3-030-59155-7_1
Download citation
DOI: https://doi.org/10.1007/978-3-030-59155-7_1
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-59154-0
Online ISBN: 978-3-030-59155-7
eBook Packages: Computer ScienceComputer Science (R0)