问题
I'm trying to depict an use case where several actors within a system can perform the same activity. e.g.
Let's say (as an example) I want to make the use case "Update Clients" but several identified actors can do this.
Manager
Chief Executive
Customer Service Representative
System Administrator
Clerk
-Do I need to depict all these actors by their roles ponting to the same use case?
Manager ------------------------------> |-----------------|
Chief Executive ----------------------> | |
Customer Service Representative ------> | (Update Clients)|
System Administrator -----------------> | |
Clerk --------------------------------> |_________________|
-Do I need to make a different use case for each actor?
|-----------------|
| |
Manager ------------------------------> | (Update Clients)|
| |
|_________________|
|-----------------|
| |
Chief Executive ----------------------> | (Update Clients)|
| |
|_________________|
...
|-----------------|
| |
Clerk --------------------------------> | (Update Clients)|
| |
|_________________|
Do I need to globalize all actors by using a "general" actor (If so, How do I do it?)?
|-----------------|
| |
General Actor ------------------------> | (Update Clients)|
| |
|_________________|
回答1:
There are perhaps more approaches to this problem, but following recommendation seems most logical.
In this case you should use just one Actor with name e.g. User
. You will gain nothing adding all different positions in company as actors.
But it does not mean that you must allways have only one Actor, see following diagram:

It is more important to bind your Use cases to Bussiness process diagram. Thus you can document, how all the use cases are needed to support business processes.

The link from BPMN model to the Use case is important because there you can document, what situation/process makes the user need to use the system. Something happens outside the modeled system (IS) that creates the need to run that particular Use case.
But the Use case is not the same thing as class or method in a program. When you look for Use cases you will probably model more of them at the first and in the second phase you look for relation between them - see the picture where "Check client data", "Edit clients" and "Edit client profile" all include the "Update client" use case.
So I think you do not need to worry that you model more Use cases than there will be screens or methods in your program at the end. Later you can model the inside of Use cases using Include, Extends... and there you can document what they have in common.
回答2:
Create a new actor and all other user can extend from it, so the association applies to the extending actors. read more on generalization.
来源:https://stackoverflow.com/questions/26727404/multiple-actors-same-use-case-use-case