Identifying Technical Debt through Code Comment Analysis

Mário André de Freitas Farias, Methanias Colaço, Rodrigo Oliveira Spínola, Manoel G. de Mendonça Neto

Abstract

In order to effectively manage technical debt (TD), a set of indicators has been used by automated approaches to identify TD items. However, some debt may not be directly identified using only metrics collected from the source code. In thie sense, this work aims to propose an approach to support and automate the identification and management of different TD types through code comment analysis by considering the developers’ point of view.

References

  1. Alves, N.S.R. et al., 2016. Identification and Management of Technical Debt: A Systematic Mapping Study. Information and Software Technology, 70, pp.100- 121.
  2. Alves, N.S.R. et al., 2014. Towards an Ontology of Terms on Technical Debt. In Sixth International Workshop on Managing Technical Debt (MTD). pp. 1-7.
  3. Basili, V.R., Shull, F. and Lanubile, F., 1999. Building knowledge through families of experiments. IEEE Transactions on Software Engineering, 25(4), pp.456- 473.
  4. Campbell, D.T. and Fiske, D.W., 1959. Convergent and discriminant validation by the multitrait-multimethod matrix. Psychological Bulletin, 56(2), pp.81-105.
  5. Cruzes, D.S. and Dyba, T., 2011. Recommended Steps for Thematic Synthesis in Software Engineering. 2011 International Symposium on Empirical Software Engineering and Measurement, (7491), pp.275-284.
  6. Davis, C.G. and Bowen, L.L., 2001. The language of comments in computer software?: A sublanguage of English. , 166(00), pp.1731-1756.
  7. Ellsberg, M. and Heise, L., 2005. Researching Violence Against Women. A PRACTICAL GUIDE FOR RESEARCHERS AND ACTIVISTS, Washington: World Health.
  8. Farias, M. et al., 2015. A Contextualized Vocabulary Model for Identifying Technical Debt on Code Comments. In Seventh International Workshop on Managing Technical Debt. pp. 25-32.
  9. Farias, M.A. de F., Novais, R., et al., 2016. A Systematic Mapping Study on Mining Software Repositories. In ACM SAC.
  10. Farias, M.A. de F., Silva, A.B., et al., 2016. Investigating the Use of a Contextualized Vocabulary in the Identification of Technical Debt?: A Controlled Experiment. In 18Th International Conference on Enterprise Information System - ICEIS (Accepted).
  11. Freitas, J.L., Da Cruz, D. and Henriques, P.R., 2012. A comment analysis approach for program comprehension. Proceedings of the 2012 IEEE 35th Software Engineering Workshop, SEW 2012, pp.11- 20.
  12. Guo, Y., Spínola, R.O. and Seaman, C., 2014. Exploring the costs of technical debt management - a case study. Empirical Software Engineering, 1, pp.1-24.
  13. Gupta, S. et al., 2013. Part-of-speech tagging of program identifiers for improved text-based software engineering tools. IEEE International Conference on Program Comprehension, pp.3-12.
  14. Howard, M.J. et al., 2013. Automatically mining softwarebased, semantically-similar words from comment-code mappings. IEEE International Working Conference on Mining Software Repositories, pp.377-386.
  15. Izurieta, C. et al., 2012. Organizing the technical debt landscape. 2012 3rd International Workshop on Managing Technical Debt, MTD 2012 - Proceedings, pp.23-26.
  16. Jick, T.D., 1979. Mixing Qualitative and Quantitative Methods?: Triangulation in Action Mixing Qualitative and Quantitative Methods?: Triangulation in Action *. Qualitative Methodology, 24(4), pp.602-611.
  17. Li, Z. et al., 2014. A systematic mapping study on technical debt. The Journal of Systems and Software, 101, pp.193-220.
  18. Maalej, W. and Happel, H.-J., 2010. Can development work describe itself? 7th IEEE Working Conference on Mining Software Repositories (MSR), pp.191-200.
  19. Maldonado, E.S. and Shihab, E., 2015. Detecting and Quantifying Different Types of Self-Admitted Technical Debt. In 7th International Workshop on Managing Technical Debt. pp. 9-15.
  20. Maletic, J.I., Collard, M.L. and Marcus, A., 2002. Source Code Files as Structured Documents. In Proceedings. 10th International Workshop on. pp. 289-292.
  21. Mendes, T.S. et al., 2015. VisMinerTD - An Open Source Tool to Support the Monitoring of the Technical Debt Evolution using Software Visualization. In 17th International Conference on Enterprise Information Systems.
  22. Nugroho, A., Visser, J. and Kuipers, T., 2011. An Empirical Model of Technical Debt and Interest Software Improvement Group. Proceeding of the 2nd working on Managing technical debt MTD 11, p.1.
  23. Potdar, A. and Shihab, E., 2014. An Exploratory Study on Self-Admitted Technical Debt. In IEEE International Conference on Software Maintenance and Evolution. pp. 91-100.
  24. Salviulo, F. et al., 2014. Dealing with Identifiers and Comments in Source Code Comprehension and Maintenance?: Results from an Ethnographicallyinformed Study with Students and Professionals. In Proceedings of the 18th international conference on evaluation and assessment in software engineering. ACM. p. 48.
  25. Segal, J., Grinyer, A. and Sharp, H., 2005. The type of evidence produced by empirical software engineers. ACM SIGSOFT Software Engineering Notes, 30(4), pp.1-4.
  26. Shokripour, R. et al., 2013. Why So Complicated?? Simple Term Filtering and Weighting for Location-Based Bug Report Assignment Recommendation. , pp.2-11.
  27. Shull, F., Singer, J. and Sjoberg, D., 2008. Guide to Advanced Empirical Software Engineering, Springer.
  28. Souza, S.C.B. et al., 2006. Which documentation for software maintenance? Journal of the Brazilian Computer Society, 12(3), pp.31-44.
  29. Storey, M. et al., 2008. TODO or To Bug?: Exploring How Task Annotations Play a Role in the Work Practices of Software Developers. In ICSE: International Conference on Software Engineering. pp. 251-260.
  30. Wohlin, C. et al., 2012. Experimentation in Software Engineering,
  31. Yang, J. and Tan, L., 2012. Inferring semantically related words from software context. In 2012 9th IEEE Working Conference on Mining Software Repositories (MSR). Ieee, pp. 161-170.
  32. Zazworka, N. et al., 2013. A case study on effectively identifying technical debt. In Proceedings of the 17th International Conference on Evaluation and Assessment in Software Engineering - EASE 7813. New York, New York, USA: ACM Press, pp. 42-47.
  33. Zazworka, N. and Ackermann, C., 2010. CodeVizard: A Tool to Aid the Analysis of Software Evolution. Proceedings of the 2010 ACM-IEEE International Symposium on Empirical Software Engineering and Measurement, 2(4), pp.63:1-63:1.
Download


Paper Citation


in Harvard Style

Farias M., Colaço M., Spínola R. and Neto M. (2016). Identifying Technical Debt through Code Comment Analysis . In Doctoral Consortium - DCEIS, (ICEIS 2016) ISBN , pages 9-14


in Bibtex Style

@conference{dceis16,
author={Mário André de Freitas Farias and Methanias Colaço and Rodrigo Oliveira Spínola and Manoel G. de Mendonça Neto},
title={Identifying Technical Debt through Code Comment Analysis},
booktitle={Doctoral Consortium - DCEIS, (ICEIS 2016)},
year={2016},
pages={9-14},
publisher={SciTePress},
organization={INSTICC},
doi={},
isbn={},
}


in EndNote Style

TY - CONF
JO - Doctoral Consortium - DCEIS, (ICEIS 2016)
TI - Identifying Technical Debt through Code Comment Analysis
SN -
AU - Farias M.
AU - Colaço M.
AU - Spínola R.
AU - Neto M.
PY - 2016
SP - 9
EP - 14
DO -