On Twitter, @ClearSpringBA asked:
@UMLguy to show a “parent” actor over subsidiaries, do I use the generalization feature in UML? (doing an actor-UC diagram, new to it)
Wordy cuss that I am, I answered multiple times:
@ClearSpringBA Are subsidiaries subordinates or special cases? For ex, Supervisor is special case of Employee; Emps are subordinates of Supv
@ClearSpringBA For special case, genralization arrow from Supv to Emp. “Supv is an Emp with more responsibilities.”
Her questions back:
@UMLGuy thanks for all the info. subsidiaries are parent companies, can do everything on behalf of a sub.
UMLGuy so, i would draw the arrow toward the parent company? the arrow with the “big head”, generalization arrow? prob wrong terms!
I decided this had gotten complex enough that words weren’t working; so we went to email. Since this is general enough not to show any business info from her client, I thought I would share my response, in case anyone else finds it useful:
Here’s a simple diagram of business relationships:
You can read it as follows:
- A Business is an Organization. Triangle arrow (“generalization” or “inheritance”) can be interpreted as “is a”.
- A Parent Company is a Business.
- A Parent Company has zero or more Subsidiaries, which are Businesses. (They might also be Parent Companies themselves, since a Parent Company is a Business.) The plain arrow can be interpreted as “has” or “contains” or “uses”. 0..* means any number, possibly 0. 1..* would mean any number, NOT 0. That could mean, for example, that a Parent Company MUST have at least 1 Subsidiary.
- A Business has 0 or 1 Parent, which is a Parent Company. The “topmost” Business has no Parent. All the others have 1.
- A Business has zero or more Partner Businesses.
I hope that clarifies things, and gets you thinking about new ideas. Please let me know if you have more questions.
And I hope it helps someone else, too!