Integración de Diseño Centrado en el Usuario y metodologías ágiles en el desarrollo móvil

Post on 13-Jun-2015

371 views 0 download

description

7a Jornada de Informática Cómputo Móvil Universidad de la Sierra Sur 22 de mayo de 2014 Oaxaca, México En esta presentación se analiza las similitudes y diferencias entre Diseño Centrado en el Usuario y las metodologías ágiles, se presentan algunas de las estrategias existentes en la industria que integran ambos enfoques para lograr una mejor experiencia de uso en el desarrollo móvil.

Transcript of Integración de Diseño Centrado en el Usuario y metodologías ágiles en el desarrollo móvil

7ª Jornada de Informática Cómputo Móvil

Universidad de la Sierra Sur 22 de mayo · 2014

Diseño Centrado en el Usuario y metodologías ágiles

Integración de

en el desarrollo móvil

Hola :)Víctor Manuel García Luna

@idvicman

Diseño Centrado en el Usuario y metodologías ágiles

Integración de

en el desarrollo móvil

Diseño Centrado en el Usuario

Ella es

metodologías ágiles

Él es

Diseño Centrado en el UsuarioConceptos mínimos

¿Qué es UCD?“Un enfoque para el diseño y desarrollo de sistemas que tiene como objetivo hacer sistemas interactivos más usables, centrándose en el uso del sistema y aplicando factores humanos/ergonomía y los conocimientos y técnicas de usabilidad”.

ISO 92441-210, Human Centered Design for Interactive Systems

Principios1. El diseño está basado en una comprensión

explícita de usuarios, tareas y entornos. 2. Los usuarios están involucrados durante el diseño y

el desarrollo. 3. El diseño está dirigido y refinado por evaluaciones

centradas en usuarios. 4. El proceso es iterativo. 5. El diseño está dirigido a toda la experiencia del

usuario. 6. El equipo de diseño incluye habilidades y

perspectivas multidisciplinares.

ISO 92441-210, Human Centered Design for Interactive Systems

Proceso iterativo• Entender y especificar el contexto de uso. • Especificar las necesidades de los usuarios. • Producir soluciones de diseño para satisfacer

las necesidades de los usuarios. • Evaluar los diseños en cuanto a

requerimientos.

ISO 92441-210, Human Centered Design for Interactive Systems

Diseño Centrado en el Usuario.

Metodologías ágilesConceptos mínimos

¿Qué son las metodologías ágiles?

• Individuos e interacciones sobre procesos y herramientas

• Software funcionando sobre documentación extensiva

• Colaboración con el cliente sobre negociación contractual

• Respuesta ante el cambio sobre seguir un plan

Manifesto for Agile Software Development

Principios

• Nuestra mayor prioridad es satisfacer al cliente mediante la entrega temprana y continua de software con valor.

• Aceptamos que los requisitos cambien, incluso en etapas tardías del desarrollo. Los procesos Ágiles aprovechan el cambio para proporcionar ventaja competitiva al cliente.

• Entregamos software funcional frecuentemente, entre dos semanas y dos meses, con preferencia al periodo de tiempo más corto posible.

Principios

• Los responsables de negocio y los desarrolladores trabajamos juntos de forma cotidiana durante todo el proyecto.

• Los proyectos se desarrollan en torno a individuos motivados. Hay que darles el entorno y el apoyo que necesitan, y confiarles la ejecución del trabajo.

• El método más eficiente y efectivo de comunicar información al equipo de desarrollo y entre sus miembros es la conversación cara a cara.

Principios

• El software funcionando es la medida principal de progreso.

• Los procesos Ágiles promueven el desarrollo sostenible. Los promotores, desarrolladores y usuarios debemos ser capaces de mantener un ritmo constante de forma indefinida.

• La atención continua a la excelencia técnica y al buen diseño mejora la Agilidad.

• La simplicidad, o el arte de maximizar la cantidad de trabajo no realizado, es esencial.

Principios

• Las mejores arquitecturas, requisitos y diseños emergen de equipos auto-organizados.

• A intervalos regulares el equipo reflexiona sobre cómo ser más efectivo para a continuación ajustar y perfeccionar su comportamiento en consecuencia.

Manifesto for Agile Software Development

Ejemplos de metodologías ágiles

• eXtreme Programming (XP) • Lean Software Development • Adaptive Software Development • Crystal • Dynamic System Development Methodology

(DSDM) • Scrum

Scrum

• Es un marco de trabajo por el cual las personas pueden acometer problemas complejos adaptativos, a la vez que entrega productos del máximo valor posible productiva y creativamente.

Proceso iterativo en Scrum

• El marco de trabajo Scrum consiste en: equipos Scrum, roles, eventos, artefactos y reglas; además, es posible incorporar diversas técnicas y procesos.

• El equipo Scrum consiste en un Dueño del Producto (Product Owner), el Equipo de Desarrollo (Development Team) y un Scrum Master.

• El bloque de tiempo base es el Sprint. Durante un Sprint se crea un incremento de producto “terminado”.

Scrum.

Diseño Centrado en el Usuario y metodologías ágiles

¿En qué se parecen?

¿en qué son diferentes?

La principal diferencia estriba en que los métodos ágiles se esfuerzan por ofrecer pequeños conjuntos de funciones de software a los clientes lo más rápido posible en iteraciones cortas.

Diseño Centrado en el Usuario invierte considerable tiempo y esfuerzo en la investigación y análisis de los usuarios y su contexto antes de comenzar el desarrollo.

VS

Diseño Centrado en el Usuario y metodologías ágiles

Entonces…

¿no son compatibles?

¿y la Experiencia de Usuario? Pero…

¿Qué es Experiencia de Usuario?“Inventé el término porque pensé que interfaz y usabilidad eran demasiado limitados. Quise cubrir todos los aspectos de la experiencia de una persona con un sistema, incluyendo el diseño industrial, gráficos, la interfaz, la interacción física…”.

Don Norman

Diseño Centrado en el Usuario y metodologías ágiles

Entonces…

¿son el uno para el otro?

En los últimos años, se han realizado esfuerzos considerables por integrar UCD a métodos ágiles. Esta integración es deseable debido a que, a pesar de su naturaleza aparentemente opuesta, ambos enfoques comparten el objetivo intrínseco de buscar una mejor experiencia de uso. Para lograr esta integración, es necesario identificar las similitudes y diferencias entre ambos enfoques, para así, lograr mayores beneficios para el desarrollo del producto.

Similitudes

• Se basan en un proceso de desarrollo iterativo, construyendo información empírica a partir de ciclos anteriores.

• Las técnicas ágiles también ponen énfasis en el usuario, fomentando su participación en todo el proceso de desarrollo.

• Ambos enfoques hacen hincapié en la importancia de la conjunción del equipo.

• Los métodos ágiles buscan mínima documentación, mientras que UCD lo considera importante.

• UCD alienta al equipo a entender a sus usuarios, tanto como sea posible, antes de que comience la construcción de productos, mientras que los métodos ágiles se oponen, en cierta forma, a considerar largos periodos de tiempo al frente de la investigación, a expensas de aprovechar al máximo la escritura de código.

Diferencias

Diseño Centrado en el Usuario y metodologías ágiles

Cómo integrar

y no morir en el intento

En este esquema, la vida útil del proyecto se divide en tres fases de alto nivel que capturan la transición entre estrategia

(UCD) y táctica (métodos ágiles).

Esquema de integración de UCD en ciclos de desarrollo ágil propuesto por Nielsen.

Esquema del desarrollo en vías en paralelo, una de diseño de interacción y otra de desarrollo.

Implementación de una iteración (otras iteraciones no son presentadas) + correspondientes tareas de UCD, acorde al

esquema Doble Paralelo de Miller-Sy.

Integración esquema Miller-Sy en Scrum.

Diseño Centrado en el Usuario y metodologías ágiles lecciones aprendidas

Lo importante no es si Diseño Centrado en el Usuario necesita de metodologías ágiles

o si metodologías ágiles necesitan de Diseño Centrado en el Usuario

Lo importante es lograr experiencias de usuario memorables

Gracias :)Víctor Manuel García Luna

@idvicman