Emergent design

Who ?

@docteurklein

What ?

Behat

PhpSpec

Design

Ubiquitous

Why ?

Translation cost

Correctness

How ?

hands on!

Discuss

Write a story



Feature: A basket

    In order to ease buying of products
    As a visitor
    I can add products in my basket

    Scenario: Adding products to my basket
        Given a product named "White Marker" and priced €5 was added to the catalog
        When I add the "White Marker" product from the catalog to the picked up basket
        Then the overall basket price should be €9

    Scenario: Failing to add out-of-stock products
        Given an out-of-stock product
        When I try to add it to my cart
        Then the basket should not be modified

    Scenario: Getting the delivery cost for a single product
        Given a product named "White Marker" and priced €5 was added to the catalog
        When I add the "White Marker" product from the catalog to the picked up basket
        Then the overall basket price should be €9

Write expectations

Implement

Repeat

Hey, but it's TDD

Or is it DDD ?

Or BDD ?

it's all of them

Design First

Connect later

The FW is a detail

FW: calls you

Library: you call it

Dependency Inversion

Don't depend on low-level

Made with Slides.com