Algos Blog

En nuestro proyecto estamos usando metodología ágil para su desarrollo.  Una de las piezas claves en la metodología ágil es definir las funciones que deberá tener la aplicación a través de las historias de usuario.  Vamos a explicar en este post algunos aspectos sobre este tema.

Diferencia entre historias de usuario y casos de uso

En el blog de David Bonilla encontramos una buena comparación entre casos de uso y historias de usuario que podeis ver en la imagen que acompaña el post.


Las historias de usuario se escriben generalmente en una tarjeta, con una determinada estructura y son un acuerdo flexible entre el dueño del producto, y el equipo de desarrollo.

¿Cómo debe ser una buena historia de usuario?

Como explica en el siguiente documento: Effective User Stories for Agile Requirement, una buena historia de usuario debe de cumplir la regla INVEST (invertir):

Independiente: Las dependencias llevan a problemas de estimación y priorización. La independencia hace que se pueda idealmente repartir mejor el trabajo.

Negociable: Las historias no son contratos. Son flexibles.

Valorable: El valor lo ponen los usuarios o compradores del software, nunca los desarrolladores.

Estimable: Se debería poder estimar bien el tiempo de producción.

Size appropriately (de tamaño apropiado):  No pueden ser complejas, ni largas, ni pueden ser a su vez una composición de historias de usuario.

Testeable: Las historias se deben poder probar.

Ejemplo de una historia de usuario

Un ejemplo de tarjeta con una historia de usuario que actualmente estamos desarrollando es la siguiente:

ID:20                          

Visualiza Lecciones

COMO usuario QUIERO ver la lista de lecciones desbloqueadas por el tratamiento, con el nombre de la lección, ordenadas por la fecha en la que ido apareciendo, y si esa lección es nueva que aparezca destacada PARA poder acceder a ellas.

ESTIMACIÓN: 5       

PRIORIDAD: 100                                                                        

MÓDULO: Lecciones

En nuestra aplicación habrá definido una seria de lecciones sobre el manejo del dolor infantil, y hay una historia de usuario para definir la funcionalidad de listarlas.  En la parte de detrás de la tarjeta aparece la descomposición en tareas necesarias para realizar dicho listado:

Definir la lista de lecciones en un fichero JSO.

Desarrollar un modelo para las lecciones.

Desarrollar un proxy para leer las lecciones del fichero JSON.

Desarrollar la vista que cargue la lista de lecciones.

Desarrollar un controlador que maneje las acciones de la vista: seleccionar elemento y cargar datos.

Links de interés

En el siguiente post veremos los puntos importantes para definir historias de usuario, y algunas herramientas para trabajar con ellas en función de la metodología ágil que escojamos. Os dejo un par de links interesantes que hablan sobre el tema:

An introduction to User Stories

Scrum y XP desde las trincheras. Cómo hacemos Scrum

Equipo técnico de la Unitat per a l’Estudi i Tractament del Dolor – Algos

Universitat Rovira i Virgili, Tarragona


Introduzca su dirección de correo electrónico:

comadmin

comadmin

So, what do you think ?

You must be logged in to post a comment.