Agile Testing, Risk, Uncertainty, and Why It All Works (the updated for AGILEEE,  almost all new edition) Elisabeth Hendri...
What Does Agile Really Mean? <ul><li>Agile software teams… </li></ul><ul><li>… Deliver value in the form of releasable sof...
Source: Wikimedia Commons, courtesy of Ray Kurzweil See http://www.kurzweilai.net/the-law-of-accelerating-returns Increasi...
Speculation Buildup   RISK Analyze Design Implement Stabilize Big Bang Release Speculation
Intentions Actual Need Implementation
Speculation, Lack of Alignment, and Risk Intentions Implementation Actual Need ? ? ?
Agile eliminates speculation buildup… Iteration Iteration Iteration Iteration Iteration Speculation
… only if we eliminate the speculation
“ frAgile”   RISK Stabilize Speculation Iterations…
Every. Single. Time. Empirical Evidence speculation
The organizations best positioned to succeed are the ones that   LEARN
Build Measure Learn
How do we check alignment? Get out of the building! Steve Blank, author of  Four Steps to the Epiphany ? Intentions Implem...
How do we check alignment? Begin with the End in Mind. Capture examples with expectations. Automate checking of expectatio...
The Letter and Spirit of a Story Explicit Expectations Implicit Expectations
Check that all previously met expectations are still met even as the solution grows in capability and complexity.
How do we check alignment? Demo.  Rehearse delivery. Deliver frequently. Explore with the customer or proxy. ? Intentions ...
Reducing Feedback Latency Latency Develop Demo
What Does Agile Really Mean? <ul><li>Agile software teams… </li></ul><ul><li>… Deliver value in the form of releasable sof...
Intentions Implementation Actual Need ✔ ✔ ✔
(OK, now let’s talk about “testing.”)
 
Checking Alignment Intentions Implementation Actual Need
Every. Single. Time. speculation Empirical Evidence
The Whole Team Succeeds or Fails TOGETHER “ Hey! There’s a hole in your side of the boat.” There is no “Us” and “Them.”   ...
Nine Key Technical Testing-Related  Agile Practices ATDD TDD Exploratory Testing Collective Ownership Automated Unit Tests...
Test-First Mindset:  Begin with the End in Mind Code Strategy How will I know my efforts have the result I intended? Initi...
Acceptance-Test Driven Development (ATDD) User Story Workshop Implementation Agile-Friendly Test Automation Framework
Continuous Integration (CI) CI tools do automated builds, execute tests, and report the results  Developers practicing CI ...
Version ALL Technical Assets  with   the Code Unit Tests Production Code Source Control Repository (Plus All other technic...
Increase Visibility
Automated Deploy
Fail Early, Fail Fast Failing early & fast gives us time  to fix the problems. Local Unit Tests Secs- Mins Mins CI Build M...
Red  Build Means Stop the Line If a previously passing expectation fails, there’s a bug. Bugs slow everything down. To kee...
Exploratory Testing <ul><li>Simultaneously… </li></ul><ul><li>… learning about the software  </li></ul><ul><li>… designing...
Done Includes Tested <ul><li>Implemented </li></ul><ul><li>+ Checked </li></ul><ul><li>+ Explored </li></ul><ul><li>== DON...
Every. Single. Time. speculation Empirical Evidence
LEARN TEST Intentions Implementation Actual Need
Upcoming SlideShare
Loading in …5
×

Agile Testing. Risks, Uncertainty and Why It All Works

3,923 views

Published on

Published in: Technology
  • Be the first to comment

Agile Testing. Risks, Uncertainty and Why It All Works

  1. 1. Agile Testing, Risk, Uncertainty, and Why It All Works (the updated for AGILEEE, almost all new edition) Elisabeth Hendrickson Quality Tree Software, Inc. www.qualitytree.com [email_address] Last updated September 22, 2011 Copyright © 2011 Elisabeth Hendrickson, Quality Tree Software, Inc.
  2. 2. What Does Agile Really Mean? <ul><li>Agile software teams… </li></ul><ul><li>… Deliver value in the form of releasable software at frequent regular intervals (at least monthly)… </li></ul><ul><li>… At a sustainable pace… </li></ul><ul><li>… While adapting to the changing needs of the business. </li></ul>
  3. 3. Source: Wikimedia Commons, courtesy of Ray Kurzweil See http://www.kurzweilai.net/the-law-of-accelerating-returns Increasing Complexity
  4. 4. Speculation Buildup RISK Analyze Design Implement Stabilize Big Bang Release Speculation
  5. 5. Intentions Actual Need Implementation
  6. 6. Speculation, Lack of Alignment, and Risk Intentions Implementation Actual Need ? ? ?
  7. 7. Agile eliminates speculation buildup… Iteration Iteration Iteration Iteration Iteration Speculation
  8. 8. … only if we eliminate the speculation
  9. 9. “ frAgile” RISK Stabilize Speculation Iterations…
  10. 10. Every. Single. Time. Empirical Evidence speculation
  11. 11. The organizations best positioned to succeed are the ones that LEARN
  12. 12. Build Measure Learn
  13. 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. 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. 15. The Letter and Spirit of a Story Explicit Expectations Implicit Expectations
  16. 16. Check that all previously met expectations are still met even as the solution grows in capability and complexity.
  17. 17. How do we check alignment? Demo. Rehearse delivery. Deliver frequently. Explore with the customer or proxy. ? Intentions Implementation Actual Need
  18. 18. Reducing Feedback Latency Latency Develop Demo
  19. 19. What Does Agile Really Mean? <ul><li>Agile software teams… </li></ul><ul><li>… Deliver value in the form of releasable software at frequent regular intervals (at least monthly)… </li></ul><ul><li>… At a sustainable pace… </li></ul><ul><li>… While adapting to the changing needs of the business. </li></ul>
  20. 20. Intentions Implementation Actual Need ✔ ✔ ✔
  21. 21. (OK, now let’s talk about “testing.”)
  22. 23. Checking Alignment Intentions Implementation Actual Need
  23. 24. Every. Single. Time. speculation Empirical Evidence
  24. 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:
  25. 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
  26. 27. Test-First Mindset: Begin with the End in Mind Code Strategy How will I know my efforts have the result I intended? Initiative
  27. 28. Acceptance-Test Driven Development (ATDD) User Story Workshop Implementation Agile-Friendly Test Automation Framework
  28. 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
  29. 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
  30. 31. Increase Visibility
  31. 32. Automated Deploy
  32. 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
  33. 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.
  34. 35. Exploratory Testing <ul><li>Simultaneously… </li></ul><ul><li>… learning about the software </li></ul><ul><li>… designing tests </li></ul><ul><li>… executing tests </li></ul><ul><li>using feedback from the last test to inform the next </li></ul>(See Jon and James Bach’s work on Session-Based ET)
  35. 36. Done Includes Tested <ul><li>Implemented </li></ul><ul><li>+ Checked </li></ul><ul><li>+ Explored </li></ul><ul><li>== DONE </li></ul>
  36. 37. Every. Single. Time. speculation Empirical Evidence
  37. 38. LEARN TEST Intentions Implementation Actual Need

×