Sto provando a disegnare un diagramma del caso d'uso UML per modellare i requisiti per un progetto software.
I due requisiti che ho riscontrato nel modello sono:
-
TravelAgent
crea una prenotazione per un [vecchio] cliente che richiede una casa. -
Quando un nuovo cliente desidera effettuare una prenotazione,
TravelAgent
lo registra sul sistema prima di effettuare la prenotazione.
Ho due approcci per modellare questi requisiti:
- Modellare il primo caso d'uso come sottoprocedura del secondo caso d'uso (Figura 1).
- Estendere il primo caso d'uso (Figura 2).
Entrambi gli approcci implicano che il primo caso d'uso potrebbe essere eseguito indipendentemente, ma quando viene eseguito il secondo caso d'uso, anche il primo deve essere eseguito.
Sono effettivamente uguali ed entrambi sono corretti?
P.S. Come un'altra domanda, visto che NewClient
converte in Client
dopo la registrazione, dovrei mostrare NewClient
come sottoclasse di Client
o qualcosa del genere?
Figura 1
Figura2