0
Behaviour Driven Development
Communication Issue  They are slow!.. They do not know what they need!..
Communication Issue  They are slow!.. They do not know what they need!..
Building the communication bridge
Building the communication bridge
B ehaviour  D riven  D evelopment <ul><li>Focus on delivery of  </li></ul><ul><li>prioritised ,  verifiable   business val...
B ehaviour  D riven  D evelopment practices <ul><li>Establishing the  goals  of different  </li></ul><ul><li>stakeholders ...
What BDD adds to TDD <ul><li>Stories have  criteria for acceptance  defined by the customer and can be specified in automa...
The BDD Cycle –  “ Outside-In ”  development as THE IDEAL BDD SCENARIO proposed  
Gherkin: Feature Title and Narrative <ul><li>Feature: Adding movies to the queue </li></ul>
Describing Features with Cucumber <ul><li>Cucumber  is a BDD tool  that reads plain text descriptions of </li></ul><ul><li...
Describing Code with RSpec <ul><li>RSpec  is a BDD framework, which is used to write </li></ul><ul><li>executable examples...
Communications in the business org <ul><li>Translate business goals into prioritized list of features </li></ul><ul><li>2....
Speaking the same language = building together As Expedia WW I want to build such a global online marketplace So that +5% ...
Upcoming SlideShare
Loading in...5
×

BDD communication bridges - Expedia TED talk

2,319

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,319
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
11
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Focus on delivery of prioritised , verifiable business value by providing a common vocabulary
  • Transcript of "BDD communication bridges - Expedia TED talk"

    1. 1. Behaviour Driven Development
    2. 2. Communication Issue They are slow!.. They do not know what they need!..
    3. 3. Communication Issue They are slow!.. They do not know what they need!..
    4. 4. Building the communication bridge
    5. 5. Building the communication bridge
    6. 6. B ehaviour D riven D evelopment <ul><li>Focus on delivery of </li></ul><ul><li>prioritised , verifiable business value by providing a </li></ul><ul><li>common vocabulary </li></ul>BDD is an evolution in the thinking behind Test Driven Development and  Acceptance Test Driven Planning.
    7. 7. B ehaviour D riven D evelopment practices <ul><li>Establishing the goals of different </li></ul><ul><li>stakeholders required for a vision to be implemented </li></ul><ul><li>Drawing out features which will achieve those goals using  feature injection </li></ul><ul><li>Involving stakeholders in the implementation process through  outside-in software development (driven by business value, UI->code, YAGNI) </li></ul><ul><li>Using examples to describe the behaviour of the application, or of units of code </li></ul><ul><li>Automating those examples to provide quick feedback and regression testing (CI) </li></ul>
    8. 8. What BDD adds to TDD <ul><li>Stories have criteria for acceptance defined by the customer and can be specified in automated way </li></ul><ul><li>Test what an object does (behaviour) instead of what it is (structural details) </li></ul><ul><li>Top-down design, which is essential for YAGNI – You Aren't Gonna Need It </li></ul>
    9. 9. The BDD Cycle – “ Outside-In ” development as THE IDEAL BDD SCENARIO proposed 
    10. 10. Gherkin: Feature Title and Narrative <ul><li>Feature: Adding movies to the queue </li></ul>
    11. 11. Describing Features with Cucumber <ul><li>Cucumber is a BDD tool that reads plain text descriptions of </li></ul><ul><li>application features with example scenarios, w hich can be </li></ul><ul><li>converted into automation. The text is written in a business </li></ul><ul><li>readable domain language, known as Gherkin . </li></ul>
    12. 12. Describing Code with RSpec <ul><li>RSpec is a BDD framework, which is used to write </li></ul><ul><li>executable examples of the expected behaviour of a small </li></ul><ul><li>bit of code in a controlled context. </li></ul>Code example: Output:
    13. 13. Communications in the business org <ul><li>Translate business goals into prioritized list of features </li></ul><ul><li>2. Trace required behavior within the dev team, drive design by behavior, build transparency, trust and confidence </li></ul><ul><li>Clarify business value and desired software behavior, ask “5 Why”, provide feedback if application logic appears overcomplicated </li></ul>
    14. 14. Speaking the same language = building together As Expedia WW I want to build such a global online marketplace So that +5% of new customers are delighted and retained every month Given the investment of 22M of bricks When you place all the bricks properly Then the Expedia Tower of Babel should be visible for all people across the Globe
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×