Business Analysis

Use Case Development for Business Applications: A Framework That Works

Youssef Shahboun
Youssef Shahboun
September 17, 2014 · 3 min read · 430 words
Youssef Shahboun
Use Case Development for Business Applications: A Framework That Works

Use cases have been part of software and systems analysis for decades, and they remain one of the most practical tools for bridging the gap between what the business needs and what a technical team can build. When done well, a use case describes a complete interaction between a user and a system in enough detail that a developer can implement it and a tester can verify it. When done badly, a use case is a sentence that could mean almost anything.

The Components of a Useful Use Case

A use case that is actually useful to a development team includes five things. First, a primary actor — the type of user who initiates the interaction. Second, a goal — what the actor is trying to accomplish. Third, a precondition — what must be true before the interaction can begin. Fourth, a main success scenario — the step-by-step sequence of actions that describes the normal path from start to goal. Fifth, alternative flows — what happens when something deviates from the normal path, including error conditions and exceptions.

The main success scenario is where most use cases fail. Steps that say “the system processes the request” or “the user completes the form” are not steps — they are placeholders. A real step describes a specific, observable action with a specific, observable result: “the user enters the purchase order number and the system displays the order status, the vendor name, and the pending approval status.”

Connecting Use Cases to Business Rules

Use cases describe what happens. Business rules describe what is allowed to happen and under what conditions. These two need to be explicitly connected. When a use case step involves a decision — a discount approval, a credit limit check, an inventory allocation — the business rule that governs that decision should be referenced directly. “The system checks whether the order total exceeds the customer’s approved credit limit according to Business Rule BR-042” is a use case step that a developer can implement correctly and a compliance reviewer can validate.

Using Use Cases for Testing

One of the most valuable applications of well-written use cases is as the basis for test cases. Each main success scenario becomes a positive test case. Each alternative flow becomes a negative or exception test case. When the use cases cover the requirements completely and the test cases are derived from the use cases, the testing program has a defensible connection to the requirements — which is exactly what you need when disputes arise at user acceptance testing.

Share this article:
Youssef Shahboun

Written by

Youssef Shahboun

IT Director & Enterprise Technology Strategist with 25+ years across ERP, digital transformation, infrastructure, and cybersecurity in 9+ industries across Egypt.

Let's Talk