Consejos para dividir un proceso que involucre a múltiples actores en Casos de Uso

StackOverflow https://stackoverflow.com/questions/161027

  •  03-07-2019
  •  | 
  •  

Pregunta

Digamos que estoy modelando un proceso que involucra una conversación o intercambio entre dos actores. Para este ejemplo, usaré algo fácilmente comprensible: -

  1. El proveedor crea una lista de precios,
  2. El comprador elige algunos artículos para comprar y envía una orden de compra,
  3. El proveedor recibe la orden de compra y envía las mercancías.
  4. El proveedor envía una factura
  5. El comprador recibe la factura y realiza un pago

Por supuesto, cada uno de esos pasos en sí mismo podría ser rápido complicado. ¿Cómo dividiría esto en casos de uso en su documento de requisitos?

Si este proceso se tratara como un solo caso de uso, podría llenar un libro.

Alternativamente, hacer un caso de uso de cada uno de los pasos anteriores ocultaría algunas de las interacciones y flujos esenciales que deben capturarse. ¿Tendría sentido tener un caso de uso que comienza en " Recibió una orden de compra " y finaliza en " Enviar una factura " y luego otro que comienza en " Recibe una factura " y finaliza en " Realiza un pago " ;?

¿Algún consejo?

¿Fue útil?

Solución

La forma en que generalmente abordo estas tareas es simplemente comenzando a crear un Caso de uso UML y diagramas de Actividad de alto nivel para el proceso. No te preocupes por los detalles, solo hazlo lo mejor que puedas.

Cuando tenga un borrador, verá casi de inmediato cómo podría mejorarse. Luego puede continuar refactorizándolo, reduciendo el caso de uso, estructurando grandes actividades, etc. Alternativamente, puede agrupar un par de casos de uso si son demasiado pequeños.

Sin conocer los detalles de su proyecto, seguiría adelante y convertiría cada paso en un caso de uso por separado. Todos parecen ser independientes y podrían describirse sin ninguna referencia cruzada. Si al hacerlo encuentra alguna dependencia, siempre podría replantearse el enfoque.

También considere usar los bloques 'extender' e 'incluir' para elementos comunes como registro, seguridad, etc.

Otros consejos

Sí, hay muchas posibilidades aquí. En su ejemplo anterior, podría ser aún más complicado si el Comprador realiza varios pagos parciales para pagar la factura.

Probablemente necesite crear casos de uso de flujos de trabajo completos. La división de cada uno de los pasos anteriores en sus propios casos de uso puede no ser útil, ya que algunos de los pasos tendrán pre & amp; post condiciones.

Trabajo con el código fuente de QuickBooks y la cantidad de formas en que una transacción puede fluir a través del sistema es desalentadora. Es casi imposible para nuestros muchachos de control de calidad probar cada combinación.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top