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.

Feature Mapping Workshop

1,300 views

Published on

Writing good acceptance criteria is one of the keys to effective software delivery. But it’s hard. In this workshop, you will learn about Feature Mapping, a new technique and easy that can help teams write higher quality acceptance criteria more easily. Feature Mapping is an excellent way to build a deep shared understanding of a story's requirements and clear a path to a smooth implementation of automated acceptance tests.

Published in: Technology
  • DOWNLOAD FULL BOOKS INTO AVAILABLE FORMAT ......................................................................................................................... ......................................................................................................................... 1.DOWNLOAD FULL PDF EBOOK here { https://tinyurl.com/y8nn3gmc } ......................................................................................................................... 1.DOWNLOAD FULL EPUB Ebook here { https://tinyurl.com/y8nn3gmc } ......................................................................................................................... 1.DOWNLOAD FULL doc Ebook here { https://tinyurl.com/y8nn3gmc } ......................................................................................................................... 1.DOWNLOAD FULL PDF EBOOK here { https://tinyurl.com/y8nn3gmc } ......................................................................................................................... 1.DOWNLOAD FULL EPUB Ebook here { https://tinyurl.com/y8nn3gmc } ......................................................................................................................... 1.DOWNLOAD FULL doc Ebook here { https://tinyurl.com/y8nn3gmc } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Feature Mapping Workshop

  1. 1. AUTHOR OF ‘BDD IN ACTION’ @wakaleo www.johnfergusonsmart.com Feature Mapping The fast track from stories to acceptance criteria Jan Molak Lead Developer of Serenity/JS @janmolak janmolak.com
  2. 2. Overview Overview What we will cover BDD and Sprint Planning Acceptance Criteria and the Definition of Done Writing acceptance criteria in Gherkin Acceptance criteria with Feature Mapping
  3. 3. Overview Overview http://bit.ly/feature-mapping-draw Before we finish… Fill in the survey and win a book!
  4. 4. BDD and Sprint Planning
 in a nutshell
  5. 5. Overview Overview Validation The BDD Way Collaboration As a corporate frequent flyer I want to earn points on my business flights So that I can get discounts on my holiday flights Business Scenario: First class earns double points Given London-Paris in economy earns 100 points When I fly from London to Paris in First Class
 Then I should earn 200 points SHARED UNDERSTANDING Automation
  6. 6. Overview Overview The BDD Way BA Business BA UX Testers Business Rules Examples A shared understanding Executable Specifications Wireframes Vision Flow Capabilities Features Developers UI Designers Define Formalise Automate Automated Acceptance Testing Feedback Visibility Valuable Software Deliver Discover TDD
  7. 7. Overview Overview Shared Understanding and Automated Validation Automated Acceptance Criteria A Shared Understanding Validation Collaborative Requirements Discovery Living Documentation Regression Tests Change with confidence Effective Automation Sustainable Automation Executable Requirements Story Mapping 3 amigos Acceptance Criteria Feature Mapping Example Mapping Impact Mapping Sprint Planning Gherkin Format
  8. 8. Overview Overview Shared Understanding and Automated Validation Automated Acceptance Criteria A Shared Understanding Validation Collaborative Requirements Discovery Living Documentation Regression Tests Change with confidence Effective Automation Sustainable Automation Executable Requirements Story Mapping 3 amigos Acceptance Criteria Feature Mapping Example Mapping Impact Mapping Sprint 
 Delivery Gherkin Format Sprint Planning
  9. 9. Acceptance Criteria 
 and the definition of done
  10. 10. Acceptance Criteria ✓ Define the Definition of Done ✓ Functional and non-functional requirements ✓ Expressed in business language ✓ Describe expected outcomes, not inputs ✓ Describe intent, not solution (what, not how) ✓ Easily testable ✓ Single responsibility
  11. 11. Acceptance Criteria should be simple ✓ Simple phrases - “A teacher can return an essay for correction when the average mark is under 7” ✓ Can be non-functional - “A teacher should be able to open and record the marks of an essay in less than 30 seconds on average with a load of 1000 simultaneous users”
  12. 12. Examples are concrete scenarios that illustrate rules ✓ “The one where…” - “The one where the student submits a bad essay” ✓ Given/When/Then - “Given Stu submits an essay with an average mark of 4
 When Tess records the marks
 Then she has the option of returning the essay to Stu”
  13. 13. Writing Acceptance Criteria
 in Gherkin
  14. 14. Gherkin
 The Lingua Franca of BDD Collaboration Automation Feature: Earning Frequent Flyer points through flights
 Scenario: Economy flights earn points by distance Flyers earn 1 point per kilometre travelled Given the distance from London to Paris is 344 km When I fly from London to Paris in Economy
 Then I should earn 344 points
  15. 15. Overview Overview Scenario: Economy flights earn points by distance Given the distance from London to Paris is 344 km When I fly from London to Paris in Economy
 Then I should earn 344 points Preconditions Action to illustrate Expected outcome
  16. 16. Overview Overview Scenario Outline: Economy flights earn points by distance Given the distance from <departure> to <dest> is <distance> km When I fly from <departure> to <destination> in <class> class
 Then I should earn <points> points Examples: | departure | dest | distance | class | points | | Paris | London | 344 | economy | 344 | | Paris | London | 344 | first | 688 | A table of examples
  17. 17. Let’s give it a try!
  18. 18. Workshop Time! As a regular business traveller I want to earn privileges when I fly So that I can take my family on holiday more often Create Acceptance criteria for the following rules - Member privileges are based on their Frequent Flyer level - Members can be Bronze, Silver, Gold or Platinum - Levels are earned based on distance and cabin class
  19. 19. Retrospective • How much functionality did you cover? • How would you judge the quality of the scenarios you wrote? • How well did it help you understand the problem domain? • How many surprises did you find?
  20. 20. In the last exercise…
 Did you spend more time collaborating or formalising?
  21. 21. Overview Overview establishes validatesShared Understanding Collaboration Formalisation Sprint Planning
  22. 22. Overview Overview establishes validatesShared Understanding Collaboration Formalisation Sprint Delivery
  23. 23. Now for something different
 Step Away From The Gherkin
  24. 24. Understanding a requirement As a Frequent Flyer member I want to see where I can travel with my current point balance So that I can plan my next holiday
  25. 25. Overview Overview As a Frequent Flyer member I want to see where I can travel with my current point balance So that I can plan my next holiday “The flights available depend on the number of points” “Rule” “The one where a member has 10000 points” “Example” “Jackie has 10000 points, and lives in London. “Steps” “She chooses to view her flight options.” “She can choose from flights to Edinburgh, Paris and Amsterdam”
  26. 26. Overview Overview As a Frequent Flyer member I want to see where I can travel with my current point balance So that I can plan my next holiday “The flights available depend on the number of points” “Rule” “The one where a member has 10000 points” “Example” “Jackie has 10000 points, and lives in London. “Steps” “She chooses to view her flight options.” “She can choose from flights to Edinburgh, Paris and Amsterdam” What if she lives somewhere else? What if she wants to fly from another city? Are these economy flights? What if the wants to fly business? What if she wants to book a flight for someone else? Why these destinations?
  27. 27. Questions lead to learning Why these destinations? “The flights available depend on the number of points”
 (1 km distance for every 10 points) New or clarified rules points Edinburgh 1000 Paris Amsterdam 5000 10000 Yes Yes No No Yes Yes NoNo No New or clarified examples
  28. 28. Feature Mapping
  29. 29. Rules explain Examples Examples illustrate Rules Steps explore Examples Questions challenge everything Four Principles
  30. 30. List the rules you know Ask for examples Explore the steps that make up each example Question, challenge, expand And Four Steps
  31. 31. Leave no assumption unchallenged “If you do not know how to ask the right question, you discover nothing.” - W. Edwards Deming
  32. 32. Feature Mapping Building Bricks
  33. 33. Overview Overview We start with an anchoring example “Fred has 10000 points and lives in London. He wants to go on holidays in August. He checks his account balance, and sees that he can go to Rome, Aberdeen or Barcelona.”
  34. 34. Overview Overview Step 1) Find a rule “Guideline"
  35. 35. Overview Overview Step 1) Find a rule “Guideline" A rule Any economy flight within Europe is 10000 points
  36. 36. Overview Overview“Guideline" A rule Any economy flight within Europe is 10000 points Step 2) “Give me an example”An example Member has enough to fly to Rome
  37. 37. Overview Overview“Guideline" A rule Any economy flight within Europe is 10000 points Step 3) Break it down An example Member has enough to fly to Rome => Fred has 10000 points => Fred can fly to Edinburgh, Barcelona or Rome Consequences
  38. 38. Overview Overview Any economy flight within Europe is 10000 points Step 4) Explore variations Member has enough to fly to Rome Member doesn’t have enough points => Joe has just joined the program and has 0 points => Joe can’t go anywhere => Fred has 10000 points => Fred can fly to Edinburgh, Barcelona or Rome
  39. 39. Overview OverviewAny economy flight within Europe is 10000 points Step 5) Discover new rules Member has enough to fly to Rome Member doesn’t have enough points A business flight within Europe is 20000 points Likes to fly in style => Fred can fly to Edinburgh, Barcelona or Rome in Business => Barry has 20000 points => Joe has just joined the program and has 0 points => Joe can’t go anywhere => Fred has 10000 points => Fred can fly to Edinburgh, Barcelona or Rome
  40. 40. Overview OverviewAny economy flight within Europe is 10000 points Step 6) Learn and refactor Member has enough to fly to Rome Member doesn’t have enough points A business flight within Europe is 20000 points Likes to fly in style The available destinations depends on the number of points and the cabin class => Fred can fly to Edinburgh, Barcelona or Rome in Business => Barry has 20000 points => Joe has just joined the program and has 0 points => Joe can’t go anywhere => Fred has 10000 points => Fred can fly to Edinburgh, Barcelona or Rome
  41. 41. Overview OverviewAny economy flight within Europe is 10000 points Questions record uncertainty Member has enough to fly to Rome Member doesn’t have enough points A business flight within Europe is 20000 points Likes to fly in style The available destinations depends on the number of points and the cabin class Can he buy someone else a ticket? Are points transferrable? => Fred can fly to Edinburgh, Barcelona or Rome in Business => Barry has 20000 points => Joe has just joined the program and has 0 points => Joe can’t go anywhere => Fred has 10000 points => Fred can fly to Edinburgh, Barcelona or Rome
  42. 42. Overview OverviewAny economy flight within Europe is 10000 points Questions record uncertainty Member has enough to fly to Rome Member doesn’t have enough points A business flight within Europe is 20000 points Likes to fly in style The available destinations depends on the number of points and the cabin class “Pointsperdestination” story“Pointsperclass” story => Fred can fly to Edinburgh, Barcelona or Rome in Business => Barry has 20000 points => Joe has just joined the program and has 0 points => Joe can’t go anywhere => Fred has 10000 points => Fred can fly to Edinburgh, Barcelona or Rome
  43. 43. Let’s give it a try!
  44. 44. Mob Mapping! As a regular business traveller I want to be able to access the lounge with my travel companions So that I can get more work done before the flight
  45. 45. Overview OverviewLounge Access As a regular business traveller I want to be able to access the lounge with my travel companions So that I can get more work done before the flight Step 1) “Tell me a story” “Barry the business traveller is Gold status, and flying on holidays in economy with his wife and two children. He asks to access the lounge with his family. He is given access, but has to use all of his yearly guest passes as he can normally only invite one guest.”
  46. 46. Overview OverviewAs a regular business traveller I want to be able to access the lounge with my travel companions So that I can get more work done before the flight Step 2) “Tell me the rules you know about” “Barry the business traveller is Gold status, and flying on holidays in economy with his wife and two children. He asks to access the lounge with his family. He is given access, but has to use all of his yearly guest passes as he can normally only invite one guest.” What else? Gold Frequent Flyers can come with a guest Gold Frequent Flyers get two guest passes per year that they can use for additional guests
  47. 47. Overview OverviewAs a regular business traveller I want to be able to access the lounge with my travel companions So that I can get more work done before the flight Step 3) Pick a rule. “Barry the business traveller is Gold status, and flying on holidays in economy with his wife and two children. He asks to access the lounge with his family. He is given access, but has to use all of his yearly guest passes as he can normally only invite one guest.” Gold Frequent Flyers get two guest passes per year that they can use for additional guests
  48. 48. Overview Overview Step 4) Give me an example Gold Frequent Flyers get two guest passes per year that they can use for additional guests Barry can invite his family because he is a Gold FF “The one where…” Barry is a Gold FF Barry wants to bring 3 guests => Everyone can enter the lounge => Barry has no guest passes left Barry has 2 guest passes Barry agrees to use his guest passes
  49. 49. Overview Overview Step 5) Explore and challenge Gold Frequent Flyers get two guest passes per year that they can use for additional guests Barry can invite his family because he is a Gold FF “What if…” Barry is a Gold FF Barry wants to bring 3 guests => Everyone can enter the lounge => Barry has no guest passes left Barry has 2 guest passes Barry agrees to use his guest passes W hatifBarry is Silver? W hatifBarry has only 1 guest W hatifBarry doesn’twantto use his guest passes? => Everyone can enter the lounge => Barry has no guest passes left
  50. 50. Now work in teams As a business traveller I want to have access to a place to freshen up and work when I land So that I can be more productive in my work
  51. 51. Now work in teams As a business traveller I want to have access to a place to freshen up and work when I land So that I can be more productive in my work “Barry has landed 6 hours ahead of his meeting, and wants to freshen up, have breakfast and prepare his meeting. He goes to the lounge in the arrival airport, and is granted access.”
  52. 52. Overview Overview
  53. 53. Key Take Aways
  54. 54. Feature Mapping Collaborative Iterative Exploratory A requirements discovery practice that is…
  55. 55. Feature Mapping Breadth Depth Context
  56. 56. Feature Mapping More precise than free-form acceptance criteria Faster than Gherkin Easy to automate
  57. 57. Thank You! http://johnfergusonsmart.com reachme@johnfergusonsmart.com

×