NB: ai fini di questa domanda, gli scenari alternativi sono scenari che, a parte lo scenario principale, portano anche al completamento dell'obiettivo dell'utente; scenario eccezionale sono gli scenari che non portano al completamento dell'obiettivo dell'utente.
Ho avuto una conversazione con il mio professore riguardo una delle sue dichiarazioni in classe. Sostiene che "estendere" dovrebbe essere usato per modellare casi d'uso che derivano da scenari eccezionali. Ad esempio:
(UC1: Publish blog post)
^
\
\-- <<extend>> -- (UC2: Error, empty blog post)
A questo punto, data la definizione del caso d'uso:
A use case is a set of scenarios (sequences of steps) that aim at accomplishing a end-goal for an user (actor).
Sono un po 'confuso. Se l'errore è un caso d'uso, quale obiettivo finale intende raggiungere? Un utente accede al sistema per vedere il messaggio di errore come end -goal?
Sono anche andato avanti e ho letto "estendere" su Internet e non riesco a trovare un esempio in cui il caso d'uso dell'estensione sia un caso d'uso effettivo in base a tale definizione. Ad esempio qui ci viene dato:
(UC1: Deposit funds)
^
\
\-- <<extend>> -- (UC2: Calculate bonus)
Ancora una volta, quale obiettivo finale dell'utente è "Calcolare il bonus" cercando di ottenere? Sembra quasi che per definizione, qualcosa che viene attivato da un altro caso in determinate situazioni non può essere considerato un "caso d'uso" perché non è un end -goal.
Dove mi sbaglio?