SlideShare uma empresa Scribd logo
1 de 44
Baixar para ler offline
INTRODUCING BDD
                    with a happy end.



© Aki Salmi, 2012                       cc by-sa
Who am I
Who am I (cont)
Who am I (cont.)

blipper
into agile since late 2006
studying to be supervisor
aki.salmi@iki.fi 
@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
Early spring 2011 @
      Lindorff
  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?”
I DID WHAT I WAS
    BEST AT...
NOTHING
NOTHING
to 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”
Calculus
   15SP / 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-side
be always present, but not always visible
Feedback loops
 or how we learned about it
Ideas


                   Features




                      Code



Matt Wynne on Refuctoring Your Cukes
          http://skillsmatter.com/podcast/agile-testing/refuctoring-your-cukes
The process
or how we experimented it.
Release BL

grooming
                     Acceptance

                      Criteria

                                          Executable

    UAT
                                         Specification


                                         defer design
demo & review
                                          decisions

                   implementation

    Note: this did or did not work in our context!
Release backlog grooming
        always off-site
Dates
   BL AC ES WIP     UAT Done
here


                   ChangeSet #
Remember: BDD is not about tools!
Communicate plans
  and how we are progressing
Challenges we are facing
Yes, there are some.
Communicate plans
 so 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…
The Goal of ET

1. Gain Understanding
2. Force to exhibit it’s
   capabilities
3. Find Bugs




                           ref [5]
Feedback loops
or how we think about it now
Business Process (UAT)
     Feature (ET)
      Story (ET)
    Scenario tests
       builds
        TDD
       pairing
What made this possible?
700




525




350
                                                                                                          Linear extrapolation

                                                                                                          Expected progress
                                                                                                          w/ 100% linear growth
175
                                                                                                          Expected progress w/ aggressive growth

                                                                                                          Done + Approved
  0
      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
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
Thank you!


Feedback appreciated!
aki.salmi@iki.fi 
@aksalmi

Mais conteúdo relacionado

Semelhante a JCN12 Behavior-Driven Development

Foundations of scaling agile with SAFe
Foundations of scaling agile with SAFeFoundations of scaling agile with SAFe
Foundations of scaling agile with SAFeYuval Yeret
 
Lightening Talk: definition of ready
Lightening Talk: definition of readyLightening Talk: definition of ready
Lightening Talk: definition of readyAgileee
 
Value driven continuous delivery
Value driven continuous deliveryValue driven continuous delivery
Value driven continuous deliveryGabriel Prat
 
Leadership Agility - Agile Leadership Fest 2019
Leadership Agility - Agile Leadership Fest 2019 Leadership Agility - Agile Leadership Fest 2019
Leadership Agility - Agile Leadership Fest 2019 Agile Velocity
 
How agile is rails
 How agile is rails How agile is rails
How agile is railsJosé Mota
 
User Stories Suck by David Hawks at North Dallas Product Owners Meetup
User Stories Suck by David Hawks at North Dallas Product Owners MeetupUser Stories Suck by David Hawks at North Dallas Product Owners Meetup
User Stories Suck by David Hawks at North Dallas Product Owners MeetupAgile Velocity
 
How to Adopt Agile at Your Organization
How to Adopt Agile at Your OrganizationHow to Adopt Agile at Your Organization
How to Adopt Agile at Your OrganizationRaimonds Simanovskis
 
Scrum under a waterfall
Scrum under a waterfallScrum under a waterfall
Scrum under a waterfallMing Man Chan
 
Agile testing for agile sparks kanban clients
Agile testing for agile sparks kanban clientsAgile testing for agile sparks kanban clients
Agile testing for agile sparks kanban clientsYuval Yeret
 
Lessons from the Cornish Software Mines
Lessons from the Cornish Software MinesLessons from the Cornish Software Mines
Lessons from the Cornish Software Minesallan kelly
 
Stefan bargaoanu we're agile. and now what v1.1
Stefan bargaoanu we're agile. and now what v1.1Stefan bargaoanu we're agile. and now what v1.1
Stefan bargaoanu we're agile. and now what v1.1Agora Group
 
NUS-ISS Learning Day 2019-Site Reliability Engineering – The Modern Method fo...
NUS-ISS Learning Day 2019-Site Reliability Engineering – The Modern Method fo...NUS-ISS Learning Day 2019-Site Reliability Engineering – The Modern Method fo...
NUS-ISS Learning Day 2019-Site Reliability Engineering – The Modern Method fo...NUS-ISS
 
Managing Large-Scale Agile Transformations - Experiences At Yahoo!
Managing Large-Scale Agile Transformations - Experiences At Yahoo!Managing Large-Scale Agile Transformations - Experiences At Yahoo!
Managing Large-Scale Agile Transformations - Experiences At Yahoo!Tathagat Varma
 
Stop Starting. Start Finishing. APLN Houston
Stop Starting. Start Finishing. APLN HoustonStop Starting. Start Finishing. APLN Houston
Stop Starting. Start Finishing. APLN HoustonDavid Hawks
 
Dev and Ops Collaboration and Awareness at Etsy and Flickr
Dev and Ops Collaboration and Awareness at Etsy and FlickrDev and Ops Collaboration and Awareness at Etsy and Flickr
Dev and Ops Collaboration and Awareness at Etsy and FlickrJohn Allspaw
 
Agile Velocity Stop Starting. Start Finishing. PMI - Austin
Agile Velocity Stop Starting. Start Finishing. PMI - AustinAgile Velocity Stop Starting. Start Finishing. PMI - Austin
Agile Velocity Stop Starting. Start Finishing. PMI - AustinDavid Hawks
 
AgileEE 2011: My Lightening Talk about "Definiton of READY"
AgileEE 2011: My Lightening Talk about "Definiton of READY"AgileEE 2011: My Lightening Talk about "Definiton of READY"
AgileEE 2011: My Lightening Talk about "Definiton of READY"Felix Ruessel
 
Agile101 - What Agile Is and What Agile Is Not
Agile101 - What Agile Is and What Agile Is NotAgile101 - What Agile Is and What Agile Is Not
Agile101 - What Agile Is and What Agile Is NotDerek Huether
 
The 7 Deadly Sins Of Almost Being Agile
The 7 Deadly Sins Of Almost Being AgileThe 7 Deadly Sins Of Almost Being Agile
The 7 Deadly Sins Of Almost Being Agilelazygolfer
 
Agile adoption tales from the coalface
Agile adoption   tales  from the coalfaceAgile adoption   tales  from the coalface
Agile adoption tales from the coalfaceNish Mahanty
 

Semelhante a JCN12 Behavior-Driven Development (20)

Foundations of scaling agile with SAFe
Foundations of scaling agile with SAFeFoundations of scaling agile with SAFe
Foundations of scaling agile with SAFe
 
Lightening Talk: definition of ready
Lightening Talk: definition of readyLightening Talk: definition of ready
Lightening Talk: definition of ready
 
Value driven continuous delivery
Value driven continuous deliveryValue driven continuous delivery
Value driven continuous delivery
 
Leadership Agility - Agile Leadership Fest 2019
Leadership Agility - Agile Leadership Fest 2019 Leadership Agility - Agile Leadership Fest 2019
Leadership Agility - Agile Leadership Fest 2019
 
How agile is rails
 How agile is rails How agile is rails
How agile is rails
 
User Stories Suck by David Hawks at North Dallas Product Owners Meetup
User Stories Suck by David Hawks at North Dallas Product Owners MeetupUser Stories Suck by David Hawks at North Dallas Product Owners Meetup
User Stories Suck by David Hawks at North Dallas Product Owners Meetup
 
How to Adopt Agile at Your Organization
How to Adopt Agile at Your OrganizationHow to Adopt Agile at Your Organization
How to Adopt Agile at Your Organization
 
Scrum under a waterfall
Scrum under a waterfallScrum under a waterfall
Scrum under a waterfall
 
Agile testing for agile sparks kanban clients
Agile testing for agile sparks kanban clientsAgile testing for agile sparks kanban clients
Agile testing for agile sparks kanban clients
 
Lessons from the Cornish Software Mines
Lessons from the Cornish Software MinesLessons from the Cornish Software Mines
Lessons from the Cornish Software Mines
 
Stefan bargaoanu we're agile. and now what v1.1
Stefan bargaoanu we're agile. and now what v1.1Stefan bargaoanu we're agile. and now what v1.1
Stefan bargaoanu we're agile. and now what v1.1
 
NUS-ISS Learning Day 2019-Site Reliability Engineering – The Modern Method fo...
NUS-ISS Learning Day 2019-Site Reliability Engineering – The Modern Method fo...NUS-ISS Learning Day 2019-Site Reliability Engineering – The Modern Method fo...
NUS-ISS Learning Day 2019-Site Reliability Engineering – The Modern Method fo...
 
Managing Large-Scale Agile Transformations - Experiences At Yahoo!
Managing Large-Scale Agile Transformations - Experiences At Yahoo!Managing Large-Scale Agile Transformations - Experiences At Yahoo!
Managing Large-Scale Agile Transformations - Experiences At Yahoo!
 
Stop Starting. Start Finishing. APLN Houston
Stop Starting. Start Finishing. APLN HoustonStop Starting. Start Finishing. APLN Houston
Stop Starting. Start Finishing. APLN Houston
 
Dev and Ops Collaboration and Awareness at Etsy and Flickr
Dev and Ops Collaboration and Awareness at Etsy and FlickrDev and Ops Collaboration and Awareness at Etsy and Flickr
Dev and Ops Collaboration and Awareness at Etsy and Flickr
 
Agile Velocity Stop Starting. Start Finishing. PMI - Austin
Agile Velocity Stop Starting. Start Finishing. PMI - AustinAgile Velocity Stop Starting. Start Finishing. PMI - Austin
Agile Velocity Stop Starting. Start Finishing. PMI - Austin
 
AgileEE 2011: My Lightening Talk about "Definiton of READY"
AgileEE 2011: My Lightening Talk about "Definiton of READY"AgileEE 2011: My Lightening Talk about "Definiton of READY"
AgileEE 2011: My Lightening Talk about "Definiton of READY"
 
Agile101 - What Agile Is and What Agile Is Not
Agile101 - What Agile Is and What Agile Is NotAgile101 - What Agile Is and What Agile Is Not
Agile101 - What Agile Is and What Agile Is Not
 
The 7 Deadly Sins Of Almost Being Agile
The 7 Deadly Sins Of Almost Being AgileThe 7 Deadly Sins Of Almost Being Agile
The 7 Deadly Sins Of Almost Being Agile
 
Agile adoption tales from the coalface
Agile adoption   tales  from the coalfaceAgile adoption   tales  from the coalface
Agile adoption tales from the coalface
 

Mais de Ambientia

Itms atlassian way-final-2017-10
Itms atlassian way-final-2017-10Itms atlassian way-final-2017-10
Itms atlassian way-final-2017-10Ambientia
 
Dev ops atlassianway-final-2017-10
Dev ops atlassianway-final-2017-10Dev ops atlassianway-final-2017-10
Dev ops atlassianway-final-2017-10Ambientia
 
Insight Asset Management for JIRA Service Desk
Insight Asset Management for JIRA Service DeskInsight Asset Management for JIRA Service Desk
Insight Asset Management for JIRA Service DeskAmbientia
 
APIen hallinnalla uutta liiketoimintaa
APIen hallinnalla uutta liiketoimintaaAPIen hallinnalla uutta liiketoimintaa
APIen hallinnalla uutta liiketoimintaaAmbientia
 
Miten API management toimii
Miten API management toimiiMiten API management toimii
Miten API management toimiiAmbientia
 
Tunnistamalla asiakaspolut tehostat asiakaspalvelusi toimintaa
Tunnistamalla asiakaspolut tehostat asiakaspalvelusi toimintaaTunnistamalla asiakaspolut tehostat asiakaspalvelusi toimintaa
Tunnistamalla asiakaspolut tehostat asiakaspalvelusi toimintaaAmbientia
 
OpenShift-webinaari 31.1. / Ambientian esitykset
OpenShift-webinaari 31.1. / Ambientian esityksetOpenShift-webinaari 31.1. / Ambientian esitykset
OpenShift-webinaari 31.1. / Ambientian esityksetAmbientia
 
ITSM & JIRA Service Desk
ITSM & JIRA Service DeskITSM & JIRA Service Desk
ITSM & JIRA Service DeskAmbientia
 
Ambientia Service Design -työpaja SYTYKE
Ambientia Service Design -työpaja SYTYKEAmbientia Service Design -työpaja SYTYKE
Ambientia Service Design -työpaja SYTYKEAmbientia
 
Liferayn rooli Valtorin palveluvalikoimassa
Liferayn rooli Valtorin palveluvalikoimassaLiferayn rooli Valtorin palveluvalikoimassa
Liferayn rooli Valtorin palveluvalikoimassaAmbientia
 
Digitaalinen asiakaskokemus ja palvelumuotoilu
Digitaalinen asiakaskokemus ja palvelumuotoiluDigitaalinen asiakaskokemus ja palvelumuotoilu
Digitaalinen asiakaskokemus ja palvelumuotoiluAmbientia
 
Liferay Audience Targeting
Liferay Audience TargetingLiferay Audience Targeting
Liferay Audience TargetingAmbientia
 
Case Procountor: Zephyr test tool deployment
Case Procountor: Zephyr test tool deploymentCase Procountor: Zephyr test tool deployment
Case Procountor: Zephyr test tool deploymentAmbientia
 
JIRA Portfolio
JIRA PortfolioJIRA Portfolio
JIRA PortfolioAmbientia
 
Case Containerships JIRA Service Desk
Case Containerships JIRA Service DeskCase Containerships JIRA Service Desk
Case Containerships JIRA Service DeskAmbientia
 
Liferay Road Show Sosiaali- ja terveysministeriö
Liferay Road Show Sosiaali- ja terveysministeriöLiferay Road Show Sosiaali- ja terveysministeriö
Liferay Road Show Sosiaali- ja terveysministeriöAmbientia
 
Liferay Road Show Responsiivinen suunnittelu
Liferay Road Show Responsiivinen suunnitteluLiferay Road Show Responsiivinen suunnittelu
Liferay Road Show Responsiivinen suunnitteluAmbientia
 
Liferay Road Show Linnunmaa LEX
 Liferay Road Show Linnunmaa LEX Liferay Road Show Linnunmaa LEX
Liferay Road Show Linnunmaa LEXAmbientia
 
Liferay Road Show Rolf van der Steen
Liferay Road Show Rolf van der SteenLiferay Road Show Rolf van der Steen
Liferay Road Show Rolf van der SteenAmbientia
 

Mais de Ambientia (20)

Itms atlassian way-final-2017-10
Itms atlassian way-final-2017-10Itms atlassian way-final-2017-10
Itms atlassian way-final-2017-10
 
Dev ops atlassianway-final-2017-10
Dev ops atlassianway-final-2017-10Dev ops atlassianway-final-2017-10
Dev ops atlassianway-final-2017-10
 
Insight Asset Management for JIRA Service Desk
Insight Asset Management for JIRA Service DeskInsight Asset Management for JIRA Service Desk
Insight Asset Management for JIRA Service Desk
 
APIen hallinnalla uutta liiketoimintaa
APIen hallinnalla uutta liiketoimintaaAPIen hallinnalla uutta liiketoimintaa
APIen hallinnalla uutta liiketoimintaa
 
Miten API management toimii
Miten API management toimiiMiten API management toimii
Miten API management toimii
 
Tunnistamalla asiakaspolut tehostat asiakaspalvelusi toimintaa
Tunnistamalla asiakaspolut tehostat asiakaspalvelusi toimintaaTunnistamalla asiakaspolut tehostat asiakaspalvelusi toimintaa
Tunnistamalla asiakaspolut tehostat asiakaspalvelusi toimintaa
 
OpenShift-webinaari 31.1. / Ambientian esitykset
OpenShift-webinaari 31.1. / Ambientian esityksetOpenShift-webinaari 31.1. / Ambientian esitykset
OpenShift-webinaari 31.1. / Ambientian esitykset
 
ITSM & JIRA Service Desk
ITSM & JIRA Service DeskITSM & JIRA Service Desk
ITSM & JIRA Service Desk
 
Ambientia Service Design -työpaja SYTYKE
Ambientia Service Design -työpaja SYTYKEAmbientia Service Design -työpaja SYTYKE
Ambientia Service Design -työpaja SYTYKE
 
Liferayn rooli Valtorin palveluvalikoimassa
Liferayn rooli Valtorin palveluvalikoimassaLiferayn rooli Valtorin palveluvalikoimassa
Liferayn rooli Valtorin palveluvalikoimassa
 
Digitaalinen asiakaskokemus ja palvelumuotoilu
Digitaalinen asiakaskokemus ja palvelumuotoiluDigitaalinen asiakaskokemus ja palvelumuotoilu
Digitaalinen asiakaskokemus ja palvelumuotoilu
 
Liferay Audience Targeting
Liferay Audience TargetingLiferay Audience Targeting
Liferay Audience Targeting
 
Case Procountor: Zephyr test tool deployment
Case Procountor: Zephyr test tool deploymentCase Procountor: Zephyr test tool deployment
Case Procountor: Zephyr test tool deployment
 
JIRA Portfolio
JIRA PortfolioJIRA Portfolio
JIRA Portfolio
 
Case Containerships JIRA Service Desk
Case Containerships JIRA Service DeskCase Containerships JIRA Service Desk
Case Containerships JIRA Service Desk
 
Jira 7
Jira 7Jira 7
Jira 7
 
Liferay Road Show Sosiaali- ja terveysministeriö
Liferay Road Show Sosiaali- ja terveysministeriöLiferay Road Show Sosiaali- ja terveysministeriö
Liferay Road Show Sosiaali- ja terveysministeriö
 
Liferay Road Show Responsiivinen suunnittelu
Liferay Road Show Responsiivinen suunnitteluLiferay Road Show Responsiivinen suunnittelu
Liferay Road Show Responsiivinen suunnittelu
 
Liferay Road Show Linnunmaa LEX
 Liferay Road Show Linnunmaa LEX Liferay Road Show Linnunmaa LEX
Liferay Road Show Linnunmaa LEX
 
Liferay Road Show Rolf van der Steen
Liferay Road Show Rolf van der SteenLiferay Road Show Rolf van der Steen
Liferay Road Show Rolf van der Steen
 

JCN12 Behavior-Driven Development