Scrivere casi d'uso per uno scenario piuttosto complesso

4

Sto cercando di migliorare le mie capacità di scrittura caso d'uso, ma sono bloccato su un certo scenario.

L'idea è che ci sono un sacco di voci in un elenco di attività (una sorta di elenco di cose da fare). Ora l'utente desidera elaborare l'elenco (dividerlo tra le altre liste). Può farlo rispondendo a una serie di domande / completando dati extra. In base alle scelte dell'utente, il sistema esegue diverse azioni sull'attività.

Sono davvero confuso su come scriverlo in un caso d'uso.

Quello che stavo pensando è qualcosa di simile (sto solo annotando il principale scenario di successo):

Use Case: Process Inbox
Primary Actor: User    

1. User indicates he/she wants to sort his/her inbox
2. System presents the next question and provides possible actions
3. User makes choice

_steps 2-3 get repeated until inbox is empty_

Il problema con questo è che non è abbastanza specifico, quindi qualcos'altro che stavo pensando è di creare casi di utilizzo secondario per tutti i diversi passaggi nel processo di domanda come:

Use Case: Handle Project
Level: Sub Use-case
Primary Actor: System    

1. System requests additional information (description, due date) from user.
2. User completes data
3. System classifies the task as a Project

Quello di cui sono perplesso qui è:

  • Come includere questo caso di utilizzo secondario nel mio scenario principale in modo appropriato
  • Come indicare che dopo questa azione, l'utente ricomincia dal punto 2 nel caso d'uso principale.

Stavo pensando di utilizzare estensioni in cui includo i diversi casi di utilizzo secondario ma sta diventando piuttosto confuso.

Quindi raggruppare questa richiesta in una domanda:

Qualcuno può chiarire come affrontare di solito questo tipo di scenari e / o fornirmi una soluzione di base possibile per questo esempio?

Grazie in anticipo;)

Se qualcuno è interessato, il diagramma di flusso delle domande che intendo utilizzare è tratto dal libro di David Allen Getting Things Done: link al diagramma

    
posta geoffreydv 28.09.2011 - 22:26
fonte

3 risposte

4

Per essere onesti, sembra che sia necessario semplificare drasticamente i casi d'uso.

Peggio ancora, sembra anche che tu abbia un'idea per-concepita di come dovrebbe funzionare il sistema e stai cercando di far sì che i casi d'uso si adattino.

Torna indietro e ricomincia utilizzando le seguenti regole.

  • Tutti i titoli dei casi d'uso dovrebbero essere una dichiarazione obiettivo. OSSIA "L'utente ottiene una lattina di COKE freddo" è buono "L'utente inserisce denaro in un distributore di bevande" è negativo.
  • Nessun scenario principale dovrebbe coprire più di una pagina A4. Dividere i casi di uso prolungato in diversi casi "sub". I.E "L'utente riceve una lattina di COKE freddo" può essere diviso in "La macchina accetta denaro corretto", "La macchina accetta la selezione di bevande", "La macchina consegna COKE", "La macchina dà il resto". Nota il cambio di attore necessario per mantenere tutto determinato dall'obiettivo. Non è l'obiettivo degli utenti di dare soldi alla macchina, ma le sue macchine (o almeno i suoi proprietari) hanno l'obiettivo di raccogliere fondi.
  • Una volta che hai un caso d'uso leggibile. Cerca di ridurlo del 50% spingendo alcuni dei verbage come "elenco di monete accettate", "regole per dare il resto" in appendici. O eliminare i passaggi non necessari se il passaggio non conduce direttamente all'obiettivo, oppure, il sistema funzionerebbe senza di esso - sbarazzarsi di esso.

L'identificazione e la rimozione dell'elaborazione superflua è l'aspetto più prezioso dei casi d'uso. Questo funziona solo se si rilasciano modelli mentali di una possibile implementazione e si mantiene una mente aperta riguardo ai requisiti e alle funzioni effettive.

    
risposta data 29.09.2011 - 04:55
fonte
1

Potresti avere un caso d'uso per ogni decisione che l'utente deve prendere. Ad esempio:

  • Il "Qual è il caso d'uso della prossima azione" è l'utente che decide quale sarà l'azione successiva e cosa fare al riguardo.
  • Quindi il flusso continuerebbe a uno dei seguenti casi d'uso: "Fallo", "Delgate" ...
risposta data 28.09.2011 - 23:17
fonte
1

Puoi utilizzare liberamente le precondizioni per i tuoi casi d'uso.

Ad esempio, puoi avere diversi casi d'uso per l'accesso (accesso normale, creazione di nuovi account, recupero della password, ecc.)

Quindi puoi definire casi d'uso per l'ordinamento di una casella di posta, la lettura di una lettera, ecc. Ognuno di questi può avere come presupposto "L'utente ha effettuato l'accesso".

Se ci sono operazioni possibili solo dopo aver ordinato una casella di posta, è possibile che "la cassetta postale sia stata ordinata" come precondizione.

    
risposta data 29.09.2011 - 04:23
fonte

Leggi altre domande sui tag