Neil Killick, Lead Agile Coach
neilkillick.com [email protected] @neil_killick
Building in quality
using #NoEstimatesAcceptance Test slicing heuristics
Copyright Neil Killick, 2015
SPEED Shinkansen trains can reach speeds of up to 320km/h
PREDICTABILITY ❏ 13 trains per hour between Tokyo & Osaka (every 3-5 mins)❏ In 2014, avg delay was 54 seconds, including uncontrollable
causes such as natural disasters
RELIABILITY5 billion passengers, 150 million per year
COMFORT & SAFETY❏ No accident-related deaths in whole 50 years of operation
❏ Trains run smoothly & are kept very clean
How did they do it?
❏ Built dedicated lines for high speed rail, so not slowed down by slower trains
❏ No road crossings
❏ Specially designed tracks
❏ Dedicated drivers and support staff
You can’t just make a train faster or more reliable.
You must create a network for fast, reliable trains.
So, What is a Slicing Heuristic?
❏ An explicit policy that describes how to "slice" work to help us achieve:❏ Faster time to market❏ Better predictability❏ Higher quality
❏ How?❏ Define work with a consistent & shared language❏ Replace deterministic estimation rituals with:
❏ Slicing rituals❏ Empirical measurement of actual cycle times for
all work types
slicing…[creating] relatively thin, broad piece[s] cut from an object having some bulk or volume…
[ref: yourdictionary.com]
heuristic...any approach to problem solving, learning, or discovery that employs a practical methodology not guaranteed to be optimal or perfect, but sufficient for the immediate goals.
[ref: Wikipedia]
How To: 5-step cycle
1. Define & agree work types
2. Agree slicing policy for eachwork type
3. Slice work, Just-In-Time
4. Do work + measurecycle times
5. Inspect & adapt policies
Initiative
Capability
Feature
Story
BuildSlice
MeasureLearn
InitiativeCapability 1 Capability 2 Capability 3
Feature1
Feature 2
Feature1
Feature 2
Feature1
Feature 2
Story1
Story2
Story3
Story4
Story1
Story2
Story1
Story3
Story2
Story2
Story1
Story1
Story3
Story2
Story4
Story1
Story3
Story2
Online LoansCustomer can apply for a loan online
Customer can manage their loan online
Customer can split their loan online
Loan application
wizard
Acc Test
Acc Test
Acc Test
Acc Test
Loan portalCustomer
identification & authentication
Acc Test
Acc Test
Acc Test
Acc Test
Acc Test
Acc Test
Acc Test
Acc Test
Customer can apply for a holiday loan during a credit crunch
https://mysoftwarequality.wordpress.com/2012/12/14/how-to-transform-bad-acceptance-tests-into-awesome-ones/
by Augusto Evangelisti
1 Acceptance test heuristic
To Do Doing Done
= 1 elapsed day
Easy to add a dot at daily standup, or just update the data daily in a spreadsheet
Story 1 Story 2 Story 3 Story 4 Story 5
Elapsed days 2 3 1 1 2
Days
Stories
We need this data!
Do work + measure cycle times
Benefits
❏ Explicitly building in quality❏ Empirical❏ Small batches❏ Optimised for conversations❏ Collaboration “up the chain”
❏ Build the right thing (right solution for right problem)
❏ Control risk (cost/schedule)
Initiative
Capability
Feature
Story
❏ Max 3 Capabilities❏ Cycle time < 6
months❏ Std dev < 3 weeks
❏ Max 2 Features❏ Cycle time < 2
months❏ Std dev < 6 days
❏ Max 4 Stories❏ Cycle time < 2 weeks❏ Std dev < 3.5 days
❏ 1 Acceptance Test❏ Cycle time < 3 days❏ Std dev < 0.5 days
Neil Killick, Lead Agile Coach
neilkillick.com [email protected] @neil_killick
Copyright Neil Killick, 2015