SlideShare a Scribd company logo
1 of 80
Test Driven
Development
 Pittsburgh Agile Group
      May 24, 2011




                 Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Our Tests
It == This Presentation




               Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Our Tests
   It == This Presentation
ā€¢ it should deļ¬ne TDD




                        Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Our Tests
   It == This Presentation
ā€¢ it should deļ¬ne TDD
ā€¢ it should explain why TDD works




                       Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Our Tests
    It == This Presentation
ā€¢ it should deļ¬ne TDD
ā€¢ it should explain why TDD works
ā€¢ it should explain why you should do TDD




                        Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Our Tests
     It == This Presentation
ā€¢   it should deļ¬ne TDD
ā€¢   it should explain why TDD works
ā€¢   it should explain why you should do TDD
ā€¢   it should demonstrate TDD




                          Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
What is TDD?




        Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
What is TDD?
ā€¢ Simple, high-feedback incremental coding
  technique




                         Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
What is TDD?
ā€¢ Simple, high-feedback incremental coding
  technique
 ā€¢ Write tests as specs prior to code




                             Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
What is TDD?
ā€¢ Simple, high-feedback incremental coding
  technique
 ā€¢ Write tests as specs prior to code
 ā€¢ Immediate feedback




                             Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Core of the cycle




           Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
History of TDD




         Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
History of TDD




         Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
History of TDD
ā€¢ Devised by Ward
  Cunningham




                    Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
History of TDD
ā€¢ Devised by Ward
  Cunningham
 ā€¢ Honed by Kent Beck




                        Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
History of TDD
ā€¢ Devised by Ward
  Cunningham
 ā€¢ Honed by Kent Beck
 ā€¢ Incorporated as one of XPā€™s
   practices




                            Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
History of TDD
ā€¢ Devised by Ward
  Cunningham
 ā€¢ Honed by Kent Beck
 ā€¢ Incorporated as one of XPā€™s
   practices
ā€¢ Buzzword History



                            Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
History of TDD
ā€¢ Devised by Ward
  Cunningham
 ā€¢ Honed by Kent Beck
 ā€¢ Incorporated as one of XPā€™s
   practices
ā€¢ Buzzword History
 ā€¢ Test-ļ¬rst programming



                            Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
History of TDD
ā€¢ Devised by Ward
  Cunningham
 ā€¢ Honed by Kent Beck
 ā€¢ Incorporated as one of XPā€™s
   practices
ā€¢ Buzzword History
 ā€¢ Test-ļ¬rst programming
 ā€¢ Test-ļ¬rst design


                            Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
History of TDD
ā€¢ Devised by Ward
  Cunningham
 ā€¢ Honed by Kent Beck
 ā€¢ Incorporated as one of XPā€™s
   practices
ā€¢ Buzzword History
 ā€¢ Test-ļ¬rst programming
 ā€¢ Test-ļ¬rst design
 ā€¢ Test-driven development

                             Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
TDD and Testing




         Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
TDD and Testing
ā€¢ Creates testable code
  by deļ¬nition




                          Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
TDD and Testing
ā€¢ Creates testable code
  by deļ¬nition
  ā€¢ Obvious but signiļ¬cant




                             Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
TDD and Testing
ā€¢ Creates testable code
  by deļ¬nition
  ā€¢ Obvious but signiļ¬cant
  ā€¢ Writing tests after code
    built is much harder




                               Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
TDD and Testing
ā€¢ Creates testable code
  by deļ¬nition
  ā€¢ Obvious but signiļ¬cant
  ā€¢ Writing tests after code
    built is much harder
    ā€¢ Therefore fewer tests
       get written




                               Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
TDD and Testing
ā€¢ Creates testable code
  by deļ¬nition
  ā€¢ Obvious but signiļ¬cant
  ā€¢ Writing tests after code
    built is much harder
    ā€¢ Therefore fewer tests
       get written

ā€¢ Minimizes defects

                               Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
More Importantly...




           Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
More Importantly...
ā€¢ Promotes better design




                       Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
More Importantly...
ā€¢ Promotes better design
 ā€¢ Teaches you how to design isolated classes




                             Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
More Importantly...
ā€¢ Promotes better design
    ā€¢ Teaches you how to design isolated classes
ā€¢    Creates comprehensive developer
     documentation




                                Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
More Importantly...
ā€¢ Promotes better design
    ā€¢ Teaches you how to design isolated classes
ā€¢    Creates comprehensive developer
     documentation
ā€¢    Development Pacing




                                Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
TDD Rules




      Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
TDD Rules
ā€¢ Test everything that
  could possibly break




                         Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
TDD Rules
ā€¢ Test everything that
  could possibly break
ā€¢ Do not write any
  production code until
  you have a failing test




                            Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
TDD Rules
ā€¢ Test everything that
  could possibly break
ā€¢ Do not write any
  production code until
  you have a failing test
ā€¢ Code is not checked
  in until 100% of unit
  tests run



                            Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Our Tests
     It == This Presentation
ā€¢   it should deļ¬ne TDD
ā€¢   it should explain why TDD works
ā€¢   it should explain why you should do TDD
ā€¢   it should demonstrate TDD




                          Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Our Tests
     It == This Presentation
ā€¢   it should deļ¬ne TDD
ā€¢   it should explain why TDD works
ā€¢   it should explain why you should do TDD
ā€¢   it should demonstrate TDD




                          Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Why does it work?




          Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Why does it work?
Pleasure spiked with Pain!




               Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Why does it work?
Pleasure spiked with Pain!




               Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Why does it work?
Pleasure spiked with Pain!




               Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Long Methods




        Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Long Methods


   Pain!



        Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Many Dependencies




          Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Many Dependencies


      Pain!



          Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Doing too much




         Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Doing too much


    Pain!



         Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Keep it clean




        Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Keep it clean


 Pleasure



        Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Feel good


Pleasure



      Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Our Tests
     It == This Presentation
ā€¢   it should deļ¬ne TDD
ā€¢   it should explain why TDD works
ā€¢   it should explain why you should do TDD
ā€¢   it should demonstrate TDD




                          Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Our Tests
     It == This Presentation
ā€¢   it should deļ¬ne TDD
ā€¢   it should explain why TDD works
ā€¢   it should explain why you should do TDD
ā€¢   it should demonstrate TDD




                          Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Nature


^
F




      T>
           Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Nature
                                           X


^
F




      T>
           Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Nature
                                           X


^
F




      T>
           Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Nature
                                           X


^
F




      T>
           Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Nature
                                           X


^
F




      T>
           Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Nature
                                           X


^
F




      T>
           Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Design Evolves




         Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Design Evolves




         Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Design Evolves




         Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Design Evolves




         Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Design Evolves




         Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Design Evolves




         Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Fewer Defects




http://research.microsoft.com/en-us/projects/esm/
                 nagappan_tdd.pdf
                             Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
We Do Scrum!




       Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
We Do Scrum!




       Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
We Do Scrum!




       Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Professionalism




         Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Our Tests
     It == This Presentation
ā€¢   it should deļ¬ne TDD
ā€¢   it should explain why TDD works
ā€¢   it should explain why you should do TDD
ā€¢   it should demonstrate TDD




                          Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Our Tests
     It == This Presentation
ā€¢   it should deļ¬ne TDD
ā€¢   it should explain why TDD works
ā€¢   it should explain why you should do TDD
ā€¢   it should demonstrate TDD




                          Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Demo Time



      Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Our Tests
     It == This Presentation
ā€¢   it should deļ¬ne TDD
ā€¢   it should explain why TDD works
ā€¢   it should explain why you should do TDD
ā€¢   it should demonstrate TDD




                          Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Our Tests
     It == This Presentation
ā€¢   it should deļ¬ne TDD
ā€¢   it should explain why TDD works
ā€¢   it should explain why you should do TDD
ā€¢   it should demonstrate TDD




                          Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Final Thoughts




         Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Final Thoughts
ā€¢ TDD is here to stay




                        Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Final Thoughts
ā€¢ TDD is here to stay
 ā€¢ A satisfying and enriching practice that can
    dramatically increase the quality of your
    application




                               Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Final Thoughts
ā€¢ TDD is here to stay
 ā€¢ A satisfying and enriching practice that can
    dramatically increase the quality of your
    application
ā€¢ Diligent adherence to practice is required
  to succeed




                               Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Final Thoughts
ā€¢ TDD is here to stay
 ā€¢ A satisfying and enriching practice that can
    dramatically increase the quality of your
    application
ā€¢ Diligent adherence to practice is required
  to succeed
 ā€¢ But the beneļ¬ts are worth it




                               Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
Presentation for Pittsburgh Agile Group

More Related Content

What's hot

DevoxxUK 2019 - Better software, faster.
DevoxxUK 2019 - Better software, faster.DevoxxUK 2019 - Better software, faster.
DevoxxUK 2019 - Better software, faster.Bert Jan Schrijver
Ā 
Establishing Release Quality Levels and Release Acceptance Tests
Establishing Release Quality Levels and Release Acceptance TestsEstablishing Release Quality Levels and Release Acceptance Tests
Establishing Release Quality Levels and Release Acceptance TestsConteneo Inc.
Ā 
AmsterdamJUG September 2019 - Better software, faster: Principles of Continuo...
AmsterdamJUG September 2019 - Better software, faster: Principles of Continuo...AmsterdamJUG September 2019 - Better software, faster: Principles of Continuo...
AmsterdamJUG September 2019 - Better software, faster: Principles of Continuo...Bert Jan Schrijver
Ā 
CodeOne 2018 - Better software, faster: principles of Continuous Delivery and...
CodeOne 2018 - Better software, faster: principles of Continuous Delivery and...CodeOne 2018 - Better software, faster: principles of Continuous Delivery and...
CodeOne 2018 - Better software, faster: principles of Continuous Delivery and...Bert Jan Schrijver
Ā 
OpenValue Vienna meetup september 2020 - Better software, faster: Principles ...
OpenValue Vienna meetup september 2020 - Better software, faster: Principles ...OpenValue Vienna meetup september 2020 - Better software, faster: Principles ...
OpenValue Vienna meetup september 2020 - Better software, faster: Principles ...Bert Jan Schrijver
Ā 
Bridging the Distance through Agile Game Development
Bridging the Distance through Agile Game DevelopmentBridging the Distance through Agile Game Development
Bridging the Distance through Agile Game DevelopmentFinnur Magnusson
Ā 
Devoxx Belgium 2019 - Better software, faster: Principles of Continuous Deliv...
Devoxx Belgium 2019 - Better software, faster: Principles of Continuous Deliv...Devoxx Belgium 2019 - Better software, faster: Principles of Continuous Deliv...
Devoxx Belgium 2019 - Better software, faster: Principles of Continuous Deliv...Bert Jan Schrijver
Ā 

What's hot (7)

DevoxxUK 2019 - Better software, faster.
DevoxxUK 2019 - Better software, faster.DevoxxUK 2019 - Better software, faster.
DevoxxUK 2019 - Better software, faster.
Ā 
Establishing Release Quality Levels and Release Acceptance Tests
Establishing Release Quality Levels and Release Acceptance TestsEstablishing Release Quality Levels and Release Acceptance Tests
Establishing Release Quality Levels and Release Acceptance Tests
Ā 
AmsterdamJUG September 2019 - Better software, faster: Principles of Continuo...
AmsterdamJUG September 2019 - Better software, faster: Principles of Continuo...AmsterdamJUG September 2019 - Better software, faster: Principles of Continuo...
AmsterdamJUG September 2019 - Better software, faster: Principles of Continuo...
Ā 
CodeOne 2018 - Better software, faster: principles of Continuous Delivery and...
CodeOne 2018 - Better software, faster: principles of Continuous Delivery and...CodeOne 2018 - Better software, faster: principles of Continuous Delivery and...
CodeOne 2018 - Better software, faster: principles of Continuous Delivery and...
Ā 
OpenValue Vienna meetup september 2020 - Better software, faster: Principles ...
OpenValue Vienna meetup september 2020 - Better software, faster: Principles ...OpenValue Vienna meetup september 2020 - Better software, faster: Principles ...
OpenValue Vienna meetup september 2020 - Better software, faster: Principles ...
Ā 
Bridging the Distance through Agile Game Development
Bridging the Distance through Agile Game DevelopmentBridging the Distance through Agile Game Development
Bridging the Distance through Agile Game Development
Ā 
Devoxx Belgium 2019 - Better software, faster: Principles of Continuous Deliv...
Devoxx Belgium 2019 - Better software, faster: Principles of Continuous Deliv...Devoxx Belgium 2019 - Better software, faster: Principles of Continuous Deliv...
Devoxx Belgium 2019 - Better software, faster: Principles of Continuous Deliv...
Ā 

Viewers also liked

30.05
30.0530.05
30.05sknsz
Ā 
Web vn
Web vnWeb vn
Web vnAnam
Ā 
Shrinivas kulkarni Testing is Dead
Shrinivas kulkarni   Testing is DeadShrinivas kulkarni   Testing is Dead
Shrinivas kulkarni Testing is DeadvodQA
Ā 
Hallgrƭmur pƩtursson
Hallgrƭmur pƩturssonHallgrƭmur pƩtursson
Hallgrƭmur pƩturssonsverrirs2859
Ā 
Web ve
Web veWeb ve
Web veAnam
Ā 
Lookbook Cloud (Facebook slideshow with multiple hotspots app) user guide
Lookbook Cloud (Facebook slideshow with multiple hotspots app) user guideLookbook Cloud (Facebook slideshow with multiple hotspots app) user guide
Lookbook Cloud (Facebook slideshow with multiple hotspots app) user guideAlex Levashov
Ā 
Rola polskiej prezydencji
Rola polskiej prezydencjiRola polskiej prezydencji
Rola polskiej prezydencjisknsz
Ā 
Drugi dzień przeglądu filmĆ³w dokumentalnych z międzynarodowego festiwalu
Drugi dzień przeglądu filmĆ³w dokumentalnych z międzynarodowego festiwaluDrugi dzień przeglądu filmĆ³w dokumentalnych z międzynarodowego festiwalu
Drugi dzień przeglądu filmĆ³w dokumentalnych z międzynarodowego festiwalusknsz
Ā 
Photo presentation
Photo presentationPhoto presentation
Photo presentationmheberle04
Ā 
Oporrak!
Oporrak!Oporrak!
Oporrak!ander2234
Ā 
A window between worlds
A window between worldsA window between worlds
A window between worldsKristy
Ā 
Ettkanne 13.sept.2013
Ettkanne 13.sept.2013Ettkanne 13.sept.2013
Ettkanne 13.sept.2013Margus Ots
Ā 
Financial crisis done
Financial crisis doneFinancial crisis done
Financial crisis doneEly Twiggs
Ā 
2010 New Products
2010 New Products2010 New Products
2010 New Productsledindex
Ā 
Pooderniercours
PooderniercoursPooderniercours
PooderniercoursAmel Morchdi
Ā 
Llista provisional d'inscrits vn'12
Llista provisional d'inscrits vn'12Llista provisional d'inscrits vn'12
Llista provisional d'inscrits vn'12Anam
Ā 

Viewers also liked (20)

30.05
30.0530.05
30.05
Ā 
Web vn
Web vnWeb vn
Web vn
Ā 
Shrinivas kulkarni Testing is Dead
Shrinivas kulkarni   Testing is DeadShrinivas kulkarni   Testing is Dead
Shrinivas kulkarni Testing is Dead
Ā 
Java getstarted
Java getstartedJava getstarted
Java getstarted
Ā 
Hallgrƭmur pƩtursson
Hallgrƭmur pƩturssonHallgrƭmur pƩtursson
Hallgrƭmur pƩtursson
Ā 
Pc world spain julio agosto 2013
Pc world spain   julio agosto 2013Pc world spain   julio agosto 2013
Pc world spain julio agosto 2013
Ā 
Optiprint 3D Print Eyeglasses Patricia DurƔn Ospina
Optiprint 3D Print Eyeglasses Patricia DurƔn OspinaOptiprint 3D Print Eyeglasses Patricia DurƔn Ospina
Optiprint 3D Print Eyeglasses Patricia DurƔn Ospina
Ā 
Web ve
Web veWeb ve
Web ve
Ā 
Lookbook Cloud (Facebook slideshow with multiple hotspots app) user guide
Lookbook Cloud (Facebook slideshow with multiple hotspots app) user guideLookbook Cloud (Facebook slideshow with multiple hotspots app) user guide
Lookbook Cloud (Facebook slideshow with multiple hotspots app) user guide
Ā 
Rola polskiej prezydencji
Rola polskiej prezydencjiRola polskiej prezydencji
Rola polskiej prezydencji
Ā 
Drugi dzień przeglądu filmĆ³w dokumentalnych z międzynarodowego festiwalu
Drugi dzień przeglądu filmĆ³w dokumentalnych z międzynarodowego festiwaluDrugi dzień przeglądu filmĆ³w dokumentalnych z międzynarodowego festiwalu
Drugi dzień przeglądu filmĆ³w dokumentalnych z międzynarodowego festiwalu
Ā 
Photo presentation
Photo presentationPhoto presentation
Photo presentation
Ā 
Oporrak!
Oporrak!Oporrak!
Oporrak!
Ā 
A window between worlds
A window between worldsA window between worlds
A window between worlds
Ā 
Ettkanne 13.sept.2013
Ettkanne 13.sept.2013Ettkanne 13.sept.2013
Ettkanne 13.sept.2013
Ā 
Barnes &noble
Barnes &nobleBarnes &noble
Barnes &noble
Ā 
Financial crisis done
Financial crisis doneFinancial crisis done
Financial crisis done
Ā 
2010 New Products
2010 New Products2010 New Products
2010 New Products
Ā 
Pooderniercours
PooderniercoursPooderniercours
Pooderniercours
Ā 
Llista provisional d'inscrits vn'12
Llista provisional d'inscrits vn'12Llista provisional d'inscrits vn'12
Llista provisional d'inscrits vn'12
Ā 

Similar to Presentation for Pittsburgh Agile Group

Key lean principles for organizational change
Key lean principles for organizational changeKey lean principles for organizational change
Key lean principles for organizational changeLeanDog
Ā 
Cucumber & Cheese
Cucumber & CheeseCucumber & Cheese
Cucumber & Cheesechzy
Ā 
Qa team sport
Qa team sportQa team sport
Qa team sportLeanDog
Ā 
ATDD - Agile Testing
ATDD -  Agile Testing ATDD -  Agile Testing
ATDD - Agile Testing chzy
Ā 
Patterns of Automation: Simplify Your Test Code
Patterns of Automation: Simplify Your Test CodePatterns of Automation: Simplify Your Test Code
Patterns of Automation: Simplify Your Test CodeTechWell
Ā 
How HipChat Ships and Recovers Fast with DevOps Practices
How HipChat Ships and Recovers Fast with DevOps PracticesHow HipChat Ships and Recovers Fast with DevOps Practices
How HipChat Ships and Recovers Fast with DevOps PracticesAtlassian
Ā 
Developers Best Practices
Developers Best PracticesDevelopers Best Practices
Developers Best Practicesaqib javaid
Ā 
What is DevOps?
What is DevOps?What is DevOps?
What is DevOps?jeckels
Ā 
WeActuallyBuildStuff - Extreme Programming Live
WeActuallyBuildStuff - Extreme Programming LiveWeActuallyBuildStuff - Extreme Programming Live
WeActuallyBuildStuff - Extreme Programming LiveJohannes Brodwall
Ā 
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...Edureka!
Ā 
Test Driven Development with Laravel
Test Driven Development with LaravelTest Driven Development with Laravel
Test Driven Development with LaravelTyler Johnston
Ā 
Agile Gurgaon 2016 | Thinking Beyond :: Marry Agile and DevOps for Phenomenal...
Agile Gurgaon 2016 | Thinking Beyond :: Marry Agile and DevOps for Phenomenal...Agile Gurgaon 2016 | Thinking Beyond :: Marry Agile and DevOps for Phenomenal...
Agile Gurgaon 2016 | Thinking Beyond :: Marry Agile and DevOps for Phenomenal...AgileNetwork
Ā 
How BDD enables True CI/CD
How BDD enables True CI/CDHow BDD enables True CI/CD
How BDD enables True CI/CDRoger Turnau
Ā 
Make a better with clean code
Make a better with clean codeMake a better with clean code
Make a better with clean codeKeattiwut Kosittaruk
Ā 
Dev "Programming" Ops For DevOps Success
Dev "Programming" Ops For DevOps SuccessDev "Programming" Ops For DevOps Success
Dev "Programming" Ops For DevOps SuccessC4Media
Ā 
Development tools
Development toolsDevelopment tools
Development toolsRobert Deutz
Ā 
Agile Test Driven Development
Agile Test Driven DevelopmentAgile Test Driven Development
Agile Test Driven DevelopmentViraf Karai
Ā 
Big code refactoring with agility
Big code refactoring with agilityBig code refactoring with agility
Big code refactoring with agilityLuca Merolla
Ā 
Get your liaise on
Get your liaise onGet your liaise on
Get your liaise onMobile March
Ā 

Similar to Presentation for Pittsburgh Agile Group (20)

Key lean principles for organizational change
Key lean principles for organizational changeKey lean principles for organizational change
Key lean principles for organizational change
Ā 
Cucumber & Cheese
Cucumber & CheeseCucumber & Cheese
Cucumber & Cheese
Ā 
Qa team sport
Qa team sportQa team sport
Qa team sport
Ā 
ATDD - Agile Testing
ATDD -  Agile Testing ATDD -  Agile Testing
ATDD - Agile Testing
Ā 
Patterns of Automation: Simplify Your Test Code
Patterns of Automation: Simplify Your Test CodePatterns of Automation: Simplify Your Test Code
Patterns of Automation: Simplify Your Test Code
Ā 
How HipChat Ships and Recovers Fast with DevOps Practices
How HipChat Ships and Recovers Fast with DevOps PracticesHow HipChat Ships and Recovers Fast with DevOps Practices
How HipChat Ships and Recovers Fast with DevOps Practices
Ā 
Developers Best Practices
Developers Best PracticesDevelopers Best Practices
Developers Best Practices
Ā 
What is DevOps?
What is DevOps?What is DevOps?
What is DevOps?
Ā 
TDD in Agile
TDD in AgileTDD in Agile
TDD in Agile
Ā 
WeActuallyBuildStuff - Extreme Programming Live
WeActuallyBuildStuff - Extreme Programming LiveWeActuallyBuildStuff - Extreme Programming Live
WeActuallyBuildStuff - Extreme Programming Live
Ā 
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
Ā 
Test Driven Development with Laravel
Test Driven Development with LaravelTest Driven Development with Laravel
Test Driven Development with Laravel
Ā 
Agile Gurgaon 2016 | Thinking Beyond :: Marry Agile and DevOps for Phenomenal...
Agile Gurgaon 2016 | Thinking Beyond :: Marry Agile and DevOps for Phenomenal...Agile Gurgaon 2016 | Thinking Beyond :: Marry Agile and DevOps for Phenomenal...
Agile Gurgaon 2016 | Thinking Beyond :: Marry Agile and DevOps for Phenomenal...
Ā 
How BDD enables True CI/CD
How BDD enables True CI/CDHow BDD enables True CI/CD
How BDD enables True CI/CD
Ā 
Make a better with clean code
Make a better with clean codeMake a better with clean code
Make a better with clean code
Ā 
Dev "Programming" Ops For DevOps Success
Dev "Programming" Ops For DevOps SuccessDev "Programming" Ops For DevOps Success
Dev "Programming" Ops For DevOps Success
Ā 
Development tools
Development toolsDevelopment tools
Development tools
Ā 
Agile Test Driven Development
Agile Test Driven DevelopmentAgile Test Driven Development
Agile Test Driven Development
Ā 
Big code refactoring with agility
Big code refactoring with agilityBig code refactoring with agility
Big code refactoring with agility
Ā 
Get your liaise on
Get your liaise onGet your liaise on
Get your liaise on
Ā 

Recently uploaded

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
Ā 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
Ā 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
Ā 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
Ā 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
Ā 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
Ā 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAnitaRaj43
Ā 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard37
Ā 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
Ā 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMKumar Satyam
Ā 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
Ā 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
Ā 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
Ā 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
Ā 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
Ā 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
Ā 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
Ā 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
Ā 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
Ā 

Recently uploaded (20)

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
Ā 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Ā 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Ā 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
Ā 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Ā 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Ā 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
Ā 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
Ā 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptx
Ā 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
Ā 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDM
Ā 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
Ā 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
Ā 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
Ā 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
Ā 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
Ā 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
Ā 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Ā 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
Ā 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
Ā 

Presentation for Pittsburgh Agile Group

  • 1. Test Driven Development Pittsburgh Agile Group May 24, 2011 Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 2. Our Tests It == This Presentation Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 3. Our Tests It == This Presentation ā€¢ it should deļ¬ne TDD Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 4. Our Tests It == This Presentation ā€¢ it should deļ¬ne TDD ā€¢ it should explain why TDD works Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 5. Our Tests It == This Presentation ā€¢ it should deļ¬ne TDD ā€¢ it should explain why TDD works ā€¢ it should explain why you should do TDD Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 6. Our Tests It == This Presentation ā€¢ it should deļ¬ne TDD ā€¢ it should explain why TDD works ā€¢ it should explain why you should do TDD ā€¢ it should demonstrate TDD Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 7. What is TDD? Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 8. What is TDD? ā€¢ Simple, high-feedback incremental coding technique Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 9. What is TDD? ā€¢ Simple, high-feedback incremental coding technique ā€¢ Write tests as specs prior to code Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 10. What is TDD? ā€¢ Simple, high-feedback incremental coding technique ā€¢ Write tests as specs prior to code ā€¢ Immediate feedback Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 11. Core of the cycle Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 12. History of TDD Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 13. History of TDD Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 14. History of TDD ā€¢ Devised by Ward Cunningham Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 15. History of TDD ā€¢ Devised by Ward Cunningham ā€¢ Honed by Kent Beck Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 16. History of TDD ā€¢ Devised by Ward Cunningham ā€¢ Honed by Kent Beck ā€¢ Incorporated as one of XPā€™s practices Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 17. History of TDD ā€¢ Devised by Ward Cunningham ā€¢ Honed by Kent Beck ā€¢ Incorporated as one of XPā€™s practices ā€¢ Buzzword History Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 18. History of TDD ā€¢ Devised by Ward Cunningham ā€¢ Honed by Kent Beck ā€¢ Incorporated as one of XPā€™s practices ā€¢ Buzzword History ā€¢ Test-ļ¬rst programming Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 19. History of TDD ā€¢ Devised by Ward Cunningham ā€¢ Honed by Kent Beck ā€¢ Incorporated as one of XPā€™s practices ā€¢ Buzzword History ā€¢ Test-ļ¬rst programming ā€¢ Test-ļ¬rst design Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 20. History of TDD ā€¢ Devised by Ward Cunningham ā€¢ Honed by Kent Beck ā€¢ Incorporated as one of XPā€™s practices ā€¢ Buzzword History ā€¢ Test-ļ¬rst programming ā€¢ Test-ļ¬rst design ā€¢ Test-driven development Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 21. TDD and Testing Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 22. TDD and Testing ā€¢ Creates testable code by deļ¬nition Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 23. TDD and Testing ā€¢ Creates testable code by deļ¬nition ā€¢ Obvious but signiļ¬cant Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 24. TDD and Testing ā€¢ Creates testable code by deļ¬nition ā€¢ Obvious but signiļ¬cant ā€¢ Writing tests after code built is much harder Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 25. TDD and Testing ā€¢ Creates testable code by deļ¬nition ā€¢ Obvious but signiļ¬cant ā€¢ Writing tests after code built is much harder ā€¢ Therefore fewer tests get written Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 26. TDD and Testing ā€¢ Creates testable code by deļ¬nition ā€¢ Obvious but signiļ¬cant ā€¢ Writing tests after code built is much harder ā€¢ Therefore fewer tests get written ā€¢ Minimizes defects Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 27. More Importantly... Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 28. More Importantly... ā€¢ Promotes better design Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 29. More Importantly... ā€¢ Promotes better design ā€¢ Teaches you how to design isolated classes Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 30. More Importantly... ā€¢ Promotes better design ā€¢ Teaches you how to design isolated classes ā€¢ Creates comprehensive developer documentation Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 31. More Importantly... ā€¢ Promotes better design ā€¢ Teaches you how to design isolated classes ā€¢ Creates comprehensive developer documentation ā€¢ Development Pacing Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 32. TDD Rules Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 33. TDD Rules ā€¢ Test everything that could possibly break Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 34. TDD Rules ā€¢ Test everything that could possibly break ā€¢ Do not write any production code until you have a failing test Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 35. TDD Rules ā€¢ Test everything that could possibly break ā€¢ Do not write any production code until you have a failing test ā€¢ Code is not checked in until 100% of unit tests run Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 36. Our Tests It == This Presentation ā€¢ it should deļ¬ne TDD ā€¢ it should explain why TDD works ā€¢ it should explain why you should do TDD ā€¢ it should demonstrate TDD Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 37. Our Tests It == This Presentation ā€¢ it should deļ¬ne TDD ā€¢ it should explain why TDD works ā€¢ it should explain why you should do TDD ā€¢ it should demonstrate TDD Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 38. Why does it work? Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 39. Why does it work? Pleasure spiked with Pain! Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 40. Why does it work? Pleasure spiked with Pain! Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 41. Why does it work? Pleasure spiked with Pain! Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 42. Long Methods Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 43. Long Methods Pain! Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 44. Many Dependencies Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 45. Many Dependencies Pain! Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 46. Doing too much Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 47. Doing too much Pain! Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 48. Keep it clean Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 49. Keep it clean Pleasure Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 50. Feel good Pleasure Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 51. Our Tests It == This Presentation ā€¢ it should deļ¬ne TDD ā€¢ it should explain why TDD works ā€¢ it should explain why you should do TDD ā€¢ it should demonstrate TDD Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 52. Our Tests It == This Presentation ā€¢ it should deļ¬ne TDD ā€¢ it should explain why TDD works ā€¢ it should explain why you should do TDD ā€¢ it should demonstrate TDD Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 53. Nature ^ F T> Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 54. Nature X ^ F T> Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 55. Nature X ^ F T> Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 56. Nature X ^ F T> Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 57. Nature X ^ F T> Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 58. Nature X ^ F T> Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 59. Design Evolves Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 60. Design Evolves Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 61. Design Evolves Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 62. Design Evolves Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 63. Design Evolves Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 64. Design Evolves Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 65. Fewer Defects http://research.microsoft.com/en-us/projects/esm/ nagappan_tdd.pdf Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 66. We Do Scrum! Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 67. We Do Scrum! Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 68. We Do Scrum! Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 69. Professionalism Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 70. Our Tests It == This Presentation ā€¢ it should deļ¬ne TDD ā€¢ it should explain why TDD works ā€¢ it should explain why you should do TDD ā€¢ it should demonstrate TDD Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 71. Our Tests It == This Presentation ā€¢ it should deļ¬ne TDD ā€¢ it should explain why TDD works ā€¢ it should explain why you should do TDD ā€¢ it should demonstrate TDD Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 72. Demo Time Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 73. Our Tests It == This Presentation ā€¢ it should deļ¬ne TDD ā€¢ it should explain why TDD works ā€¢ it should explain why you should do TDD ā€¢ it should demonstrate TDD Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 74. Our Tests It == This Presentation ā€¢ it should deļ¬ne TDD ā€¢ it should explain why TDD works ā€¢ it should explain why you should do TDD ā€¢ it should demonstrate TDD Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 75. Final Thoughts Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 76. Final Thoughts ā€¢ TDD is here to stay Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 77. Final Thoughts ā€¢ TDD is here to stay ā€¢ A satisfying and enriching practice that can dramatically increase the quality of your application Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 78. Final Thoughts ā€¢ TDD is here to stay ā€¢ A satisfying and enriching practice that can dramatically increase the quality of your application ā€¢ Diligent adherence to practice is required to succeed Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.
  • 79. Final Thoughts ā€¢ TDD is here to stay ā€¢ A satisfying and enriching practice that can dramatically increase the quality of your application ā€¢ Diligent adherence to practice is required to succeed ā€¢ But the beneļ¬ts are worth it Copyright 2011 LeanDog, Inc. All Rights Reserved. Do not copy or distribute without permission.

Editor's Notes

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. \n
  58. \n
  59. \n
  60. \n
  61. \n
  62. \n
  63. \n
  64. \n
  65. \n
  66. \n
  67. \n
  68. \n
  69. \n
  70. \n
  71. \n
  72. \n
  73. \n
  74. \n
  75. \n
  76. \n
  77. \n
  78. \n
  79. \n
  80. \n
  81. \n
  82. \n
  83. \n
  84. \n
  85. \n
  86. \n
  87. \n
  88. \n
  89. \n
  90. \n
  91. \n
  92. \n
  93. \n