#LSSC11 /CC @yuvalyeret<br />Testing Flow<br />Using flow approaches to effectively manage agile testing at the enterprise...
Repeat after me:VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALU...
What we covered<br />Testing<br />Elasticity<br />Test-specific<br />Challenges<br />To <br />Flow<br />Why Flow for Testi...
Distress call!<br />“We need to release much more frequently”<br />“the business cannot live with months of hardening”<br ...
So why not just do Scrum+XP?<br />Sufficient?Not for  Enterprise scale<br />Necessary? <br />Not all of it<br />Pragmatic?...
DONE DONE– The Enterprise Testing Challenge<br />“We are doing agile iterations for development and testing and it is goin...
What are the alternatives?<br />Longer Sprints<br />Sprint<br />Synchronized<br />Handoffs<br />Flow-based <br />Handoffs<...
Flowing all the way to DONE DONE<br />DONE DONE<br />READY<br />DONE<br />9<br />
Complement<br />Solutions<br />Focus<br />Pragmatic Pace<br />
So... We started to use a recipe based on Flow<br />
Current Reality Tree<br />Let’s dive into why this is a problem<br />LOW PREDICTABILITY<br />HIGH STABILIZATION COSTS<br /...
Is this Evolution or Revolution? k/K?<br />Performance<br />Distress Calls + <br />Israeli Impatience? <br />Evolution<br ...
Lets see how it looks like in practice<br />
“What is the gapbetween dev and test? What are we doing to close it?”<br />
BAD<br />GOOD<br />Limit Defects in Process – Early Quality is Cheap Quality<br />
“We used to feel comfortable to release quarterly and anxious to release every two weeks. “<br />“Now releasing every two ...
Always go for Continuous Deployment???<br />Not necessarily<br />
What we covered<br />Testing<br />Elasticity<br />Test-specific<br />Challenges<br />To <br />Flow<br />
Limiting WIP – pull according to the bottleneck<br />DONE<br />R<br />D<br />C<br />Hardening<br />R<br />D<br />C<br />T<...
WIP Limits SLACKTIME ???<br />* No coaches were idle due to the preparation of this presentation<br />
Feature Freeze<br />Coding Done<br />DONE<br />Hardening<br />R<br />D<br />C<br />T<br />R<br />D<br />C<br />T<br />R<br...
What LIMITED WIP Does<br />Fix open defects on current work<br />3<br />WIP Limit!<br />Can’t startnew DEV work!<br />Help...
What LIMITED WIP Does<br />Automate Setups and Test Data<br />Improve quality you deliver to QA!<br />Half of our work is ...
Developers<br />Developers<br />Testers<br />Where Kanbanis used, Whole Team, ATDD and other Agile Testing approaches emer...
problem solved?<br />
“Testing was always like a pillow – it took whatever space was left. We used to have a cap on testing because there was a ...
Testing/Verification is a highly Elastic activityLets look at a few ways to cope ...<br />
Cadence of releases/drops, will drive completion<br />
Have an explicit policy regarding the desired/acceptable size of work<br />
Care about Cycle Time & Done<br />Testing<br />End to End<br />
Due Datescan help(Especially if doable and agreed upon with delivery team)<br />http://yuvalyeret.com/2010/09/19/kanban-ea...
No REAL external Due Date?<br />tryInternal Cycle Time Soft Goals based on learned capabilities<br />Avoidlocal due dates!...
Try...In-Flight Control Chart<br />
Energizing Purpose and Whole Team Accountability<br />
Can testing be overdone?<br />
Talk about what is DoneEstablish Explicit Policies<br />
Experiment with using an Explicit Policies board documenting your process<br />
Different work types / CoS can have different Done/Release Criteria<br />
1<br />2<br />3<br />Goals+Visibility enhance Purpose<br />
What we covered<br />Testing<br />Elasticity<br />Issues at Scale<br />
Will visualizing and managing flow in each of those roads be enough? <br />
Need to visualize and manage the global end to end flow across sharedresources<br />
Sharing<br />
Manage flow at the level at which resources are shared<br />
3<br />
Example Policy - Classes of Service for Downstream Involvement<br />Classes of Treatment<br />Risk Profiling  Involvement...
Upcoming SlideShare
Loading in...5
×

Using flow approaches to effectively manage agile testing at the enterprise level

2,157

Published on

Slides from my upcoming LSSC11 talk:

More and more organizations want to become more agile these days. When the theory hits the shores of reality, few organizations can get to an idealistic agile feature team that does all testing within sprints, has no need for release-level processes, and where everything is fully automated continuous deployment style. Usually the testing organization is in the eye of the storm when talking about Big Batches, Wastes, ineffective handoffs and mountains of rework, as well as high transaction costs. I’ve recently been using Lean/Kanban flow based approaches to provide a way to evolve testing organizations to a more effective way of working, so that they can better support earlier feedback and higher flexibility. I will present this work as well as case studies from enterprise-level product development companies that are starting to use these approaches.
We will deal with the following challenges:

* Complex environments when it is not realistic to finish all required work within a sprint
* How to visualize and reduce testing batch sizes within sprints/releases using CFD
* How to deal with the testing bottleneck so common in product development organizations – practical suggestions and how to deal with the mindset issues
* How to run stabilization/hardening periods using Flow-based thinking

http://lssc11.crowdvine.com/talks/18074

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

No Downloads
Views
Total Views
2,157
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
66
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide
  • Recipe for Continuous Stabilization How to deal with Elasticity in Testing (and in general...)How to deal with Shared Test LabsClasses of treatment
  • Recipe for Continuous Stabilization How to deal with Elasticity in Testing (and in general...)How to deal with Shared Test LabsClasses of treatment
  • http://www.flickr.com/photos/andreasnilsson1976/1307180278/sizes/l/in/photostream/
  • TODO Highlight where I’m going to focus today.
  • Can do it either way – but last few examples we see are a “Burning platform” so willing to sacrifice in order to see quick improvementsInteresting though – even under distress, going Scrum all the way is usually not chosen. Several theories why? Offline...
  • What does it mean to manage flow? Managers take action to stop the line in case of high WIPIdentify bottlenecks and divert resources / focusManagement attention
  • Vote:Who here is working on V&lt;1.0?Of those – who knows up front the majority of the scope of V1.0? The rest should care.On those working
  • Recipe for Continuous Stabilization How to deal with Elasticity in Testing (and in general...)How to deal with Shared Test LabsClasses of treatment
  • Empty after testing, development in done testing busy  bottleneck in testingThis is a classic bottleneck in an R&amp;D team.Testing are at their work in progress limit, meaning they cannot take on more work. Acceptance has no work in progress, what we call a “bubble”Development are at their limit as well. Nothing from Testing is DONE waiting to be pulled, which explains why Acceptance has a bubble
  • Automation – not just test automation!How can we help you spend more time actually testing (compared to setup, and other wastes) (http://theoryofconstraints.blogspot.com/2007/06/toc-stories-2-blue-light-creating.html) How often do we need to retest? Why?ATDD - drives better code into testing, as well as offload some testing workAgree on “READY for Testing” criteria for stories, setup relevant team rules and processes.
  • http://www.flickr.com/photos/basf/4837105835/sizes/l/in/photostream/High variability – you never know what you get...High elasticity – You can always do more – Which is a special kind of Variability...
  • http://www.flickr.com/photos/basf/4837105835/sizes/l/in/photostream/High variability – you never know what you get...High elasticity – You can always do more – Which is a special kind of Variability...
  • What does it mean to manage flow? Managers take action to stop the line in case of high WIPIdentify bottlenecks and divert resources / focusManagement attention
  • Explicit expectation – can be via uniform size, or via some level of estimations.
  • When there is an external due date – sure, put it on there, and it will create purposeBut what if there isn’t really an external due date? Put the estimated due date based on your current cycle time predictability control chart.
  • Testers should not feel like the “last line of defense” – they should really get higher quality stuff to begin with. Everyone should support doing the right amount of testing, sometimes it will be more, sometimes it will be lessEveryone should start to think about the right economic decision, not just perfect quality. With history of low quality, it is hard for testers to trust this will happen. When you start building quality in, trust can build, and risks can start to be taken. Talk about my experience in SANRAD about this? 51? What happens when Whole Team approach starts to kick in. Testers should
  • Sometimes fixing all defects is NOT the right economic decision...
  • Main point is to have a discussion about the policies, share the view about why they should work for you, and be clear about the expectations. Talk about Testing Yield
  • Main point is to have a discussion about the policies, share the view about why they should work for you, and be clear about the expectations.
  • Recipe for Continuous Stabilization How to deal with Elasticity in Testing (and in general...)How to deal with Shared Test LabsClasses of treatment
  • TODO – summarize the tools/tips until nowPut the tips on the screen
  • TODO – emphasize the shared resources
  • Red– performance team Must be involved hands onYellow– performance team Advise/Consult, but most work is in TeamsGreen– don’t need any involvement from performance teamDrives collective ownership of performance (and other “Ilities”) – And is another form of subordinationto the constraint
  • Recipe for Continuous Stabilization How to deal with Elasticity in Testing (and in general...)How to deal with Shared Test LabsClasses of treatment
  • Recipe for Continuous Stabilization How to deal with Elasticity in Testing (and in general...)How to deal with Shared Test LabsClasses of treatment
  • Using flow approaches to effectively manage agile testing at the enterprise level

    1. 1. #LSSC11 /CC @yuvalyeret<br />Testing Flow<br />Using flow approaches to effectively manage agile testing at the enterprise level<br />Yuval Yeret – <br />Kanban Lead - AgileSparks<br />
    2. 2. Repeat after me:VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE-VALUE<br />UE-VAL == YUVAL<br />
    3. 3.
    4. 4. What we covered<br />Testing<br />Elasticity<br />Test-specific<br />Challenges<br />To <br />Flow<br />Why Flow for Testing<br />Issues at Scale<br />
    5. 5. Distress call!<br />“We need to release much more frequently”<br />“the business cannot live with months of hardening”<br />We want Agile to save us!<br />
    6. 6. So why not just do Scrum+XP?<br />Sufficient?Not for Enterprise scale<br />Necessary? <br />Not all of it<br />Pragmatic?<br />So so<br />
    7. 7. DONE DONE– The Enterprise Testing Challenge<br />“We are doing agile iterations for development and testing and it is going quite well. One of our greatest challenges is dealing with the stuff we cannot finish within the iteration – currently its one big pile at the end”<br /> R&D GM<br /> Large Enterprise Software Group<br />
    8. 8. What are the alternatives?<br />Longer Sprints<br />Sprint<br />Synchronized<br />Handoffs<br />Flow-based <br />Handoffs<br />
    9. 9. Flowing all the way to DONE DONE<br />DONE DONE<br />READY<br />DONE<br />9<br />
    10. 10. Complement<br />Solutions<br />Focus<br />Pragmatic Pace<br />
    11. 11. So... We started to use a recipe based on Flow<br />
    12. 12. Current Reality Tree<br />Let’s dive into why this is a problem<br />LOW PREDICTABILITY<br />HIGH STABILIZATION COSTS<br />QUALITY @ THE END<br />LATE FEEDBACK<br />HEAVY MANUAL TESTING<br />LONG CYCLE TIMES<br />LARGE WIP<br />BIG BATCHES<br />BIG FEATURES<br />FEATURE PER PERSON<br />DONE DONE<br />LIMIT FEATURES IN PROGRESS<br />AUTOMATE AS PART OF DONE<br />CONTINUOUS INTEGRATION<br />SPECIALIZAT-ION<br />LONE WOLFS<br />NOT EFFECTIVE<br />FEATURE FREEZE POLICY TOO STRICT<br />HIGH COST<br />OUR BUILD IS NOT STABLE<br />LIMIT OPEN DEFECTS<br />SMALLER FEATURES<br />COLLECTIVE OWNERSHIP<br />LIMIT AT THE FEATURE LEVEL<br />WHOLE TEAM<br />AUTOMATION PYRAMID<br />INVEST IN REMOVING INSTABILITY<br />IMPROVEMENT BACKLOG<br />START AS IS, SHORTEN WHEN PREDICTABLE<br />FIX M/L DEFECTS?<br />LOSE SIGHT OF THE BIG PICTURE<br />LARGE OVERHEAD<br />EXISTING GAP IS TOO BIG<br />EFFECTIVE SLICING<br />PRAGMATIC RISK PROFILING<br />TRANSITION BASED ON NECESSITY<br />elad@agilesparks.com<br />http://blog.crisp.se/henrikkniberg<br />http://www.flickr.com/photos/librarygoblin/4307610546/lightbox/<br />
    13. 13. Is this Evolution or Revolution? k/K?<br />Performance<br />Distress Calls + <br />Israeli Impatience? <br />Evolution<br />Time<br />This is what we see in Israel...<br />
    14. 14. Lets see how it looks like in practice<br />
    15. 15. “What is the gapbetween dev and test? What are we doing to close it?”<br />
    16. 16. BAD<br />GOOD<br />Limit Defects in Process – Early Quality is Cheap Quality<br />
    17. 17. “We used to feel comfortable to release quarterly and anxious to release every two weeks. “<br />“Now releasing every two weeks is natural. We are anxious when we can’t do it [due to holiday freeze]”<br />FiftyOne.com<br />
    18. 18. Always go for Continuous Deployment???<br />Not necessarily<br />
    19. 19. What we covered<br />Testing<br />Elasticity<br />Test-specific<br />Challenges<br />To <br />Flow<br />
    20. 20. Limiting WIP – pull according to the bottleneck<br />DONE<br />R<br />D<br />C<br />Hardening<br />R<br />D<br />C<br />T<br />R<br />D<br />C<br />T<br />R<br />D<br />C<br />T<br />R<br />D<br />C<br />T<br />R<br />D<br />C<br />T<br />Time<br />
    21. 21.
    22. 22. WIP Limits SLACKTIME ???<br />* No coaches were idle due to the preparation of this presentation<br />
    23. 23. Feature Freeze<br />Coding Done<br />DONE<br />Hardening<br />R<br />D<br />C<br />T<br />R<br />D<br />C<br />T<br />R<br />D<br />C<br />T<br />R<br />D<br />C<br />T<br />R<br />D<br />C<br />T<br />R<br />D<br />C<br />T<br />
    24. 24. What LIMITED WIP Does<br />Fix open defects on current work<br />3<br />WIP Limit!<br />Can’t startnew DEV work!<br />Help us with Blocker<br />T<br />D<br />T<br />D<br />T<br />D<br />Help us automate tests for current work<br />How can we help current work?<br />
    25. 25. What LIMITED WIP Does<br />Automate Setups and Test Data<br />Improve quality you deliver to QA!<br />Half of our work is not core test work. Maybe you can take some of it, or help us reduce waste there <br />3<br />T<br />D<br />T<br />D<br />Ways to share the test load – e.g. automation/setups work<br />T<br />D<br />How can I help you be more efficient?<br />
    26. 26. Developers<br />Developers<br />Testers<br />Where Kanbanis used, Whole Team, ATDD and other Agile Testing approaches emerge MUCH faster<br />
    27. 27. problem solved?<br />
    28. 28. “Testing was always like a pillow – it took whatever space was left. We used to have a cap on testing because there was a deadline...<br />...Now with the new Flow mode the inmates are running the asylum [and we have no cap on how long testing takes]”<br /> A worried Dev Manager<br />
    29. 29. Testing/Verification is a highly Elastic activityLets look at a few ways to cope ...<br />
    30. 30. Cadence of releases/drops, will drive completion<br />
    31. 31. Have an explicit policy regarding the desired/acceptable size of work<br />
    32. 32. Care about Cycle Time & Done<br />Testing<br />End to End<br />
    33. 33. Due Datescan help(Especially if doable and agreed upon with delivery team)<br />http://yuvalyeret.com/2010/09/19/kanban-early-warning-using-a-predictive-variant-of-spc/<br />
    34. 34. No REAL external Due Date?<br />tryInternal Cycle Time Soft Goals based on learned capabilities<br />Avoidlocal due dates!<br />http://yuvalyeret.com/2010/09/19/kanban-early-warning-using-a-predictive-variant-of-spc/<br />
    35. 35. Try...In-Flight Control Chart<br />
    36. 36. Energizing Purpose and Whole Team Accountability<br />
    37. 37. Can testing be overdone?<br />
    38. 38. Talk about what is DoneEstablish Explicit Policies<br />
    39. 39. Experiment with using an Explicit Policies board documenting your process<br />
    40. 40. Different work types / CoS can have different Done/Release Criteria<br />
    41. 41.
    42. 42. 1<br />2<br />3<br />Goals+Visibility enhance Purpose<br />
    43. 43. What we covered<br />Testing<br />Elasticity<br />Issues at Scale<br />
    44. 44. Will visualizing and managing flow in each of those roads be enough? <br />
    45. 45. Need to visualize and manage the global end to end flow across sharedresources<br />
    46. 46. Sharing<br />
    47. 47. Manage flow at the level at which resources are shared<br />
    48. 48. 3<br />
    49. 49. Example Policy - Classes of Service for Downstream Involvement<br />Classes of Treatment<br />Risk Profiling  Involvement mode of the shared resource<br />
    50. 50. What we covered<br />Testing<br />Elasticity<br />
    51. 51. yuval@agilesparks.com<br />@yuvalyeret<br />Get the slides at http://www.slideshare.net/yyeret<br />Questions? <br />Blogging at <br />http://yuvalyeret.com<br />
    52. 52. Images Attribution<br />http://www.flickr.com/photos/yuvalyeret/265568342/in/set-72157594323037021/<br />www.slideshare.net/wnazzaro/agile-it-and-the-business-community<br />http://www.freefoto.com/images/41/03/41_03_4---Weight-Limit-Sign_web.jpg?&k=Weight+Limit+Sign<br />http://www.flickr.com/photos/maisonbisson/267746261/sizes/o/in/photostream/<br />http://www.flickr.com/photos/malavoda/4195215934/sizes/l/in/photostream/<br />http://www.flickr.com/photos/njj4/5044361592/sizes/l/in/photostream/<br />http://www.flickr.com/photos/grafixer/3527166081/sizes/l/in/photostream/<br />http://www.flickr.com/photos/librarygoblin/4307610546/lightbox/<br />http://www.flickr.com/photos/orinrobertjohn/2188280583/sizes/l/in/photostream/<br />http://www.flickr.com/photos/kwl/4809326028/<br />http://www.flickr.com/photos/justin_case/54087334/sizes/o/in/photostream/<br />http://www.flickr.com/photos/noneck/869906174/sizes/l/in/photostream/<br />http://www.flickr.com/photos/wendycopley/1332359314/<br />http://www.flickr.com/photos/frumbert/307532180/sizes/l/in/photostream/<br />http://www.flickr.com/photos/tgillin/4599272187/<br />http://www.flickr.com/photos/rolleh/3475746680/sizes/o/in/photostream/<br />http://www.flickr.com/photos/pamilne/3401930511/sizes/l/in/photostream/<br />http://www.flickr.com/photos/batintherain/112826092/sizes/l/in/photostream/<br />http://sherisays.files.wordpress.com/2010/08/drivers-stuck-in-traffic-jam-for-9-days-in-china.jpg<br />http://www.flickr.com/photos/slidesf/2648616262/sizes/l/in/photostream/<br />http://www.flickr.com/photos/jongales/391648530/sizes/l/in/photostream/<br />http://www.flickr.com/photos/andreasnilsson1976/1307180278/sizes/l/in/photostream/<br />http://www.flickr.com/photos/basf/4837105835/sizes/l/in/photostream/<br />
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×