I am trying to draw a UML use-case diagram to model requirements for a software project.
The two requirements I have issue to model are:
TravelAgent
creates a booking for a [old] client who is requesting a home.When a new client wishes to make a booking, the
TravelAgent
register him/her to the system before doing the booking.
I have two approaches to model these requirements:
- Modeling the first use-case as a sub-procedure of the second use-case (Figure 1).
- Extending the first use-case (Figure 2).
Both approach imply that the first use-case could be perform independently, but when the second use-case is executed, the first one MUST be executed too.
Are they actually same and both correct?
P.S. As another question, since the NewClient
converts to a Client
after the registration, should I show the NewClient
as subclass of Client
or something?
Figure 1
Figure 2