Reputation: 23
I start to learn Use case diagram and i am very confused.I don't know which picture is better .Please help me , thanks.
Upvotes: 0
Views: 1069
Reputation: 6318
The second one, where you have numerous Use cases linked to the actor is definitely better (actually the only one that makes any sense here). Those are actual functions provided by the system. Login or even Choose subject provide no real business value.
Actually I would even remove them completely from the UC diagram and do this decomposition on Activity diagrams. But if you really want to show reusability of UC parts (where you actually use include), the second diagram is acceptable.
The first one throw away and never do your UC diagrams this way anymore ;-)
Upvotes: 2
Reputation: 36305
None of them is correct since Login
is no use case. It has no added value. And a use case shows exactly on added value the system under consideration will bring to one of its actors. Take the 2nd picture and throw away the Login
and I'd say "OK".
You can show that a login is needed by attaching a constraint to a UC telling { actor must be logged on}
. Or if all UCs need a login attach it to the actor like { all/UC x, y need a login}
.
Further, the use of extend/include is taken wrong by most people. They use it to do functional decomposition which is plain wrong. The best is to just avoid them and stay with simple bubble-stick man associations.
Upvotes: 0