Upgrade to Pro — share decks privately, control downloads, hide ads and more …

From Waterfall to BDD: An Agile Journey

Marco Lopes
November 30, 2018

From Waterfall to BDD: An Agile Journey

A step by step guid on reducing feedback loops from years/month to days or potentially even hours, in sustainable way. Even had that feeling that agile is just a fancy word and it doesn't deliver the promised rewards? See here how you can change that.

Marco Lopes

November 30, 2018
Tweet

More Decks by Marco Lopes

Other Decks in Technology

Transcript

  1. Benefits of noise to signal ratio improving • Make communication

    more clear • Reduce “Chinese Whispers” effect • Reduces amount of mis-delivery because the message is more clear
  2. Benefits of shortened feedback loops • Teams can quickly learn

    about changes of direction • Teams can react faster to user/stakeholders feedback • Teams can be made aware of mistakes earlier in the process • Smaller amounts of code to change when reacting to the previous points
  3. It reduces the feedback loop between the program and the

    developer * * We’ll see later how it can help reducing the loop for the whole team
  4. The loop can now be reduced to weeks for a

    broader part of the system
  5. We can do this by breaking our features into small

    deliverables instead of focusing on technical tasks
  6. Shallow slices • Allows for quicker delivery of less complete

    features • Allows for stakeholders to identify when no more development is needed, because a partial feature turned out to be enough • Allows for quick feedback even before all of the polishing is in place
  7. WIP Limits • Reduces number of items in flight •

    Reduce context shifting • Allows for focusing on delivery
  8. Board • One way only pipeline (items move only in

    the direction of delivery) • Visualise WIP limits, blockers and relationship between each step • Right to left board walking, more delivery focused than stand-ups
  9. Save time • JIT story clarification saves times looking at

    things far in the future that might end up not being needed (Ex: the often misunderstood “three amigos”) • Delivering shallow slices allow to eventually have a good enough feature and stop development early
  10. Quick MVP • Allows you to start getting full cycle

    feedback to your product • Allows you to start delivering the new features with a short feedback loop • Helps preventing “code rot”
  11. Common problems with business/production communication: • Developers talk about technical

    matters causing stakeholders to lose interest • Stakeholders feel like this is not a good use of their time and become unavailable
  12. BDD • Story level BDD (works at acceptance level) •

    Spec level BDD (sometimes called TDD, works at unit level)
  13. Benefits of the BDD loop • Quick feedback to the

    developer about bugs or defects, as it can show them even before the feature is finished • Provides a connection with the value they are delivering and allows that value to drive their code • Forces a conversation with the stakeholders
  14. In order to <achieve some value> As <some stakeholder> I

    want to <do something that enables the value>
  15. Benefits of focusing on value • The reason why something

    is being built is identified, so we can better understand if we’re moving in the right direction while still developing the feature • Empathy with the stakeholders via understanding what they care about • Brings the language that describes the problem into the application development
  16. You don’t need to write gherkin during the conversation, instead

    use it to guide your questions, learn the expected value and outcomes.
  17. Benefits of focusing on DDD • Ubiquotous language • Solutions

    becomes a description of the problem. This lowers the entry barrier to understand the existing solution, as knowing the problem is enough to understand the solution without having to know of previous arbitrary decisions • Solution becomes more malleable as it closely mirrors what it is trying to solve, and is therefore more able to change with it.
  18. This talk touched the surface of a lot of different

    deep topics. A lot was left unsaid or was described in an overly simplistic way. If you want to discuss further any of the subjects mentioned here, I’d be happy to, just come find me around the office