Project Life Cycle  «Prev  Next»
Lesson 2 The Use Case Model
Objective Define the purpose and scope of the Use Case Model.

Purpose and Scope of the Use Case Model

The use case model defines how users interact with a system to achieve specific goals. It provides a structured way to document system functionality and serves as a bridge between user expectations and software design. The model focuses on two core elements: actors and use cases.

Each use case represents a meaningful interaction between a user (human or machine) and the system. Examples include actions such as logging in, registering, or creating an order. A use case can include functionality from another use case or extend existing behavior to capture exceptions or alternative flows. This modular approach simplifies complexity while maintaining flexibility in design.

Customer Use Case Model
Customer Use Case Model

Elements of a Use Case Description

A well-written use case typically includes the following elements:

  1. General Notes: A summary that describes the use case purpose and scope.
  2. Requirements: Specific goals or tasks the user must accomplish (e.g., “update order,” “modify order”).
  3. Constraints: The conditions or rules that govern execution, including:
    • Preconditions: States that must be true before execution (e.g., an order must exist before it can be modified).
    • Postconditions: Results that must hold true after completion (e.g., order data remains consistent after modification).
    • Invariants: Conditions that are always true (e.g., every order must be associated with a valid customer ID).
  4. Scenarios: Step-by-step descriptions of how the user and system interact to complete the use case. Alternate or exception flows may also be included.
  5. Scenario Diagrams: Graphical sequence diagrams that visualize workflow and object interactions.
  6. Metadata: Attributes such as implementation phase, version, complexity rating, and status.

Actors and Use Cases

Actors

An actor represents a role that interacts with the system. Actors can be people, external systems, or hardware devices. Each actor plays a role in achieving system objectives. One individual may assume multiple roles, and many individuals may share a single role.

Actors should not be confused with job titles—roles reflect interactions with the system, not organizational hierarchy. Defining actors carefully can even help clarify and optimize real-world workflows.


Use Cases

A use case defines a goal the system must fulfill to satisfy the actor’s needs. For example, an automated teller machine (ATM) must allow users to validate access, deposit funds, and withdraw funds. Each goal can usually be expressed as a verb–noun pair such as deposit funds or withdraw cash.

It is important not to confuse goals with processes. A goal defines what should be achieved; processes describe how that goal might be implemented, which can vary across different system designs.

Defining Scope and Encapsulation

The scope of the use case model is to define what the system must do—not how it will do it. Avoid discussing programming languages, interface design, or internal logic at this stage. The objective is to capture user goals and system responsibilities clearly and without bias toward implementation.

Encapsulation plays a key role here. The use case model represents an encapsulated view of the system—it focuses on purpose and interfaces while hiding the internal mechanics. When defining input and output, describe content rather than form. Whether the data is displayed on a screen, printed, or transmitted via API is irrelevant to the model.

Practical Guidance for Analysts

By keeping a clear boundary between user goals and system mechanisms, the use case model provides a disciplined foundation for subsequent UML diagrams and object discovery.


SEMrush Software