📊

Understanding UML Use Case Diagrams

Oct 7, 2024

UML Use Case Diagrams Lecture Notes

Overview

  • Objective: Teach UML use case diagrams.
  • Structure of Lecture:
    • High-level overview
    • Discussion of systems, actors, use cases, and relationships
    • Building a use case diagram together
    • Examples for in-depth understanding

Use Case Diagrams

  • Purpose: Communicate complex ideas simply.
  • Description:
    • Shows a system/application.
    • Displays users (actors) interacting with the system.
    • Outlines basic flows of the system's functions.

Creating a Use Case Diagram

  • Tools: Recommended to use a diagramming tool (e.g., Lucidchart).

Key Elements of Use Case Diagrams

1. Systems

  • Definition: The entity being developed (e.g., app, website).
  • Representation: Rectangle with the system name at the top.
    • Example: "Banking App" defines the scope of the application.

2. Actors

  • Definition: External entities that interact with the system.
  • Representation: Stick figures.
  • Types of Actors:
    • Primary Actor: Initiates system use (e.g., Customer).
    • Secondary Actor: Reacts to primary actor's actions (e.g., Bank).
  • Placement: Primary actors on the left, secondary on the right.

3. Use Cases

  • Definition: Actions performed within the system.
  • Representation: Ovals inside the system rectangle.
  • Examples for Banking App:
    • Log In
    • Check Balance
    • Transfer Funds
    • Make Payment
  • Characteristics:
    • Start with a verb (action-oriented).
    • Be clear and descriptive.
    • Logical ordering is encouraged (e.g., Log In first).

4. Relationships

  • Definition: Links between actors and use cases.
  • Types of Relationships:
    • Association: Basic interaction between actor and use case.
    • Include: A use case that is dependent on another base use case.
    • Extend: A use case that may occur under certain conditions.
    • Generalization: Inheritance where one use case can have specialized versions.

Example of Relationships

  • Include:
    • Log In -> Verify Password (always happens when logging in).
  • Extend:
    • Log In -> Display Login Error (occurs only sometimes).
  • Generalization:
    • Make Payment can have options for Paying from Checking or Savings accounts.

Additional Concepts

  • Use Case with Extension Points: Details of optional flows or actions related to a use case.

Conclusion

  • Importance of Simplicity: Even complex systems should be visualized simply.
  • Resources: For more examples and diagrams, visit Lucidchart's website.

Additional Notes

  • This tutorial provides foundational knowledge for UML use case diagrams, aimed at facilitating clearer communication of system functionalities.