Tengo varias historias de usuarios en las que múltiples funciones deben compartir la misma característica. He comenzado a escribir estas historias así:
Como un Rol A o un Rol B
Cuando realizo la Acción-X
, debe ocurrir el Evento-Y.
¿Es esta la forma correcta de representar ese concepto en las historias de los usuarios, o debería dividirlo en una historia para cada rol?
Estoy de acuerdo con @Steven. Debes romper la historia o introducir una generalización de los roles. Eso significa que tendrá una generalización de A y B, que se utilizará cada vez que la historia sea la misma para A y B. (Es como la herencia de roles / actores donde la generalización es madre de A y B).
fuente
Necesitas identificar y abstraer roles
El ejemplo que proporcionaste ...
no escala porque hay un número exponencial de combinaciones que el programa podría tomar.
Para extraer roles individuales, debe imaginar los pasos desde una perspectiva de primera mano mientras ignora el estado global.
Le recomiendo que eche un vistazo a " Cómo tomar una taza de café ". Demuestra cómo se puede modelar una API REST para una cafetería utilizando diagramas de estado.
El punto es que no podrá dibujar una imagen precisa de cómo el sistema interactúa globalmente hasta que pueda verlo funcionando a nivel local.
fuente