jcn12 behavior-driven development
DESCRIPTION
TRANSCRIPT
cc by-sa © Aki Salmi, 2012
INTRODUCING BDDwith a happy end.
Who am I
Who am I (cont)
Who am I (cont.)
blipper
into agile since late 2006
studying to be supervisor
@aksalmi
Introducing BDD
Does it mean:
BDD Basics
OR
How I introduced BDD to my current company?
History
2008 Acceptance testing with Robot Framework
2009 Acceptance testing with Cucumber
2010 first trials of using cucumber to collaborate with the customers.
You can buy the book from http://pragprog.com/book/hwcuc/the-cucumber-book
I started as Scrum Master for a team of 9.
Weekly sprints. Mostly failing to deliver
Agile coaches visiting us.
Discussions. Every. Single. Morning.
“What’s wrong with this all?”
Early spring 2011 @ Lindorff
I DID WHAT I WAS BEST AT...
NOTHING
NOTHINGto hinder development effort
Where to lead?formation matters
Personal Touch
live your dream
transparency
empathy, care
optimism
Minor changes
informative workspace (big kanban wall)
new acceptance testing tool
easy way to introduce new process
closer cooperation with the business
The magic date 1.7.2011
“This needs to be done - We require You to complete 550 SP by end of this year”
Calculus15SP / 2wk / team
2 teams
Estimated total velocity 60SP / month
Work enough until mid-April 2012.
which resulted in...
“YOU NEED TO MAKE IT HAPPEN!”
the business promised to help
The End?
Now it’s your call!
BDD Basics Introducing change!
Walk side-by-sidebe always present, but not always visible
Feedback loopsor how we learned about it
Ideas
Features
Code
Matt Wynne on Refuctoring Your Cukes http://skillsmatter.com/podcast/agile-testing/refuctoring-your-cukes
The processor how we experimented it.
AcceptanceCriteria
Release BLgrooming
ExecutableSpecification
implementation
demo & review
UAT
defer design decisions
Note: this did or did not work in our context!
Release backlog groomingalways off-site
BLDateshere
AC ES WIP UAT Done
ChangeSet #
Remember: BDD is not about tools!
Communicate plansand how we are progressing
Challenges we are facing
Yes, there are some.
Communicate plansso far away, no matter how close
Exploratory Testing
A lot to learn
Since for us it’s mostly…
ad-hoc testing... aiming to catch bugs flying around?
INSTEAD OF…
ref [5]
The Goal of ET
1. Gain Understanding
2. Force to exhibit it’s capabilities
3. Find Bugs
Feedback loopsor how we think about it now
pairingTDDbuilds
Scenario testsStory (ET)
Feature (ET)Business Process (UAT)
What made this possible?
0
175
350
525
700
22.6 6.7 20.7 3.8 17.8 31.8 14.9 28.9 12.10 26.10 9.11 23.11 7.12 21.12 4.1. 18.1 1.2 15.2 29.2
Linear extrapolation
Expected progress w/ 100% linear growthExpected progress w/ aggressive growth
Done + Approved
Story of ‘550’
Say what you say - 6 words.
Luck, that is your best friend!
Sit together, talk together, smile together
Build Trust! And help them experiment