Usabilidad en desarrollo
       de software



               Constanza Prieto Y.
                Noviembre, 2001
Motivación
 “La productividad y agrado de los usuarios
      se relaciona directamente con la
    usabilidad del software que utilizan.”

⇒ La usabilidad es un aspecto clave del
 éxito de productos de software
⇒ La usabilidad no es un lujo, sino un
 ingrediente básico que se debe considerar
 en los sistemas de software.
Definición

Usuarios                 Efectividad
Objetivos   Software     Eficiencia
Contexto                 Satisfacción




            Usabilidad
Definición
Usabilidad => alcanzar cierto nivel en atributos:
 Aprendizaje: facilidad para aprender la funcionalidad
  del sistema.
 Eficiencia: número de tareas por unidad de tiempo.
 Retención de usuarios: facilidad de recordar cómo
  funciona el sistema, después de un tiempo sin usarlo.
 Rango de error: número de errores que el usuario
  comete mientras ejecuta una tarea (debe ser bajo).
 Satisfacción: impresión subjetiva (del usuario) del
  sistema.
Situación Actual
 Los  equipos de desarrollo piensan que pueden
  diseñar el sistema y luego el “equipo de
  usabilidad” lo hará usable
 El testeo de usabilidad se ve similar a otros tipos
  de testeo de calidad de software
 Frecuentemente, las técnicas de usabilidad se
  aplican tarde en el proceso de desarrollo.

⇒ Problemas   de usabilidad son costosos
Solución…
“Proceso de usabilidad” a través de todo el
  proceso de desarrollo de software.

Ayuda a los diseñadores a responder preguntas
  en la fase de análisis:
   ¿Quiénes son los usuarios del sistema?
   ¿Qué objetivos tienen?
   ¿Cómo debe ser el sistema para ayudarles a cumplir sus
    objetivos?
   ¿Cómo debe el sistema proveer lo que ellos necesitan?


…Y apoya el diseño en la siguiente fase
El proceso de Usabilidad


Análisis de   Análisis de        Benchmk.     Diseño                 Diseño
usuario       Tareas             Usabilidad   conceptual             Visual


                        evaluación                     evaluación             evaluación



                                                           Fase de
                                                           Diseño



          Fase de Análisis                         Fase de Diseño
Fase de Análisis de Usabilidad
 Análisis de Usuario
     Visitas a terreno, focus group, encuestas.
     ⇒ Registrar, estructurar y organizar las conclusiones.


 Análisis de Tareas
     Tarea: Actividad significativa para el usuario.
     Se analizan para conducir el diseño de la UI.
     Se priorizan por importancia y frecuencia
     ⇒ Punto de partida para desarrollar el sistema.
     ⇒ Evaluación del conjunto de tareas descubiertas, con
       colaboración de los usuarios.

 Benchmarks de Usabilidad
     Medición cuantitativa de la usabilidad.
     Basados en los atributos básicos de Usabilidad.
Fase de Diseño de Usabilidad
 Diseño   Conceptual
    Definir interacciones básicas usuario-sistema.
    Definir objetos en la UI.
    Entregar prototipos en papel y
    especificación para describir el comportamiento de la UI
    ⇒ Definir fundamentos para el sistema completo
    ⇒ Fase más crucial en el proceso



 Diseño   Visual
    Definir apariencia de la UI.
    Entregar prototipos para ser probados y especificación
    exacta de la apariencia de la UI.
Evaluación de Usabilidad
Actividad central en el proceso de usabilidad.

 Testeo   de Usabilidad
   Decidir quiénes participarán en el test
   Diseñar las tareas de prueba
   Realizar pruebas de usabilidad en un
    laboratorio, con un grupo de usuarios reales.
   Registrar los resultados para análisis posterior.
Evaluación de Usabilidad (cont.)
 “Pensar   en voz alta”
   Recolectarcomentarios del participante
   Puede revelar problemas ocultos


 Evaluación   Heurística
   Un experto realiza su crítica del sistema
   Sugiere modificaciones más aplicables y
    precisas que los usuarios finales
   No reemplaza al testeo de usabilidad
Evaluación de Usabilidad (cont.)
 Inspección    colaborativa de usabilidad
   Realizada  por un equipo de desarrolladores,
    usuarios finales, expertos en aplicaciones y
    especialistas en usabilidad.
   Se examina el sistema desde el punto de
    vista del usuario final.
   Menos costosa y más rápida que el testeo de
    usabilidad.
   Revela más defectos que el testeo de
    usabilidad
Caso: Shared Medical Systems
 Crea  software clínico, financiero y
  administrativo para la industria de la
  salud.
 Se reconoce la necesidad de mejorar la
  satisfacción del cliente.
 Se ve que la introducción de prácticas de
  usabilidad es la principal forma de lograr
  su objetivo.
¿Cómo lo hicieron?
 1er paso para integrar usabilidad dentro de
  la compañía:
  Alcanzar un alto nivel de acuerdo acerca
  de los procesos esenciales:
       Proceso de definición de requisitos
        Creación  de conceptos (plan de negocios)
        Obtención de requisitos (visitas a terreno)
        Análisis de requisitos (se definen objetivos de
         usabilidad)
        Diseño de la visión del producto
¿Cómo lo hicieron? (cont.)
       Procesos de diseño y ejecución
        Diseño de la interfaz de usuario
        Modelación del sistema – análisis y diseño
        Implementación del diseño de UI
        Transición del proyecto y apoyo al ambiente del
         producto.
 2dopaso: Usar proyectos estratégicos para
  incorporar las principales técnicas de
  usabilidad.
Conclusiones de SMS
 Losequipos de trabajo necesitan
 enfocarse en las etapas tempranas del
 proceso en:
    Refinar los perfiles de usuarios del producto
    Priorizar las visitas a terreno (obtener requisitos de
     funcionalidad y usabilidad)
    Tener ingenieros de usabilidad (proveer
     interpretación profunda y estructurada de los datos
     obtenidos en las visitas a terreno)
    Construir el proyecto de software y proveer guías
     para el resto del proceso.
Conclusiones de SMS
 Los  diseñadores de UI deben conocer los
  principios de usabilidad y emplearlos en sus
  trabajos.
 El testeo de usabilidad debe llevarse a cabo
  durante las primeras etapas del diseño.
 Al enfocarse en el usuario temprano en el
  proceso se mejora la calidad del producto y se
  elimina el re-trabajo.
⇒ Escuchar la voz del usuario temprano en el
  proceso
En síntesis
 La  usabilidad se debe considerar como un
  atributo más de calidad del software.
 Integrar usabilidad dentro del proceso de
  desarrollo de software no es fácil.
 El costo de introducir conceptos de usabilidad
  se justifica:
   Reduce  tiempos de desarrollo
   Incrementa las ventas
   Mejora la productividad del usuario
   Reduce costos de soporte y mantención
Referencias
Artículos de la revista Software de la IEEE,
  Enero/Febrero 2001

 “Introducing       Usability”
   Natalia Juristo, Helmut Windl, Larry Constantine.
 “Usability Basics         for Software Developers”
   Javier Ferré y Natalia Juristo, Helmut Windl, Larry Constantine.
 “Integrating
            Usability Techniques into Software
  Development”
  Jean Anderson, Francie Fleek, Kathi Garrity y Fred Drake.

Constanzaprieto

  • 1.
    Usabilidad en desarrollo de software Constanza Prieto Y. Noviembre, 2001
  • 2.
    Motivación “La productividady agrado de los usuarios se relaciona directamente con la usabilidad del software que utilizan.” ⇒ La usabilidad es un aspecto clave del éxito de productos de software ⇒ La usabilidad no es un lujo, sino un ingrediente básico que se debe considerar en los sistemas de software.
  • 3.
    Definición Usuarios Efectividad Objetivos Software Eficiencia Contexto Satisfacción Usabilidad
  • 4.
    Definición Usabilidad => alcanzarcierto nivel en atributos:  Aprendizaje: facilidad para aprender la funcionalidad del sistema.  Eficiencia: número de tareas por unidad de tiempo.  Retención de usuarios: facilidad de recordar cómo funciona el sistema, después de un tiempo sin usarlo.  Rango de error: número de errores que el usuario comete mientras ejecuta una tarea (debe ser bajo).  Satisfacción: impresión subjetiva (del usuario) del sistema.
  • 5.
    Situación Actual  Los equipos de desarrollo piensan que pueden diseñar el sistema y luego el “equipo de usabilidad” lo hará usable  El testeo de usabilidad se ve similar a otros tipos de testeo de calidad de software  Frecuentemente, las técnicas de usabilidad se aplican tarde en el proceso de desarrollo. ⇒ Problemas de usabilidad son costosos
  • 6.
    Solución… “Proceso de usabilidad”a través de todo el proceso de desarrollo de software. Ayuda a los diseñadores a responder preguntas en la fase de análisis:  ¿Quiénes son los usuarios del sistema?  ¿Qué objetivos tienen?  ¿Cómo debe ser el sistema para ayudarles a cumplir sus objetivos?  ¿Cómo debe el sistema proveer lo que ellos necesitan? …Y apoya el diseño en la siguiente fase
  • 7.
    El proceso deUsabilidad Análisis de Análisis de Benchmk. Diseño Diseño usuario Tareas Usabilidad conceptual Visual evaluación evaluación evaluación Fase de Diseño Fase de Análisis Fase de Diseño
  • 8.
    Fase de Análisisde Usabilidad  Análisis de Usuario Visitas a terreno, focus group, encuestas. ⇒ Registrar, estructurar y organizar las conclusiones.  Análisis de Tareas Tarea: Actividad significativa para el usuario. Se analizan para conducir el diseño de la UI. Se priorizan por importancia y frecuencia ⇒ Punto de partida para desarrollar el sistema. ⇒ Evaluación del conjunto de tareas descubiertas, con colaboración de los usuarios.  Benchmarks de Usabilidad Medición cuantitativa de la usabilidad. Basados en los atributos básicos de Usabilidad.
  • 9.
    Fase de Diseñode Usabilidad  Diseño Conceptual Definir interacciones básicas usuario-sistema. Definir objetos en la UI. Entregar prototipos en papel y especificación para describir el comportamiento de la UI ⇒ Definir fundamentos para el sistema completo ⇒ Fase más crucial en el proceso  Diseño Visual Definir apariencia de la UI. Entregar prototipos para ser probados y especificación exacta de la apariencia de la UI.
  • 10.
    Evaluación de Usabilidad Actividadcentral en el proceso de usabilidad.  Testeo de Usabilidad  Decidir quiénes participarán en el test  Diseñar las tareas de prueba  Realizar pruebas de usabilidad en un laboratorio, con un grupo de usuarios reales.  Registrar los resultados para análisis posterior.
  • 11.
    Evaluación de Usabilidad(cont.)  “Pensar en voz alta”  Recolectarcomentarios del participante  Puede revelar problemas ocultos  Evaluación Heurística  Un experto realiza su crítica del sistema  Sugiere modificaciones más aplicables y precisas que los usuarios finales  No reemplaza al testeo de usabilidad
  • 12.
    Evaluación de Usabilidad(cont.)  Inspección colaborativa de usabilidad  Realizada por un equipo de desarrolladores, usuarios finales, expertos en aplicaciones y especialistas en usabilidad.  Se examina el sistema desde el punto de vista del usuario final.  Menos costosa y más rápida que el testeo de usabilidad.  Revela más defectos que el testeo de usabilidad
  • 13.
    Caso: Shared MedicalSystems  Crea software clínico, financiero y administrativo para la industria de la salud.  Se reconoce la necesidad de mejorar la satisfacción del cliente.  Se ve que la introducción de prácticas de usabilidad es la principal forma de lograr su objetivo.
  • 14.
    ¿Cómo lo hicieron? 1er paso para integrar usabilidad dentro de la compañía: Alcanzar un alto nivel de acuerdo acerca de los procesos esenciales:  Proceso de definición de requisitos Creación de conceptos (plan de negocios) Obtención de requisitos (visitas a terreno) Análisis de requisitos (se definen objetivos de usabilidad) Diseño de la visión del producto
  • 15.
    ¿Cómo lo hicieron?(cont.)  Procesos de diseño y ejecución Diseño de la interfaz de usuario Modelación del sistema – análisis y diseño Implementación del diseño de UI Transición del proyecto y apoyo al ambiente del producto.  2dopaso: Usar proyectos estratégicos para incorporar las principales técnicas de usabilidad.
  • 16.
    Conclusiones de SMS Losequipos de trabajo necesitan enfocarse en las etapas tempranas del proceso en: Refinar los perfiles de usuarios del producto Priorizar las visitas a terreno (obtener requisitos de funcionalidad y usabilidad) Tener ingenieros de usabilidad (proveer interpretación profunda y estructurada de los datos obtenidos en las visitas a terreno) Construir el proyecto de software y proveer guías para el resto del proceso.
  • 17.
    Conclusiones de SMS Los diseñadores de UI deben conocer los principios de usabilidad y emplearlos en sus trabajos.  El testeo de usabilidad debe llevarse a cabo durante las primeras etapas del diseño.  Al enfocarse en el usuario temprano en el proceso se mejora la calidad del producto y se elimina el re-trabajo. ⇒ Escuchar la voz del usuario temprano en el proceso
  • 18.
    En síntesis  La usabilidad se debe considerar como un atributo más de calidad del software.  Integrar usabilidad dentro del proceso de desarrollo de software no es fácil.  El costo de introducir conceptos de usabilidad se justifica:  Reduce tiempos de desarrollo  Incrementa las ventas  Mejora la productividad del usuario  Reduce costos de soporte y mantención
  • 19.
    Referencias Artículos de larevista Software de la IEEE, Enero/Febrero 2001  “Introducing Usability” Natalia Juristo, Helmut Windl, Larry Constantine.  “Usability Basics for Software Developers” Javier Ferré y Natalia Juristo, Helmut Windl, Larry Constantine.  “Integrating Usability Techniques into Software Development” Jean Anderson, Francie Fleek, Kathi Garrity y Fred Drake.