Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Building in quality using #NoEstimates acceptance test slicing heuristics

1,911 views

Published on

Slicing heuristics are explicit policies that help teams "slice" work Just-In-Time for consistency, a shared language and better predictability.

Acceptance tests help us develop software incrementally and collaboratively to meet customer needs. By using acceptance tests as a basis for slicing, we can replace deterministic estimation rituals with valuable conversations about the software we are building, ensure every increment we deliver is complete and bug free, and use empirical measurement of actual cycle times to help product owners make forecasts and teams to improve their throughput of value.

This talk will equip teams and organisations who are established on their Agile journey with a robust, clear and repeatable method for improving the quality and time-to-market of their software development efforts.

Published in: Technology

Building in quality using #NoEstimates acceptance test slicing heuristics

  1. 1. Neil Killick, Lead Agile Coach neilkillick.com neil2killick@gmail.com @neil_killick Building in quality using #NoEstimates Acceptance Test slicing heuristics Copyright Neil Killick, 2015
  2. 2. 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 RELIABILITY 5 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
  3. 3. 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
  4. 4. You can’t just make a train faster or more reliable. You must create a network for fast, reliable trains.
  5. 5. 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
  6. 6. 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]
  7. 7. How To: 5-step cycle 1. Define & agree work types 2. Agree slicing policy for each work type 3. Slice work, Just-In-Time 4. Do work + measure cycle times 5. Inspect & adapt policies Initiative Capability Feature Story Build Slice Measure Learn
  8. 8. Initiative Capability 1 Capability 2 Capability 3 Feature 1 Feature 2 Feature 1 Feature 2 Feature 1 Feature 2 Story 1 Story 2 Story 3 Story 4 Story 1 Story 2 Story 1 Story 3 Story 2 Story 2 Story 1 Story 1 Story 3 Story 2 Story 4 Story 1 Story 3 Story 2
  9. 9. Online Loans Customer 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 portal Customer identification & authentication Acc Test Acc Test Acc Test Acc Test Acc Test Acc Test Acc Test Acc Test
  10. 10. 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
  11. 11. 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
  12. 12. 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
  13. 13. DISCLAIMER This will only work if you try it.
  14. 14. Neil Killick, Lead Agile Coach neilkillick.com neil2killick@gmail.com @neil_killick Copyright Neil Killick, 2015

×