Upload
giuseppe-de-simone
View
456
Download
0
Tags:
Embed Size (px)
DESCRIPTION
My session on BDD at Agile Conference China 2012
Citation preview
BEHAVIOR DRIVEN DEVELOPMENTAdding value with less work
Page 2
GIUSEPPE DE SIMONE› Agile/Lean coach, Trainer, Lecturer, Change catalyst,
Visionary, Scout leader. Passionate to help people grow.
› mail: [email protected]
› Twitter: @giusdesimone
› web:– Agile Coaching Network
– http://it.linkedin.com/in/giuseppedesimone
Page 3
MANIFESTO OF SW CRAFTSMANSHIP
Page 4
DELIVER AS FAST AS POSSIBLE Learn as fast as possible
Simplicity -- the art of m
aximizing the amount
of work not done -- is essential.
Page 5
BDD IN A NUTSHELL
Page 6
BDD IS NOT ABOUT TESTING...
…IT’S ABOUT DEVELOPMENT!
Page 7
USER STORY
As a Returning Customer I want the system to remember my details so I can purchase goods more quickly.
Acceptance criteria:Acceptance criteria:Acceptance criteria:Acceptance criteria:Scenario: Review Details Before PurchaseScenario: Review Details Before PurchaseScenario: Review Details Before PurchaseScenario: Review Details Before PurchaseGivenGivenGivenGiven I’m on the Amazon websiteAnd I’m logged in as a returning customerWhenWhenWhenWhen I click the “1-Click” buttonThenThenThenThen I should see my order details
Page 8
Accep
tance TestsA
ccep
tanc
e C
rite
ria
Page 9
Acc
epta
nce
Cri
teri
a Accep
tance Tests
Page 10
Acc
epta
nce
Cri
teri
a Accep
tance Tests
Page 11
Acc
epta
nce
Cri
teri
a Accep
tance Tests
Page 12
Acc
epta
nce
Cri
teri
a Accep
tance Tests
Page 13
Acc
epta
nce
Cri
teri
a Accep
tance Tests
Page 14
Acc
epta
nce
Cri
teri
a Accep
tance Tests
Page 15
Acc
epta
nce
Cri
teri
a Accep
tance Tests
Page 16
Acc
epta
nce
Cri
teri
a Accep
tance Tests
Page 17
Acc
epta
nce
Cri
teri
a Accep
tance Tests
Page 18
Acc
epta
nce
Cri
teri
a Accep
tance Tests
Page 19
Acc
epta
nce
Cri
teri
a Accep
tance Tests
Page 20
Acc
epta
nce
Cri
teri
a Accep
tance Tests
DONE
Page 21
TEST DRIVEN DEVELOPMENT
start with a failing
test
Quickly write the
simplest code needed
to pass the test
refactoring
Repeat as needed to meet requirements
Test everything that could possibly break
Page 22
TESTING QUADRANTS
Cri
tique
the
pro
duc
t
Sup
po
rt th
e te
amBusiness-facing
Technology-facing
AcceptanceTests
Q2
Unit TestsComponent Tests
Q1
Exploratory TestsUsability Tests
UAT
Q3
Performance, Security,
Load Tests
Q4
TDD
BDD
Page 23
DESIGN, IMPLEMENT, TEST ALL IN ONE...
Deliverable
ImplementAnalyze
Deliverable
Traditional Development
Agile Development
Test
Page 24
Given <context>When <action>Then <expected result>
Page 25
Page 26
BDD INSTANT WORKSHOP
› What could be for you (your team, your context) the benefits of using BDD?
› What do you miss to start tomorrow?
ta
lk
OUR EXPERIENCE
Page 28
Page 29
Page 30
Page 31
Development Team
TMTM
…
Sprint Review Meeting
...
ScrumMaster
SMSM
Product Owner
POPO����
Page 32
REFLECTIONS› BDD is NOT a tool
› Always challenge the desired behaviour
› Fast feedback is essential
› Communicate and collaborate
› Risk-first!
Page 33
COACHING BDD
› No special secret!
› Teaching and mentoring
› “Ha-ha” moments need to happen for lasting effects
› Grow agilists
› Stimulate curiosity and enthusiasm– Throw questions and challenges
Page 34
GAMIFYING BDD
Page 35
USEFUL LINKS
› Cucumber site– cukes.info
› Liz Keogh’s blog– lizkeogh.com
› Gojko Adzic web site– gojko.net
Page 36