Una métrica para medir deuda técnica basada en el análisis de las más usadas. Caso de estudio del repositorio Square

La deuda técnica es un componente principal del costo de propiedad de la aplicación, se ha convertido en una de las metáforas más importantes para expresar los atajos de desarrollo, que causan la degradación de la calidad interna del software. Es necesario recalcar que, existen métricas de código ab...

Full description

Autores:
Diaz Mena, Didier
Tipo de recurso:
Fecha de publicación:
2024
Institución:
Universidad Nacional de Colombia
Repositorio:
Universidad Nacional de Colombia
Idioma:
spa
OAI Identifier:
oai:repositorio.unal.edu.co:unal/86250
Acceso en línea:
https://repositorio.unal.edu.co/handle/unal/86250
https://repositorio.unal.edu.co/
Palabra clave:
000 - Ciencias de la computación, información y obras generales::003 - Sistemas
Medición de software
Lenguajes de programación (Computadores electrónicos)
Deuda Técnica
Métricas
Repositorio
lenguajes de programación
Technical Debt
Metrics
Repository
Programming language
Rights
openAccess
License
Atribución-NoComercial 4.0 Internacional
id UNACIONAL2_cd0caa24c212af85970e34701149f61a
oai_identifier_str oai:repositorio.unal.edu.co:unal/86250
network_acronym_str UNACIONAL2
network_name_str Universidad Nacional de Colombia
repository_id_str
dc.title.spa.fl_str_mv Una métrica para medir deuda técnica basada en el análisis de las más usadas. Caso de estudio del repositorio Square
dc.title.translated.eng.fl_str_mv A metric to measure technical debt based on the analysis of the most used ones. Square repository case study
title Una métrica para medir deuda técnica basada en el análisis de las más usadas. Caso de estudio del repositorio Square
spellingShingle Una métrica para medir deuda técnica basada en el análisis de las más usadas. Caso de estudio del repositorio Square
000 - Ciencias de la computación, información y obras generales::003 - Sistemas
Medición de software
Lenguajes de programación (Computadores electrónicos)
Deuda Técnica
Métricas
Repositorio
lenguajes de programación
Technical Debt
Metrics
Repository
Programming language
title_short Una métrica para medir deuda técnica basada en el análisis de las más usadas. Caso de estudio del repositorio Square
title_full Una métrica para medir deuda técnica basada en el análisis de las más usadas. Caso de estudio del repositorio Square
title_fullStr Una métrica para medir deuda técnica basada en el análisis de las más usadas. Caso de estudio del repositorio Square
title_full_unstemmed Una métrica para medir deuda técnica basada en el análisis de las más usadas. Caso de estudio del repositorio Square
title_sort Una métrica para medir deuda técnica basada en el análisis de las más usadas. Caso de estudio del repositorio Square
dc.creator.fl_str_mv Diaz Mena, Didier
dc.contributor.advisor.none.fl_str_mv Espinosa Bedoya, Albeiro
dc.contributor.author.none.fl_str_mv Diaz Mena, Didier
dc.contributor.researchgroup.spa.fl_str_mv Calidad de Software
dc.subject.ddc.spa.fl_str_mv 000 - Ciencias de la computación, información y obras generales::003 - Sistemas
topic 000 - Ciencias de la computación, información y obras generales::003 - Sistemas
Medición de software
Lenguajes de programación (Computadores electrónicos)
Deuda Técnica
Métricas
Repositorio
lenguajes de programación
Technical Debt
Metrics
Repository
Programming language
dc.subject.lemb.none.fl_str_mv Medición de software
Lenguajes de programación (Computadores electrónicos)
dc.subject.proposal.spa.fl_str_mv Deuda Técnica
Métricas
Repositorio
lenguajes de programación
dc.subject.proposal.eng.fl_str_mv Technical Debt
Metrics
Repository
Programming language
description La deuda técnica es un componente principal del costo de propiedad de la aplicación, se ha convertido en una de las metáforas más importantes para expresar los atajos de desarrollo, que causan la degradación de la calidad interna del software. Es necesario recalcar que, existen métricas de código abierto las cuales proporcionan datos numéricos en algunos productos de software y que a su vez permiten medir el índice de mantenibilidad, Complejidad ciclomática, Profundidad de herencia, Acoplamiento de clases, Líneas de código fuente, Líneas de código ejecutable donde los desarrolladores pueden identificar riesgos y hacer seguimiento continuo. No obstante, la literatura informa de varias métricas de software para líneas de productos y proceso, otras orientadas a objetos. En efecto, se realiza una búsqueda centralizada de varios repositorios de código abierto en la plataforma GitHub con el objetivo de dar cumplimiento a la necesidad expuesta de acuerdo a los criterios definido donde fueron preseleccionado nueve repositorios específicamente con el lenguaje Python obteniendo A si una mayor puntuación el repositorio de código abierto (square/square-python-sdk) para la aplicación de la métrica ya que es un proyecto medible desde todos sus ámbitos. En síntesis, se efectúa el análisis de los datos mediante el método estadístico ACP, también la normalización y cálculo de los pesos sobre las referencias de las métricas más usadas en la literatura. Finalmente, se valida la métrica propuesta aplicada al repositorio Square como caso de estudio donde se realizó el desarrollo del consumo de una API tanto a nivel Backend y FrontEnd. (Tomado de la fuente)
publishDate 2024
dc.date.accessioned.none.fl_str_mv 2024-06-18T00:19:52Z
dc.date.available.none.fl_str_mv 2024-06-18T00:19:52Z
dc.date.issued.none.fl_str_mv 2024-06-17
dc.type.spa.fl_str_mv Trabajo de grado - Maestría
dc.type.driver.spa.fl_str_mv info:eu-repo/semantics/masterThesis
dc.type.version.spa.fl_str_mv info:eu-repo/semantics/acceptedVersion
dc.type.content.spa.fl_str_mv Text
dc.type.redcol.spa.fl_str_mv http://purl.org/redcol/resource_type/TM
status_str acceptedVersion
dc.identifier.uri.none.fl_str_mv https://repositorio.unal.edu.co/handle/unal/86250
dc.identifier.instname.spa.fl_str_mv Universidad Nacional de Colombia
dc.identifier.reponame.spa.fl_str_mv Repositorio Institucional Universidad Nacional de Colombia
dc.identifier.repourl.spa.fl_str_mv https://repositorio.unal.edu.co/
url https://repositorio.unal.edu.co/handle/unal/86250
https://repositorio.unal.edu.co/
identifier_str_mv Universidad Nacional de Colombia
Repositorio Institucional Universidad Nacional de Colombia
dc.language.iso.spa.fl_str_mv spa
language spa
dc.relation.indexed.spa.fl_str_mv LaReferencia
dc.relation.references.spa.fl_str_mv Abilio, R., Vale, G., Figueiredo, E., & Costa, H. (16 de Mayo de 2016). Metrics for Feature-Oriented Programming. IEEE, 1-7. doi:10.1109/WETSoM.2016.014
Al Mamun, M., Martini, A., Staron, M., & Berger, C. (7 de Noviembre de 2019). Evolution of technical debt: An exploratory study. Digitala Vetenskapliga Arkivet, 2476, 1-16. Recuperado el 24 de Enero de 2024, de https://www.diva-portal.org/smash/record.jsf?pid=diva2%3A1368627&dswid=-9383
Alali, A., Kagdi, H., & Maletic, J. I. (2 de Julio de 2008). What's a Typical Commit? A Characterization of Open Source Software Repositories. IEEE, 1-10. doi:10.1109/ICPC.2008.24
Alfayez, R., Alwehaibi, W., Winn, R., Venson, E., & Boehm, B. W. (28 de Junio de 2020). A systematic literature review of technical debt prioritization. ACM Digital Library, 1-42. doi:10.1145/3387906.3388630
Amanatidis, T., Mittas, N., Moschou, A., Chatzigeorgiou, A., & Ampatzoglou , A. (26 de Agosto de 2020). Evaluating the agreement among technical debt measurement tools: building an empirical benchmark of technical debt liabilities. Springer Nature, 25, 4161-4204. doi:https://doi.org/10.1007/s10664-020-09869-w
Angular. (12 de Diciembre de 2023). Angular. Recuperado el 16 de Enero de 2024, de https://angular.io/docs
Ardimento, P., Aversano, L., Bernardi, M., Cimitile, M., & Iammarino, M. (Diciembre de 2022). Using deep temporal convolutional networks to just-in-time forecast technical debt principal. Science direct, 194. doi:https://www.sciencedirect.com/science/article/pii/S0164121222001649
Arvanitou, E. M., Ampatzoglou, A., Bibi, S., Chatzigeorgiou, A., & Stamelos, I. G. (2019). Monitoring Technical Debt in an Industrial Setting. ACM Digital Library, 123–132. doi:10.1145/3319008.3319019
Atlassian. (22 de Mayo de 2023). Atlassian. Recuperado el 22 de Mayo de 2023, de https://www.atlassian.com/es/git/tutorials/making-a-pull-request#:~:text=Las%20pull%20requests%20son%20una,integrarlos%20en%20el%20proyecto%20oficial
Avgeriou, P., Taibi, D., Ampatzoglou, A., Fontana, F., & Besker, T. (18 de Septiembre de 2020). An Overview and Comparison of Technical Debt Measurement Tools. IEEE, 1-19. doi:10.1109/MS.2020.3024958
Bedi, J., & Kaur , K. (24 de Junio de 2020). Understanding factors affecting technical debt. Springer Nature, 14, 1051–1060. doi:https://doi.org/10.1007/s41870-020-00487-9
Besker, T; Martini, A; Bosch, J. (20 de Junio de 2020). Carrot and stick approaches when managing technical debt. ACM Digital Library, 21-30. doi:https://doi.org/10.1145/3387906.3388619
Caglayan, B., Bener, A., & Koch, S. (18 de Mayo de 2009). Merits of using repository metrics in defect prediction for open source projects. IEEE, 1-6. doi:10.1109/FLOSS.2009.5071357
Caldeira, J., Cardoso, J., & Abreu, B. F. (30 de Octubre de 2020). Unveiling process insights from refactoring practices. ScienceDirect. doi:https://doi.org/10.1016/j.csi.2021.103587
Capilla, R., Mikkonen, T., Carrillo, C., Fontana, F. A., Pigazzini, I., & Lenarduzzi, V. (25 de Junio de 2021). Impact of Opportunistic Reuse Practices to Technical Debt. IEEE, 1-10. doi:10.1109/TechDebt52882.2021.00011
Chidamber, S. R., Darcy, D. P., & Kemerer, C. F. (Agosto de 1998). Managerial use of metrics for object-oriented software: an exploratory analysis. IEEE, 1-12. doi:10.1109/32.707698
Cholda, P., & Stochel, M. (16 de Octubre de 2020). Continuous Debt Valuation Approach (CoDVA) for Technical Debt Prioritization. IEEE, 1-5. doi:10.1109/SEAA51224.2020.00066
Churcher, N. I., Shepperd, M. J., Chidamber, S., & Kemerer, C. F. (Marzo de 1998). Comments on "A metrics suite for object oriented design. IEEE, 263 - 265. doi:10.1109/32.372153
de Almeida, R. R., Ribeiro, R. N., Treude, C., & Kulesza, U. (25 de Junio de 2021). Business-Driven Technical Debt Prioritization: An Industrial Case Study. IEEE, 1-10. doi:10.1109/TechDebt52882.2021.00017
de Toledo , S. S., Martini, A., & Sjøberg, D. I. (9 de Abril de 2021). Identifying architectural technical debt, principal, and interest in microservices: A multiple-case study. Elsevier, 177, 1-21. doi:https://doi.org/10.1016/j.jss.2021.110968
Diamantopoulos, T., Papamichail, M., Karanikiotis, T., Chatzidimitriou, K. C., & Symeonidis, A. L. (Junio de 2020). Employing Contribution and Quality Metrics for Quantifying the Software Development Process. ACM Digital Library, 558-562. doi:https://doi.org/10.1145/3379597.3387490
Digkas, G., Chatzigeorgiou, A. N., Ampatzoglou, A., & Avgeriou, P. C. (20 de Octubre de 2021). Can Clean New Code reduce Technical Debt Density. IEEE, 1-18. doi:10.1109/TSE.2020.3032557
DiStefano, C., Zhu, M., & Mîndrilã, D. (Noviembre de 2019). Understanding and Using Factor Scores: Considerations for the Applied Researcher. Scholarworks, 14(20), 1-12. doi:https://doi.org/10.7275/da8t-4g52
Efimova, P. (26 de Enero de 2021). Stepsize Ltd. Recuperado el 18 de Octubre de 2021, de https://www.stepsize.com/blog/tools-to-track-and-manage-technical-debt
Ernst, N., Kazman, R., & Delange, J. (2021). Technical Debt in Practice: How to Find It and Fix It. doi:https://doi.org/10.7551/mitpress/12440.001.0001
Feitelson, D. G., Frachtenberg, E., & Beck, K. L. (4 de Febrero de 2013). Development and Deployment at Facebook. IEEE, 1-10. doi:10.1109/MIC.2013.25
Feitosa, D., Ampatzoglou, A., Gkortzis, A., & Bibi, S. (23 de Mayo de 2020). CODE reuse in practice: Benefiting or harming technical debt. Elsevier , 167, 1-12. doi:https://doi.org/10.1016/j.jss.2020.110618
Freire, S., Rios, N., Pérez, B., & Mendonça, M. (21 de Mayo de 2021). How do Technical Debt Payment Practices Relate to the Effects of the Presence of Debt Items in Software Projects? IEEE, 1-5. doi:10.1109/SANER50967.2021.00074
Greenacre, M., Groenen, P., & Hastie, T. (22 de Diciembre de 2022). Principal component analysis. Springer Nature Limited. doi:https://doi.org/10.1038/s43586-022-00184-w
Hamilton, T. (6 de Mayo de 2023). Guru99. Recuperado el 20 de Mayo de 2023, de https://www.guru99.com/unit-testing-guide.html
Hick, H., & Denkmayr, K. (2004). The Load Matrix — a method for optimising powertrain durability and reliability test programmes. Springer Nature. Recuperado el 6 de Noviembre de 2023, de https://link.springer.com/chapter/10.1007/978-0-85729-410-4_262
Hodgson, P. (9 de Octubre de 2017). Martin Fowler. Recuperado el 12 de Agosto de 2021, de https://martinfowler.com/articles/feature-toggles.html
Holmegaard, E. (20 de Abril de 2023). Medium. Recuperado el 25 de Enero de 2024, de https://medium.com/@emilholmegaard/managing-technical-debt-31b52e83b510
Hoyos, J. D. (2021). Repositorio Institucional Biblioteca Digital. Recuperado el 19 de Octubre de 2021, de https://repositorio.unal.edu.co/bitstream/handle/unal/80530/71360425.2021.pdf?sequence=4&isAllowed=y
IBM. (22 de Marzo de 2021). IBM. Recuperado el 13 de Noviembre de 2023, de https://www.ibm.com/docs/en/spss-statistics/25.0.0?topic=analysis-factor-scores
IBM. (3 de Marzo de 2023). Recuperado el 6 de Noviembre de 2023, de https://www.ibm.com/docs/es/spss-statistics/29.0.0?topic=detection-kmo-bartletts-test
Jenik, F. (2 de Febrero de 2021). Sudolabs. Recuperado el 22 de Mayo de 2023, de https://sudolabs.com/blog/automated-release-process-for-lerna-monorepo
Kherif, F., & Latypova, A. (2020). Machine Learning Methods and Applications to Brain Disorders. (S. V. Andrea Mechelli, Ed.) Copyright © 2020 Elsevier Inc. All rights reserved. doi:https://doi.org/10.1016/B978-0-12-815739-8.00012-2
Lenarduzzi, V., Besker, T., Taibi, D., Martini, A., & Fontana, F. A. (30 de Junio de 2020). arXiv, 1-42. Recuperado el 27 de Agosto de 2021, de https://arxiv.org/abs/1904.12538
Lenarduzzi, V., Saarimäki, N., & Taibi, D. (18 de Septiembre de 2019). The Technical Debt Dataset. ACM Digital Library, 1-10. doi:https://doi.org/10.1145/3345629.3345630
Lenarduzzi, V., T, D., Besker , T., Martini, A., & Arcelli, F. F. (14 de Octubre de 2020). A systematic literature review on Technical Debt prioritization: Strategies, processes, factors, and tools. sciencedirect, 1-16. doi:https://doi.org/10.1016/j.jss.2020.110827
León-Sigg, M., Vázquez-Reyes, S., & Rodríguez-Ávila. (31 de Diciembre de 2020). Towards the Use of a Framework to Make Technical Debt Visible. IEEE, 1-7. doi:10.1109/CONISOFT50191.2020.00022
Li , X., Moreschini, S., Zhang, Z., & Taibi, D. (Junio de 2022). Exploring factors and metrics to select open source software components for integration: An empirical study. Sciencedirect, 188, 1-19. doi:https://doi.org/10.1016/j.jss.2022.111255
Liebig, J., Apel, S., & Lengauer, C. (Mayo de 2010). An Analysis of the Variability in Forty Preprocessor-Based Software Product Lines. ResearchGate. doi:10.1145/1806799.1806819
Lumivero. (Octubre de 2023). Xlstat. Recuperado el 14 de Octubre de 2023, de https://www.xlstat.com/es/soluciones/funciones/analisis-de-componentes-principales-acp
Mahdavi-Hezaveh, R., Ajmeri, N., & Williams, L. (10 de Febrero de 2022). Feature toggles as code: Heuristics and metrics for structuring feature toggles. Science direct, 145, 1-14. doi:https://doi.org/10.1016/j.infsof.2021.106813
Malakuti, S., & Heuschkel, J. (25 de Junio de 2021). The Need for Holistic Technical Debt Management across the Value Stream: Lessons Learnt and Open Challenges. IEEE, 1-5. doi:10.1109/TechDebt52882.2021.00021
Mangale, S. (28 de Agosto de 2020). Medium. Recuperado el 6 de Noviembre de 2023, de https://sanchitamangale12.medium.com/scree-plot-733ed72c8608
Martin Fowler. (21 de Mayo de 2019). Recuperado el 25 de Enero de 2024, de https://martinfowler.com/bliki/TechnicalDebt.html
Maven Solutions. (10 de Enero de 2024). Tips and Tricks for Measuring and Improving Technical Debt Metrics. Recuperado el 23 de Enero de 2024, de https://www.mavensolutions.tech/blog/metrics-for-technical-debt/
McCabe, T. J. (1976). A Complexity Measure. IEEE. doi:10.1109/TSE.1976.233837
Meinicke, J., Hoyos, J., Vasilescu, B., & Kästner, C. (2020). Capture the Feature Flag: Detecting Feature Flags in Open-Source. ACM Digital Library, 169–173. doi:https://doi.org/10.1145/3379597.3387463
Microsoft. (1 de Marzo de 2023). Recuperado el 5 de Mayo de 2023, de https://learn.microsoft.com/en-us/dotnet/api/system.obsoleteattribute?view=net-7.0
Microsoft. (29 de Noviembre de 2023). Microsoft. Recuperado el 15 de Enero de 2024, de https://learn.microsoft.com/en-us/visualstudio/code-quality/code-metrics-values?view=vs-2022
Microsoft. (10 de Enero de 2024). Microsoft. Recuperado el 16 de Enero de 2024, de https://visualstudio.microsoft.com/es/
Mikhajlova, A., & Sekerinski, E. (Septiembre de 1997). Class Refinement and Interface Refinement in Object-Oriented Programs. ResearchGate, 1-21. Recuperado el 22 de Mayo de 2023, de https://www.researchgate.net/publication/303992360_Class_Refinement_and_Interface_Refinement_in_Object-Oriented_Programs
Mohan, B., & Kumar, P. (20 de Enero de 2013). An Overview of Various Object Oriented Metrics. ResearchGate, II, 1-11. Recuperado el 14 de Febrero de 2022, de https://www.researchgate.net/publication/236616349_An_Overview_of_Various_Object_Oriented_Metrics
Molnar, A. J., & Motogna, S. (20 de Octubre de 2020). Long-Term Evaluation of Technical Debt in Open-Source Software. ACM Digital Library, 1-10. doi:10.1145/3382494.3410673
OMG. (1 de Septiembre de 2018). Object Management Group. Recuperado el 15 de Febrero de 2023, de https://www.omg.org/spec/ATDM/?__hstc=64371056.313d6ed65e49ea25f2bfedd7ce2e4cea.1698498226843.1698498226843.1698498226843.1&__hssc=64371056.2.1698498226843&__hsfp=1453860330
Pathak, A. (11 de Abril de 2022). Kinsta Inc. Recuperado el 02 de Marzo de 2023, de https://kinsta.com/es/blog/herramientas-devops/
Pavel, K. (24 de Marzo de 2023). Modlogix. Recuperado el 22 de Mayo de 2023, de https://modlogix.com/blog/3-main-threats-resulting-from-outdated-technology/
Perera, J., Tempero, E. D., Tu, Y., & Blincoe , K. (Junio de 2023). Understanding the relationship between Technical Debt, New Code Cost and Rework Cost in Open-Source Software Projects: An Empirical Study. ACM Digital Library, 247–252. doi:https://doi.org/10.1145/3593434.3593490
Pérez, B., Castellanos, C., Correal, D., Rios, N., Freire, S., & Spínola, R. (22 de Julio de 2021). Technical debt payment and prevention through the lenses of software architects. Elsevier, 140. doi:https://doi.org/10.1016/j.infsof.2021.106692
Pfeiffer, R. H., & Lungu, M. (27 de Febrero de 2022). Technical Debt and Maintainability: How do tools measure it? arXiv, 1-22. Recuperado el 24 de Enero de 2024, de https://arxiv.org/abs/2202.13464
PostgreSQL. (9 de Noviembre de 2023). PostgreSQL. Recuperado el 16 de Enero de 2024, de https://www.postgresql.org/
Quora. (18 de Agosto de 2018). Quora. Recuperado el 22 de Mayo de 2023, de https://www.quora.com/What-are-the-steps-one-should-take-to-understand-a-software-system-with-no-documentation
Ramirez, J., Tuovinen, A. P., & Mikkonen, T. (25 de Junio de 2021). Experiences on Managing Technical Debt with Code Smells and AntiPatterns. IEEE, 1-29. doi:10.1109/TechDebt52882.2021.00013
Rosser, L. A., & Norton, J. H. (7 de Junio de 2021). A Systems Perspective on Technical Debt. IEEE, 1-10. doi:10.1109/AERO50100.2021.9438359
Rouse, M. (27 de Diciembre de 2016). Techopedia. Recuperado el 20 de Mayo de 2023, de https://www.techopedia.com/definition/8073/lines-of-code-loc#:~:text=27%20December%2C%202016-,What%20Does%20Lines%20Of%20Code%20Mean%3F,used%20to%20write%20a%20program.
Samarthyam, G., Suryanarayana, G., & Sharma, T. (25 de Septiembre de 2015). InfoQ.com. Recuperado el 25 de Enero de 2024, de https://www.infoq.com/articles/pragmatic-technical-debt/
Schermann, G., Cito, J., & Leitner, P. (22 de Marzo de 2016). An empirical study on principles and practices of continuous delivery and deployment. PeerJ, 1-13. doi:10.7287/peerj.preprints.1889v1
Soliman, M., & Avgeriou, p. (14 de Junio de 2021). Architectural design decisions that incur technical debt — An industrial case study. Elsevier, 139, 1-17. doi:https://doi.org/10.1016/j.infsof.2021.106669
Spertus, E. (23 de Diciembre de 2021). stackoverflow. Recuperado el 20 de Mayo de 2023, de https://stackoverflow.blog/2021/12/23/best-practices-for-writing-code-comments/
Stochel, M G; Chołda, P; Wawrowski, M R. (16 de Octubre de 2020). On Coherence in Technical Debt Research : Awareness of the Risks Stemming from the Metaphorical Origin and Relevant Remediation Strategies. IEEE, 1-9. doi:10.1109/SEAA51224.2020.00067
Subramanyam, R., & Krishnan, M. S. (23 de Abril de 2003). Empirical analysis of CK metrics for object-oriented design complexity: implications for software defects. IEEE, 297 - 310. doi:10.1109/TSE.2003.1191795
Taibi, D., & Lenarduzzi, V. (2021). A systematic literature review on Technical Debt prioritization: Strategies, processes, factors, and tools. Science Direct, 171, 1-16. doi:https://doi.org/10.1016/j.jss.2020.110827
Tan, J., Feitosa, D., & Avgeriou, P. (Julio de 2023). The lifecycle of Technical Debt that manifests in both source code and issue trackers. Science direct, 159, 1-14. doi:https://doi.org/10.1016/j.infsof.2023.107216
Tang, M. H., Kao, M. H., & Chen, M. H. (6 de Agosto de 2002). An empirical study on object-oriented metrics. IEEE. doi:10.1109/METRIC.1999.809745
Tsoukalas, D., Kehagias, D., Siavvas, M., & Chatzigeorgiou. (8 de Agosto de 2020). Technical debt forecasting: An empirical study on open-source repositories. Elsevier(170), 1-31. doi:https://doi.org/10.1016/j.jss.2020.110777
UCLA. (22 de Agosto de 2021). Recuperado el 6 de Noviembre de 2023, de https://stats.oarc.ucla.edu/spss/seminars/efa-spss/
Verma, D., & Kumar, S. (Junio de 2017). Prediction of Defect Density for Open Source Software using Repository Metrics. ACM Digital Library, 1-18. Recuperado el 2 de Marzo de 2022, de https://dl.acm.org/doi/abs/10.5555/3177580.3177587
Wheatley, M. (13 de Octubre de 2022). DEV Community. Recuperado el 02 de Marzo de 2023, de https://dev.to/maximwheatley/an-open-source-solution-to-dora-devops-metrics-72l
Wiese, M. (25 de Junio de 2021). Preventing Technical Debt by Technical Debt Aware Project Management. IEEE, 1-10. doi:10.1109/TechDebt52882.2021.00018
Wiese, M., Rachow, P., Riebisch, M., & Schwarze, J. (2022). Preventing technical debt with the TAP framework for Technical Debt Aware Management. Science direct, 148, 0950-5849. doi:https://doi.org/10.1016/j.infsof.2022.106926
Windev. (22 de Marzo de 2023). Windev. Recuperado el 20 de Mayo de 2023, de https://help.windev.com/en-US/?9000091&name=instant_spotting_modified_codecurrent_code
dc.rights.coar.fl_str_mv http://purl.org/coar/access_right/c_abf2
dc.rights.license.spa.fl_str_mv Atribución-NoComercial 4.0 Internacional
dc.rights.uri.spa.fl_str_mv http://creativecommons.org/licenses/by-nc/4.0/
dc.rights.accessrights.spa.fl_str_mv info:eu-repo/semantics/openAccess
rights_invalid_str_mv Atribución-NoComercial 4.0 Internacional
http://creativecommons.org/licenses/by-nc/4.0/
http://purl.org/coar/access_right/c_abf2
eu_rights_str_mv openAccess
dc.format.extent.spa.fl_str_mv 87 páginas
dc.format.mimetype.spa.fl_str_mv application/pdf
dc.publisher.spa.fl_str_mv Universidad Nacional de Colombia
dc.publisher.program.spa.fl_str_mv Medellín - Minas - Maestría en Ingeniería - Ingeniería de Sistemas
dc.publisher.faculty.spa.fl_str_mv Facultad de Minas
dc.publisher.place.spa.fl_str_mv Medellín, Colombia
dc.publisher.branch.spa.fl_str_mv Universidad Nacional de Colombia - Sede Medellín
institution Universidad Nacional de Colombia
bitstream.url.fl_str_mv https://repositorio.unal.edu.co/bitstream/unal/86250/1/license.txt
https://repositorio.unal.edu.co/bitstream/unal/86250/2/1077453954.2024.pdf
https://repositorio.unal.edu.co/bitstream/unal/86250/3/1077453954.2024.pdf.jpg
bitstream.checksum.fl_str_mv eb34b1cf90b7e1103fc9dfd26be24b4a
816d8cbd8f2627de791bcafe83d2cdf5
448c5ee7c34c716c9669835237d84579
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
repository.name.fl_str_mv Repositorio Institucional Universidad Nacional de Colombia
repository.mail.fl_str_mv repositorio_nal@unal.edu.co
_version_ 1814090102701293568
spelling Atribución-NoComercial 4.0 Internacionalhttp://creativecommons.org/licenses/by-nc/4.0/info:eu-repo/semantics/openAccesshttp://purl.org/coar/access_right/c_abf2Espinosa Bedoya, Albeiro749aa8775c497b18160b8a0a5d502335Diaz Mena, Didier5dcfaa3a149e1e3f22794bb54937d317Calidad de Software2024-06-18T00:19:52Z2024-06-18T00:19:52Z2024-06-17https://repositorio.unal.edu.co/handle/unal/86250Universidad Nacional de ColombiaRepositorio Institucional Universidad Nacional de Colombiahttps://repositorio.unal.edu.co/La deuda técnica es un componente principal del costo de propiedad de la aplicación, se ha convertido en una de las metáforas más importantes para expresar los atajos de desarrollo, que causan la degradación de la calidad interna del software. Es necesario recalcar que, existen métricas de código abierto las cuales proporcionan datos numéricos en algunos productos de software y que a su vez permiten medir el índice de mantenibilidad, Complejidad ciclomática, Profundidad de herencia, Acoplamiento de clases, Líneas de código fuente, Líneas de código ejecutable donde los desarrolladores pueden identificar riesgos y hacer seguimiento continuo. No obstante, la literatura informa de varias métricas de software para líneas de productos y proceso, otras orientadas a objetos. En efecto, se realiza una búsqueda centralizada de varios repositorios de código abierto en la plataforma GitHub con el objetivo de dar cumplimiento a la necesidad expuesta de acuerdo a los criterios definido donde fueron preseleccionado nueve repositorios específicamente con el lenguaje Python obteniendo A si una mayor puntuación el repositorio de código abierto (square/square-python-sdk) para la aplicación de la métrica ya que es un proyecto medible desde todos sus ámbitos. En síntesis, se efectúa el análisis de los datos mediante el método estadístico ACP, también la normalización y cálculo de los pesos sobre las referencias de las métricas más usadas en la literatura. Finalmente, se valida la métrica propuesta aplicada al repositorio Square como caso de estudio donde se realizó el desarrollo del consumo de una API tanto a nivel Backend y FrontEnd. (Tomado de la fuente)Technical debt is a major component of application cost of ownership, It has become one of the most important metaphors to express development shortcuts, which cause degradation of the internal quality of the software. It is necessary to empha size that there are open-source metrics which provide numerical data in some software products and which in turn allow measuring the maintainability index, cyclomatic complexity, depth of inheritance, class coupling, lines of source code, lines of executable code where developers can identify risks and continuously monitor. However, the literature reports several software metrics for product and process lines, others object-oriented. In effect, a centralized search of several open-source repositories is carried out on the GitHub platform with the aim of fulfilling the stated need according to the defined criteria where nine repositories were preselected specifically with the Python language, thus obtaining a higher score. open-source repository (square/square-python-sdk) for the application of the metric since it is a measurable project from all its areas. In summary, the data analysis is carried out using the ACP statistical method, as well as the normalization and calculation of the weights on the references of the most used metrics in the literature. Finally, the proposed metric applied to the square repository is validated as a case study where the development of the consumption of an API was carried out at both the Backend and FrontEnd levels.Por consiguiente, el proponer nuestra métrica en base a las métricas más usadas nos permite generar una base de conocimiento frente al tema deuda técnica hacia futuras investigaciones de literatura ya que su implementación estuvo en marca en tecnología de desarrollo muy existente en la industria de software. En suma, que la mayoría de los proyectos de desarrollo no fracase por no medir adecuadamente la deuda técnica mediante métricas e idónea.MaestríaMagíster en Ingeniería - Ingeniería de SistemasMetricas de Deuda Tecnica.SoftwareProject Open Source client library for the Square API - Metrics Toggles-Debt - Backend. Código fuente en Backend: https://github.com/DidierDiaz/Metrics-Toggles-DebtProject Open Source client library for the Square API - Metrics Toggles-Debt - Front-end web development. Código fuente en Frontend: https://github.com/DidierDiaz/MetricsAPIFrontendIngeniería De Sistemas E Informática.Sede Medellín87 páginasapplication/pdfspaUniversidad Nacional de ColombiaMedellín - Minas - Maestría en Ingeniería - Ingeniería de SistemasFacultad de MinasMedellín, ColombiaUniversidad Nacional de Colombia - Sede Medellín000 - Ciencias de la computación, información y obras generales::003 - SistemasMedición de softwareLenguajes de programación (Computadores electrónicos)Deuda TécnicaMétricasRepositoriolenguajes de programaciónTechnical DebtMetricsRepositoryProgramming languageUna métrica para medir deuda técnica basada en el análisis de las más usadas. Caso de estudio del repositorio SquareA metric to measure technical debt based on the analysis of the most used ones. Square repository case studyTrabajo de grado - Maestríainfo:eu-repo/semantics/masterThesisinfo:eu-repo/semantics/acceptedVersionTexthttp://purl.org/redcol/resource_type/TMLaReferenciaAbilio, R., Vale, G., Figueiredo, E., & Costa, H. (16 de Mayo de 2016). Metrics for Feature-Oriented Programming. IEEE, 1-7. doi:10.1109/WETSoM.2016.014Al Mamun, M., Martini, A., Staron, M., & Berger, C. (7 de Noviembre de 2019). Evolution of technical debt: An exploratory study. Digitala Vetenskapliga Arkivet, 2476, 1-16. Recuperado el 24 de Enero de 2024, de https://www.diva-portal.org/smash/record.jsf?pid=diva2%3A1368627&dswid=-9383Alali, A., Kagdi, H., & Maletic, J. I. (2 de Julio de 2008). What's a Typical Commit? A Characterization of Open Source Software Repositories. IEEE, 1-10. doi:10.1109/ICPC.2008.24Alfayez, R., Alwehaibi, W., Winn, R., Venson, E., & Boehm, B. W. (28 de Junio de 2020). A systematic literature review of technical debt prioritization. ACM Digital Library, 1-42. doi:10.1145/3387906.3388630Amanatidis, T., Mittas, N., Moschou, A., Chatzigeorgiou, A., & Ampatzoglou , A. (26 de Agosto de 2020). Evaluating the agreement among technical debt measurement tools: building an empirical benchmark of technical debt liabilities. Springer Nature, 25, 4161-4204. doi:https://doi.org/10.1007/s10664-020-09869-wAngular. (12 de Diciembre de 2023). Angular. Recuperado el 16 de Enero de 2024, de https://angular.io/docsArdimento, P., Aversano, L., Bernardi, M., Cimitile, M., & Iammarino, M. (Diciembre de 2022). Using deep temporal convolutional networks to just-in-time forecast technical debt principal. Science direct, 194. doi:https://www.sciencedirect.com/science/article/pii/S0164121222001649Arvanitou, E. M., Ampatzoglou, A., Bibi, S., Chatzigeorgiou, A., & Stamelos, I. G. (2019). Monitoring Technical Debt in an Industrial Setting. ACM Digital Library, 123–132. doi:10.1145/3319008.3319019Atlassian. (22 de Mayo de 2023). Atlassian. Recuperado el 22 de Mayo de 2023, de https://www.atlassian.com/es/git/tutorials/making-a-pull-request#:~:text=Las%20pull%20requests%20son%20una,integrarlos%20en%20el%20proyecto%20oficialAvgeriou, P., Taibi, D., Ampatzoglou, A., Fontana, F., & Besker, T. (18 de Septiembre de 2020). An Overview and Comparison of Technical Debt Measurement Tools. IEEE, 1-19. doi:10.1109/MS.2020.3024958Bedi, J., & Kaur , K. (24 de Junio de 2020). Understanding factors affecting technical debt. Springer Nature, 14, 1051–1060. doi:https://doi.org/10.1007/s41870-020-00487-9Besker, T; Martini, A; Bosch, J. (20 de Junio de 2020). Carrot and stick approaches when managing technical debt. ACM Digital Library, 21-30. doi:https://doi.org/10.1145/3387906.3388619Caglayan, B., Bener, A., & Koch, S. (18 de Mayo de 2009). Merits of using repository metrics in defect prediction for open source projects. IEEE, 1-6. doi:10.1109/FLOSS.2009.5071357Caldeira, J., Cardoso, J., & Abreu, B. F. (30 de Octubre de 2020). Unveiling process insights from refactoring practices. ScienceDirect. doi:https://doi.org/10.1016/j.csi.2021.103587Capilla, R., Mikkonen, T., Carrillo, C., Fontana, F. A., Pigazzini, I., & Lenarduzzi, V. (25 de Junio de 2021). Impact of Opportunistic Reuse Practices to Technical Debt. IEEE, 1-10. doi:10.1109/TechDebt52882.2021.00011Chidamber, S. R., Darcy, D. P., & Kemerer, C. F. (Agosto de 1998). Managerial use of metrics for object-oriented software: an exploratory analysis. IEEE, 1-12. doi:10.1109/32.707698Cholda, P., & Stochel, M. (16 de Octubre de 2020). Continuous Debt Valuation Approach (CoDVA) for Technical Debt Prioritization. IEEE, 1-5. doi:10.1109/SEAA51224.2020.00066Churcher, N. I., Shepperd, M. J., Chidamber, S., & Kemerer, C. F. (Marzo de 1998). Comments on "A metrics suite for object oriented design. IEEE, 263 - 265. doi:10.1109/32.372153de Almeida, R. R., Ribeiro, R. N., Treude, C., & Kulesza, U. (25 de Junio de 2021). Business-Driven Technical Debt Prioritization: An Industrial Case Study. IEEE, 1-10. doi:10.1109/TechDebt52882.2021.00017de Toledo , S. S., Martini, A., & Sjøberg, D. I. (9 de Abril de 2021). Identifying architectural technical debt, principal, and interest in microservices: A multiple-case study. Elsevier, 177, 1-21. doi:https://doi.org/10.1016/j.jss.2021.110968Diamantopoulos, T., Papamichail, M., Karanikiotis, T., Chatzidimitriou, K. C., & Symeonidis, A. L. (Junio de 2020). Employing Contribution and Quality Metrics for Quantifying the Software Development Process. ACM Digital Library, 558-562. doi:https://doi.org/10.1145/3379597.3387490Digkas, G., Chatzigeorgiou, A. N., Ampatzoglou, A., & Avgeriou, P. C. (20 de Octubre de 2021). Can Clean New Code reduce Technical Debt Density. IEEE, 1-18. doi:10.1109/TSE.2020.3032557DiStefano, C., Zhu, M., & Mîndrilã, D. (Noviembre de 2019). Understanding and Using Factor Scores: Considerations for the Applied Researcher. Scholarworks, 14(20), 1-12. doi:https://doi.org/10.7275/da8t-4g52Efimova, P. (26 de Enero de 2021). Stepsize Ltd. Recuperado el 18 de Octubre de 2021, de https://www.stepsize.com/blog/tools-to-track-and-manage-technical-debtErnst, N., Kazman, R., & Delange, J. (2021). Technical Debt in Practice: How to Find It and Fix It. doi:https://doi.org/10.7551/mitpress/12440.001.0001Feitelson, D. G., Frachtenberg, E., & Beck, K. L. (4 de Febrero de 2013). Development and Deployment at Facebook. IEEE, 1-10. doi:10.1109/MIC.2013.25Feitosa, D., Ampatzoglou, A., Gkortzis, A., & Bibi, S. (23 de Mayo de 2020). CODE reuse in practice: Benefiting or harming technical debt. Elsevier , 167, 1-12. doi:https://doi.org/10.1016/j.jss.2020.110618Freire, S., Rios, N., Pérez, B., & Mendonça, M. (21 de Mayo de 2021). How do Technical Debt Payment Practices Relate to the Effects of the Presence of Debt Items in Software Projects? IEEE, 1-5. doi:10.1109/SANER50967.2021.00074Greenacre, M., Groenen, P., & Hastie, T. (22 de Diciembre de 2022). Principal component analysis. Springer Nature Limited. doi:https://doi.org/10.1038/s43586-022-00184-wHamilton, T. (6 de Mayo de 2023). Guru99. Recuperado el 20 de Mayo de 2023, de https://www.guru99.com/unit-testing-guide.htmlHick, H., & Denkmayr, K. (2004). The Load Matrix — a method for optimising powertrain durability and reliability test programmes. Springer Nature. Recuperado el 6 de Noviembre de 2023, de https://link.springer.com/chapter/10.1007/978-0-85729-410-4_262Hodgson, P. (9 de Octubre de 2017). Martin Fowler. Recuperado el 12 de Agosto de 2021, de https://martinfowler.com/articles/feature-toggles.htmlHolmegaard, E. (20 de Abril de 2023). Medium. Recuperado el 25 de Enero de 2024, de https://medium.com/@emilholmegaard/managing-technical-debt-31b52e83b510Hoyos, J. D. (2021). Repositorio Institucional Biblioteca Digital. Recuperado el 19 de Octubre de 2021, de https://repositorio.unal.edu.co/bitstream/handle/unal/80530/71360425.2021.pdf?sequence=4&isAllowed=yIBM. (22 de Marzo de 2021). IBM. Recuperado el 13 de Noviembre de 2023, de https://www.ibm.com/docs/en/spss-statistics/25.0.0?topic=analysis-factor-scoresIBM. (3 de Marzo de 2023). Recuperado el 6 de Noviembre de 2023, de https://www.ibm.com/docs/es/spss-statistics/29.0.0?topic=detection-kmo-bartletts-testJenik, F. (2 de Febrero de 2021). Sudolabs. Recuperado el 22 de Mayo de 2023, de https://sudolabs.com/blog/automated-release-process-for-lerna-monorepoKherif, F., & Latypova, A. (2020). Machine Learning Methods and Applications to Brain Disorders. (S. V. Andrea Mechelli, Ed.) Copyright © 2020 Elsevier Inc. All rights reserved. doi:https://doi.org/10.1016/B978-0-12-815739-8.00012-2Lenarduzzi, V., Besker, T., Taibi, D., Martini, A., & Fontana, F. A. (30 de Junio de 2020). arXiv, 1-42. Recuperado el 27 de Agosto de 2021, de https://arxiv.org/abs/1904.12538Lenarduzzi, V., Saarimäki, N., & Taibi, D. (18 de Septiembre de 2019). The Technical Debt Dataset. ACM Digital Library, 1-10. doi:https://doi.org/10.1145/3345629.3345630Lenarduzzi, V., T, D., Besker , T., Martini, A., & Arcelli, F. F. (14 de Octubre de 2020). A systematic literature review on Technical Debt prioritization: Strategies, processes, factors, and tools. sciencedirect, 1-16. doi:https://doi.org/10.1016/j.jss.2020.110827León-Sigg, M., Vázquez-Reyes, S., & Rodríguez-Ávila. (31 de Diciembre de 2020). Towards the Use of a Framework to Make Technical Debt Visible. IEEE, 1-7. doi:10.1109/CONISOFT50191.2020.00022Li , X., Moreschini, S., Zhang, Z., & Taibi, D. (Junio de 2022). Exploring factors and metrics to select open source software components for integration: An empirical study. Sciencedirect, 188, 1-19. doi:https://doi.org/10.1016/j.jss.2022.111255Liebig, J., Apel, S., & Lengauer, C. (Mayo de 2010). An Analysis of the Variability in Forty Preprocessor-Based Software Product Lines. ResearchGate. doi:10.1145/1806799.1806819Lumivero. (Octubre de 2023). Xlstat. Recuperado el 14 de Octubre de 2023, de https://www.xlstat.com/es/soluciones/funciones/analisis-de-componentes-principales-acpMahdavi-Hezaveh, R., Ajmeri, N., & Williams, L. (10 de Febrero de 2022). Feature toggles as code: Heuristics and metrics for structuring feature toggles. Science direct, 145, 1-14. doi:https://doi.org/10.1016/j.infsof.2021.106813Malakuti, S., & Heuschkel, J. (25 de Junio de 2021). The Need for Holistic Technical Debt Management across the Value Stream: Lessons Learnt and Open Challenges. IEEE, 1-5. doi:10.1109/TechDebt52882.2021.00021Mangale, S. (28 de Agosto de 2020). Medium. Recuperado el 6 de Noviembre de 2023, de https://sanchitamangale12.medium.com/scree-plot-733ed72c8608Martin Fowler. (21 de Mayo de 2019). Recuperado el 25 de Enero de 2024, de https://martinfowler.com/bliki/TechnicalDebt.htmlMaven Solutions. (10 de Enero de 2024). Tips and Tricks for Measuring and Improving Technical Debt Metrics. Recuperado el 23 de Enero de 2024, de https://www.mavensolutions.tech/blog/metrics-for-technical-debt/McCabe, T. J. (1976). A Complexity Measure. IEEE. doi:10.1109/TSE.1976.233837Meinicke, J., Hoyos, J., Vasilescu, B., & Kästner, C. (2020). Capture the Feature Flag: Detecting Feature Flags in Open-Source. ACM Digital Library, 169–173. doi:https://doi.org/10.1145/3379597.3387463Microsoft. (1 de Marzo de 2023). Recuperado el 5 de Mayo de 2023, de https://learn.microsoft.com/en-us/dotnet/api/system.obsoleteattribute?view=net-7.0Microsoft. (29 de Noviembre de 2023). Microsoft. Recuperado el 15 de Enero de 2024, de https://learn.microsoft.com/en-us/visualstudio/code-quality/code-metrics-values?view=vs-2022Microsoft. (10 de Enero de 2024). Microsoft. Recuperado el 16 de Enero de 2024, de https://visualstudio.microsoft.com/es/Mikhajlova, A., & Sekerinski, E. (Septiembre de 1997). Class Refinement and Interface Refinement in Object-Oriented Programs. ResearchGate, 1-21. Recuperado el 22 de Mayo de 2023, de https://www.researchgate.net/publication/303992360_Class_Refinement_and_Interface_Refinement_in_Object-Oriented_ProgramsMohan, B., & Kumar, P. (20 de Enero de 2013). An Overview of Various Object Oriented Metrics. ResearchGate, II, 1-11. Recuperado el 14 de Febrero de 2022, de https://www.researchgate.net/publication/236616349_An_Overview_of_Various_Object_Oriented_MetricsMolnar, A. J., & Motogna, S. (20 de Octubre de 2020). Long-Term Evaluation of Technical Debt in Open-Source Software. ACM Digital Library, 1-10. doi:10.1145/3382494.3410673OMG. (1 de Septiembre de 2018). Object Management Group. Recuperado el 15 de Febrero de 2023, de https://www.omg.org/spec/ATDM/?__hstc=64371056.313d6ed65e49ea25f2bfedd7ce2e4cea.1698498226843.1698498226843.1698498226843.1&__hssc=64371056.2.1698498226843&__hsfp=1453860330Pathak, A. (11 de Abril de 2022). Kinsta Inc. Recuperado el 02 de Marzo de 2023, de https://kinsta.com/es/blog/herramientas-devops/Pavel, K. (24 de Marzo de 2023). Modlogix. Recuperado el 22 de Mayo de 2023, de https://modlogix.com/blog/3-main-threats-resulting-from-outdated-technology/Perera, J., Tempero, E. D., Tu, Y., & Blincoe , K. (Junio de 2023). Understanding the relationship between Technical Debt, New Code Cost and Rework Cost in Open-Source Software Projects: An Empirical Study. ACM Digital Library, 247–252. doi:https://doi.org/10.1145/3593434.3593490Pérez, B., Castellanos, C., Correal, D., Rios, N., Freire, S., & Spínola, R. (22 de Julio de 2021). Technical debt payment and prevention through the lenses of software architects. Elsevier, 140. doi:https://doi.org/10.1016/j.infsof.2021.106692Pfeiffer, R. H., & Lungu, M. (27 de Febrero de 2022). Technical Debt and Maintainability: How do tools measure it? arXiv, 1-22. Recuperado el 24 de Enero de 2024, de https://arxiv.org/abs/2202.13464PostgreSQL. (9 de Noviembre de 2023). PostgreSQL. Recuperado el 16 de Enero de 2024, de https://www.postgresql.org/Quora. (18 de Agosto de 2018). Quora. Recuperado el 22 de Mayo de 2023, de https://www.quora.com/What-are-the-steps-one-should-take-to-understand-a-software-system-with-no-documentationRamirez, J., Tuovinen, A. P., & Mikkonen, T. (25 de Junio de 2021). Experiences on Managing Technical Debt with Code Smells and AntiPatterns. IEEE, 1-29. doi:10.1109/TechDebt52882.2021.00013Rosser, L. A., & Norton, J. H. (7 de Junio de 2021). A Systems Perspective on Technical Debt. IEEE, 1-10. doi:10.1109/AERO50100.2021.9438359Rouse, M. (27 de Diciembre de 2016). Techopedia. Recuperado el 20 de Mayo de 2023, de https://www.techopedia.com/definition/8073/lines-of-code-loc#:~:text=27%20December%2C%202016-,What%20Does%20Lines%20Of%20Code%20Mean%3F,used%20to%20write%20a%20program.Samarthyam, G., Suryanarayana, G., & Sharma, T. (25 de Septiembre de 2015). InfoQ.com. Recuperado el 25 de Enero de 2024, de https://www.infoq.com/articles/pragmatic-technical-debt/Schermann, G., Cito, J., & Leitner, P. (22 de Marzo de 2016). An empirical study on principles and practices of continuous delivery and deployment. PeerJ, 1-13. doi:10.7287/peerj.preprints.1889v1Soliman, M., & Avgeriou, p. (14 de Junio de 2021). Architectural design decisions that incur technical debt — An industrial case study. Elsevier, 139, 1-17. doi:https://doi.org/10.1016/j.infsof.2021.106669Spertus, E. (23 de Diciembre de 2021). stackoverflow. Recuperado el 20 de Mayo de 2023, de https://stackoverflow.blog/2021/12/23/best-practices-for-writing-code-comments/Stochel, M G; Chołda, P; Wawrowski, M R. (16 de Octubre de 2020). On Coherence in Technical Debt Research : Awareness of the Risks Stemming from the Metaphorical Origin and Relevant Remediation Strategies. IEEE, 1-9. doi:10.1109/SEAA51224.2020.00067Subramanyam, R., & Krishnan, M. S. (23 de Abril de 2003). Empirical analysis of CK metrics for object-oriented design complexity: implications for software defects. IEEE, 297 - 310. doi:10.1109/TSE.2003.1191795Taibi, D., & Lenarduzzi, V. (2021). A systematic literature review on Technical Debt prioritization: Strategies, processes, factors, and tools. Science Direct, 171, 1-16. doi:https://doi.org/10.1016/j.jss.2020.110827Tan, J., Feitosa, D., & Avgeriou, P. (Julio de 2023). The lifecycle of Technical Debt that manifests in both source code and issue trackers. Science direct, 159, 1-14. doi:https://doi.org/10.1016/j.infsof.2023.107216Tang, M. H., Kao, M. H., & Chen, M. H. (6 de Agosto de 2002). An empirical study on object-oriented metrics. IEEE. doi:10.1109/METRIC.1999.809745Tsoukalas, D., Kehagias, D., Siavvas, M., & Chatzigeorgiou. (8 de Agosto de 2020). Technical debt forecasting: An empirical study on open-source repositories. Elsevier(170), 1-31. doi:https://doi.org/10.1016/j.jss.2020.110777UCLA. (22 de Agosto de 2021). Recuperado el 6 de Noviembre de 2023, de https://stats.oarc.ucla.edu/spss/seminars/efa-spss/Verma, D., & Kumar, S. (Junio de 2017). Prediction of Defect Density for Open Source Software using Repository Metrics. ACM Digital Library, 1-18. Recuperado el 2 de Marzo de 2022, de https://dl.acm.org/doi/abs/10.5555/3177580.3177587Wheatley, M. (13 de Octubre de 2022). DEV Community. Recuperado el 02 de Marzo de 2023, de https://dev.to/maximwheatley/an-open-source-solution-to-dora-devops-metrics-72lWiese, M. (25 de Junio de 2021). Preventing Technical Debt by Technical Debt Aware Project Management. IEEE, 1-10. doi:10.1109/TechDebt52882.2021.00018Wiese, M., Rachow, P., Riebisch, M., & Schwarze, J. (2022). Preventing technical debt with the TAP framework for Technical Debt Aware Management. Science direct, 148, 0950-5849. doi:https://doi.org/10.1016/j.infsof.2022.106926Windev. (22 de Marzo de 2023). Windev. Recuperado el 20 de Mayo de 2023, de https://help.windev.com/en-US/?9000091&name=instant_spotting_modified_codecurrent_codeEstudiantesInvestigadoresPúblico generalLICENSElicense.txtlicense.txttext/plain; charset=utf-85879https://repositorio.unal.edu.co/bitstream/unal/86250/1/license.txteb34b1cf90b7e1103fc9dfd26be24b4aMD51ORIGINAL1077453954.2024.pdf1077453954.2024.pdfTesis de Maestría en Ingeniería - Ingeniería de Sistemasapplication/pdf1973338https://repositorio.unal.edu.co/bitstream/unal/86250/2/1077453954.2024.pdf816d8cbd8f2627de791bcafe83d2cdf5MD52THUMBNAIL1077453954.2024.pdf.jpg1077453954.2024.pdf.jpgGenerated Thumbnailimage/jpeg5370https://repositorio.unal.edu.co/bitstream/unal/86250/3/1077453954.2024.pdf.jpg448c5ee7c34c716c9669835237d84579MD53unal/86250oai:repositorio.unal.edu.co:unal/862502024-08-25 23:11:40.692Repositorio Institucional Universidad Nacional de Colombiarepositorio_nal@unal.edu.coUEFSVEUgMS4gVMOJUk1JTk9TIERFIExBIExJQ0VOQ0lBIFBBUkEgUFVCTElDQUNJw5NOIERFIE9CUkFTIEVOIEVMIFJFUE9TSVRPUklPIElOU1RJVFVDSU9OQUwgVU5BTC4KCkxvcyBhdXRvcmVzIHkvbyB0aXR1bGFyZXMgZGUgbG9zIGRlcmVjaG9zIHBhdHJpbW9uaWFsZXMgZGUgYXV0b3IsIGNvbmZpZXJlbiBhIGxhIFVuaXZlcnNpZGFkIE5hY2lvbmFsIGRlIENvbG9tYmlhIHVuYSBsaWNlbmNpYSBubyBleGNsdXNpdmEsIGxpbWl0YWRhIHkgZ3JhdHVpdGEgc29icmUgbGEgb2JyYSBxdWUgc2UgaW50ZWdyYSBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsLCBiYWpvIGxvcyBzaWd1aWVudGVzIHTDqXJtaW5vczoKCgphKQlMb3MgYXV0b3JlcyB5L28gbG9zIHRpdHVsYXJlcyBkZSBsb3MgZGVyZWNob3MgcGF0cmltb25pYWxlcyBkZSBhdXRvciBzb2JyZSBsYSBvYnJhIGNvbmZpZXJlbiBhIGxhIFVuaXZlcnNpZGFkIE5hY2lvbmFsIGRlIENvbG9tYmlhIHVuYSBsaWNlbmNpYSBubyBleGNsdXNpdmEgcGFyYSByZWFsaXphciBsb3Mgc2lndWllbnRlcyBhY3RvcyBzb2JyZSBsYSBvYnJhOiBpKSByZXByb2R1Y2lyIGxhIG9icmEgZGUgbWFuZXJhIGRpZ2l0YWwsIHBlcm1hbmVudGUgbyB0ZW1wb3JhbCwgaW5jbHV5ZW5kbyBlbCBhbG1hY2VuYW1pZW50byBlbGVjdHLDs25pY28sIGFzw60gY29tbyBjb252ZXJ0aXIgZWwgZG9jdW1lbnRvIGVuIGVsIGN1YWwgc2UgZW5jdWVudHJhIGNvbnRlbmlkYSBsYSBvYnJhIGEgY3VhbHF1aWVyIG1lZGlvIG8gZm9ybWF0byBleGlzdGVudGUgYSBsYSBmZWNoYSBkZSBsYSBzdXNjcmlwY2nDs24gZGUgbGEgcHJlc2VudGUgbGljZW5jaWEsIHkgaWkpIGNvbXVuaWNhciBhbCBww7pibGljbyBsYSBvYnJhIHBvciBjdWFscXVpZXIgbWVkaW8gbyBwcm9jZWRpbWllbnRvLCBlbiBtZWRpb3MgYWzDoW1icmljb3MgbyBpbmFsw6FtYnJpY29zLCBpbmNsdXllbmRvIGxhIHB1ZXN0YSBhIGRpc3Bvc2ljacOzbiBlbiBhY2Nlc28gYWJpZXJ0by4gQWRpY2lvbmFsIGEgbG8gYW50ZXJpb3IsIGVsIGF1dG9yIHkvbyB0aXR1bGFyIGF1dG9yaXphIGEgbGEgVW5pdmVyc2lkYWQgTmFjaW9uYWwgZGUgQ29sb21iaWEgcGFyYSBxdWUsIGVuIGxhIHJlcHJvZHVjY2nDs24geSBjb211bmljYWNpw7NuIGFsIHDDumJsaWNvIHF1ZSBsYSBVbml2ZXJzaWRhZCByZWFsaWNlIHNvYnJlIGxhIG9icmEsIGhhZ2EgbWVuY2nDs24gZGUgbWFuZXJhIGV4cHJlc2EgYWwgdGlwbyBkZSBsaWNlbmNpYSBDcmVhdGl2ZSBDb21tb25zIGJham8gbGEgY3VhbCBlbCBhdXRvciB5L28gdGl0dWxhciBkZXNlYSBvZnJlY2VyIHN1IG9icmEgYSBsb3MgdGVyY2Vyb3MgcXVlIGFjY2VkYW4gYSBkaWNoYSBvYnJhIGEgdHJhdsOpcyBkZWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCwgY3VhbmRvIHNlYSBlbCBjYXNvLiBFbCBhdXRvciB5L28gdGl0dWxhciBkZSBsb3MgZGVyZWNob3MgcGF0cmltb25pYWxlcyBkZSBhdXRvciBwb2Ryw6EgZGFyIHBvciB0ZXJtaW5hZGEgbGEgcHJlc2VudGUgbGljZW5jaWEgbWVkaWFudGUgc29saWNpdHVkIGVsZXZhZGEgYSBsYSBEaXJlY2Npw7NuIE5hY2lvbmFsIGRlIEJpYmxpb3RlY2FzIGRlIGxhIFVuaXZlcnNpZGFkIE5hY2lvbmFsIGRlIENvbG9tYmlhLiAKCmIpIAlMb3MgYXV0b3JlcyB5L28gdGl0dWxhcmVzIGRlIGxvcyBkZXJlY2hvcyBwYXRyaW1vbmlhbGVzIGRlIGF1dG9yIHNvYnJlIGxhIG9icmEgY29uZmllcmVuIGxhIGxpY2VuY2lhIHNlw7FhbGFkYSBlbiBlbCBsaXRlcmFsIGEpIGRlbCBwcmVzZW50ZSBkb2N1bWVudG8gcG9yIGVsIHRpZW1wbyBkZSBwcm90ZWNjacOzbiBkZSBsYSBvYnJhIGVuIHRvZG9zIGxvcyBwYcOtc2VzIGRlbCBtdW5kbywgZXN0byBlcywgc2luIGxpbWl0YWNpw7NuIHRlcnJpdG9yaWFsIGFsZ3VuYS4KCmMpCUxvcyBhdXRvcmVzIHkvbyB0aXR1bGFyZXMgZGUgZGVyZWNob3MgcGF0cmltb25pYWxlcyBkZSBhdXRvciBtYW5pZmllc3RhbiBlc3RhciBkZSBhY3VlcmRvIGNvbiBxdWUgbGEgcHJlc2VudGUgbGljZW5jaWEgc2Ugb3RvcmdhIGEgdMOtdHVsbyBncmF0dWl0bywgcG9yIGxvIHRhbnRvLCByZW51bmNpYW4gYSByZWNpYmlyIGN1YWxxdWllciByZXRyaWJ1Y2nDs24gZWNvbsOzbWljYSBvIGVtb2x1bWVudG8gYWxndW5vIHBvciBsYSBwdWJsaWNhY2nDs24sIGRpc3RyaWJ1Y2nDs24sIGNvbXVuaWNhY2nDs24gcMO6YmxpY2EgeSBjdWFscXVpZXIgb3RybyB1c28gcXVlIHNlIGhhZ2EgZW4gbG9zIHTDqXJtaW5vcyBkZSBsYSBwcmVzZW50ZSBsaWNlbmNpYSB5IGRlIGxhIGxpY2VuY2lhIENyZWF0aXZlIENvbW1vbnMgY29uIHF1ZSBzZSBwdWJsaWNhLgoKZCkJUXVpZW5lcyBmaXJtYW4gZWwgcHJlc2VudGUgZG9jdW1lbnRvIGRlY2xhcmFuIHF1ZSBwYXJhIGxhIGNyZWFjacOzbiBkZSBsYSBvYnJhLCBubyBzZSBoYW4gdnVsbmVyYWRvIGxvcyBkZXJlY2hvcyBkZSBwcm9waWVkYWQgaW50ZWxlY3R1YWwsIGluZHVzdHJpYWwsIG1vcmFsZXMgeSBwYXRyaW1vbmlhbGVzIGRlIHRlcmNlcm9zLiBEZSBvdHJhIHBhcnRlLCAgcmVjb25vY2VuIHF1ZSBsYSBVbml2ZXJzaWRhZCBOYWNpb25hbCBkZSBDb2xvbWJpYSBhY3TDumEgY29tbyB1biB0ZXJjZXJvIGRlIGJ1ZW5hIGZlIHkgc2UgZW5jdWVudHJhIGV4ZW50YSBkZSBjdWxwYSBlbiBjYXNvIGRlIHByZXNlbnRhcnNlIGFsZ8O6biB0aXBvIGRlIHJlY2xhbWFjacOzbiBlbiBtYXRlcmlhIGRlIGRlcmVjaG9zIGRlIGF1dG9yIG8gcHJvcGllZGFkIGludGVsZWN0dWFsIGVuIGdlbmVyYWwuIFBvciBsbyB0YW50bywgbG9zIGZpcm1hbnRlcyAgYWNlcHRhbiBxdWUgY29tbyB0aXR1bGFyZXMgw7puaWNvcyBkZSBsb3MgZGVyZWNob3MgcGF0cmltb25pYWxlcyBkZSBhdXRvciwgYXN1bWlyw6FuIHRvZGEgbGEgcmVzcG9uc2FiaWxpZGFkIGNpdmlsLCBhZG1pbmlzdHJhdGl2YSB5L28gcGVuYWwgcXVlIHB1ZWRhIGRlcml2YXJzZSBkZSBsYSBwdWJsaWNhY2nDs24gZGUgbGEgb2JyYS4gIAoKZikJQXV0b3JpemFuIGEgbGEgVW5pdmVyc2lkYWQgTmFjaW9uYWwgZGUgQ29sb21iaWEgaW5jbHVpciBsYSBvYnJhIGVuIGxvcyBhZ3JlZ2Fkb3JlcyBkZSBjb250ZW5pZG9zLCBidXNjYWRvcmVzIGFjYWTDqW1pY29zLCBtZXRhYnVzY2Fkb3Jlcywgw61uZGljZXMgeSBkZW3DoXMgbWVkaW9zIHF1ZSBzZSBlc3RpbWVuIG5lY2VzYXJpb3MgcGFyYSBwcm9tb3ZlciBlbCBhY2Nlc28geSBjb25zdWx0YSBkZSBsYSBtaXNtYS4gCgpnKQlFbiBlbCBjYXNvIGRlIGxhcyB0ZXNpcyBjcmVhZGFzIHBhcmEgb3B0YXIgZG9ibGUgdGl0dWxhY2nDs24sIGxvcyBmaXJtYW50ZXMgc2Vyw6FuIGxvcyByZXNwb25zYWJsZXMgZGUgY29tdW5pY2FyIGEgbGFzIGluc3RpdHVjaW9uZXMgbmFjaW9uYWxlcyBvIGV4dHJhbmplcmFzIGVuIGNvbnZlbmlvLCBsYXMgbGljZW5jaWFzIGRlIGFjY2VzbyBhYmllcnRvIENyZWF0aXZlIENvbW1vbnMgeSBhdXRvcml6YWNpb25lcyBhc2lnbmFkYXMgYSBzdSBvYnJhIHBhcmEgbGEgcHVibGljYWNpw7NuIGVuIGVsIFJlcG9zaXRvcmlvIEluc3RpdHVjaW9uYWwgVU5BTCBkZSBhY3VlcmRvIGNvbiBsYXMgZGlyZWN0cmljZXMgZGUgbGEgUG9sw610aWNhIEdlbmVyYWwgZGUgbGEgQmlibGlvdGVjYSBEaWdpdGFsLgoKCmgpCVNlIGF1dG9yaXphIGEgbGEgVW5pdmVyc2lkYWQgTmFjaW9uYWwgZGUgQ29sb21iaWEgY29tbyByZXNwb25zYWJsZSBkZWwgdHJhdGFtaWVudG8gZGUgZGF0b3MgcGVyc29uYWxlcywgZGUgYWN1ZXJkbyBjb24gbGEgbGV5IDE1ODEgZGUgMjAxMiBlbnRlbmRpZW5kbyBxdWUgc2UgZW5jdWVudHJhbiBiYWpvIG1lZGlkYXMgcXVlIGdhcmFudGl6YW4gbGEgc2VndXJpZGFkLCBjb25maWRlbmNpYWxpZGFkIGUgaW50ZWdyaWRhZCwgeSBzdSB0cmF0YW1pZW50byB0aWVuZSB1bmEgZmluYWxpZGFkIGhpc3TDs3JpY2EsIGVzdGFkw61zdGljYSBvIGNpZW50w61maWNhIHNlZ8O6biBsbyBkaXNwdWVzdG8gZW4gbGEgUG9sw610aWNhIGRlIFRyYXRhbWllbnRvIGRlIERhdG9zIFBlcnNvbmFsZXMuCgoKClBBUlRFIDIuIEFVVE9SSVpBQ0nDk04gUEFSQSBQVUJMSUNBUiBZIFBFUk1JVElSIExBIENPTlNVTFRBIFkgVVNPIERFIE9CUkFTIEVOIEVMIFJFUE9TSVRPUklPIElOU1RJVFVDSU9OQUwgVU5BTC4KClNlIGF1dG9yaXphIGxhIHB1YmxpY2FjacOzbiBlbGVjdHLDs25pY2EsIGNvbnN1bHRhIHkgdXNvIGRlIGxhIG9icmEgcG9yIHBhcnRlIGRlIGxhIFVuaXZlcnNpZGFkIE5hY2lvbmFsIGRlIENvbG9tYmlhIHkgZGUgc3VzIHVzdWFyaW9zIGRlIGxhIHNpZ3VpZW50ZSBtYW5lcmE6CgphLglDb25jZWRvIGxpY2VuY2lhIGVuIGxvcyB0w6lybWlub3Mgc2XDsWFsYWRvcyBlbiBsYSBwYXJ0ZSAxIGRlbCBwcmVzZW50ZSBkb2N1bWVudG8sIGNvbiBlbCBvYmpldGl2byBkZSBxdWUgbGEgb2JyYSBlbnRyZWdhZGEgc2VhIHB1YmxpY2FkYSBlbiBlbCBSZXBvc2l0b3JpbyBJbnN0aXR1Y2lvbmFsIGRlIGxhIFVuaXZlcnNpZGFkIE5hY2lvbmFsIGRlIENvbG9tYmlhIHkgcHVlc3RhIGEgZGlzcG9zaWNpw7NuIGVuIGFjY2VzbyBhYmllcnRvIHBhcmEgc3UgY29uc3VsdGEgcG9yIGxvcyB1c3VhcmlvcyBkZSBsYSBVbml2ZXJzaWRhZCBOYWNpb25hbCBkZSBDb2xvbWJpYSAgYSB0cmF2w6lzIGRlIGludGVybmV0LgoKCgpQQVJURSAzIEFVVE9SSVpBQ0nDk04gREUgVFJBVEFNSUVOVE8gREUgREFUT1MgUEVSU09OQUxFUy4KCkxhIFVuaXZlcnNpZGFkIE5hY2lvbmFsIGRlIENvbG9tYmlhLCBjb21vIHJlc3BvbnNhYmxlIGRlbCBUcmF0YW1pZW50byBkZSBEYXRvcyBQZXJzb25hbGVzLCBpbmZvcm1hIHF1ZSBsb3MgZGF0b3MgZGUgY2Fyw6FjdGVyIHBlcnNvbmFsIHJlY29sZWN0YWRvcyBtZWRpYW50ZSBlc3RlIGZvcm11bGFyaW8sIHNlIGVuY3VlbnRyYW4gYmFqbyBtZWRpZGFzIHF1ZSBnYXJhbnRpemFuIGxhIHNlZ3VyaWRhZCwgY29uZmlkZW5jaWFsaWRhZCBlIGludGVncmlkYWQgeSBzdSB0cmF0YW1pZW50byBzZSByZWFsaXphIGRlIGFjdWVyZG8gYWwgY3VtcGxpbWllbnRvIG5vcm1hdGl2byBkZSBsYSBMZXkgMTU4MSBkZSAyMDEyIHkgZGUgbGEgUG9sw610aWNhIGRlIFRyYXRhbWllbnRvIGRlIERhdG9zIFBlcnNvbmFsZXMgZGUgbGEgVW5pdmVyc2lkYWQgTmFjaW9uYWwgZGUgQ29sb21iaWEuIFB1ZWRlIGVqZXJjZXIgc3VzIGRlcmVjaG9zIGNvbW8gdGl0dWxhciBhIGNvbm9jZXIsIGFjdHVhbGl6YXIsIHJlY3RpZmljYXIgeSByZXZvY2FyIGxhcyBhdXRvcml6YWNpb25lcyBkYWRhcyBhIGxhcyBmaW5hbGlkYWRlcyBhcGxpY2FibGVzIGEgdHJhdsOpcyBkZSBsb3MgY2FuYWxlcyBkaXNwdWVzdG9zIHkgZGlzcG9uaWJsZXMgZW4gd3d3LnVuYWwuZWR1LmNvIG8gZS1tYWlsOiBwcm90ZWNkYXRvc19uYUB1bmFsLmVkdS5jbyIKClRlbmllbmRvIGVuIGN1ZW50YSBsbyBhbnRlcmlvciwgYXV0b3Jpem8gZGUgbWFuZXJhIHZvbHVudGFyaWEsIHByZXZpYSwgZXhwbMOtY2l0YSwgaW5mb3JtYWRhIGUgaW5lcXXDrXZvY2EgYSBsYSBVbml2ZXJzaWRhZCBOYWNpb25hbCBkZSBDb2xvbWJpYSBhIHRyYXRhciBsb3MgZGF0b3MgcGVyc29uYWxlcyBkZSBhY3VlcmRvIGNvbiBsYXMgZmluYWxpZGFkZXMgZXNwZWPDrWZpY2FzIHBhcmEgZWwgZGVzYXJyb2xsbyB5IGVqZXJjaWNpbyBkZSBsYXMgZnVuY2lvbmVzIG1pc2lvbmFsZXMgZGUgZG9jZW5jaWEsIGludmVzdGlnYWNpw7NuIHkgZXh0ZW5zacOzbiwgYXPDrSBjb21vIGxhcyByZWxhY2lvbmVzIGFjYWTDqW1pY2FzLCBsYWJvcmFsZXMsIGNvbnRyYWN0dWFsZXMgeSB0b2RhcyBsYXMgZGVtw6FzIHJlbGFjaW9uYWRhcyBjb24gZWwgb2JqZXRvIHNvY2lhbCBkZSBsYSBVbml2ZXJzaWRhZC4gCgo=