Comparación de dos herramientas para refactorización de brain methods

Autores
Scafati, Diego Ariel
Año de publicación
2018
Idioma
español castellano
Tipo de recurso
tesis de grado
Estado
versión aceptada
Colaborador/a o director/a de tesis
Diaz-Pace, Andres
Vidal, Santiago A.
Descripción
La tarea de desarrollar software de calidad para grandes sistemas conlleva problemas y desafíos, a pesar de los numerosos esfuerzos realizados para mejorar la habilidad de las personas para producir software de forma predecible y eficiente en términos de costos [1]. En general, estos problemas se deben a la inevitable evolución de los sistemas de software, causada por cambios en el entorno del sistema. Estos cambios incluyen, por ejemplo, cambios de requerimientos, cambios de tecnología, y cambios de personal, entre otros. Esta evolución lleva a la necesidad de efectuar un proceso de mantenimiento que modifica el código fuente del software. La evolución del software fue estudiada por medio de “leyes” en el trabajo de Lehman [2, 3], las cuales hacen hincapié en el hecho de que el software debe evolucionar continuamente para seguir siendo útil, y que dicha evolución viene acompañada de un aumento de la complejidad y del esfuerzo que tendrán que ser invertidos para controlar este crecimiento. Esto se debe a que, a medida que los desarrolladores realizan modificaciones en el código de un sistema, el código tiende a perder su estructura y se hace más difícil comprender el diseño mediante la simple lectura del código. Esto ocurre principalmente cuando los cambios se realizan sin una plena comprensión del diseño del código. La pérdida de la estructura del código tiene un efecto acumulativo: cuanto más difícil se hace ver el diseño en él, más difícil es preservarlo, y más rápidamente dicho diseño tiende a erosionarse [4]. Entre los problemas que afectan la comprensibilidad del código y su diseño se encuentran: la duplicación de código y los métodos excesivamente largos (en términos de líneas de código o cantidad de sentencias). Estos dos problemas fueron identificados por Fowler y Beck [5, 6] como problemas que indican la necesidad de refactorizar una pieza de software, para mejorar su calidad y evitar la degradación del sistema. Párrafo extraído de la tesis de grado a modo de resumen.
Fil: Scafati, Diego Ariel. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina.
Fil: Diaz-Pace, Andres. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina.
Fil: Vidal, Santiago A. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina.
Materia
Software
Code smells
Bandago
Jdeodorant
Refactorización
Ingeniería de sistemas
Herramientas JDeodorant y Bandago
Diseño de software
Reingeniería de software
Nivel de accesibilidad
acceso abierto
Condiciones de uso
http://creativecommons.org/licenses/by-nc-sa/2.5/ar/
Repositorio
RIDAA (UNICEN)
Institución
Universidad Nacional del Centro de la Provincia de Buenos Aires
OAI Identificador
oai:ridaa.unicen.edu.ar:123456789/1720

id RIDUNICEN_482f9d9200df35b1e27eff1093d54f1b
oai_identifier_str oai:ridaa.unicen.edu.ar:123456789/1720
network_acronym_str RIDUNICEN
repository_id_str a
network_name_str RIDAA (UNICEN)
spelling Comparación de dos herramientas para refactorización de brain methodsScafati, Diego ArielSoftwareCode smellsBandagoJdeodorantRefactorizaciónIngeniería de sistemasHerramientas JDeodorant y BandagoDiseño de softwareReingeniería de softwareLa tarea de desarrollar software de calidad para grandes sistemas conlleva problemas y desafíos, a pesar de los numerosos esfuerzos realizados para mejorar la habilidad de las personas para producir software de forma predecible y eficiente en términos de costos [1]. En general, estos problemas se deben a la inevitable evolución de los sistemas de software, causada por cambios en el entorno del sistema. Estos cambios incluyen, por ejemplo, cambios de requerimientos, cambios de tecnología, y cambios de personal, entre otros. Esta evolución lleva a la necesidad de efectuar un proceso de mantenimiento que modifica el código fuente del software. La evolución del software fue estudiada por medio de “leyes” en el trabajo de Lehman [2, 3], las cuales hacen hincapié en el hecho de que el software debe evolucionar continuamente para seguir siendo útil, y que dicha evolución viene acompañada de un aumento de la complejidad y del esfuerzo que tendrán que ser invertidos para controlar este crecimiento. Esto se debe a que, a medida que los desarrolladores realizan modificaciones en el código de un sistema, el código tiende a perder su estructura y se hace más difícil comprender el diseño mediante la simple lectura del código. Esto ocurre principalmente cuando los cambios se realizan sin una plena comprensión del diseño del código. La pérdida de la estructura del código tiene un efecto acumulativo: cuanto más difícil se hace ver el diseño en él, más difícil es preservarlo, y más rápidamente dicho diseño tiende a erosionarse [4]. Entre los problemas que afectan la comprensibilidad del código y su diseño se encuentran: la duplicación de código y los métodos excesivamente largos (en términos de líneas de código o cantidad de sentencias). Estos dos problemas fueron identificados por Fowler y Beck [5, 6] como problemas que indican la necesidad de refactorizar una pieza de software, para mejorar su calidad y evitar la degradación del sistema. Párrafo extraído de la tesis de grado a modo de resumen.Fil: Scafati, Diego Ariel. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina.Fil: Diaz-Pace, Andres. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina.Fil: Vidal, Santiago A. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina.Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias ExactasDiaz-Pace, AndresVidal, Santiago A.2018-032018-06-14T18:49:32Zinfo:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/acceptedVersionhttp://purl.org/coar/resource_type/c_7a1finfo:ar-repo/semantics/tesisDeGradoapplication/pdfapplication/pdfhttp://www.ridaa.unicen.edu.ar/xmlui/handle/123456789/1720https://www.ridaa.unicen.edu.ar/handle/123456789/1720spahttp://creativecommons.org/licenses/by-nc-sa/2.5/ar/info:eu-repo/semantics/openAccessreponame:RIDAA (UNICEN)instname:Universidad Nacional del Centro de la Provincia de Buenos Aires2025-09-29T13:41:08Zoai:ridaa.unicen.edu.ar:123456789/1720instacron:UNICENInstitucionalhttps://www.ridaa.unicen.edu.ar/Universidad públicaNo correspondehttps://www.ridaa.unicen.edu.ar/oailleiboff@rec.unicen.edu.ar;gimeroni@rec.unicen.edu.ar;lvarela@rec.unicen.edu.ar ;ArgentinaNo correspondeNo correspondeNo correspondeopendoar:a2025-09-29 13:41:08.804RIDAA (UNICEN) - Universidad Nacional del Centro de la Provincia de Buenos Airesfalse
dc.title.none.fl_str_mv Comparación de dos herramientas para refactorización de brain methods
title Comparación de dos herramientas para refactorización de brain methods
spellingShingle Comparación de dos herramientas para refactorización de brain methods
Scafati, Diego Ariel
Software
Code smells
Bandago
Jdeodorant
Refactorización
Ingeniería de sistemas
Herramientas JDeodorant y Bandago
Diseño de software
Reingeniería de software
title_short Comparación de dos herramientas para refactorización de brain methods
title_full Comparación de dos herramientas para refactorización de brain methods
title_fullStr Comparación de dos herramientas para refactorización de brain methods
title_full_unstemmed Comparación de dos herramientas para refactorización de brain methods
title_sort Comparación de dos herramientas para refactorización de brain methods
dc.creator.none.fl_str_mv Scafati, Diego Ariel
author Scafati, Diego Ariel
author_facet Scafati, Diego Ariel
author_role author
dc.contributor.none.fl_str_mv Diaz-Pace, Andres
Vidal, Santiago A.
dc.subject.none.fl_str_mv Software
Code smells
Bandago
Jdeodorant
Refactorización
Ingeniería de sistemas
Herramientas JDeodorant y Bandago
Diseño de software
Reingeniería de software
topic Software
Code smells
Bandago
Jdeodorant
Refactorización
Ingeniería de sistemas
Herramientas JDeodorant y Bandago
Diseño de software
Reingeniería de software
dc.description.none.fl_txt_mv La tarea de desarrollar software de calidad para grandes sistemas conlleva problemas y desafíos, a pesar de los numerosos esfuerzos realizados para mejorar la habilidad de las personas para producir software de forma predecible y eficiente en términos de costos [1]. En general, estos problemas se deben a la inevitable evolución de los sistemas de software, causada por cambios en el entorno del sistema. Estos cambios incluyen, por ejemplo, cambios de requerimientos, cambios de tecnología, y cambios de personal, entre otros. Esta evolución lleva a la necesidad de efectuar un proceso de mantenimiento que modifica el código fuente del software. La evolución del software fue estudiada por medio de “leyes” en el trabajo de Lehman [2, 3], las cuales hacen hincapié en el hecho de que el software debe evolucionar continuamente para seguir siendo útil, y que dicha evolución viene acompañada de un aumento de la complejidad y del esfuerzo que tendrán que ser invertidos para controlar este crecimiento. Esto se debe a que, a medida que los desarrolladores realizan modificaciones en el código de un sistema, el código tiende a perder su estructura y se hace más difícil comprender el diseño mediante la simple lectura del código. Esto ocurre principalmente cuando los cambios se realizan sin una plena comprensión del diseño del código. La pérdida de la estructura del código tiene un efecto acumulativo: cuanto más difícil se hace ver el diseño en él, más difícil es preservarlo, y más rápidamente dicho diseño tiende a erosionarse [4]. Entre los problemas que afectan la comprensibilidad del código y su diseño se encuentran: la duplicación de código y los métodos excesivamente largos (en términos de líneas de código o cantidad de sentencias). Estos dos problemas fueron identificados por Fowler y Beck [5, 6] como problemas que indican la necesidad de refactorizar una pieza de software, para mejorar su calidad y evitar la degradación del sistema. Párrafo extraído de la tesis de grado a modo de resumen.
Fil: Scafati, Diego Ariel. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina.
Fil: Diaz-Pace, Andres. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina.
Fil: Vidal, Santiago A. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina.
description La tarea de desarrollar software de calidad para grandes sistemas conlleva problemas y desafíos, a pesar de los numerosos esfuerzos realizados para mejorar la habilidad de las personas para producir software de forma predecible y eficiente en términos de costos [1]. En general, estos problemas se deben a la inevitable evolución de los sistemas de software, causada por cambios en el entorno del sistema. Estos cambios incluyen, por ejemplo, cambios de requerimientos, cambios de tecnología, y cambios de personal, entre otros. Esta evolución lleva a la necesidad de efectuar un proceso de mantenimiento que modifica el código fuente del software. La evolución del software fue estudiada por medio de “leyes” en el trabajo de Lehman [2, 3], las cuales hacen hincapié en el hecho de que el software debe evolucionar continuamente para seguir siendo útil, y que dicha evolución viene acompañada de un aumento de la complejidad y del esfuerzo que tendrán que ser invertidos para controlar este crecimiento. Esto se debe a que, a medida que los desarrolladores realizan modificaciones en el código de un sistema, el código tiende a perder su estructura y se hace más difícil comprender el diseño mediante la simple lectura del código. Esto ocurre principalmente cuando los cambios se realizan sin una plena comprensión del diseño del código. La pérdida de la estructura del código tiene un efecto acumulativo: cuanto más difícil se hace ver el diseño en él, más difícil es preservarlo, y más rápidamente dicho diseño tiende a erosionarse [4]. Entre los problemas que afectan la comprensibilidad del código y su diseño se encuentran: la duplicación de código y los métodos excesivamente largos (en términos de líneas de código o cantidad de sentencias). Estos dos problemas fueron identificados por Fowler y Beck [5, 6] como problemas que indican la necesidad de refactorizar una pieza de software, para mejorar su calidad y evitar la degradación del sistema. Párrafo extraído de la tesis de grado a modo de resumen.
publishDate 2018
dc.date.none.fl_str_mv 2018-03
2018-06-14T18:49:32Z
dc.type.none.fl_str_mv info:eu-repo/semantics/bachelorThesis
info:eu-repo/semantics/acceptedVersion
http://purl.org/coar/resource_type/c_7a1f
info:ar-repo/semantics/tesisDeGrado
format bachelorThesis
status_str acceptedVersion
dc.identifier.none.fl_str_mv http://www.ridaa.unicen.edu.ar/xmlui/handle/123456789/1720
https://www.ridaa.unicen.edu.ar/handle/123456789/1720
url http://www.ridaa.unicen.edu.ar/xmlui/handle/123456789/1720
https://www.ridaa.unicen.edu.ar/handle/123456789/1720
dc.language.none.fl_str_mv spa
language spa
dc.rights.none.fl_str_mv http://creativecommons.org/licenses/by-nc-sa/2.5/ar/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv http://creativecommons.org/licenses/by-nc-sa/2.5/ar/
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
application/pdf
dc.publisher.none.fl_str_mv Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas
publisher.none.fl_str_mv Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas
dc.source.none.fl_str_mv reponame:RIDAA (UNICEN)
instname:Universidad Nacional del Centro de la Provincia de Buenos Aires
reponame_str RIDAA (UNICEN)
collection RIDAA (UNICEN)
instname_str Universidad Nacional del Centro de la Provincia de Buenos Aires
repository.name.fl_str_mv RIDAA (UNICEN) - Universidad Nacional del Centro de la Provincia de Buenos Aires
repository.mail.fl_str_mv lleiboff@rec.unicen.edu.ar;gimeroni@rec.unicen.edu.ar;lvarela@rec.unicen.edu.ar ;
_version_ 1844619015262044160
score 12.559606