Self-Refactoring: mejoras automáticas de usabilidad para aplicaciones web

La usabilidad en las aplicaciones web es un aspecto fundamental, pero en muchos casos relegado por diferentes motivos como la falta de personal experimentado, o los altos costos. Si bien las grandes compañías suelen estar preparadas para dedicar los recursos necesarios a mejorar la usabilidad de sus...

Descripción completa

Detalles Bibliográficos
Autor principal: Grigera, Julián
Otros Autores: Garrido, Alejandra
Formato: Tesis Tesis de doctorado
Lenguaje:Español
Publicado: 2018
Materias:
Acceso en línea:http://sedici.unlp.edu.ar/handle/10915/65403
https://doi.org/10.35537/10915/65403
Aporte de:
id I19-R120-10915-65403
record_format dspace
institution Universidad Nacional de La Plata
institution_str I-19
repository_str R-120
collection SEDICI (UNLP)
language Español
topic Ciencias Informáticas
usabilidad
refactoring, web usability, log analysis
spellingShingle Ciencias Informáticas
usabilidad
refactoring, web usability, log analysis
Grigera, Julián
Self-Refactoring: mejoras automáticas de usabilidad para aplicaciones web
topic_facet Ciencias Informáticas
usabilidad
refactoring, web usability, log analysis
description La usabilidad en las aplicaciones web es un aspecto fundamental, pero en muchos casos relegado por diferentes motivos como la falta de personal experimentado, o los altos costos. Si bien las grandes compañías suelen estar preparadas para dedicar los recursos necesarios a mejorar la usabilidad de sus aplicaciones, las pequeñas y medianas suelen utilizarlos en otros aspectos. Para ayudar a bajar estos costos, han surgido herramientas que definición y ejecución remota de pruebas de usabilidad, o recolección de estadísticas de forma automatizada, pero igualmente se requiere de expertos que diseñen las pruebas, interpreten los reportes o visualizaciones en busca de problemas, y diseñen soluciones a los mismos, que los desarrolladores deberán implementar. En este trabajo se propone un enfoque para hallar problemas de usabilidad automáticamente en aplicaciones web, basados en el análisis de eventos de interacción de usuarios finales. Para cada uno de estos problemas de usabilidad encontrados, existe además una solución que puede sugerirse para resolver el problema. En algunos casos, es incluso posible aplicar estas soluciones automáticamente. En este enfoque, los problemas de usabilidad se definen como “usability smells” y las soluciones como “usability refactorings”, ambos términos adaptados de la jerga del refactoring de código. Los usability smells, en este contexto, son problemas que afectan la interacción por parte de los usuarios finales, mientras que los usability refactorings son transformaciones que aplican soluciones documentadas para resolver esos problemas. Como prueba de concepto se implementó Kobold: una herramienta capaz de realizar todo lo que se propone en este trabajo. La herramienta funciona como un servicio (SaaS – Software as a Service), y no requiere de casi ningún esfuerzo de instalación. Al incorporar Kobold en una aplicación web, se comienza a capturar la interacción de los usuarios, y los reportes de problemas se muestran apenas un número suficiente de usuarios se topa con los mismos. Como los usability smells son problemas bien descritos, pueden ser interpretados por cualquier desarrollador, aunque no tenga experiencia en usabilidad. De la misma forma, los refactorings que se sugieren como solución pueden ser aplicados automáticamente y en producción, gracias a la implementación de refactorings del lado del cliente, que permiten alterar la aplicación sin modificar su código. De esta manera, Kobold se presenta como una herramienta que puede resultar de utilidad tanto para desarrolladores como para expertos en usabilidad. En resumen, lo que se quiere obtener con Kobold es, como mínimo, una herramienta confiable que con un mínimo esfuerzo de configuración pueda rápidamente comenzar a brindar asesoramiento sobre usabilidad en aplicaciones que ya se encuentran corriendo en producción, y que pueda ser configurada para detectar diferentes tipos de problemas. La audiencia para esta herramienta sería de desarrolladores con experiencia en usabilidad, que quisieran tener un panorama rápido de las interacciones reales que realiza la masa de usuario, y probablemente reparar rápidamente algunos de estos problemas del lado del cliente. Más aun, esto allanaría el camino para conseguir un objetivo más ambicioso: un mecanismo confiable que permita la auto-reparación de aplicaciones web, que incluso los desarrolladores sin experiencia en usabilidad puedan utilizar para corregir los usability smells en sus aplicaciones. El trabajo presentado incluye validaciones empíricas que comprueban la factibilidad del enfoque y su implementación en todas las etapas: captura de eventos de interacción, detección de usability smells y aplicación de usability refactorings.
author2 Garrido, Alejandra
author_facet Garrido, Alejandra
Grigera, Julián
format Tesis
Tesis de doctorado
author Grigera, Julián
author_sort Grigera, Julián
title Self-Refactoring: mejoras automáticas de usabilidad para aplicaciones web
title_short Self-Refactoring: mejoras automáticas de usabilidad para aplicaciones web
title_full Self-Refactoring: mejoras automáticas de usabilidad para aplicaciones web
title_fullStr Self-Refactoring: mejoras automáticas de usabilidad para aplicaciones web
title_full_unstemmed Self-Refactoring: mejoras automáticas de usabilidad para aplicaciones web
title_sort self-refactoring: mejoras automáticas de usabilidad para aplicaciones web
publishDate 2018
url http://sedici.unlp.edu.ar/handle/10915/65403
https://doi.org/10.35537/10915/65403
work_keys_str_mv AT grigerajulian selfrefactoringmejorasautomaticasdeusabilidadparaaplicacionesweb
bdutipo_str Repositorios
_version_ 1764820480574881792