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 Intro      Module 2 Agile Requirements
Ere wie ere toekomt ...2
Agile Manifesto             We are uncovering better ways of developing             software by doing it and helping other...
12 principes                                                       Our highest priority is to satisfy the customer        ...
Sprint Backlog     TO-DO         DOING   DONE    User Stories       Case    Acceptance       tests5
Sprint Backlog     TO-DO        DOING         DONE                 User Stories      Case    Acceptance       tests5
User Story    As a trainee    I want to know more about User Stories    Because this is a core concept in Agile, determine...
Why are requirements so            difficult7
Why are requirements so            difficult7
What is a User Story?    • Written description of the story used for      planning and as a reminder    • Conversations ab...
What is a User Story?    • Written description of the story used for        planning and as a reminder    • Conversationsa...
Develop User Stories           User Role           User Story9
Identify User Roles                                Receptionist               Patient     Doctor              myHospital  ...
Group User Roles                 Patient             Receptionist     supporter of patient                            myHo...
Personas     Patient12
Personas               Oma Jans     Patient   90 jaar               zeer hard-horend               slecht ter been        ...
Personas               Oma Jans     Patient         Kees               90 jaar               zeer hard-horend             ...
User Stories           As a <User Role>         I want <something>       So I can achieve <value>     acceptance        te...
User Stories           As a <User Role>         I want <something>       So I can achieve <value>     acceptance        te...
Cone of Uncertainty     clear, precise        stories                      epics14
Trawling15
Trawling methods     • User interviews     • Questionnaires     • Observation     • Workshops16
INVEST in User Stories     • Independent     • Negotiable     • Valuable to users or customers     • Estimatable     • Sma...
Independent      A user can pay with           Visa card      A user can pay with         Master card18
Negotiable     • A story is NO contract19
Valuable to the user        All error handling is done        through a set of common                  classes20
Valuable to the user        All errors are presented to         the user and logged in a             consistent manner20
Estimatable21
Estimatable     • When are stories not estimatable?21
Estimatable     • When are stories not estimatable?      • developers have insufficient domain         knowledge21
Estimatable     • When are stories not estimatable?      • developers have insufficient domain         knowledge      • dev...
Estimatable     • When are stories not estimatable?      • developers have insufficient domain         knowledge      • dev...
Small22
Small     Too big: split up     - epic with stories     - research and development22
Testable       De software moet een     goede performance hebben23
Testable     Tom Gilb: Planguage23
Planguage     TAG                           Performance                                 Users should not have the     GIST...
Kano model     High      Customer satisfaction                              Exciters and                               del...
Kano - model      Must-have,     Performance,     Exciters and      mandatory          linear        delighters           ...
User Stories vergeleken     • Use Cases (Jacobsen)     • “traditional” requirements (IEEE 830)      • The system shall ...27
User Stories vergeleken                               Title: buy a book                               Actor: customer     ...
Sprint Backlog      TO-DO         DOING        DONE                  User Stories        Case     Acceptance        tests28
Sprint Backlog      TO-DO        DOING     DONE                           User Stories        Case     Acceptance        t...
Sprint Backlog      TO-DO       DOING     DONE                          User Stories                   Case     Acceptance...
User Story     As a trainee     I want to practice a bit after all theory     Because practice makes perfect29
Case30
Case     Develop a system to support a bar:     • guests can order themselves     • system suggests combinations     • ord...
Chaos Cocktail Party     • Write an appealing vision for the system on       a card     • 5 Rounds      • Swap card with s...
Instruction     • Assign 1 person as Product Owner     • Model User Roles     • Brainstorm User Stories     • Max. 30 minu...
Sprint Backlog      TO-DO       DOING    DONE                          User Stories                   Case     Acceptance ...
Sprint Backlog      TO-DO       DOING    DONE                          User Stories                            Case     Ac...
Sprint Backlog     TO-DO       DOING        DONE                             User Stories                               Ca...
User Story     As a trainee     I want to know how to handle acceptance test in     Agile     Because a User Story is not ...
Acceptance tests      A user can pay with credit card35
Acceptance tests     Test with Visa, Master and Amex (pass)           Test with Diners Club (fail)       Test with good, b...
Excercise     Now add some acceptance tests to your     stories36
Sprint Backlog     TO-DO       DOING        DONE                             User Stories                               Ca...
Sprint Backlog     TO-DO       DOING    DONE                         User Stories                           Case          ...
Summary     • Agile Requirements      • it’s not about the documentation      • but about interaction     • Card - Convers...
Retrospective     Start doing              Stop doing                    Continue doing39
Agile Manifesto              We are uncovering better ways of developing              software by doing it and helping oth...
12 principes                                                        Our highest priority is to satisfy the customer       ...
Upcoming SlideShare
Loading in …5
×

Agile intro module 2

848 views

Published on

Third module of agile/scrum course. Zooming in on requirements / user stories. With practical excercises.

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

Agile intro module 2

  1. 1. Agile Intro Module 2 Agile Requirements
  2. 2. Ere wie ere toekomt ...2
  3. 3. Agile Manifesto We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more.3
  4. 4. 12 principes Our highest priority is to satisfy the customer Working software is the primary 1 measure of progress. 7 through early and continuous delivery of valuable software. Agile processes promote sustainable Welcome changing requirements, even late in development. The sponsors, developers, 2 and users should be able to maintain a 8 development. Agile processes harness change for the customers competitive advantage. constant pace indefinitely. Continuous attention to technical Deliver working software frequently, from a 3 excellence and good design enhances 9 couple of weeks to a couple of months, with a agility. preference to the shorter timescale. Simplicity--the art of maximizing the Business people and developers must work 4 amount of work not done--is essential. 10 together daily throughout the project. The best architectures, requirements, Build projects around motivated individuals. 5 and designs emerge from self-organizing teams. 11 Give them the environment and support they need, and trust them to get the job done. At regular intervals, the team reflects The most efficient and effective method of on how to become more effective, then 6 tunes and adjusts its behavior 12 conveying information to and within a development team is face-to-face conversation. accordingly.4
  5. 5. Sprint Backlog TO-DO DOING DONE User Stories Case Acceptance tests5
  6. 6. Sprint Backlog TO-DO DOING DONE User Stories Case Acceptance tests5
  7. 7. User Story As a trainee I want to know more about User Stories Because this is a core concept in Agile, determines the product, the interaction with the customer and forms the basis for planning6
  8. 8. Why are requirements so difficult7
  9. 9. Why are requirements so difficult7
  10. 10. What is a User Story? • Written description of the story used for planning and as a reminder • Conversations about the story that serve to flash out the details of the story • Tests that convey and document details and that can be used to determine when a story is complete8
  11. 11. What is a User Story? • Written description of the story used for planning and as a reminder • Conversationsaabout the story that serve As <User Role> to flash out wantdetails of the story I the <something> So I can achieve <value> • Tests that convey and document details and that can be used to determine when a story is complete8
  12. 12. Develop User Stories User Role User Story9
  13. 13. Identify User Roles Receptionist Patient Doctor myHospital Local doctor Nurse supporter of patient10
  14. 14. Group User Roles Patient Receptionist supporter of patient myHospital Doctor Local doctor Nurse11
  15. 15. Personas Patient12
  16. 16. Personas Oma Jans Patient 90 jaar zeer hard-horend slecht ter been nog nooit met computer gewerkt ...12
  17. 17. Personas Oma Jans Patient Kees 90 jaar zeer hard-horend slecht25 jaar ter been nog nooit met computer voetballer gewerkt accountant ... ....12
  18. 18. User Stories As a <User Role> I want <something> So I can achieve <value> acceptance tests13
  19. 19. User Stories As a <User Role> I want <something> So I can achieve <value> acceptance tests13
  20. 20. Cone of Uncertainty clear, precise stories epics14
  21. 21. Trawling15
  22. 22. Trawling methods • User interviews • Questionnaires • Observation • Workshops16
  23. 23. INVEST in User Stories • Independent • Negotiable • Valuable to users or customers • Estimatable • Small • Testable17
  24. 24. Independent A user can pay with Visa card A user can pay with Master card18
  25. 25. Negotiable • A story is NO contract19
  26. 26. Valuable to the user All error handling is done through a set of common classes20
  27. 27. Valuable to the user All errors are presented to the user and logged in a consistent manner20
  28. 28. Estimatable21
  29. 29. Estimatable • When are stories not estimatable?21
  30. 30. Estimatable • When are stories not estimatable? • developers have insufficient domain knowledge21
  31. 31. Estimatable • When are stories not estimatable? • developers have insufficient domain knowledge • developers have insufficient technical knowledge21
  32. 32. Estimatable • When are stories not estimatable? • developers have insufficient domain knowledge • developers have insufficient technical knowledge • stories are too large21
  33. 33. Small22
  34. 34. Small Too big: split up - epic with stories - research and development22
  35. 35. Testable De software moet een goede performance hebben23
  36. 36. Testable Tom Gilb: Planguage23
  37. 37. Planguage TAG Performance Users should not have the GIST feeling they are “waiting for the system” PLAN (100 concurrent users) Reponse time < 2s MUST (100 concurrent users) Reponse time < 5s PAST (100 concurrent users) Reponse time > 10s Automatic test script METER “PERFORMANCE”24
  38. 38. Kano model High Customer satisfaction Exciters and delighters ar line / an ce rm rfo Pe Must-have, mandatory Low Fully Absent Feature presence implemented25
  39. 39. Kano - model Must-have, Performance, Exciters and mandatory linear delighters unexpected, hygiene factors more is better not required features unique selling dissatisfiers point26
  40. 40. User Stories vergeleken • Use Cases (Jacobsen) • “traditional” requirements (IEEE 830) • The system shall ...27
  41. 41. User Stories vergeleken Title: buy a book Actor: customer Use Precondition: book is Actor available • Use Cases (Jacobsen) Main scenario: 1. customer selects book • “traditional” requirements basket 830) 2. put in (IEEE 3. pay • The system shall ...Extensions:title 1a search for 1b search for author 3a book not available, delivered later27
  42. 42. Sprint Backlog TO-DO DOING DONE User Stories Case Acceptance tests28
  43. 43. Sprint Backlog TO-DO DOING DONE User Stories Case Acceptance tests28
  44. 44. Sprint Backlog TO-DO DOING DONE User Stories Case Acceptance tests28
  45. 45. User Story As a trainee I want to practice a bit after all theory Because practice makes perfect29
  46. 46. Case30
  47. 47. Case Develop a system to support a bar: • guests can order themselves • system suggests combinations • ordering app connects to back-end • app knows the menu (food & drink) • weekly/monthly offers30
  48. 48. Chaos Cocktail Party • Write an appealing vision for the system on a card • 5 Rounds • Swap card with someone else • At STOP, make pairs and reward 7 points • Add the points on your card31
  49. 49. Instruction • Assign 1 person as Product Owner • Model User Roles • Brainstorm User Stories • Max. 30 minuten32
  50. 50. Sprint Backlog TO-DO DOING DONE User Stories Case Acceptance tests33
  51. 51. Sprint Backlog TO-DO DOING DONE User Stories Case Acceptance tests33
  52. 52. Sprint Backlog TO-DO DOING DONE User Stories Case Acceptance tests33
  53. 53. User Story As a trainee I want to know how to handle acceptance test in Agile Because a User Story is not complete without a test34
  54. 54. Acceptance tests A user can pay with credit card35
  55. 55. Acceptance tests Test with Visa, Master and Amex (pass) Test with Diners Club (fail) Test with good, bad, missing CVC numbers Test with expired cards Test above card limit35
  56. 56. Excercise Now add some acceptance tests to your stories36
  57. 57. Sprint Backlog TO-DO DOING DONE User Stories Case Acceptance tests37
  58. 58. Sprint Backlog TO-DO DOING DONE User Stories Case Acceptance tests37
  59. 59. Summary • Agile Requirements • it’s not about the documentation • but about interaction • Card - Conversation - Confirmation38
  60. 60. Retrospective Start doing Stop doing Continue doing39
  61. 61. Agile Manifesto We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more.40
  62. 62. 12 principes Our highest priority is to satisfy the customer Working software is the primary 1 measure of progress. 7 through early and continuous delivery of valuable software. Agile processes promote sustainable Welcome changing requirements, even late in development. The sponsors, developers, 2 and users should be able to maintain a 8 development. Agile processes harness change for the customers competitive advantage. constant pace indefinitely. Continuous attention to technical Deliver working software frequently, from a 3 excellence and good design enhances 9 couple of weeks to a couple of months, with a agility. preference to the shorter timescale. Simplicity--the art of maximizing the Business people and developers must work 4 amount of work not done--is essential. 10 together daily throughout the project. The best architectures, requirements, Build projects around motivated individuals. 5 and designs emerge from self-organizing teams. 11 Give them the environment and support they need, and trust them to get the job done. At regular intervals, the team reflects The most efficient and effective method of on how to become more effective, then 6 tunes and adjusts its behavior 12 conveying information to and within a development team is face-to-face conversation. accordingly.41

×