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,909 views

Published on

Published in: Technology
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,909
On SlideShare
0
From Embeds
0
Number of Embeds
1,543
Actions
Shares
0
Downloads
70
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide
  • Agile Testing, Uncertainty, Risk, &amp; Why It All Works Copyright (c) 2010, Quality Tree Software, Inc.
  • Copyright (c) 2010, Quality Tree Software, Inc.
  • Agile Testing, Uncertainty, Risk, &amp; Why It All Works Copyright (c) 2010, Quality Tree Software, Inc.
  • Copyright (c) 2010, Quality Tree Software, Inc.
  • Agile Testing, Uncertainty, Risk, &amp; Why It All Works Copyright (c) 2010, Quality Tree Software, Inc.
  • Agile Testing, Uncertainty, Risk, &amp; Why It All Works Copyright (c) 2010, Quality Tree Software, Inc.
  • Agile Testing, Uncertainty, Risk, &amp; Why It All Works Copyright (c) 2010, Quality Tree Software, Inc.
  • Copyright (c) 2010, Quality Tree Software, Inc.
  • 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

    ×