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.

ALN Houston - "Build Quality In: Guiding Development with Tests"


Published on

Slide deck for ALN Houston talk

Published in: Technology
  • Be the first to comment

ALN Houston - "Build Quality In: Guiding Development with Tests"

  1. 1. Building Quality In: ALN Houston September 15, 2016 Lisa Crispin @lisacrispin Guiding Software Delivery with Tests Copyright 2016, Lisa Crispin. With material from Janet Gregory and JoEllen Carter
  2. 2. A little about me Agile TesHng; 2009 More Agile TesHng: 2014 Agile TesHng CollecHon: July 2015 First agile team – 2000 Currently tester on Pivotal Tracker team TwiTer: @lisacrispin Email:
  3. 3. How about you? • Agile experience? • Primary role/skill set?
  4. 4. Learning intentions • Whole team responsibility for quality and tesHng • Building shared understanding of features • Guiding development with examples and tests • Exploring to learn if the right value is delivered
  5. 5. The whole team collaborates to….. • Get the customers get what they want • Prevent defects
  6. 6. 1.  Pair with someone 2.  One person faces away from the screen 3.  The other person will have 2 minutes to describe the picture I show next 4.  When I say stop, turn around and discuss any differences in what was described. A Simple Exercise
  7. 7. Agile Testing Quadrants Copyright 2014, Janet Gregory and Lisa Crispin
  8. 8. Getting everyone engaged 9 • Power of Three (or more) (aka Three Amigos – George Dinwiddie) Business Analyst Designer ?????
  9. 9. Structure discussions with a framework 10 • People moving, talking, wriHng on cards/sHckies/ whiteboards • Mind map • Impact map • Flow diagram • Context diagram • Mock-ups • Virtual for distributed teams We’ll look at a few techniques
  10. 10. Common pitfall: Starting with “what” 11 1.  PO writes story for feature: •  Describes implementaHon instead of purpose and the problem to solve •  Leaves out the who, the users, quality aTributes 2.  Team lacks shared understanding 3.  Time wasted later in rework, adding in missed requirements 4.  Unhappy users
  11. 11. Start with the Why! 12 What is the purpose? What value will it deliver? •  to end users? •  to the business? How will we know it is successful? Check out, from Gojko Adzic
  12. 12. Story Mapping AcHviHes by Hme Child Stories Jeff PaTon: User Story Mapping
  13. 13. Story Mapping Steve Rogalsky h?p:// More Agile TesHng, p. 128
  14. 14. functional nonfunctional Source: Discover To Deliver, GoTesdiener & Gorman, 2012
  15. 15. 16 Example mapping - a discovery workshop
  16. 16. 17
  17. 17. 1.  Pair up, and partner with another pair near you. Choose Pair A and Pair B. 2.  Pair A: Write this story down on a yellow index card. Let’s try example mapping! As a user, I want guidelines to create a strong password, so that I have limited risk for identity theft
  18. 18. 3. Pair A: Using the blue index cards, invent 3 secret business rules for “Create a strong password” story – TWO MINUTES 4. Pair A: Write 3 (and only 3) examples on the green cards to express those rules and pass the examples to Pair B. - TWO MINUTES 5. Pair B: Guess the rules based on the examples – write them on blue cards, and pass them back – THREE MINUTES Next:
  19. 19. How’d you do? 20 Does this remind you of anything? How do you feel? What do you need?
  20. 20. Another round: 21 • Pair A: Write more examples to clarify the rules – sHll no conversaHon except yes or no. Pass examples to Pair B as you write them. • Pair B, try to guess the rules, write them down and pass them back to Pair A. FOUR MINUTES
  21. 21. Now: 22 Have a conversaHon about the story. Write more rules and examples if needed. Write quesHons on the red index cards.
  22. 22. Stop and Reflect 23 ObservaHons? What’s useful about examples? What’s useful about rules? What’s useful about the conversaHon? Remember to focus on value to the customer!
  23. 23. As a user, I want guidelines to create a strong password, so that I have limited risk for idenHty theN What you might have done… 24 Story Rules Examples QuesHons 1.  Minimum 8, maximum 32 characters 2.  One or more of each: lower-case leTer, upper-case leTer, number, punctuaHon mark Valid: p4ssW0rd!, paSSw.rDp Invalid: p4ssword1, p4ssw@d, Pa%swd. What wording to use for the error messages? Should we have a password strength meter?
  24. 24. Scenario example: As a user with valid login credenHals, I can log in and see the correct landing page. Test might look like: Given Janet has a valid login, When she enters her valid username and password, Then she sees the correct landing page. Example vs. Test User Email Password Expected Result Comments Jara Passw0rd22 Logged in Valid login scenario Tabular style test:
  25. 25. Feature (with examples) User Story High- Level AT Fix Defects Code, test & automate story ATDD Acceptance Test Driven Development Accept Story Explore Examples
  26. 26. Workflows, Journeys
  27. 27. Why and how we explore 28 Purpose: Learn info of interest/value to customers, reduce risk, increase confidence, discover missing features, overcome our biases Tools: Personas, roles, jobs, charters, tesHng heurisHcs cheat sheet (Elisabeth Hendrickson), Hmeboxing Skills: curiosity, criHcal & lateral thinking, observing, quesHoning - requires pracHce!
  28. 28. •  Know your customers •  Make them real •  Role + job - think of all the actors/users •  Plan your exploratory tesHng around them Picture – from Jeff PaTon’s PragmaHc Personas weekly column on SHcky Minds (1/25/2010) 29 Personas
  29. 29. 30 What personas can you channel? As a user, I want guidelines to create a strong password, so that I have limited risk for identity theft •  Draw and define a persona to explore our story. •  Share with your pair. What scenarios can you think of?
  30. 30. Charters 31 •  Set your mission - where to explore? •  Resources you will have •  InformaHon you’re seeking
  31. 31. Charter template - Elisabeth Hendrickson 32 Explore <target> With <resources> To discover <informaHon>
  32. 32. 33 Too broad: Explore UI security With all the format exploits you can think of To discover any security holes Too specific: Explore ediHng email in user profile page With the value “MaT'); DROP TABLE Students;--” To discover if a correct error message is returned Just right: Explore ediHng profiles With format exploits To discover any security vulnerabiliHes
  33. 33. Other approaches for charters 34 “Analyze task funcHonality, and report on areas of potenHal risk in refactoring tasks.” Mnemonics: eg. SFDPOT - Structure, FuncHon, Data, Plaworm, OperaHons and Time Mind maps
  34. 34. Executing, learning, steering 35 • Think of a test? Do it! What quesHons come up next? •  Learn, observe carefully, look for subtle clues •  Use new knowledge to go deeper •  Take notes •  Work in Hme-boxed sessions •  Time box side trips or write new charter •  Debrief, report any bugs •  Create new stories
  35. 35. Experiment, measure, learn 36 • Engage the whole team in building quality in • Use retrospecHves. Slow cycle Hme? High rejecHon rate? Customers going to compeHtors? • Plan experiments to chip away at biggest problem • Embrace change, adjust your tacHcs as needed
  36. 36. More Learning • Adzic, Gojko, SpecificaHon by Example: How Successful Teams Deliver the Right SoNware, Manning, 2011 •  Gärtner, Markus, ATDD By Example: A PracHcal Guide to Acceptance Test-Driven Development, Addison-Wesley, 2012a •  GoTesdiener, Ellen and Gorman, Mary, Discover to Deliver, 2012 •  Hendrickson, Elisabeth, Explore It! Reduce Risk and Increase Confidence with Exploratory TesHng, PragmaHc Programmer, 2013 • Keogh, Liz, hTp:// - look for her posts on BDD, Real OpHons • McMillan, Darren, "Mind Mapping 101", for TesHng: hTp://, 2011 • PaTon, Jeff, User Story Mapping, 2014 • Wynne, MaT, "Introducing Example Mapping", hTp://
  37. 37.
  38. 38. Agile TesHng: A PracHcal Guide for Testers and Agile Teams More Agile TesHng: Learning Journeys for the Whole Team The Agile TesHng CollecHon: an ebook By Janet Gregory and Lisa Crispin 40 Email: TwiTer: lisacrispin
  39. 39. QuesHons?
  40. 40. Impact Mapping – Gojko Adzic, • Why are we doing this? --- the goal • Who can help or hinder? --- the stakeholders • How can they help or hinder? --- the impacts! • What can we do to help? --- the deliverables