HOW BDD CAN SAVE AGILE @mattwynne | QCon 2015 | London Does agile - - PowerPoint PPT Presentation

how bdd can save agile
SMART_READER_LITE
LIVE PREVIEW

HOW BDD CAN SAVE AGILE @mattwynne | QCon 2015 | London Does agile - - PowerPoint PPT Presentation

HOW BDD CAN SAVE AGILE @mattwynne | QCon 2015 | London Does agile really need saving? Scrum != Agile Predictability Communication Quality Small pieces Collaboration Technical discipline How does BDD help? Individuals and Interactions


slide-1
SLIDE 1

HOW BDD CAN SAVE AGILE

@mattwynne | QCon 2015 | London

slide-2
SLIDE 2

Does agile really need saving?

slide-3
SLIDE 3

Scrum != Agile

slide-4
SLIDE 4

Quality Communication Predictability

slide-5
SLIDE 5

Technical discipline Collaboration Small pieces

slide-6
SLIDE 6

How does BDD help?

slide-7
SLIDE 7

Individuals and Interactions

  • ver

Processes and Tools

slide-8
SLIDE 8

BDD is a tool

  • r maybe even a process, I dunno…

but…

slide-9
SLIDE 9

BDD is a tool that facilitates interactions between individuals

slide-10
SLIDE 10

BDD is a label

but

slide-11
SLIDE 11

I don’t like labels

slide-12
SLIDE 12

Let’s talk about behaviour instead

slide-13
SLIDE 13

BDD practitioners

explore, discover, define,

then drive out the desired behaviour of software using

conversations, concrete examples and automated tests.

slide-14
SLIDE 14

Explore Discover Define Drive out

slide-15
SLIDE 15

Conversations Concrete examples Test-driven development

slide-16
SLIDE 16

CONVERSATIONS

slide-17
SLIDE 17

SOFTWARE IS MADE BY PEOPLE

CONVERSATIONS MATTER BECAUSE

slide-18
SLIDE 18

IGNORANCE IS THE BOTTLENECK

CONVERSATIONS MATTER BECAUSE

slide-19
SLIDE 19

Discovery Workshop Stories Examples Shared understanding Smaller stories Questions Business rules

slide-20
SLIDE 20

EVERYONE HAS A UNIQUE PERSPECTIVE

CONVERSATIONS MATTER BECAUSE

slide-21
SLIDE 21

CONCRETE EXAMPLES

slide-22
SLIDE 22

MAKE SENSE TO EVERYONE

CONCRETE EXAMPLES

slide-23
SLIDE 23

ROOTED IN THE PROBLEM DOMAIN

CONCRETE EXAMPLES ARE

slide-24
SLIDE 24

Problem Domain Solution Domain

slide-25
SLIDE 25

HELP BUILD A UBIQUITOUS LANGUAGE

CONCRETE EXAMPLES PROVIDE

slide-26
SLIDE 26

A SHARED SOURCE OF TRUTH

CONCRETE EXAMPLES PROVIDE

slide-27
SLIDE 27

SPLIT STORIES INTO SMALL PIECES

CONCRETE EXAMPLES HELP YOU TO

slide-28
SLIDE 28

TEST-DRIVEN DEVELOPMENT

slide-29
SLIDE 29

WARNING LIGHTS

AUTOMATED TESTS ARE YOUR

slide-30
SLIDE 30

REFACTORING

THE BIT OF TDD THAT EVERYONE FORGETS IS

slide-31
SLIDE 31
slide-32
SLIDE 32
slide-33
SLIDE 33

You can't have clean code without refactoring You can't refactor without good automated tests You can't stay agile without clean code

slide-34
SLIDE 34

WHY?

TDD FORCES YOU TO ASK

slide-35
SLIDE 35

LISTENING TO THE TESTS

BUT YOU WILL FAIL UNLESS YOU ARE

slide-36
SLIDE 36

NO SHORT CUTS:

EXCELLENT COMMUNICATION EXCELLENT CODE

slide-37
SLIDE 37

THANKS. QUESTIONS?

@mattwynne matt@cucumber.pro