Scenarios and Use Cases
Several years ago I shared a series of articles in the Rational Edge for IBM that showcased real life applications of use cases and
8 steps to capture your use cases
incremental development. Two of those articles focused on replacing a legacy unemployment insurance system. The entire article provides a much more thorough introduction from that example – so take a quick read of that as you have time.
Use cases and scenarios that are created from them, allow for capturing a process flow of a business function. They’re addressed directly in The Business Analysis Body of Knowledge, 2nd Edition (BABOK© 9.26) and indirectly referenced in The Guide to Project Management Body of Knowledge, 4th Edition (PMBOK© 5.2)
The eight basic steps we used to generate use cases for each business process area are described below.
Step 1: Confirm actors and goals.
Have all actors and their goals been identified?
Which actors can be generalized (combined)?
Which goals are potential use cases?
Step 2: Develop an outline of the use case(s).
For the goals identified as potential use cases, what are the key pieces?
For each outline level, what are key data?
Outline all use cases.
Prioritize the use-case flows.
Decide on a final use-case list (for initial pass).
Step 3: Write a brief description of the use case(s).
What two or three sentences describe all actors and the basic flow?
Generate content first, and worry about wordsmithing later.
Step 4: Detail the basic flow.
What event starts the use case?
How does the use case end?
How does the use case repeat some behavior?
What is the “happy” (best case) path?
There is one and only one basic flow.
Step 5: Detail the alternate flows.
Are there optional situations for the use case?
What might go wrong?
What might not happen?
Which resources might be blocked?
Which alternate flows are special — perhaps nonfunctional — requirements (i.e., they apply to this use case only)?
Step 6: Review the use case(s).
Are there more use cases?
Should some use cases be redefined?
Which ones can be combined?
Step 7: Record pre- and post-conditions.
What was the previous state before this use case comes into play?
What happens once the use case is complete?
Step 8: Develop generalizations for all use cases.
Determine shared content and process for the use cases.
What items have been noted for the glossary or as global business rules?
Who has the most recent and accurate source document?
Where is it located?