Utilizza i diagrammi dei casi. Includere

3

Se ho due casi d'uso: Invia email e Visualizza pagina contatti. E Invia email include Visualizza pagina contatti. Devo ancora usare l'associazione per connettere il mio attore (utente) con Invia email se voglio dimostrare che può inviare e-mail? Oppure È sufficiente collegare l'attore con Visualizza pagina di contatto con associazione?

Ecco com'è. Cosa intendo: è necessaria l'associazione con l'e-mail di invio?

    
posta motleycrue 21.06.2017 - 15:32
fonte

2 risposte

3

Martin Fowler dice in UML Distilled :

Use include when you are repeating yourself in two or more separate use cases and you want to avoid repetition.

View Contact e View Documentation non sembrano essere usati più di una volta, quindi questo non è un buon uso di include secondo questo consiglio.

La risposta è probabilmente nel testo dei tuoi casi d'uso. Se l'unico modo per visualizzare un contatto è tramite il caso d'uso Invia e-mail, in virtù del fatto che viene usato una sola volta, lo si rende solo parte (un flusso alternativo) del caso d'uso Invia e-mail, senza un uso separato Nome del caso

D'altra parte, se è possibile visualizzare un contatto al di fuori del caso di utilizzo Invia e-mail e i passaggi sono identici (e quindi non si desidera ripetere te stesso), quindi utilizzando include è OK.

Come per extend , il consiglio di Fowler è (enfasi mia):

The UML includes other relationships between use cases beyond the simple includes, such as «extend». I strongly suggest that you ignore them. I've seen too many situations in which teams can get terribly hung up on when to use different use case relationships, and such energy is wasted. Instead, concentrate on the textual description of a use case; that's where the real value of the technique lies.

Il consiglio parla da solo.

    
risposta data 14.07.2017 - 16:37
fonte
1

Nel modello attuale, Invia email include Visualizza pagina contatti. Ciò significa che tutti i passaggi nella pagina Visualizza contatto sono inclusi nel caso di utilizzo Invia e-mail. Se l'attore può eseguire sia casi di utilizzo Visualizza pagina di contatto che Email di invio, l'attore deve essere esplicitamente collegato a entrambi.

Tuttavia, c'è probabilmente una rappresentazione più naturale di questo. Penso che Send Email sia in realtà un'estensione della View Contact Page. In questo caso, puoi dire che Send Email è un set di passaggi extra (forse facoltativo) che avviene dopo che qualcuno esegue View Page View. In questo caso, non è più necessario collegare l'attore al caso di utilizzo Invia email.

    
risposta data 21.06.2017 - 15:38
fonte

Leggi altre domande sui tag