Mostrar el registro sencillo del ítem
Modelo para el tratamiento de la deuda técnica orientado a la evolución de los componentes para que las aplicaciones sean sostenibles a largo plazo
dc.contributor.advisor | Hincapié Londoño, Jesús Andrés | |
dc.contributor.author | Torres Ruiz, Daniel Arafat | |
dc.coverage.spatial | Lat: 06 15 00 N degrees minutes Lat: 6.2500 decimal degreesLong: 075 36 00 W degrees minutes Long: -75.6000 decimal degrees | |
dc.date.accessioned | 2021-04-20T18:33:41Z | |
dc.date.available | 2021-04-20T18:33:41Z | |
dc.date.created | 2019-10-11 | |
dc.identifier.other | CD-ROM 9057 2019 | |
dc.identifier.uri | http://hdl.handle.net/11407/6256 | |
dc.description | La Deuda Técnica es un fenómeno habitual del proceso de construcción de software, la cual es reconocida como un conjunto de malas prácticas y decisiones incorrectas en la fase de construcción de software, aceptada generalmente como efecto colateral en proyectos de software donde puede existir presiones de cronograma y con entregas continuas de valor a corto plazo. Ciertos aspectos de este fenómeno son conocidos de forma general, lo que sigue sin conocerse en profundidad, es cómo la deuda técnica se manifiesta y afecta específicamente los procesos de software, y cómo las técnicas de desarrollo de software empleadas acomodan o mitigan la presencia de esta deuda (Holvitie et al., 2018). La deuda técnica ha ganado visibilidad en los últimos años debido al interés en los proyectos de software que usan marcos de desarrollo ágil, los cuales detallan la responsabilidad que tienen los equipos de desarrollo en producir código de calidad, y que en su afán de entregar software funcionando en el menor tiempo posible, renuncian a actividades relacionadas con la producción de código de calidad, como son, el uso de buenas prácticas de codificación, definiciones de diseños y arquitecturas incompletas, poca cobertura de pruebas y documentación, entre otros, que a largo plazo acumulan una gran cantidad de deuda técnica que se vuelve perjudicial para el éxito de los proyectos. Parte de este estudio es comprender los antecedentes, dimensiones, atributos y consecuencias de la deuda técnica, para así poder proponer un modelo de referencia para el tratamiento de la deuda técnica, y cómo puede éste ser adaptado como parte de un proceso de madurez similar a los existentes en desarrollo de software general. El entendimiento de las causas para lograr que las aplicaciones puedan ser sostenibles a largo plazo, será el principal enfoque para la selección de las principales técnicas para el tratamiento de la deuda técnica definidas en la literatura, las tecnologías y herramientas que serán útiles para registrar y hacer las mediciones de deuda técnica, especificar qué actividades y ejemplos claros de cómo deberían ser implementadas según el modelo por parte de los equipos de desarrollo, contribuyendo a reducir y gestionar la deuda técnica en las aplicaciones. El modelo propuesto debe proporcionar un enfoque útil para comprender y gestionar la deuda técnica con fines prácticos, que involucre futuras líneas de investigación. | |
dc.description.abstract | Technical Debt is a common phenomenon of the software construction process, the quality is recognized as a set of bad practices and incorrect decisions in the software construction phase, normally accepted as a side effect in software projects where there may be schedule difficulties and with continuous deliveries of short-term value. Certain aspects of this phenomenon are generally known, what remains unknown in depth, is how technical debt manifests and specifically affects software processes, and how the software development techniques used accommodate or mitigate the presence of this debt (Holvitie et al., 2018).Technical debt has gained visibility in recent years due to interest in software projects that use agile development frameworks, which detail the responsibility that development teams have in producing quality code, and that in their eagerness to deliver software functioning in the shortest possible time, they give up activities related to the production of quality code, such as the use of good coding practices, definitions of incomplete designs and architectures, little evidence and documentation coverage, among others, that over term accumulate a large amount of technical debt that becomes detrimental to the success of the projects. Part of this study is to understand the background, dimensions, attributes and consequences of technical debt, in order to propose a reference model for the treatment of technical debt, and how it can be adapted as part of a maturity process similar to those existing in general software development. Understanding the causes to ensure that applications can be sustainable in the long term will be the main approach for the selection of the main techniques for the treatment of technical debt defined in the literature, the technologies and tools that will be useful for recording and make the measurements of technical debt, specify what activities and clear examples of how they should be implemented according to the model by the development teams, contributing to reduce and manage the technical debt in the applications. The proposed model should provide a useful approach to understand and manage technical debt for practical purposes, which involves future lines of research. | |
dc.format.extent | p. 1-98 | |
dc.format.medium | Electrónico | |
dc.format.mimetype | application/pdf | |
dc.language.iso | spa | |
dc.rights.uri | http://creativecommons.org/licenses/by-nc/4.0 | |
dc.subject | Deuda técnica | |
dc.subject | Desarrollo ágil | |
dc.subject | Refactorización | |
dc.subject | Diseño de software | |
dc.subject | Código limpio | |
dc.subject | Calidad de código | |
dc.title | Modelo para el tratamiento de la deuda técnica orientado a la evolución de los componentes para que las aplicaciones sean sostenibles a largo plazo | |
dc.rights.accessrights | info:eurepo/semantics/openAccess | |
dc.publisher.program | Maestría en Ingeniería de Software | |
dc.subject.lemb | Desarrollo de programas para computador - Informes técnicos | |
dc.subject.lemb | Ingeniería de software | |
dc.subject.lemb | Mantenimiento | |
dc.subject.lemb | Medición de software | |
dc.subject.lemb | Protección de programas para computador | |
dc.subject.keyword | Technical debt | |
dc.subject.keyword | Agile development | |
dc.subject.keyword | Refactoring | |
dc.subject.keyword | Software design | |
dc.subject.keyword | Clean code | |
dc.subject.keyword | Code quality | |
dc.relation.citationstartpage | 1 | |
dc.relation.citationendpage | 98 | |
dc.audience | Comunidad Universidad de Medellín | |
dc.publisher.faculty | Facultad de Ingenierías | |
dc.publisher.place | Medellín | |
dc.relation.references | Alves, N. S. R., Mendes, T. S., De Mendonça, M. G., Spinola, R. O., Shull, F., & Seaman, C. (2016). Identification and management of technical debt: A systematic mapping study. Information and Software Technology, 70, 100–121. https://doi.org/10.1016/j.infsof.2015.10.008 | spa |
dc.relation.references | Alves, N. S. R., Ribeiro, L. F., Caires, V., Mendes, T. S., & Spínola, R. O. (2014). Towards an ontology of terms on technical debt. Proceedings - 2014 6th IEEE International Workshop on Managing Technical Debt, MTD 2014, 1–7. https://doi.org/10.1109/MTD.2014.9 | spa |
dc.relation.references | Alzaghoul, E., & Bahsoon, R. (2014). Evaluating technical debt in cloud-based architectures using real options. Proceedings of the Australian Software Engineering Conference, ASWEC, 1–10. https://doi.org/10.1109/ASWEC.2014.27 | spa |
dc.relation.references | Ampatzoglou, A., Michailidis, A., Sarikyriakidis, C., Ampatzoglou, A., Chatzigeorgiou, A., & Avgeriou, P. (2018). A framework for managing interest in technical debt: An industrial validation. Proceedings - International Conference on Software Engineering. https://doi.org/10.1145/3194164.3194175 | spa |
dc.relation.references | Ampatzoglou, Areti, Ampatzoglou, A., Chatzigeorgiou, A., & Avgeriou, P. (2015). The financial aspect of managing technical debt: A systematic literature review. Information and Software Technology, 64, 52–73. https://doi.org/10.1016/j.infsof.2015.04.001 | spa |
dc.relation.references | Behutiye, W. N., Rodríguez, P., Oivo, M., & Tosun, A. (2017). Analyzing the concept of technical debt in the context of agile software development: A systematic literature review. Information and Software Technology, 82, 139–158. https://doi.org/10.1016/j.infsof.2016.10.004 | spa |
dc.relation.references | Coq, T., & Rosen, J. P. (2011). The SQALE quality and analysis models for assessing the quality of Ada source code. Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 6652 LNCS, 61–74. https://doi.org/10.1007/978-3-642-21338-0_5 | spa |
dc.relation.references | Curtis, B., Sappidi, J., & Szynkarski, A. (2012a). Estimating the principal of an application’s technical debt. IEEE Software, 29(6), 34–42. https://doi.org/10.1109/MS.2012.156 | spa |
dc.relation.references | Curtis, B., Sappidi, J., & Szynkarski, A. (2012b). presentatie - Estimating the Principal of Technical Debt. IEEE Software, 29(6), 34–42. https://doi.org/10.1109/MS.2012.156 | spa |
dc.relation.references | Curtis, B., Szynkarski, A., Worth, F., & York, N. (2012). Estimating the Size, Cost, and Types of Technical Debt, 812. https://doi.org/10.1109/MTD.2012.6226000 | spa |
dc.relation.references | dos Santos, P. S. M., Varella, A., Dantas, C. R., & Borges, D. B. (2013). Visualizing and managing technical debt in agile development: An experience report. Lecture Notes in Business Information Processing, 149, 121–134. https://doi.org/10.1007/978-3-642-38314-4_9 | spa |
dc.relation.references | Eisenberg, R. J. (2012). A threshold based approach to technical debt. ACM SIGSOFT Software Engineering Notes, 37(2), 1. https://doi.org/10.1145/2108144.2108151 | spa |
dc.relation.references | Falessi, D., Shaw, M. A., Shull, F., Mullen, K., & Keymind, M. S. (2013). Practical considerations, challenges, and requirements of tool-support for managing technical debt. 2013 4th International Workshop on Managing Technical Debt, MTD 2013 - Proceedings, (Ml), 16–19. https://doi.org/10.1109/MTD.2013.6608673 | spa |
dc.relation.references | Fayad, M. E. y Schmidt, D. C. (1997). Object-Oriented Application Frameworks. Communications of the ACM, 40(10):32–38. | spa |
dc.relation.references | Fontana, F. A., Ferme, V., & Spinelli, S. (2012). Investigating the impact of code smells debt on quality code evaluation. 2012 3rd International Workshop on Managing Technical Debt, MTD 2012 - Proceedings, 15–22. https://doi.org/10.1109/MTD.2012.6225993 | spa |
dc.relation.references | Greening, D. R. (2013). Release duration and Enterprise agility. Proceedings of the Annual Hawaii International Conference on System Sciences, 4835–4841. https://doi.org/10.1109/HICSS.2013.463 | spa |
dc.relation.references | Griffith, I. D. (2015). Design Pattern Decay – a Study of Design Pattern Grime and Its Impact on Quality and Technical Debt. | spa |
dc.relation.references | Griffith, I., Reimanis, D., Izurieta, C., Codabux, Z., Deo, A., & Williams, B. (2014). The correspondence between software quality models and technical debt estimation approaches. Proceedings - 2014 6th IEEE International Workshop on Managing Technical Debt, MTD 2014, 19–26. https://doi.org/10.1109/MTD.2014.13 | spa |
dc.relation.references | Guo, Y., & Seaman, C. (2011). A portfolio approach to technical debt management. Proceeding of the 2nd Working on Managing Technical Debt - MTD ’11, 31. https://doi.org/10.1145/1985362.1985370 | spa |
dc.relation.references | Guo, Y., Seaman, C., & da Silva, F. Q. B. (2016). Costs and obstacles encountered in technical debt management – A case study. Journal of Systems and Software, 120, 156–169. https://doi.org/http://dx.doi.org/10.1016/j.jss.2016.07.008 | spa |
dc.relation.references | Guo, Y., Seaman, C., Gomes, R., Cavalcanti, A., Tonin, G., Da Silva, F. Q. B., … Siebra, C. (2011). Tracking technical debt — An exploratory case study. 2011 27th IEEE International Conference on Software Maintenance (ICSM), 528–531. https://doi.org/10.1109/ICSM.2011.6080824 | spa |
dc.relation.references | Hamdan, S., & Alramouni, S. (2015). A Quality Framework for Software Continuous Integration. Procedia Manufacturing, 3(Ahfe 2015), 2019–2025. https://doi.org/10.1016/j.promfg.2015.07.249 | spa |
dc.relation.references | Holvitie, J., & Leppänen, V. (2013). DebtFlag: Technical debt management with a development environment integrated tool. 2013 4th International Workshop on Managing Technical Debt, MTD 2013 - Proceedings, 20–27. https://doi.org/10.1109/MTD.2013.6608674 | spa |
dc.relation.references | Holvitie, J., Licorish, S. A., Spínola, R. O., Hyrynsalmi, S., MacDonell, S. G., Mendes, T. S., … Leppänen, V. (2018). Technical debt and agile software development practices and processes: An industry practitioner survey. Information and Software Technology, 96, 141–160. https://doi.org/10.1016/j.infsof.2017.11.015 | spa |
dc.relation.references | Izurieta, C., Vetrò, A., Zazworka, N., Cai, Y., Seaman, C., & Shull, F. (2012). Organizing the technical debt landscape. 2012 3rd International Workshop on Managing Technical Debt, MTD 2012 - Proceedings, 23–26. https://doi.org/10.1109/MTD.2012.6225995 | spa |
dc.relation.references | Kim, M., Zimmermann, T., & Nagappan, N. (2014). An empirical study of refactoring challenges and benefits at Microsoft. IEEE Transactions on Software Engineering, 40(7), 633–649. https://doi.org/10.1109/TSE.2014.2318734 | spa |
dc.relation.references | Kosti, M. V., Ampatzoglou, A., Chatzigeorgiou, A., Pallas, G., Stamelos, I., & Angelis, L. (2017). Technical debt principal assessment through structural metrics. Proceedings - 43rd Euromicro Conference on Software Engineering and Advanced Applications, SEAA 2017, 1, 329–333. https://doi.org/10.1109/SEAA.2017.59 | spa |
dc.relation.references | Ktata, O., & Lévesque, G. (2010). Designing and implementing a measurement program for Scrum teams. Proceedings of the Third C | spa |
dc.relation.references | Conference on Computer Science and Software Engineering - C3S2E ’10, 101–107. https://doi.org/10.1145/1822327.1822341 | spa |
dc.relation.references | Li, Z., Avgeriou, P., & Liang, P. (2015). A systematic mapping study on technical debt and its management. Journal of Systems and Software, 101, 193–220. https://doi.org/10.1016/j.jss.2014.12.027 | spa |
dc.relation.references | MacCormack, A., & Sturtevant, D. J. (2016). Technical debt and system architecture: The impact of coupling on defect-related activity. Journal of Systems and Software, 120, 170–182. https://doi.org/10.1016/j.jss.2016.06.007 | spa |
dc.relation.references | Marinescu, R. (2012). Assessing technical debt by identifying design flaws in software systems. IBM Journal of Research and Development, 56(5), 9:1-9:13. https://doi.org/10.1147/JRD.2012.2204512 | spa |
dc.relation.references | Martini, A., Sikander, E., & Madlani, N. (2018). A semi-automated framework for the identification and estimation of Architectural Technical Debt: A comparative case-study on the modularization of a software component. Information and Software Technology, 93, 264–279. https://doi.org/10.1016/j.infsof.2017.08.005 | spa |
dc.relation.references | Melin, T. (2016). Implementation and evaluation of a continuous code inspection platform. | spa |
dc.relation.references | Mens, T., & Tourwé, T. (2004). A survey of software refactoring. IEEE Transactions on Software Engineering, 30(2), 126–139. https://doi.org/10.1109/TSE.2004.1265817 | spa |
dc.relation.references | Mo, R., Garcia, J., Cai, Y., & Medvidovic, N. (2013). Mapping architectural decay instances to dependency models. 2013 4th International Workshop on Managing Technical Debt (MTD), 39–46. https://doi.org/10.1109/MTD.2013.6608677 | spa |
dc.relation.references | Nord, R. L., Ozkaya, I., Kruchten, P., & Gonzalez-Rojas, M. (2012). In search of a metric for managing architectural technical debt. Proceedings of the 2012 Joint Working Conference on Software Architecture and 6th European Conference on Software Architecture, WICSA/ECSA 2012, 91–100. https://doi.org/10.1109/WICSA-ECSA.212.17 | spa |
dc.relation.references | Ramasubbu, N., & Kemerer, C. F. (2014). Managing technical debt in enterprise software packages. IEEE Transactions on Software Engineering, 40(8), 758–772. https://doi.org/10.1109/TSE.2014.2327027 | spa |
dc.relation.references | Ramasubbu, N., & Kemerer, C. F. (2017). Integrating Technical Debt Management and Software Quality Management Processes: A Normative Framework and Field Tests. IEEE Transactions on Software Engineering, 1–17. https://doi.org/10.1109/TSE.2017.2774832 | spa |
dc.relation.references | Schmid, K. (2013). On the limits of the technical debt metaphor some guidance on going beyond. 2013 4th International Workshop on Managing Technical Debt, MTD 2013 - Proceedings, 63–66. https://doi.org/10.1109/MTD.2013.6608681 | spa |
dc.relation.references | Seaman, C., Guo, Y., Zazworka, N., Shull, F., Izurieta, C., Cai, Y., & Vetrò, A. (2012). Using technical debt data in decision making: Potential decision approaches. 2012 3rd International Workshop on Managing Technical Debt, MTD 2012 - Proceedings, 45–48. https://doi.org/10.1109/MTD.2012.6225999 | spa |
dc.relation.references | Szyperski, C. (2000). Component versus Objects. ObjectiveView, 1(5):8–16. | spa |
dc.relation.references | Szyperski, C. (1998). Component Software. Beyond Object-Oriented Programming. Addison-Wesley | spa |
dc.relation.references | Tom, E., Aurum, A., & Vidgen, R. (2013). An exploration of technical debt. Journal of Systems and Software, 86(6), 1498–1516. https://doi.org/10.1016/j.jss.2012.12.052 | spa |
dc.relation.references | Yan, M., Xia, X., Shihab, E., Lo, D., Yin, J., & Yang, X. (2018). Automating Change-level Self-admitted Technical Debt Determination. IEEE Transactions on Software Engineering, 5589(c), 1–18. https://doi.org/10.1109/TSE.2018.2831232 | spa |
dc.relation.references | Yli-Huumo, J., Maglyas, A., & Smolander, K. (2016). How do software development teams manage technical debt? – An empirical study. Journal of Systems and Software, 120, 195–218. https://doi.org/10.1016/j.jss.2016.05.018 | spa |
dc.relation.references | Zazworka, N., Vetro’, A., Izurieta, C., Wong, S., Cai, Y., Seaman, C., & Shull, F. (2014). Comparing four approaches for technical debt identification. Software Quality Journal, 22(3), 403–426. https://doi.org/10.1007/s11219-013-9200-8 | spa |
dc.relation.references | Zhang, Y., Huang, G., Liu, X., Zhang, W., Mei, H., & Yang, S. (2012). Refactoring android Java code for on-demand computation offloading. ACM SIGPLAN Notices, 47(10), 233. https://doi.org/10.1145/2398857.2384634 | spa |
dc.rights.creativecommons | Attribution-NonCommercial-ShareAlike 4.0 International | |
dc.type.version | info:eu-repo/semantics/publishedVersion | |
dc.type.version | info:eu-repo/semantics/acceptedVersion | |
dc.type.local | Tesis de Maestría | |
dc.type.driver | info:eu-repo/semantics/masterThesis | |
dc.description.degreename | Magíster en Ingeniería de Software | |
dc.description.degreelevel | Maestría | |
dc.publisher.grantor | Universidad de Medellín |
Ficheros en el ítem
Este ítem aparece en la(s) siguiente(s) colección(ones)
-
Tesis [726]