Historias de usuario. Sesión 7a. Metodologías Ágiles de Desarrollo de Software Domingo Gallardo, DCCIA, Univ. Alicante

Historias de usuario Sesión 7a Metodologías Ágiles de Desarrollo de Software
 Domingo Gallardo, DCCIA, Univ. Alicante Historias de usuario • La fo

5 downloads 60 Views 3MB Size

Story Transcript

Historias de usuario Sesión 7a

Metodologías Ágiles de Desarrollo de Software
 Domingo Gallardo, DCCIA, Univ. Alicante

Historias de usuario •

La forma “ágil” de definir funcionalidades de 
 la aplicación



Resaltan el punto de vista funcional y del usuario
 final



Se escriben en forma de ficha y contienen 
 tres elementos principales:



Descripción escrita de la historia, usada 
 para planificación y como recordatorio



Conversaciones sobre la historia que 
 sirven para refrescar los detalles



Pruebas de aceptación que definen 
 los detalles y se utilizan para determinar 
 cuando la historia está completa

Metodologías Ágiles de Desarrollo de Software
 Domingo Gallardo, DCCIA, Univ. Alicante

2

Las 3 Cs de Ron Jeffries

Metodologías Ágiles de Desarrollo de Software
 Domingo Gallardo, DCCIA, Univ. Alicante

3

Formato de la historia Título: Generar el PDF del expediente

Como estudiante

quiero generar un PDF con mi expediente

para guardar un resumen de mi expediente y poder entregarlo a quien me lo pida



Como 
 quiero 
 para

Una historia no se resuelve con

un método de un API.

Debemos implementar todos sus

aspectos: interfaz de usuario,

código de cliente, servidor, base

de datos, etc.


Metodologías Ágiles de Desarrollo de Software
 Domingo Gallardo, DCCIA, Univ. Alicante

4

¿Dónde están los detalles? • En la historia de usuario anterior hay muchos elementos desconocidos:

• ¿Qué habrá en el expediente? ¿Se incluye alguna cabecera con los datos de la universidad? ¿Deben aparecer los datos personales del estudiante? ¿Qué asignaturas aparecerán, sólo las aprobadas o también las suspendidas? ¿En qué orden?

• ¿La información del expediente es configurable?

• ¿Qué formato se debe dar al listado?

• ¿Tiene que validarse el expediente con alguna firma digital?

• Estos elementos deben descubrirse en la conversación originada por la historia

• Pueden anotarse en la parte de detrás de la ficha (dos o tres frases como mucho)

• Los detalles adicionales se deben definir como tests

Metodologías Ágiles de Desarrollo de Software
 Domingo Gallardo, DCCIA, Univ. Alicante

5

Descomponiendo historias •

Una historia típica debe poder terminarse y testearse entre medio día y un par de semanas como máximo por un o dos programadores (Cohn: User Stories Applied)

• • • •

Una historia grande se suele denominar épica (epic)

Debemos descomponerla en historias más pequeñas

En el backlog del sprint (o tablero Kanban), la historia se descompone en ítems de trabajo (que pueden referirse a detalles técnicos)

Veremos la técnica del mapa de historias de usuarios (user story mapping) de Jeff Patton que permite analizar en amplitud y profundidad todas las historias de usuario de un proyecto

Metodologías Ágiles de Desarrollo de Software
 Domingo Gallardo, DCCIA, Univ. Alicante

6

Descomponiendo historias •

1

© Henrik Kniberg Metodologías Ágiles de Desarrollo de Software
 Domingo Gallardo, DCCIA, Univ. Alicante

7

INVEST •

Una buena historia tiene que tener seis atributos:



Independiente: dependencias entre las historias
 crean problemas de priorización y estimación

Independent

Negotiable

Valuable

Estimable

Small

Testable Acrónimo creado por Bill Wake
 www.xp123.com



Negociable: no son contratos, son recordatorios
 de conversaciones

• •

Valiosa: las historias deben ser valiosas para los que pagan el software



Pequeña: para poder estimarse correctamente, es recomendable que la historia sea pequeña; hay que dividir las épicas



Testable: las historias deben ser probadas y los tests deben poder ser automatizados

Estimable: el tamaño de la historia debe poder ser estimado, aunque sea de forma gruesa

Metodologías Ágiles de Desarrollo de Software
 Domingo Gallardo, DCCIA, Univ. Alicante

8

Roles de usuario •

Es muy importante identificar los distintos tipos de roles que pueden acceder a la aplicación

• • • • •

Realizar un brainstorming rápido para buscar un conjunto inicial de roles

Organizar el conjunto de roles

Consolidar los roles

Refinar los roles

Personas: representación imaginaria de una 
 persona de cada uno de los roles



Mike – 35 años, 1 hijo Tom, entrena al equipo 
 de béisbol de su hijo, muy ocupado



John – abuelo jubilado, experiencia limitada 
 con ordenadores, ayuda en la educación 
 de su nieto



Linda – 28 años, muy activa en el trabajo, 
 el tiempo libre lo dedica al deporte Metodologías Ágiles de Desarrollo de Software
 Domingo Gallardo, DCCIA, Univ. Alicante

9

El backlog del producto debe estar balanceado

© Henrik Kniberg Metodologías Ágiles de Desarrollo de Software
 10 Domingo Gallardo, DCCIA, Univ. Alicante

Mapas de historias de usuario • •

Técnica propuesta por Jeff Patton



El resultado final es muy similar a un storyboard de cine

Workshop de discusión con clientes finales en el que se van descubriendo las historias y se agrupan y ordenan para contar una historia con distintos niveles de prioridad

Metodologías Ágiles de Desarrollo de Software
 11 Domingo Gallardo, DCCIA, Univ. Alicante

Storyboards en el cine

Metodologías Ágiles de Desarrollo de Software
 12 Domingo Gallardo, DCCIA, Univ. Alicante

Storyboards en el cine

The purpose of Storyboarding (You Tube) Metodologías Ágiles de Desarrollo de Software
 13 Domingo Gallardo, DCCIA, Univ. Alicante

El propósito de un storyboard •



Los storyboards se usan en el cine para:

• •

Desarrollar, discutir y probar la historia (Disney, Pixar, ...)



Estimar el coste de la producción

Medio de comunicación entre los distintos equipos (cámaras, iluminación, sonido, escenografía, localización, etc.), para ayudar a visualizar escenas

Se realizan a partir de otro modelo más impreciso todavía: el guión

Metodologías Ágiles de Desarrollo de Software
 14 Domingo Gallardo, DCCIA, Univ. Alicante

Bocetos y protipos de baja fidelidad • • • •

Mockups de pantallas e interfaces de usuario

Permiten mostrar a bajo coste el aspecto del producto final

Se usan también storyboards donde se explica los distintos pasos de la aplicación

Se pueden hacer con tijeras y papel o con aplicaciones (por ejemplo, balsamic)

Metodologías Ágiles de Desarrollo de Software
 15 Domingo Gallardo, DCCIA, Univ. Alicante

Prototipos de papel (paper prototyping)

Metodologías Ágiles de Desarrollo de Software
 16 Domingo Gallardo, DCCIA, Univ. Alicante

Ejercicio práctico 1. Vemos las transparencias de Jeff Patton sobre mapas de historias de usuario

2. Hacemos 4 equipos de 6 personas (1 portavoz)

3. 30’ para hacer el mapa del proyecto
 “Aplicación web para la Escuela Infantil Natura”

4. 5’ cada equipo para poner en común los resultados

Metodologías Ágiles de Desarrollo de Software
 17 Domingo Gallardo, DCCIA, Univ. Alicante

Lecturas •

Jeff Patton - The new user story is a map



Jeff Patton - It’s all in how you slice it

Metodologías Ágiles de Desarrollo de Software
 18 Domingo Gallardo, DCCIA, Univ. Alicante

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.