13. How do we check alignment? Get out of the building! Steve Blank, author of Four Steps to the Epiphany ? Intentions Implementation Actual Need
14. How do we check alignment? Begin with the End in Mind. Capture examples with expectations. Automate checking of expectations. Explore to discover risks. ? Intentions Implementation Actual Need
15. The Letter and Spirit of a Story Explicit Expectations Implicit Expectations
16. Check that all previously met expectations are still met even as the solution grows in capability and complexity.
17. How do we check alignment? Demo. Rehearse delivery. Deliver frequently. Explore with the customer or proxy. ? Intentions Implementation Actual Need
25. The Whole Team Succeeds or Fails TOGETHER “ Hey! There’s a hole in your side of the boat.” There is no “Us” and “Them.” There is only Us. As Alistair Cockburn says:
26. Nine Key Technical Testing-Related Agile Practices ATDD TDD Exploratory Testing Collective Ownership Automated Unit Tests Automated System Tests Continuous Integration Rehearse Delivery Automated Deploy
27. Test-First Mindset: Begin with the End in Mind Code Strategy How will I know my efforts have the result I intended? Initiative
29. Continuous Integration (CI) CI tools do automated builds, execute tests, and report the results Developers practicing CI merge their changes locally & execute tests before checking in
30. Version ALL Technical Assets with the Code Unit Tests Production Code Source Control Repository (Plus All other technical assets) Test “Fixture” Code Acceptance Tests
33. Fail Early, Fail Fast Failing early & fast gives us time to fix the problems. Local Unit Tests Secs- Mins Mins CI Build Mins- Hrs Automated Regression Hrs- Days Exploration
34. Red Build Means Stop the Line If a previously passing expectation fails, there’s a bug. Bugs slow everything down. To keep sustainable pace, fix bugs fast. We can just throw that bug on the pile with the others. Yuck. But that will increase technical debt & slow velocity.