Documentation Technical Debt: A Qualitative Study in a Software Development Organization
Resumo
Context: Technical debt refers to software development pending issues that may cause great damages in the future if not resolved in the present. The longer the payment is delayed, the greater the interests. Documentation technical debt comprises problems concerning non-existent, inadequate or incomplete software projects' documentation. Motivation: Despite the importance of documentation, there is a lack of reports on how documentation technical debt occurs in software development organizations. Objective: We executed a qualitative study in a software development team of a large public health organization aiming to identify causes that led to documentation technical debts, along with possible consequences of their occurrence, and best practices to avoid documentation problems. Method: We interviewed four members of the development team and codified the collected data using thematic analysis technique. Results: We identified 35 causes, 20 consequences, and 15 best practices. Conclusions: We identified several problems that led to poor documentation despite the existence of well-defined processes. Also, we could observe how organizational culture influences the processes execution, and how team members' technical expertise can minimize the effects of poor documentation.
Referências
V. Braun, and V. Clarke, 2013, "Successful qualitative research: A practical guide for beginners." Thousand Oaks, CA: Sage.
Z. Li, P. Avgeriou, P. Liang, 2015, "A systematic mapping study on technical debt and its management". Journal of Systems Software, v. 101, 193--220. doi:10.1016/j.jss.2014.12.027.
C. Seaman, Y. Guo, 2011, "Measuring and monitoring technical debt". Advances in Computers, vol. 82, p. 22, 2011.
V.M.DA. Silva, H. J. Junior, G. H. Travassos, 2018, "A Taste of the Software Industry Perception of Technical Debt and its Management in Brazil", XXI IberoAmerican Conference on Software Engineering (CIbSE 2018), v. 1, p. 1--10.
J. Zhi, V. Garousi-Yusifoglu, B. Sun, G Garousi, S. Shahnewaz, G. Ruhe, 2015, "Cost, benefits and quality of software development documentation: A systematic mapping", Journal of Systems and Software, v. 99, p. 175--198, ISSN 0164-1212, https://doi.org/10.1016/j.jss.2014.09.042.
C. Ebert, S. Brinkkemper, 2014, "Software product management-An industry evaluation." Journal of Systems and Software, v. 95, p. 10--18.
J. Yli-Huumo, & A. Maglyas, K. Smolander, 2014, "The Sources and Approaches to Management of Technical Debt: A Case Study of Two Product Lines in a Middle-Size Finnish Software Company." doi:10.1007/978-3-319-13835-0_7.
T. Klinger, P. Tarr, P.Wagstrom, C. Williams, 2011, "An Enterprise Perspective on Technical Debt." In: Proceedings of the 2nd Workshop on Managing Technical Debt, New York, NY, USA, pp. 35--38.
P. Runeson, M. Host, A. Rainer, B. Regnell, 2012. "Case study research in software engineering: Guidelines and examples." John Wiley & Sons, Hoboken.