Marco Alabruzzo
Engineering Manager
marco.alabruzzo@gmail.com
Gentrack - Hydra team day
28 June 2023
1) Focus
2) Transparency
3) Predictability
4) Flexibility
5) Risk
Why we need smaller stories
Divide et Impera
Smaller problems are easier to solve, since is easier to focus on something smaller.
Herodotus, Philip II of Macedon, Julius Caesar, Sun Tzu, Machiavelli, Napoleon, Sir Francis Bacon, Thomas Jefferson, Immanuel Kant etc.
Why we need smaller stories
We will know sooner when there is a problem
Consider a estimation that is 20% too short.
If we do a single task of 10 days, we will know that the original estimate was short after 12 days.
If we split that in 5 stories of 2 days, we will know that we are late after 2-3 stories.
A week before.
Why we need smaller stories
Having to break down the work in smaller chunks will force more work in the early stage how the process
CODING
REVIEW / TEST
PLANNING
Why we need smaller stories
Lightweight planning - Bigger stories
Detailed planning - Smaller stories
*these are both extreme views
CODING
REVIEW / TEST
PLANNING
CODING
REVIEW / TEST
PLANNING
Why we need smaller stories
SPRINT CAPACITY
SPRINT CAPACITY
Why we need smaller stories
Ideally one day per ticket
We don't need to be perfect form day one.
We can start with aiming at 3-4 days maximum, then iterate.
How to do smaller stories
FRONT END
BACK END
DATABASE
Horizontal
One story per layer of the stack
Vertical
One story per feature
How to do smaller stories
Given some precondition
When I do some action
Then I expect some result
Given: The user navigates to the login page
When: The user selects <forgot password> option
And: Enters a valid email to receive a link for password recovery
Then: The system sends the link to the entered email
Given: The user receives the link via the email
When: The user navigates through the link received in the email
Then: The system enables the user to set a new password
How to do smaller stories
First story Happy Path
Everything goes right
Then a story for each failure scenario
Ordered by Probability
How to do smaller stories
First story
Prototype with slow/ugly code
Following stories
Improve one aspect at the time
How to do smaller stories
These are just few examples,
google around and you will find more!
Questions?