A Method to Support Documentation Technical Debt Management

Authors

  • Leonardo Mendes Universidade Federal do Estado do Rio de Janeiro (UNIRIO)
  • Cristina Cerdeiral Nest Wealth
  • Gleison Santos Universidade Federal do Estado do Rio de Janeiro (UNIRIO) https://orcid.org/0000-0003-0279-0440

DOI:

https://doi.org/10.5753/isys.2024.2904

Keywords:

Documentation Technical Debt, Technical Debt Management, Technical Debt, Software Documentation

Abstract

Documentation technical debt typically is related to non-existent, inconsistent, outdated, unnecessary, or incomplete documentation. Such problems may lead to negative consequences to the software product development and maintenance endeavors, for instance, difficulties identifying and removing defects and increased cost and effort to deploy new versions. We followed Design Science Research principles to create DOTED, a method for managing Documentation Technical Debt on software products. We present a case study to evaluate DOTED viability in supporting the management of this type of technical debt. The study participants highlighted its benefits and reported the intention of future use. We also found that DOTED may be more effective in fostering technical debt repayment if used early and continuously on the product’s development lifecycle.

Downloads

Download data is not yet available.

References

Alves, N. S., Mendes, T. S., de Mendonça, M. G., Spínola, R. O., Shull, F., and Seaman, C. (2016). Identification and management of technical debt: A systematic mapping study. Information and Software Technology, 70:100–121.

Baskerville, R. L. (1997). Distinguishing action research from participative case studies. Journal of Systems and Information Technology, 1(1):24–43.

Besker, T., Martini, A., and Bosch, J. (2022). The use of incentives to promote technical debt management. Information and Software Technology, 142:106740.

Bohnet, J. and Dollner, J. (2011). Monitoring code quality and development activity by software maps. In Proceedings of the 2nd Workshop on Managing Technical Debt, MTD ’11, page 9–16, New York, NY, USA. Association for Computing Machinery.

Bourque, P., Fairley, R. E., and Society, I. C. (2014). Guide to the Software Engineering Body of Knowledge (SWEBOK(R)): Version 3.0. IEEE Computer Society Press, Washington, DC, USA, 3rd edition.

Brown, N., Cai, Y., Guo, Y., Kazman, R., Kim, M., Kruchten, P., Lim, E., MacCormack, A., Nord, R., Ozkaya, I., Sangwan, R., Seaman, C., Sullivan, K., and Zazworka, N. (2010). Managing technical debt in software-reliant systems. In Proceedings of the FSE/SDP Workshop on Future of Software Engineering Research, FoSER ’10, page 47–52, New York, NY, USA. Association for Computing Machinery.

Buschmann, F. (2011). To pay or not to pay technical debt. IEEE Software, 28(6):29–31.

Charalampidou, S., Ampatzoglou, A., Chatzigeorgiou, A., and Tsiridis, N. (2018). In tegrating traceability within the ide to prevent requirements documentation debt. In 2018, 44th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), pages 421–428.

Clements, P., Garlan, D., Little, R., Nord, R., and Stafford, J. (2003). Documenting software architectures: views and beyond. In 25th International Conference on Software Engineering, 2003. Proceedings., pages 740–741.

Cruzes, D. S. and Dyba, T. (2011). Recommended Steps for Thematic Synthesis in Software Engineering. In 2011 International Symposium on Empirical Software Engineering and Measurement, pages 275–284, Banff, AB, Canada. IEEE.

Davis, F. D. (1989). Perceived Usefulness, Perceived Ease of Use, and User Acceptance of Information Technology. MIS Quarterly, 13(3):319.

dos Santos, P. S. M., Varella, A., Dantas, C. R., and Borges, D. B. (2013). Visualizing and managing technical debt in agile development: An experience report. In Baumeister, H. and Weber, B., editors, Agile Processes in Software Engineering and Extreme Programming, pages 121–134, Berlin, Heidelberg. Springer Berlin Heidelberg.

Ernst, N. A., Bellomo, S., Ozkaya, I., Nord, R. L., and Gorton, I. (2015). Measure it? manage it? ignore it? software practitioners and technical debt. In Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering, ESEC/FSE 2015, page 50–60, New York, NY, USA. Association for Computing Machinery.

Gat, I. (2010). Revolution in software: Using technical debt techniques to govern the software development process. Agile Product and Project Management, Cutter Consortium Executive Report, 11(4).

Green, R. and Ledgard, H. (2011). Coding guidelines: Finding the art in the science. Commun. ACM, 54(12):57–63.

Guo, Y. and Seaman, C. (2011). A portfolio approach to technical debt management. In Proceedings of the 2nd Workshop on Managing Technical Debt, MTD ’11, page 31–34, New York, NY, USA. Association for Computing Machinery.

Hevner, A. R. (2007). The three cycle view of design science research. Scandinavian Journal of Information Systems, 19(2):87–92.

Hevner, A. R., March, S. T., Park, J., and Ram, S. (2004). Design science in information systems research. MIS Quarterly, 28(1):75–105.

IEEE (1998). IEEE Standard for Software Maintenance. IEEE Std 1219-1998, pages 1–56.

Letouzey, J.-L. (2012). The sqale method for evaluating technical debt. In 2012 Third International Workshop on Managing Technical Debt (MTD), pages 31–36.

Li, Z., Avgeriou, P., and Liang, P. (2015). A systematic mapping study on technical debt and its management. Journal of Systems and Software, 101:193–220.

Martini, A. and Bosch, J. (2015). The danger of architectural technical debt: Contagious debt and vicious circles. In 12th Working IEEE/IFIP Conference on Software Architecture, pages 1–10.

Melo, I., Santos, G., Serey, D. D., and Valente, M. T. (2016). Perceptions of 395 developers on software architecture’s documentation and conformance. In X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS), pages 81– 90.

Mendes, L., Cerdeiral, C., and Santos, G. (2019). Documentation technical debt: A qualitative study in a software development organization. In Proceedings of the 33rd Brazilian Symposium on Software Engineering, SBES 2019, page 447–451, New York, NY, USA. Association for Computing Machinery.

Michael Golden, J. (2010). Transformation patterns for curing the human causes of technical debt. Cutter IT Journal, 23(10):30.

Mills, A., Durepos, G., and Wiebe, E. (2010). Encyclopedia of Case Study Research. Number v. 1 in Encyclopedia of Case Study Research. SAGE Publications.

PMI (2017). A Guide To The Project Management Body Of Knowledge (PMBOK Guides). Project Management Institute, 6th edition.

Power, K. (2013). Understanding the impact of technical debt on the capacity and velocity of teams and organizations: Viewing team and organization capacity as a portfolio of real options. In 2013 4th International Workshop on Managing Technical Debt (MTD), pages 28–31.

Rios, N., Mendes, L., Cerdeiral, C., Magalhães, A. P. F., Perez, B., Correal, D., Astudillo, H., Seaman, C., Izurieta, C., Santos, G., and Oliveira Spínola, R. (2020). Hearing the voice of software practitioners on causes, effects, and practices to deal with documentation debt. In Madhavji, N., Pasquale, L., Ferrari, A., and Gnesi, S., editors, Requirements Engineering: Foundation for Software Quality, pages 55–70, Cham. Springer International Publishing.

Rios, N., Spínola, R. O., Mendonça, M., and Seaman, C. (2018). 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, ESEM ’18, New York, NY, USA. Association for Computing Machinery.

Runeson, P., Host, M., Rainer, A., and Regnell, B. (2012). ¨ Case Study Research in Software Engineering: Guidelines and Examples. John Wiley and Sons, New Jersey, USA, 1o edition.

Sandberg, A., Staron, M., and Antinyan, V. (2015). Towards proactive management of technical debt by software metrics. In CEUR Workshop Proceedings, volume 1525.

Seaman, C. and Guo, Y. (2011). Chapter 2 - Measuring and Monitoring Technical Debt. volume 82 of Advances in Computers, pages 25–46. Elsevier.

Seaman, C., Guo, Y., Zazworka, N., Shull, F., Izurieta, C., Cai, Y., and Vetro, A. (2012). ` Using technical debt data in decision making: Potential decision approaches. In 2012 Third International Workshop on Managing Technical Debt (MTD), pages 45–48.

Silva, V. M., Junior, H. J., and Travassos, G. H. (2019). A taste of the software industry perception of technical debt and its management in brazil. Journal of Software Engineering Research and Development, 7:1:1 – 1:16.

Snipes, W., Robinson, B., Guo, Y., and Seaman, C. (2012). Defining the decision fac tors for managing defects: A technical debt perspective. In 2012 Third International Workshop on Managing Technical Debt (MTD), pages 54–60.

Soares, H. F., Alves, N. S., Mendes, T. S., Mendonça, M., and Spínola, R. O. (2015). Investigating the link between user stories and documentation debt on software projects. In 2015 12th International Conference on Information Technology - New Generations, pages 385–390.

Stochel, M. G., Wawrowski, M. R., and Rabiej, M. (2012). Value-based technical debt model and its application. In International Conference on Software Engineering Advances, pages 205–2012.

Wieringa, R. (2014). Design science methodology for information systems and software engineering. Springer. 10.1007/978-3-662-43839-8.

Yli-Huumo, J., Maglyas, A., Smolander, K., Haller, J., and Tornroos, H. (2016). Developing processes to increase technical debt visibility and manageability – an action research study in industry. In Abrahamsson, P., Jedlitschka, A., Nguyen Duc, A., Fel derer, M., Amasaki, S., and Mikkonen, T., editors, Product-Focused Software Process Improvement, pages 368–378, Cham. Springer International Publishing.

Zazworka, N., Seaman, C., and Shull, F. (2011). Prioritizing design debt investment opportunities. In Proceedings of the 2nd Workshop on Managing Technical Debt, MTD ’11, page 39–42, New York, NY, USA. Association for Computing Machinery.

Zazworka, N., Sp´ınola, R. O., Vetro’, A., Shull, F., and Seaman, C. (2013). A case study on effectively identifying technical debt. In Proceedings of the 17th International Conference on Evaluation and Assessment in Software Engineering, EASE ’13, page 42–47, New York, NY, USA. Association for Computing Machinery.

Zhi, J., Garousi-Yusifoglu, V., Sun, B., Garousi, G., Shahnewaz, S., and Ruhe, G. (2015). ˘ Cost, benefits and quality of software development documentation: A systematic map ping. Journal of Systems and Software, 99:175–198.

Downloads

Published

2024-04-29

How to Cite

Mendes, L., Cerdeiral, C., & Santos, G. (2024). A Method to Support Documentation Technical Debt Management. ISys - Brazilian Journal of Information Systems, 17(1), 5:1 – 5: 28. https://doi.org/10.5753/isys.2024.2904

Issue

Section

Regular articles