UML use case diagram - depicting relationships correctly?

559 Views Asked by At

I wondered if anyone could let me know whether this diagram is approximately correct?

I am depicting a database booking system and am very confused about the relationships between some of these use cases. I am fairly sure that I should include them on the same diagram but unsure whether some of my actors (Vet / Nurse) should be on the right hand side because they are kind of end-users whilst also being first users (sorry can't recall the term).

enter image description here

1

There are 1 best solutions below

2
On

So when you modeling a Use case diagram, you have to realize that you can only approach for describe the functional requirements of the system.

Your system is treated as a blackbox-that is, dealing with what the system does in response to the actor's inputs, not the internals of how it does it. And use case always starts with an input from an actor.

Before modeling a diagram, you have to identify actors(Primary, Secondary), use cases & use case relationships. Actors are who or what initiates events involved in the task of the use case. Actors are simply roles that people pre objects play.

According to your problem,

A dog owner calls the clinic to make an appointment for a yearly checkup. The nurse finds the nearest empty time slot in appointment book and schedules the appointment for that time slot.

in here you can see that two people, dog owner and nurse involving the scenario, but the actual actor who interacts with the system is the nurse.

And the use case is a summary of scenarios for a single task or goal. So, you can see that Nurse is Making the appointment for the dog owner. So to finally, you have to identify what are the relationships. simply relationships are representing communication between actor and use case or dependencies between use cases.

Dependencies between use cases can be defined by using include & extend relationships. Include is using for determine to identify common sequences of interactions in several use cases. (Can be extracted and reused)

& extend is using for model alternative paths that a use case might have.And you have to keep in mind that base use case doesn't depend on the extension use case