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

Autores
Grigera, Julián
Año de publicación
2018
Idioma
español castellano
Tipo de recurso
tesis doctoral
Estado
versión aceptada
Colaborador/a o director/a de tesis
Garrido, Alejandra
Descripción
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.
Doctor en Ciencias Informáticas
Universidad Nacional de La Plata
Facultad de Informática
Materia
Ciencias Informáticas
usabilidad
refactoring, web usability, log analysis
Nivel de accesibilidad
acceso abierto
Condiciones de uso
http://creativecommons.org/licenses/by/4.0/
Repositorio
SEDICI (UNLP)
Institución
Universidad Nacional de La Plata
OAI Identificador
oai:sedici.unlp.edu.ar:10915/65403

id SEDICI_d13e75d115654a48182fcd88d239bd1b
oai_identifier_str oai:sedici.unlp.edu.ar:10915/65403
network_acronym_str SEDICI
repository_id_str 1329
network_name_str SEDICI (UNLP)
spelling Self-Refactoring: mejoras automáticas de usabilidad para aplicaciones webGrigera, JuliánCiencias Informáticasusabilidadrefactoring, web usability, log analysisLa 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.Doctor en Ciencias InformáticasUniversidad Nacional de La PlataFacultad de InformáticaGarrido, Alejandra2018-03-07info:eu-repo/semantics/doctoralThesisinfo:eu-repo/semantics/acceptedVersionTesis de doctoradohttp://purl.org/coar/resource_type/c_db06info:ar-repo/semantics/tesisDoctoralapplication/pdfhttp://sedici.unlp.edu.ar/handle/10915/65403https://doi.org/10.35537/10915/65403spainfo:eu-repo/semantics/openAccesshttp://creativecommons.org/licenses/by/4.0/Creative Commons Attribution 4.0 International (CC BY 4.0)reponame:SEDICI (UNLP)instname:Universidad Nacional de La Platainstacron:UNLP2025-09-03T10:41:36Zoai:sedici.unlp.edu.ar:10915/65403Institucionalhttp://sedici.unlp.edu.ar/Universidad públicaNo correspondehttp://sedici.unlp.edu.ar/oai/snrdalira@sedici.unlp.edu.arArgentinaNo correspondeNo correspondeNo correspondeopendoar:13292025-09-03 10:41:36.763SEDICI (UNLP) - Universidad Nacional de La Platafalse
dc.title.none.fl_str_mv Self-Refactoring: mejoras automáticas de usabilidad para aplicaciones web
title Self-Refactoring: mejoras automáticas de usabilidad para aplicaciones web
spellingShingle Self-Refactoring: mejoras automáticas de usabilidad para aplicaciones web
Grigera, Julián
Ciencias Informáticas
usabilidad
refactoring, web usability, log analysis
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
dc.creator.none.fl_str_mv Grigera, Julián
author Grigera, Julián
author_facet Grigera, Julián
author_role author
dc.contributor.none.fl_str_mv Garrido, Alejandra
dc.subject.none.fl_str_mv Ciencias Informáticas
usabilidad
refactoring, web usability, log analysis
topic Ciencias Informáticas
usabilidad
refactoring, web usability, log analysis
dc.description.none.fl_txt_mv 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.
Doctor en Ciencias Informáticas
Universidad Nacional de La Plata
Facultad de Informática
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.
publishDate 2018
dc.date.none.fl_str_mv 2018-03-07
dc.type.none.fl_str_mv info:eu-repo/semantics/doctoralThesis
info:eu-repo/semantics/acceptedVersion
Tesis de doctorado
http://purl.org/coar/resource_type/c_db06
info:ar-repo/semantics/tesisDoctoral
format doctoralThesis
status_str acceptedVersion
dc.identifier.none.fl_str_mv http://sedici.unlp.edu.ar/handle/10915/65403
https://doi.org/10.35537/10915/65403
url http://sedici.unlp.edu.ar/handle/10915/65403
https://doi.org/10.35537/10915/65403
dc.language.none.fl_str_mv spa
language spa
dc.rights.none.fl_str_mv info:eu-repo/semantics/openAccess
http://creativecommons.org/licenses/by/4.0/
Creative Commons Attribution 4.0 International (CC BY 4.0)
eu_rights_str_mv openAccess
rights_invalid_str_mv http://creativecommons.org/licenses/by/4.0/
Creative Commons Attribution 4.0 International (CC BY 4.0)
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:SEDICI (UNLP)
instname:Universidad Nacional de La Plata
instacron:UNLP
reponame_str SEDICI (UNLP)
collection SEDICI (UNLP)
instname_str Universidad Nacional de La Plata
instacron_str UNLP
institution UNLP
repository.name.fl_str_mv SEDICI (UNLP) - Universidad Nacional de La Plata
repository.mail.fl_str_mv alira@sedici.unlp.edu.ar
_version_ 1842260282668220416
score 13.13397