Análisis y mejoras de usabilidad y performance sobre una herramienta de asistencia en el refactoring de aplicaciones
La evolución y mantenimiento de los sistemas de software es una tarea costosa en el proceso de desarrollo de software. Dichos costos tienden a crecer exponencialmente en la medida en que los sistemas se vuelven más grandes y complejos. Una de las mayores preocupaciones en la evolución y mant...
Guardado en:
| Autores principales: | , |
|---|---|
| Formato: | Artículo revista |
| Lenguaje: | Español |
| Publicado: |
Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exáctas
2016
|
| Materias: | |
| Acceso en línea: | http://www.ridaa.unicen.edu.ar/xmlui/handle/123456789/588 |
| Aporte de: |
| id |
I21-R190-123456789-588 |
|---|---|
| record_format |
ojs |
| institution |
Universidad Nacional del Centro |
| institution_str |
I-21 |
| repository_str |
R-190 |
| container_title_str |
Repositorio Institucional de Acceso Abierto (RIDAA) |
| language |
Español |
| format |
Artículo revista |
| topic |
Code smells Spirit Smart Identification of refactoring opportunITies Computación Arquitectura-computación Diseño de bases de datos Diseño de software Software |
| spellingShingle |
Code smells Spirit Smart Identification of refactoring opportunITies Computación Arquitectura-computación Diseño de bases de datos Diseño de software Software Masson, Iván Pastore, Roman Análisis y mejoras de usabilidad y performance sobre una herramienta de asistencia en el refactoring de aplicaciones |
| topic_facet |
Code smells Spirit Smart Identification of refactoring opportunITies Computación Arquitectura-computación Diseño de bases de datos Diseño de software Software |
| author |
Masson, Iván Pastore, Roman |
| author_facet |
Masson, Iván Pastore, Roman |
| author_sort |
Masson, Iván |
| title |
Análisis y mejoras de usabilidad y performance sobre una herramienta de asistencia en el refactoring de aplicaciones |
| title_short |
Análisis y mejoras de usabilidad y performance sobre una herramienta de asistencia en el refactoring de aplicaciones |
| title_full |
Análisis y mejoras de usabilidad y performance sobre una herramienta de asistencia en el refactoring de aplicaciones |
| title_fullStr |
Análisis y mejoras de usabilidad y performance sobre una herramienta de asistencia en el refactoring de aplicaciones |
| title_full_unstemmed |
Análisis y mejoras de usabilidad y performance sobre una herramienta de asistencia en el refactoring de aplicaciones |
| title_sort |
análisis y mejoras de usabilidad y performance sobre una herramienta de asistencia en el refactoring de aplicaciones |
| description |
La evolución y mantenimiento de los sistemas de software es una tarea
costosa en el proceso de desarrollo de software. Dichos costos tienden a crecer
exponencialmente en la medida en que los sistemas se vuelven más grandes y
complejos. Una de las mayores preocupaciones en la evolución y
mantenimiento de sistemas es la existencia de problemas estructurales de diseño
que no son descubiertos y por ende no son subsanados en las etapas tempranas
del desarrollo. Este tipo de problemas en el diseño pueden ser identificados
mediante “code smells”. Un code smell es un síntoma en el código fuente
del sistema que ayuda a identificar un problema de diseño. Los smells permiten
a los desarrolladores detectar fragmentos de código que deberían ser
reestructurados, para de esa manera mejorar la calidad del sistema. En este
aspecto los smells actúan como antipatrones de diseño que ponen en evidencia
estas debilidades del sistema. Existen diferentes herramientas semiautomatizadas para la identificación de smells en un sistema tales como inCode o iPlasma, sin embargo una de las mayores limitaciones de dichas herramientas es que usualmente encuentran una
gran cantidad de smells; esto puede volverse un problema para el desarrollador
por diversas razones. En principio el desarrollador puede verse abrumado por la
cantidad de información a analizar, teniendo en cuenta que las herramientas solo
señalan los smells y el desarrollador es finalmente quien decide en cada caso si
se trata de un problema o no y de sí efectivamente merece que se le otorgue
tiempo de desarrollo a solucionar el smell. Una técnica que suele utilizarse para
solucionar los code smells es el refactoring. El refactoring es una técnica
controlada para mejorar el diseño del código de un sistema. Consiste en aplicar
una serie de transformaciones al código para mejorar ciertos aspectos
estructurales del mismo sin alterar su comportamiento.
Por otro lado, el desarrollador es quien debe decidir qué problemas son
relevantes para la “salud” del sistema y cuales interfieren con el objetivo para el
que fue diseñado. Bajo estas condiciones es válido mencionar que en la práctica
no todos los smells encontrados en un sistema indican un problema de diseño,
por ej. pueden existir métodos extensos en ciertas clases, pero cuya extensión
puede estar relacionada a la complejidad de la tarea que realizan y no a la falta
de modularización. En este sentido, cada smell encontrado requiere de un
análisis particular, lo que obliga al desarrollador a detenerse en cada smell de la
lista resultante de un análisis y seleccionar aquellos que, bajo su criterio
respaldado por su entendimiento del sistema, necesitan ser reparados.
En este contexto es necesaria una herramienta que asista al desarrollador en la
tarea de identificar aquellos smells que sean prioritarios para la evolución y
mantenimiento del sistema.
En esta línea se ha propuesto SpIRIT (Smart Identification of Refactoring
opportunITies) una herramienta semiautomatizada que realiza una
priorización de los code smells de un sistema de acuerdo a su criticidad. Se
definen como problemas críticos aquellos que comprometen la arquitectura de
un sistema. Luego los mismos autores proponen JSpIRIT (Java Smart
Identification of Refactoring opportunITies) que se trata de un plugin para el
IDE de desarrollo Eclipse y el cual se utiliza en el desarrollo de éste trabajo.
Párrafo extraído de la tesis de grado a modo de resumen |
| publisher |
Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exáctas |
| publishDate |
2016 |
| url |
http://www.ridaa.unicen.edu.ar/xmlui/handle/123456789/588 |
| work_keys_str_mv |
AT massonivan analisisymejorasdeusabilidadyperformancesobreunaherramientadeasistenciaenelrefactoringdeaplicaciones AT pastoreroman analisisymejorasdeusabilidadyperformancesobreunaherramientadeasistenciaenelrefactoringdeaplicaciones |
| first_indexed |
2022-07-04T14:24:13Z |
| last_indexed |
2022-07-04T14:24:13Z |
| bdutipo_str |
Revistas |
| _version_ |
1764819787063492608 |