User Stories and Use Cases
User story one short sentence in the everyday language of the end user that states what a user does as part of his or
her work
User stories are a basic concept in agile development because they focus on simplicity, value added,
and user collaboration. They document the functional requirements quickly and less formally than
traditional requirements modelling by focusing on who, what, and why for each function.
Acceptance criteria features that must be present in the fnal system for the user to be satisfed.
They focus on functionality, not on features or user-interface design.
A use case is an activity the system performs in response to a request by a user.
Two techniques are recommended for identifying use cases:
The user goal technique and the event decomposition technique. Use case techniques place the
responsibility for identifying and detailing the requirements on the system developers
Use Cases and the User Goal Technique
User goal technique a technique to identify use cases by determining what specifc goals or
objectives must be completed by the system for the user
The user goal technique for identifying use cases includes these steps:
1. Identify all the potential users for the new system.
2. Classify the potential users in terms of their functional role (e.g., shipping, marketing, sales).
3. Further classify potential users by organizational level (e.g., operational, management, executive).
4. Interview each type of user to determine the specifc goals they will have when using the new
system. Start with goals they currently have and then get them to imagine innovative functions
they think would add value. Encourage them to state each goal in the imperative verb-noun form,
such as Add customer, Update order, and Produce month-end report.
5. Create a list of preliminary use cases organized by type of user.
6. Look for duplicates with similar use case names and resolve inconsistencies.
7. Identify where diferent types of users need the same use cases.
8. Review the completed list with each type of user and then with interested stakeholders.
Use Cases and Event Decomposition
Event decomposition technique a technique to identify use cases by determining the business
events to which the system must respond
The appropriate level of detail for identifying use cases is one that focuses on elementary business
processes (EBPs). An EBP is a task that is performed by one person in one place in response to a
, business event, adds measurable business value, and leaves the system and its data in a stable and
consistent state.
Event something that occurs at a specifc time and place, can be precisely identifed, and must be
remembered by the system. Events drive or trigger all processing that a system does, so listing events
and analysing them makes sense when you need to defne system requirements by identifying use
cases.
Types of Events
There are three types of events to consider when using the event decomposition technique to identify
use cases: external events, temporal events, and state events (also called internal events).
External event an event that occurs outside the system, usually initiated by an External agent
Actor an external agent; a person, group or external system that interacts with the system by
supplying or receiving data
Temporal event an event that occurs as a result of reaching a point in time. These events are
diferent from external events in that the system should automatically produce the required output
without being told to do so directly.
State event an event that occurs when something happens inside the system that triggers some
process.
Often, state events occur as a consequence of external events. Sometimes, they are similar to
temporal events, except the point in time cannot be defned. Eg. When a re-order point is reached after
an order is placed. The system reorders due to an external event but on its own accord.
Identifying Events