Splitting User Stories by Workflow Steps or Events
The idea of splitting a User Story or Epic by workflow steps is simple:
- Find the fewest number of workflow steps needed to deliver business value to the end-user
- Create a Split Story for those steps
- Move the remaining steps of the workflow to future releases.
However, if you have ever tried to split a Feature, Story, or Epic by workflow steps, you know how tricky it can be.
For simple workflows, we recommend a technique called “Sequence of Events.” It works like this: You ask your end-users to walk through the events that happen (workflow steps) in their head and write them down on a piece of paper. Tell them not to worry about whether the steps are sequential or not, you just want to hear them all.
For example, for an event planning product, we got this Epic that needed splitting:
As Event Manager, I can arrange for all facilities online to optimally support the event.
After talking to the SME, we wrote down the following business events:
- Contact performers (artists)
- Capture performers’ venue requirements
- Research potential venues
- Compare venue availability, cost, and features
- Select best-fit venue
- Schedule event with venue and performers
- Add event to EventBrite
- Monitor ticket sales
One way to split this Story would be to create a User Story for each event, then decide whether the resulting Story deliver sufficient value to be stand-alone.
After evaluating, we decided that “Contact performers (artists)” alone would not provide enough business value, so we combined it with “Capture venue requirements”. This resulted in the User Story:
As Event Manager, I can get venue requirements from the performing artists to ensure that the facilities I book work for them.
That Story definitively has value to the event manager all by itself. We moved the remaining User Stories into future iterations.
This method is great for simple workflows where you can predict what will happen next. But if you have complex processes with lots of exceptions and other unpredictable behaviors, you might need to do a bit more analysis.
That is when Process Modeling experience comes in handy! If you know how to create Activity or Swimlane Diagrams, Data Flow Diagrams, or some form of process model, you can analyze which set of processes or functions delivers value to the end-user.