Use Case Relationships
- •
What it is
- •
the types of relationships that can exist between use cases and actors in a Use Case Diagram
- •
- •
Types
- •
- •
- •
actor generalization
- •
two or more sub-actors are generalized into a super-actor
- •
sub-actors share common behavior and attributes described under the super-actor
- •
super-actor interacts with use cases when ALL sub-actors interact in the same way
- •
sub-actors interact with use cases when their interactions differ from the super-actor
- •
- •
Include (detailed guidance)
- •
use when behavior is duplicated across multiple use cases, or a use case is long/complex enough that separating it aids comprehension
- •
the base use case explicitly incorporates the included use case at a specified point — the included use case never stands alone
- •
example: "Authorize Car Loan" includes "Check Client's Credit History" — a mandatory sub-step
- •
the base use case cannot execute without the included one -> tight coupling
- •
- •
Extend (detailed guidance)
- •
preferred when the base use case should remain closed to modification, or the added behavior is genuinely optional
- •
the base use case implicitly incorporates the extension's behavior only at defined extension points, and only under certain conditions
- •
example: "Register Course" may be extended by "Register for Special Class" (non-standard timing, extra fees)
- •
the base use case can execute fully without the extension -> loose coupling
- •
- •
Related
- •