Les comparto un Product Backlog de ejemplo de un proyecto de grado que estoy dirigiendo basado en historias de usuario. El proyecto se llama Social Restaurant Wall - SoReWa - eleborado por Alejandro Arbelaez Acevedo (dragon198658 (at )gmail.com ).
Los Criterios de Aceptación se encuentran en Formato BDD
SCENARIO– Escenario
GIVEN – DADO
WHEN – CUANDO
THEN – ENTONCES
Impor
tancia |
Yo como
|
Deseo
|
Para
|
Criterios de Aceptación
en Formato BDD
|
Gerente
|
Crear un menú
|
Ofrecerle los productos a mis clientes
|
Escenario 1: No hay un menú creado.
DADO que este en la pantalla
de gerente
Y No haya un menú creado
CUANDO ingrese a gestionar menú
ENTONCES se crea un menú básico con 2 categorías comidas bebidas
-----
Escenario 2: Ya hay un menú creado.
DADO que este en la pantalla de gerente
Y ya hay un menú creado
CUANDO ingrese a gestionar menú
ENTONCES se muestra el menú que ya existe
|
|
Gerente
|
Agregar producto al menú
|
Para agregar variedad o actualizar mi menú
|
Escenario 1: Agregar un producto
DADO que este en la pantalla de gestionar menú y llene los campos de
un producto
CUANDO de en el botón guardar
ENTONCES se agrega un producto al restaurante
|
|
Gerente
|
Quitar producto del menú
|
Quitar productos poco pedidos o que den perdidas
|
DADO que estoy en la lista de productos
CUANDO oprima el botón eliminar de un producto
ENTONCES se quita ese producto de la lista de productos del
restaurante
|
|
Gerente
|
Crear categorías de productos
|
Para organizar mejor los productos que ofrezco
|
Escenario 1: hay Categorías.
DADO que este en el menú del
restaurante
CUANDO llene los campo y de en
el botón agregar categoría
ENTONCES se agrega un a nueva categoría al menú
|
|
Gerente
|
Eliminar categoría de productos
|
Para organizar mejor los productos que ofrezco
|
Escenario 1:Hay categorías
DADO que este en el menú del restaurante
CUANDO elija una categoría y
de en el botón eliminar
ENTONCES se da una notificación de eliminar y si se confirma se
elimina la categoría del menú del restaurante.
----
Escenario 2: No hay categorías
DADO que no hay categorías en el menú
CUANDO se de en el botón eliminar
ENTONCES el botón se deshabilita.
|
|
Gerente
|
Editar categorías de productos
|
Para organizar mejor los productos que ofrezco
|
Escenario 1: hay categoría
DADO hay categorías en el menú
del restaurante Y se elija una.
Y se editen los campos de la categoría
CUANDO de en el botón guardar
ENTONCES se actualizan los datos de la categoría del menú del
restaurante.
|
|
Cliente
|
Ver el menú del restaurante
|
Poder elegir la comida que voy a pedir
|
Escenario 1: Elegir categoría
DADO que hay categorías
CUANDO elija una categoría
ENTONCES se muestran los productos de esa categoría
|
|
Cliente
|
Ver detalles de un plato
|
Poder elegir la comida que voy a pedir
|
Escenario 1: Hay productos en categoría
DADO Que hay productos en una categoría
CUANDO este navegando la lista de productos
ENTONCES debo poder ver la información detallada del plato(nombre,
precio y descripción)
|
|
Cliente
|
Ver disponibilidad de plato
|
Para ver que productos no puedo pedir
|
Escenario 1: El plato no está disponible
DADO
hay un plato que no esté disponible y se haya marcado como no
disponible
CUANDO esté viendo el menú del restaurante
ENTONCES el plato no se debe mostrar
-----
Escenario 2: El plato está disponible
|
|
Cliente
|
Agregar uno o más productos a mi pedido
|
Hacer el pedido y poder comer
|
Escenario 1: Agregar producto a la orden
DADO que quiera agregar un producto
CUANDO oprima el botón “+” para agregar un plato (o más si se toca
varias veces)
ENTONCES se agrega(n) el(los) plato(s) al pedido
----
Escena 2: agregar más de un mismo plato
DADO que ya agregue un plato
CUANDO vuelva a darle al botón “+”
ENTONCES este plato se agrega a la orden
----
Escena 3: se hizo un pedido
DADO que se haya hecho un pedido Y aun no se haya pedido la cuenta
CUANDO de al botón “+” de un producto este se agrega al pedido
ENTONCES se pregunta si se desea hacer el pedido del producto agregado.
------
Escena 4: se pidió la cuenta
DADO que se pidió la cuenta
CUANDO se vaya a agregar un producto a la orden
ENTONCES La orden no permite agregar más productos
|
|
Cliente
|
Quitar un producto del pedido
|
Elegir un plato diferente si cambie de parecer y luego hacer el
pedido
|
Escena 1: No se ha despachado el pedido
DADO que estoy en la página del pedido
Y quiera quitar un plato de este Y este no haya sido ya despachado
CUANDO oprima el botón de quitar”-”
ENTONCES este plato se debe quitar del pedido
-----
Escena 2:Se ha despachado el pedido
DADO que un pedido ya ha sido pedido
Y el mesero lo haya marcado como despachado
CUANDO vaya a eliminar un producto de la orden
Desde el cliente de la mesa
ENTONCES se hace un llamado al mesero
-----
Escena 3: Se pidió la cuenta
DADO que se pidió la cuenta
CUANDO los productos ya hayan sido despachados
ENTOCES el cliente ya no puede eliminar el producto desde la terminal
de cliente y se ocultan los botones de eliminar producto
|
|
Cliente
|
Hacer pedido
|
Poder comer los platos que pedí
|
Escena 1: Hay uno o mas productos en la orden
DADO que estoy en la lista del pedido
Y
CUANDO una el botón de “ordenar”
ENTONCES se envía la notificación a los meseros del pedido con el
pedido de la mesa
------
Escena 2: No hay productos en la orden
DADO que no hay productos en la orden
CUANDO se oprima el botón de hacer pedido
ENTONCES se saca un mensaje que diga que no se puede hacer un pedido
porque no hay platos en la orden
-----
Escena 3: Ya se pidió la cuenta
DADO que ya se pidió la cuenta
CUANDO se de en el botón hacer pedido
ENTOCNES este botón de pedido se bloquea y se pone un mensaje
diciendo que ya el pedido esta por pagarse
-----
Escena 4: hay productos sin despachar
DADO que haya uno o más productos sin despachar
CUANDO se oprima el botón de pedido
ENTONCES se notifica del pedido nuevamente a los meseros
|
|
Cliente
|
Llamar a un mesero
|
pedir ayuda o asesoría en la mesa
|
DADO en cualquier parte de la aplicación
CUANDO unas el botón de llamar mesero
ENTONCES se muestra una notificación a los meseros avisándoles que en
esta mesa en específico necesitan a un mesero
|
|
Mesero
|
Ver el menú del restaurante
|
Poder ver buscar los productos que el cliente quiere adicionar a su
pedido
|
Escena 1: No hay ordenes de mesa
DADO que no hay ordenes de mesa
CUANDO de al botón ver menú restaurante
ENTONCES se me presenta una ventana con el menú del restaurante, sin
las opciones de agregar a orden
----
Escena 2: hay orden de mesa
DADO que hay una orden de mesa
Y de ver orden d mesa
CUANDO de al botón ver menú restaurante
ENTONCES se me presenta una ventana con el menú del restaurante, con
la opción de agregar los platos a la orden de una mesa
|
|
Mesero
|
Ver detalles de un plato
|
Poder ver la información más detallada de los pedidos
|
DADO que estoy viendo el menú
del restaurante
CUANDO este navegando la lista de productos
ENTONCES este me debe mostrar sus detalles
|
|
Mesero
|
Agregar uno o más productos a al pedido de un cliente
|
Cambiar el pedido de los clientes en caso de ellos requerir un cambio
|
Escena 1: no hay productos
DADO que no hay productos en
una orden
CUANDO oprima el botón”+” agregar producto a pedido
ENTONCES se agrega el producto al pedido y se actualiza el valor
total del pedido
----
Escena 2: hay productos en la orden
DADO que hay productos en una orden
Cuando de al botón “+”
ENTOCNES se agrega a la orden de mesa. se actualiza el valor total
del pedido
|
|
Mesero
|
Quitar un producto del pedido
|
Cambiar el pedido de los clientes en caso de ellos requerir un cambio
|
DADO Que quiera quitar un
producto de un pedido
CUANDO oprima el botón”-” quitar producto a pedido
ENTONCES se quita el producto al pedido y se actualiza el valor total
del pedido
|
|
Mesero
|
Ver si un cliente me llama desde su mesa
|
Poder ir a atenderlo
|
Escena 1: Cliente hunde el botón llamar mesero
DADO que estoy en la página de atención de mesas
CUANDO un cliente oprima el
botón llamar mesero
ENTONCES se mostrara una notificación de la mesa donde se hace el
llamado
|
|
Mesero
|
ver una pedido de una mesa
|
Enviarlo a cocina
|
Escena 1: llega pedido
DADO que llegue un pedido de una mesa
Y Aparezca la notificación
CUANDO toque el número de la mesa
ENTONCES debo poder ver la lista de los productos y la mesa de dónde
provino el pedido
----
Escena 2: mesa con pedido
DADO que hay una mesa con un pedido
CUANDO toque el botón de la mesa
ENTONCES se muestra al orden de la mesa
|
|
Cliente
|
Ver mi pedido
|
Ver el estado de este y hacerle seguimiento a lo que consumo
|
DADO cualquier punto de la aplicación
CUANDO oprima el botón de pedido
ENTONCES se muestra la lista de productos de la orden de la mesa
|
|
Cliente
|
Pedir la cuenta
|
Pagar lo que he consumido
|
DADO que este en la lista del pedido
CUANDO una el botón pedir cuenta
ENTONCES se muestra una notificación a los meseros que el cliente
desea pagar la cuenta
|
|
Mesero
|
Que me alerten cuando un cliente quiere pedir la cuenta
|
Poder generar una factura y llevársela al cliente para que este pague
su cuenta
|
DADO que este en la pantalla
de atención de mesas
CUANDO que un cliente haya
hundido el botón pedir cuenta
ENTONCES se muestre la notificación de la mesa
|
|
Mesero
|
Atender el pedido de una mesa
|
Para que el cliente sepa que ya se le tomo la orden
|
DADO que ya se haya entregado a cocina el pedido
CUANDO oprima el botón “despachar pedido”
ENTONCES se le envía una notificación a la mesa y se marcan los
productos como despachados
|
|
Mesero
|
Saber si un cliente agrego más platos a su pedido, después de haber
atendido su pedido
|
Enviar a cocina
|
DADO que un cliente agregó uno o más productos a la orden
CUANDO de
"actualizar" pedido
ENTONCES se notificará al mesero y en la lista del pedido de verá el
estado de los productos pendientes
|
|
Mesero
|
Ver el tiempo que lleva una mesa esperando atención
|
Saber que clientes debo atender primero
|
DADO que este en la pantalla
de atención de mesas
Y haya una notificación de llamado de una mesa
CUANDO se alerte
ENTONCES se muestre un cronometro que vaya contando el tiempo desde
que se generó el llamado
|
|
Mesero
|
Ver disponibilidad de plato
|
Para ver que productos no puedo añadir al pedido de mi cliente
|
DADO que este en el menú de
restaurante
CUANDO este navegando los
productos o vaya a agregar lo y no está disponible
ENTONCES se notifica que el producto no es válido para agregar al
pedido
|
|
Cliente
|
Ver si mesero recibió mi llamado
|
Para saber que me van a atender pronto
|
DADO que haya llamado un mesero
CUANDO el mesero acepte la notificación
ENTONCES se mostrara una notificación en la mesa que dice que el
mesero los atenderá pronto
|
|
Gerente
|
Ver cantidad de veces que un producto ha sido pedido
|
Conocer los productos más populares
|
DADO que este en la pantalla
de los productos del restaurante
CUANDO esta cargue
ENTONCES se muestra el nombre del producto con su costo y la cantidad
de veces que se ha pedido
|
gracias por el ejemplo, tengo una duda estoy comenzando con scrum pero no se si los casos de usos son relevantes en la documentación agradecería si me respondes gracias de antemano.
ResponderBorrarAlexis.. la guia de Scrum no dice si son casos de uso, historias de usuario, requerimientos en prosa, lo que ha sucedido es que en la medida que diferentes equipos han usado scrum a lo largo del mundo,, nos hemos dando cuenta que las historias de usuario son lo mejor para el desarrollo iterativo, incremental y orgánico que queremos del software.
ResponderBorrarSi tienes casos de uso.. podrias trabajar con porciones de casos de uso... (de la aproximación de Ivar Jacobson .. casos de uso 2.0) https://mvmingenieria.wordpress.com/2015/07/27/casos-de-uso-2-0/
Hola, estoy comenzando en el tema de escribir las historias de usuario en un proyecto, y quería saber donde encajaría el requerimiento por ejemplo de mostrar la politica de cookies al entrar en una web, ya que al tratarse de una normativa, no se si sería una historia de usuario, ya que realmente no aporta valor al usuario.
ResponderBorrarGracias
Yo veo la historia usuario como una necesidad del sistema, pero tiene Baja prioridad. En algún momento se le dará prioridad y será construida.
BorrarGracias Jorge, creo que voy a usarlo para un curso de PO que estoy diseñando. Te molesta ? Si lo hago te mando el diseño de la actividad como pago :)
ResponderBorrar
ResponderBorrarUn gusto Jubel
Adelante.. Úsalo.. Y el pago esta excelente..
Saludos
ResponderBorrarUn gusto Jubel
Adelante.. Úsalo.. Y el pago esta excelente..
Saludos
Buenas noches, me encuentro realizando mi tesis de maestria y la metodologia es Scrum, soy nueva en esto y me gustaria poder contar con su asesoria. mi correo es dikapa9@gmail.com
ResponderBorrarExcelente amigo, el mejor cuadro encontrado en mi búsqueda oct 2018
ResponderBorrarGracias por su ejemplo, soy nuevo en esto y tengo una confusión con respecto a las historias de usuario y los requisitos del sistema. Están relacionados y si los utlizo ambos o son excluyentes. Me agradaría un poco de su asesoría. Mi correo es martinponcem@gmail.com
ResponderBorrar