Supponiamo di avere un processo simile al seguente:
- L'utente super riceve una richiesta interna per avviare un processo.
- Super utente approva la richiesta.
- Viene attivato un processo esterno appartenente a una terza parte.
- Una volta completato il processo di terze parti, il superuser riceve il risultato e lo accetta o lo rifiuta.
È facile vedere come formulare le storie degli utenti per 1, 2 e 4, ma 3 è un po 'più complicato. Io:
- Salta perché è esterno al nostro sistema e considera 3 come un dettaglio di implementazione di 4 (dopotutto, 4 dipende 3 in corso); questo potrebbe richiedere una documentazione esterna del processo effettivo o storie utente / attività potenzialmente gonfie per 4 .
- Tratta il sistema esterno o uno dei suoi utenti come utente e scrivi la storia dell'utente dal loro punto di vista ("come utente [system x], voglio elaborare ..."); sembra che dovrebbe essere al di fuori dei nostri requisiti funzionali.
- Tratta come un "compito" contro 2 ; questo non sembra giusto, dato che la funzionalità di approvare qualcosa in realtà non implica l'attivazione di qualche altro processo.
- Qualcosa di completamente diverso.
Sembra che l'atto dell'utente che approva la richiesta e approva la risposta debba essere visto (funzionalmente) come indipendente dal fatto che il processo è avvenuto nel mezzo ma - senza specificare che da qualche parte - 4 potrebbe essere "implementato", anche se non accadrà mai (cioè se la risposta è disponibile, l'utente la vede ma una risposta non sarà mai effettivamente disponibile perché il processo di terze parti non è mai realmente attivato).
Esiste un modo prescritto o convenzionale per gestire questi tipi di scenari?