You know the requirement is large and needs to be “sliced” into smaller pieces. But how do you do this? I’m offering 3 patterns to help you effectively slice your stories.
First, remember your requirements should follow the INVEST model:
Independent, Negotiable, Valuable, Estimable, Small, and Testable.
1. Conjunctions
Grammar flashback! Look for conjunctions in your requirements. These are opportunities for separating independent functions.
Example: As a conference organizer, I want to collect payment from credit cards and PayPal online so that I can collect funds to cover expenses.
Following the “and”; split this story into 2 stories – 1 for credit cards, 1 for PayPal.
2. Data boundaries
Look for variations in the type of data to be collected, such as payment methods, or along exceptions and error case handling. These are opportunities to split stories which are smaller and easily testable.
Example: As a conference organizer, I want to collect registration including name, contact information, address, and job title so that I know who is attending and where they live.
In this case, we want 4 different types of data, so each piece can be implemented separately. Additionally, we can refine the <so that> statement to better align to a value statement.
3. Operational boundaries
If you are developing a workflow, look for operational boundaries to use as guidance for splitting stories. These operations should be independent of one-another. You can break down each operation multiple times to create a small but valuable requirement.
Example: As a conference organizer, I want to create a new attendee profile so that I can enter a selected attendee into the system for future tracking.
There are many operational steps to creating a new profile including date and type of registration, whether someone attended a previous conference, and what sessions the person chooses. Begin splitting based on each operational step.
Use these guidelines to review your requirements and find opportunities to “slice” smaller. You’ll find smaller stories = more valuable features delivered sooner for your product.
Interested in learning more about Agile Requirements? Join us on August 31st for a User Story Workshop in Arlington, VA.