Question

this is quite simple, I have a problem that describes 4 types of users. each user have some permissions like manage ticket, create ticket, assign specialist .should my use case diagram be like this

  O
 -|-
  | ------> UseCase:login ---------->  UseCase :  create ticket
 / \
customer

  O
 -|-
  |  ------> UseCase:login ----------> UseCase :  assign specialist
 / \
coordinator


  O
 -|-
  |   ------> UseCase:login ------->  UseCase :  manage ticket
 / \
specialist

having 3 actors (Users with different roles). or like this:

                               --> UseCase :  create ticket
                              /
  O                          /
 -|-                        /
  |   ------> UseCase:login ------->  UseCase :  assign specialist
 / \                        \
User                         \
                              \
                               --> UseCase :  manage ticket

this one have one actor and depending of the user role the system will enable the actions that the user can perform. im not sure how to do it or which one is right or if any of them are correct. any contribution will be appreciated.

Was it helpful?

Solution 2

In fact I would "combine" both with the following diagram.enter image description here

OTHER TIPS

You'll not need to include the login as a separate use case. See Is it necessary to include the login for every usecase?

Generally, you can have generalizations between actors (e.g. Customer ---> User) which will help to reduce the number of associations by abstraction.

observer is right. Login is not a usecase in context you defined usecases Create Ticket, .... I would say it is precondition to execute usecases. It could sound like "{User is logged on}" Remove Login. Actors are OK, but if there is nothing what is general for all actors specialized actor "User", you can remove user actor as well.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top