Refactorización automatizada para la eliminación de Feature Envy
- Autores
- Antivero, Juan Pablo; Arias, Lucas
- 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
- Vidal, Santiago A.
Marcos, Claudia A. - Descripción
- Para realizar el refactoring de una Feature Envy, se deben realizar dos pasos fundamentales: identificar la oportunidad de refactoring, y luego aplicarla. Las herramientas analizadas en esta sección tienen una particularidad: una vez identificada la Feature Envy, el único refactoring recomendado y/o aplicado es Move Method. Ninguna herramienta considera una extracción previa. En cuanto a las posibles acciones realizadas por las herramientas, se pueden clasificar en tres enfoques: Recomendación: Las herramientas incluidas en esta categoría sólo encuentran métodos candidatos y recomiendan la aplicación del refactoring. No distinguen si el refactoring es posible o si realmente se soluciona la Feature Envy al aplicarlo. En este grupo se encuentran las herramientas MethodBook, MORE, c-JRecRef y Jmove (las cuales serán analizadas en este capítulo). Aplicación: Las herramientas incluidas en esta categoría realizan el refactoring propiamente dicho, es decir, mueven el método de una clase a otra. No realizan ningún tipo de análisis o recomendación en cuanto al método que se desea mover, únicamente realizan el Move Method siempre y cuando se cumpla la regla de no modificar el comportamiento del sistema ni generar errores de sintaxis. Un ejemplo representativo de este grupo es la API nativa de Eclipse. Recomendación y Aplicación: Las herramientas incluidas en esta categoría realizan por completo el proceso de eliminación de code smells. Son más complejas que las anteriores, ya que realizan ambos procedimientos e intentan obtener un resultado válido. Son las únicas que automatizan por completo el proceso de refactorización de Feature Envy. En este grupo se encuentra únicamente la herramienta JDeodorant. Párrafo extraído de la tesis de grado a modo de resumen.
Fil: Antivero, Juan Pablo. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina.
Fil: Arias, Lucas. 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.
Fil: Marcos, Claudia A. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina. - Materia
-
Feature Envy
Refactorización de Feature Envy
Calidad de software
Code smells
Software
Bandago
Ingeniería de sistemas - Nivel de accesibilidad
- acceso abierto
- Condiciones de uso
- http://creativecommons.org/licenses/by/2.5/ar/
- Repositorio
- Institución
- Universidad Nacional del Centro de la Provincia de Buenos Aires
- OAI Identificador
- oai:ridaa.unicen.edu.ar:123456789/2011
Ver los metadatos del registro completo
id |
RIDUNICEN_03b21ed2d1caffe7bb644319e4ab08fb |
---|---|
oai_identifier_str |
oai:ridaa.unicen.edu.ar:123456789/2011 |
network_acronym_str |
RIDUNICEN |
repository_id_str |
a |
network_name_str |
RIDAA (UNICEN) |
spelling |
Refactorización automatizada para la eliminación de Feature EnvyAntivero, Juan PabloArias, LucasFeature EnvyRefactorización de Feature EnvyCalidad de softwareCode smellsSoftwareBandagoIngeniería de sistemasPara realizar el refactoring de una Feature Envy, se deben realizar dos pasos fundamentales: identificar la oportunidad de refactoring, y luego aplicarla. Las herramientas analizadas en esta sección tienen una particularidad: una vez identificada la Feature Envy, el único refactoring recomendado y/o aplicado es Move Method. Ninguna herramienta considera una extracción previa. En cuanto a las posibles acciones realizadas por las herramientas, se pueden clasificar en tres enfoques: Recomendación: Las herramientas incluidas en esta categoría sólo encuentran métodos candidatos y recomiendan la aplicación del refactoring. No distinguen si el refactoring es posible o si realmente se soluciona la Feature Envy al aplicarlo. En este grupo se encuentran las herramientas MethodBook, MORE, c-JRecRef y Jmove (las cuales serán analizadas en este capítulo). Aplicación: Las herramientas incluidas en esta categoría realizan el refactoring propiamente dicho, es decir, mueven el método de una clase a otra. No realizan ningún tipo de análisis o recomendación en cuanto al método que se desea mover, únicamente realizan el Move Method siempre y cuando se cumpla la regla de no modificar el comportamiento del sistema ni generar errores de sintaxis. Un ejemplo representativo de este grupo es la API nativa de Eclipse. Recomendación y Aplicación: Las herramientas incluidas en esta categoría realizan por completo el proceso de eliminación de code smells. Son más complejas que las anteriores, ya que realizan ambos procedimientos e intentan obtener un resultado válido. Son las únicas que automatizan por completo el proceso de refactorización de Feature Envy. En este grupo se encuentra únicamente la herramienta JDeodorant. Párrafo extraído de la tesis de grado a modo de resumen.Fil: Antivero, Juan Pablo. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina.Fil: Arias, Lucas. 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.Fil: Marcos, Claudia 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 ExactasVidal, Santiago A.Marcos, Claudia A.2018-122019-05-30T14:51:27Z2019-05-30T14:51:27Zinfo:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/acceptedVersionhttp://purl.org/coar/resource_type/c_7a1finfo:ar-repo/semantics/tesisDeGradoapplication/pdfapplication/pdfhttps://www.ridaa.unicen.edu.ar/handle/123456789/2011spahttp://creativecommons.org/licenses/by/2.5/ar/info:eu-repo/semantics/openAccessreponame:RIDAA (UNICEN)instname:Universidad Nacional del Centro de la Provincia de Buenos Aires2025-09-11T10:19:06Zoai:ridaa.unicen.edu.ar:123456789/2011instacron: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-11 10:19:06.852RIDAA (UNICEN) - Universidad Nacional del Centro de la Provincia de Buenos Airesfalse |
dc.title.none.fl_str_mv |
Refactorización automatizada para la eliminación de Feature Envy |
title |
Refactorización automatizada para la eliminación de Feature Envy |
spellingShingle |
Refactorización automatizada para la eliminación de Feature Envy Antivero, Juan Pablo Feature Envy Refactorización de Feature Envy Calidad de software Code smells Software Bandago Ingeniería de sistemas |
title_short |
Refactorización automatizada para la eliminación de Feature Envy |
title_full |
Refactorización automatizada para la eliminación de Feature Envy |
title_fullStr |
Refactorización automatizada para la eliminación de Feature Envy |
title_full_unstemmed |
Refactorización automatizada para la eliminación de Feature Envy |
title_sort |
Refactorización automatizada para la eliminación de Feature Envy |
dc.creator.none.fl_str_mv |
Antivero, Juan Pablo Arias, Lucas |
author |
Antivero, Juan Pablo |
author_facet |
Antivero, Juan Pablo Arias, Lucas |
author_role |
author |
author2 |
Arias, Lucas |
author2_role |
author |
dc.contributor.none.fl_str_mv |
Vidal, Santiago A. Marcos, Claudia A. |
dc.subject.none.fl_str_mv |
Feature Envy Refactorización de Feature Envy Calidad de software Code smells Software Bandago Ingeniería de sistemas |
topic |
Feature Envy Refactorización de Feature Envy Calidad de software Code smells Software Bandago Ingeniería de sistemas |
dc.description.none.fl_txt_mv |
Para realizar el refactoring de una Feature Envy, se deben realizar dos pasos fundamentales: identificar la oportunidad de refactoring, y luego aplicarla. Las herramientas analizadas en esta sección tienen una particularidad: una vez identificada la Feature Envy, el único refactoring recomendado y/o aplicado es Move Method. Ninguna herramienta considera una extracción previa. En cuanto a las posibles acciones realizadas por las herramientas, se pueden clasificar en tres enfoques: Recomendación: Las herramientas incluidas en esta categoría sólo encuentran métodos candidatos y recomiendan la aplicación del refactoring. No distinguen si el refactoring es posible o si realmente se soluciona la Feature Envy al aplicarlo. En este grupo se encuentran las herramientas MethodBook, MORE, c-JRecRef y Jmove (las cuales serán analizadas en este capítulo). Aplicación: Las herramientas incluidas en esta categoría realizan el refactoring propiamente dicho, es decir, mueven el método de una clase a otra. No realizan ningún tipo de análisis o recomendación en cuanto al método que se desea mover, únicamente realizan el Move Method siempre y cuando se cumpla la regla de no modificar el comportamiento del sistema ni generar errores de sintaxis. Un ejemplo representativo de este grupo es la API nativa de Eclipse. Recomendación y Aplicación: Las herramientas incluidas en esta categoría realizan por completo el proceso de eliminación de code smells. Son más complejas que las anteriores, ya que realizan ambos procedimientos e intentan obtener un resultado válido. Son las únicas que automatizan por completo el proceso de refactorización de Feature Envy. En este grupo se encuentra únicamente la herramienta JDeodorant. Párrafo extraído de la tesis de grado a modo de resumen. Fil: Antivero, Juan Pablo. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina. Fil: Arias, Lucas. 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. Fil: Marcos, Claudia A. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina. |
description |
Para realizar el refactoring de una Feature Envy, se deben realizar dos pasos fundamentales: identificar la oportunidad de refactoring, y luego aplicarla. Las herramientas analizadas en esta sección tienen una particularidad: una vez identificada la Feature Envy, el único refactoring recomendado y/o aplicado es Move Method. Ninguna herramienta considera una extracción previa. En cuanto a las posibles acciones realizadas por las herramientas, se pueden clasificar en tres enfoques: Recomendación: Las herramientas incluidas en esta categoría sólo encuentran métodos candidatos y recomiendan la aplicación del refactoring. No distinguen si el refactoring es posible o si realmente se soluciona la Feature Envy al aplicarlo. En este grupo se encuentran las herramientas MethodBook, MORE, c-JRecRef y Jmove (las cuales serán analizadas en este capítulo). Aplicación: Las herramientas incluidas en esta categoría realizan el refactoring propiamente dicho, es decir, mueven el método de una clase a otra. No realizan ningún tipo de análisis o recomendación en cuanto al método que se desea mover, únicamente realizan el Move Method siempre y cuando se cumpla la regla de no modificar el comportamiento del sistema ni generar errores de sintaxis. Un ejemplo representativo de este grupo es la API nativa de Eclipse. Recomendación y Aplicación: Las herramientas incluidas en esta categoría realizan por completo el proceso de eliminación de code smells. Son más complejas que las anteriores, ya que realizan ambos procedimientos e intentan obtener un resultado válido. Son las únicas que automatizan por completo el proceso de refactorización de Feature Envy. En este grupo se encuentra únicamente la herramienta JDeodorant. Párrafo extraído de la tesis de grado a modo de resumen. |
publishDate |
2018 |
dc.date.none.fl_str_mv |
2018-12 2019-05-30T14:51:27Z 2019-05-30T14:51:27Z |
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 |
https://www.ridaa.unicen.edu.ar/handle/123456789/2011 |
url |
https://www.ridaa.unicen.edu.ar/handle/123456789/2011 |
dc.language.none.fl_str_mv |
spa |
language |
spa |
dc.rights.none.fl_str_mv |
http://creativecommons.org/licenses/by/2.5/ar/ info:eu-repo/semantics/openAccess |
rights_invalid_str_mv |
http://creativecommons.org/licenses/by/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_ |
1842975323107360768 |
score |
12.993085 |