Skip to content
IRC-CodingIRC-Coding
Use Case DiagramUCDIncludeExtendMisuse Case

Use Case Diagrams Explained: Actors & System Boundaries

Learn Use Case Diagrams: actors, system boundaries, include/extend relationships, Misuse Cases, and deriving test cases.

S

schutzgeist

2 min read
Use Case Diagrams Explained: Actors & System Boundaries

Use Case Diagram (UCD)

This article is a concept guide to the Use Case Diagram (UCD)—covering exam questions, core components, and best practices.

In a Nutshell

A use case diagram models which goals actors aim to achieve with a system and which use cases the system offers, all from the user’s perspective. It’s a key artifact of requirements analysis.

Formal Definition

A UCD shows:

  • Actors (roles/external systems) outside the system boundary
  • System boundary (scope)
  • Use cases (goal-oriented application scenarios)

Relations:

  • include: mandatory reuse (always required)
  • extend: optional extension under a condition
  • Generalization: specialization of actors or use cases

A UCD describes the what, not the how. Details belong in textual use-case specifications (triggers, preconditions, postconditions, main and alternate flows) and in sequence or activity diagrams.

For security concerns, misuse cases can model threats and attacks.

Key Exam Topics

  • Goal-level thinking, not UI-level clicks
  • Actors are roles outside the system boundary
  • include vs extend (frequently tested)
  • Deriving requirements, acceptance criteria, and tests from a UCD
  • Misuse cases for threat modeling
  • Versioning and signing off diagrams and text descriptions

Core Components

  1. Primary/secondary actors
  2. System boundary
  3. Use case (ellipse)
  4. Association between actor and use case
  5. include
  6. extend
  7. Generalization
  8. External systems
  9. Misuse case
  10. Traceability (use case → test)

Practical Example (E-commerce Shop)

Actors: Customer, Payment Provider, Admin
Use Cases: Register, Log In, Search Product, Shopping Cart, Checkout
Checkout: include Start Payment Process
Checkout: extend Apply Discount (if voucher present)
Misuse: Unauthorized Access → Countermeasure: Enable 2FA

Strengths and Weaknesses

Strengths

  • Excellent for stakeholder communication
  • Clear system boundaries
  • Strong foundation for deriving requirements and tests

Weaknesses

  • No process logic or flow details
  • Risk of overloading the diagram
  • Textual descriptions are essential

Typical Exam Questions (with Short Answers)

  1. What is a UCD used for? To show system functionality from the user’s perspective and define system boundaries.

  2. What’s the difference between include and extend? include = always required; extend = optional, triggered by a condition.

  3. What goes in a textual use-case description? Triggers, preconditions, postconditions, main flow, alternate flows, and acceptance criteria.

  4. How do you derive tests from a UCD? Each flow variation yields at least one test case.

Important Note

In the FIAE exam, “UCD” almost always refers to the use case diagram (not user-centered design). Pay close attention to correct notation, clear goal names, and traceability to requirements and tests.

Study Strategy

  1. Sketch a UCD for an e-commerce shop.
  2. Write textual descriptions for each use case (with preconditions and postconditions).
  3. Practice include and extend relationships.
  4. Create a traceability matrix linking use cases to test cases.

Key References

  1. https://www.omg.org/spec/UML
  2. https://en.wikipedia.org/wiki/Use_case_diagram
  3. https://alistair.cockburn.us/knowledgebase/writing-effective-use-cases/
Back to Blog
Share:

Nächster Artikel in Software Architecture

Weiterlesen
Utility Analysis for Software Architecture

Related Posts