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.

Agile testing for agile sparks kanban clients

6,591 views

Published on

Presentation used to introduce our clients already using Kanban to the concepts of Agile Testing

Published in: Technology, Education
  • Be the first to comment

Agile testing for agile sparks kanban clients

  1. 1. Agile TestingA.k.a Dev-QA -The Next Generation All Rights Reserved- AgileSparks
  2. 2. So We’ve Gone Kanban w/ some FeatureTeams… So we’re talking about… • Whole Team Approach – WIP Limits keep us together focused on delivering Working Tested Clean Software • Delivering and testing smaller stories much more frequently All Rights Reserved- AgileSparks
  3. 3. Agile is all about early feedback – why?http://less2010.leanssc.org/wp-content/uploads/2010/10/Siemens_Rudolf_Paulisch.pdf © Siemens AG 2010 All Rights Reserved- AgileSparks
  4. 4. How WILL WE get early feedback ? BIG Features All Rights Reserved- AgileSparks
  5. 5. That take very long to get to testing… Longer iterations? All Rights Reserved- AgileSparks
  6. 6. test All Rights Reserved- AgileSparks
  7. 7. Early Feedback – The Goal and the conflict… Improve – Reduce Testing Overhead Ideal Batch Size WITH Ideal Batch Traditional Great automation W/O Processes Automation Earlier Feedback – Cheaper to change Lower Testing Overhead • Even without reducing testing overhead it is usually more cost-effective to reduce batch size • Aim to reduce testing overhead to reduce batch size even more and be even more cost-effective All Rights Reserved- AgileSparks
  8. 8. Continuous Integration All Rights Reserved- AgileSparks
  9. 9. Continuous Integration (CI) –The backbone for Agile testing – the practice of integrating early and often • avoid the pitfalls of "integration hell" – “stop and fix” – Always have a working system based on latest code 2010 Copyright AgileSparks. All rights reserved. All Rights Reserved- AgileSparks
  10. 10. Continuous integration in the XP framework 2010 Copyright AgileSparks. All rights reserved. All Rights Reserved- AgileSparks
  11. 11. But how do we get enough coverage for the Continuous Integration system? All Rights Reserved- AgileSparks
  12. 12. We automate tests as part of Definiton of Done Well, Dah… All Rights Reserved- AgileSparks
  13. 13. But what might happen then? All Rights Reserved- AgileSparks
  14. 14. Pop Quiz Blocked/• What does this mean? Impeded Card Full story at http://yuvalyeret.com/2010/08/03/finding-the-right- dev-to-test-ratio-when-working-in-kanban/ All Rights Reserved- AgileSparks
  15. 15. Pop Quiz Dev A lot of Empty Empty Done WIP in Test downstream almost Test Done (Bubble) Full All Rights Reserved- AgileSparks
  16. 16. What LIMITED WIP Does Fix open defects on our Stories WIP Limit! Can’t start new Help us DEV work! with Blocker Help us automate How can I tests for this help current story stories? All Rights Reserved- AgileSparks
  17. 17. What LIMITED WIP Automate Does Setups and Test Improve Dev Done Half of our work is Data quality! – less not core test work. retesting for us Maybe you can take some of it, or help us reduce waste there Help us do ATDD so you can develop Come pair with based on our test us, you’ll probably expectations, and see things from our also offload some perspective and automation effort have some ideas from us how to help! How can I help you be more efficient? All Rights Reserved- AgileSparks
  18. 18. Agile Testing driven by Flow All Rights Reserved- AgileSparks 18
  19. 19. Automate at the right level Manual UI 5% Acceptance ROI Cost (Service/API) 15% Unit Testing 80% All Rights Reserved- AgileSparkshttp://www.mountaingoatsoftware.com/blog/the-forgotten-layer-of-the-test-automation-pyramid
  20. 20. If we only had limited QA capacity, what would we focus on? What would we enable Devs to do?Automated & Manual manual Business Facing & Automat Functional Tests User Acceptance Tests ed Simulations, prototypesSupports Programming Exploratory Tests Story Usability Exploratory Tests Critiques Product Tests/Examples/ATDD ATDD Testing Q2 Automated Q3 System Tests Q1 Q4 TDD Non-Functional Unit Tests (TDD) Automated Performance Tests Testing Comp./Integration Tests Unit Tests Load Tests, Security Code QualityContinuous tools “bility’ testing Integration Automated Tools Technology Facing All Rights Reserved- AgileSparks
  21. 21. The UNIQUE role of the QA engineers • Being Champions of the Product and the Customer/User. • Specializing in Performance/ Security/Load/etc. • Shining light on where to focus quality efforts by analyzing risk probability and Impact. All Rights Reserved- AgileSparks
  22. 22. Quality OVER Quantity – QA expertise SUPPORTING delivery Delivery Team Software Engineers Delivery Team Software Engineers Automation Expert Test Engineers Placed in risky “Hot Spots” Delivery Team Software Engineers Delivery Team Delivery Team Software Engineers Software Engineers All Rights Reserved- AgileSparks
  23. 23. Driving from Behaviour/Examples/Acceptance Tests http://slidesha.re/LqQRa3 Intro to ATDD - Elisabeth Hendrickson All Rights Reserved- AgileSparks
  24. 24. Meet the family Specification Behavior Driven By Development Example http://dannorth.net/introducing- bdd/ Very important – “Step away from the tools” http://lizkeogh.com/2011/03/04/step-away-from-the-tools/ All Rights Reserved- AgileSparks
  25. 25. Let’s look at a concreteworkflow using SpecFlow (Pragmatic BDD for .Net) http://www.specflow.org/specflow/workflow.aspx All Rights Reserved- AgileSparks
  26. 26. Step 1 – Write a Feature (using Gherkin language) All Rights Reserved- AgileSparks
  27. 27. Step 2 – Watch it Fail All Rights Reserved- AgileSparks
  28. 28. Step 3 – Implement Step definitions All Rights Reserved- AgileSparks
  29. 29. Step 4 – Create Domain Skeleton All Rights Reserved- AgileSparks
  30. 30. Step 5 – Watch it fail All Rights Reserved- AgileSparks
  31. 31. Step 6 – Implement Domain Functionality All Rights Reserved- AgileSparks
  32. 32. Optional Step 6a – Unit-level TDD Add a test Write some code Run tests Tests passed? No Yes Refactor Yes Development finished No All Rights Reserved- AgileSparks
  33. 33. Step 7 – Iterate steps 5+6 until scenario passes All Rights Reserved- AgileSparks
  34. 34. Step 8 – Iterate steps 2-7 until Feature Passes All Rights Reserved- AgileSparks
  35. 35. But how do we getstarted, we have so much legacy? All Rights Reserved- AgileSparks
  36. 36. Time to talk about Technical Debt… All Rights Reserved- AgileSparks
  37. 37. All Rights Reserved- AgileSparks
  38. 38. Check out a recent great presentation… http://www.slideshare.net/ehendrickson/lfmf-tales-of-test-automation-fa All Rights Reserved- AgileSparks
  39. 39. How to Start New Test Refactored Refactored Coverage Code Code New Features New Features New Features New Test Refactored Coverage Code New Features New Features New Test Coverage Sanity and Sanity and Sanity and New Features risky areas risky areas risky areas 1 2 3 4 Legacy Systems Legacy Systems Legacy Systems Legacy Systems Frightening code Low quality code covered by automated tests High quality code covered by automated tests  Apply automation to incrementally repair touch points as new features added.  Manual affected regression testing only after risk analysis.  Automate Sanity and risky areas by independent team 2010 Copyright AgileSparks. All rights reserved. All Rights Reserved- AgileSparks
  40. 40. References http://bit.ly/testisdeadGTAC11 http://gojko.net/2012/05/08/redefin ing-software-quality/ All Rights Reserved- AgileSparks

×