SlideShare a Scribd company logo
1 of 35
EDD
Yes! We’re looking for a better name
Error Driven Development
1. Customer satisfaction by early and continuous delivery of valuable software
2. Welcome changing requirements, even in late development
3. Working software is delivered frequently (weeks rather than months)
4. Close, daily cooperation between business people and developers
5. Projects are built around motivated individuals, who should be trusted
6. Face-to-face conversation is the best form of communication (co-location)
7. Working software is the principal measure of progress
8. Sustainable development, able to maintain a constant pace
9. Continuous attention to technical excellence and good design
10.Simplicity—the art of maximizing the amount of work not done—is essential
11.Best architectures, requirements, and designs emerge from self-organizing teams
12.Regularly, the team reflects on how to become more effective, and adjusts accordingly
The Manifesto for Agile Software Development
If you break something, no problem.
If you break it again, something bad is happening.
- Toni Navarro, the Battlefront guy
Remember TDD?
Why we are not writing software by TDD?
Feedback welcome!
Google Form with two questions
Why are we avoiding TDD?
How can we start using TDD?
Why we are not writing software by TDD?
- Usually, we don’t make mistakes
- We are not proficient with the testing framework
- TDD takes time: it slows the team
- The architecture is not test friendly
- Lazyness: “it’s just a small change”
- As it’s just a good practice, the team avoids it
Error Driven Development
We must reproduce bugs with tests
before fixing them
F: Usually, we don’t make mistakes
EDD: Let’s focus bugs: the mistake was done
F: We are not proficient with the testing framework
EDD: Now, you must learn it
F: TDD takes time: it slows the team
EDD: Bugfixing is not faster than that
F: The architecture is not test friendly
EDD: There’s always a way to test
F: Lazyness: “it’s just a small change”
EDD: Ok for TDD, but not for EDD: Write that test
F: As it’s just a good practice, the team avoids it
EDD: Now, testing is a must
The life without EDD
S1E1
Bug A
Bug A
Fixing the Bug A
Bug A
Fixing the Bug A
Yay!
Bug A
Fixing the Bug A
Yay!
Someone does something bad
The life without EDD
S1E2
Bug B
Bug B
Fixing the Bug B
Bug B Bug C
Fixing the Bug B
Bug B Bug C
Fixing the Bug B
Fixing the Bug C
The life with EDD
S2E1
Bug D
Reproduce Bug D
Bug D
Reproduce Bug D
Bug D
Fixing the Bug D
Reproduce Bug D
Bug D Bug E
Fixing the Bug D
Reproduce Bug EReproduce Bug D
Bug D Bug E
Fixing the Bug D
Reproduce Bug EReproduce Bug D
Bug D Bug E
Fixing the Bug EFixing the Bug D
Reproduce Bug EReproduce Bug D
Bug D Bug E
Fixing the Bug D
Yay!
Fixing the Bug E
Reproduce Bug EReproduce Bug D
Bug D Bug E Bug F
Fixing the Bug EFixing the Bug D
PLEASEadopt EDD as a must
THANKS!questions?

More Related Content

What's hot

What Software Quality Assurance Means to Me
What Software Quality Assurance Means to MeWhat Software Quality Assurance Means to Me
What Software Quality Assurance Means to Me
Robert Stackhouse
 
Why Do User Research And Usability Testing
Why Do User Research And Usability TestingWhy Do User Research And Usability Testing
Why Do User Research And Usability Testing
Robert Stackhouse
 
SQuAD 2013: Team Collaboration for Testing
SQuAD 2013: Team Collaboration for TestingSQuAD 2013: Team Collaboration for Testing
SQuAD 2013: Team Collaboration for Testing
lisacrispin
 

What's hot (20)

Agile Gurugram 2019 Conferecne | A "Quality" Debate - Rethinking the mindset ...
Agile Gurugram 2019 Conferecne | A "Quality" Debate - Rethinking the mindset ...Agile Gurugram 2019 Conferecne | A "Quality" Debate - Rethinking the mindset ...
Agile Gurugram 2019 Conferecne | A "Quality" Debate - Rethinking the mindset ...
 
Repeating the "Quality Debate" @ Agile Gurugram 2019 Conference
Repeating the "Quality Debate" @ Agile Gurugram 2019 ConferenceRepeating the "Quality Debate" @ Agile Gurugram 2019 Conference
Repeating the "Quality Debate" @ Agile Gurugram 2019 Conference
 
Tdd - Test Driven Development
Tdd - Test Driven DevelopmentTdd - Test Driven Development
Tdd - Test Driven Development
 
Unit testing for project managers
Unit testing for project managersUnit testing for project managers
Unit testing for project managers
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Working effectively with legacy codes
Working effectively with legacy codesWorking effectively with legacy codes
Working effectively with legacy codes
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
What Software Quality Assurance Means to Me
What Software Quality Assurance Means to MeWhat Software Quality Assurance Means to Me
What Software Quality Assurance Means to Me
 
Test driven development using Junit and MockIto
Test driven development using Junit and MockItoTest driven development using Junit and MockIto
Test driven development using Junit and MockIto
 
Why Do User Research And Usability Testing
Why Do User Research And Usability TestingWhy Do User Research And Usability Testing
Why Do User Research And Usability Testing
 
SQuAD 2013: Team Collaboration for Testing
SQuAD 2013: Team Collaboration for TestingSQuAD 2013: Team Collaboration for Testing
SQuAD 2013: Team Collaboration for Testing
 
Tdd For Tekna
Tdd For TeknaTdd For Tekna
Tdd For Tekna
 
Test Driven Development: More Development Than Ever
Test Driven Development: More Development Than EverTest Driven Development: More Development Than Ever
Test Driven Development: More Development Than Ever
 
Design Sprints
Design SprintsDesign Sprints
Design Sprints
 
A Software Development Approach to Help You End Up with the Product You Reall...
A Software Development Approach to Help You End Up with the Product You Reall...A Software Development Approach to Help You End Up with the Product You Reall...
A Software Development Approach to Help You End Up with the Product You Reall...
 
Agile Software Development for Non-Developers
Agile Software Development for Non-DevelopersAgile Software Development for Non-Developers
Agile Software Development for Non-Developers
 
Tester vs. Developer
Tester vs. DeveloperTester vs. Developer
Tester vs. Developer
 
Agile Testing 20021015
Agile Testing 20021015Agile Testing 20021015
Agile Testing 20021015
 
Managing The Delivery Of Zero Defect Software
Managing The Delivery Of Zero Defect SoftwareManaging The Delivery Of Zero Defect Software
Managing The Delivery Of Zero Defect Software
 
Software quality
Software qualitySoftware quality
Software quality
 

Similar to Introducing EDD: Error Driven Development

Agile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin NakovAgile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin Nakov
Svetlin Nakov
 
2013 09-11 java zone - extreme programming live
2013 09-11 java zone - extreme programming live2013 09-11 java zone - extreme programming live
2013 09-11 java zone - extreme programming live
Johannes Brodwall
 
JAZOON'13 - Sven Peters - How to do Kick-Ass Software Development
JAZOON'13 - Sven Peters - How to do Kick-Ass Software DevelopmentJAZOON'13 - Sven Peters - How to do Kick-Ass Software Development
JAZOON'13 - Sven Peters - How to do Kick-Ass Software Development
jazoon13
 

Similar to Introducing EDD: Error Driven Development (20)

Best pratice
Best praticeBest pratice
Best pratice
 
Coding Dojo Firenze - vol1
Coding Dojo Firenze - vol1 Coding Dojo Firenze - vol1
Coding Dojo Firenze - vol1
 
How Do We Teach TDD Keith Ray
How Do We Teach TDD Keith RayHow Do We Teach TDD Keith Ray
How Do We Teach TDD Keith Ray
 
Agile Practices
Agile PracticesAgile Practices
Agile Practices
 
Tdd
TddTdd
Tdd
 
TDD and Simple Design Workshop - Session 1 - March 2019
TDD and Simple Design Workshop - Session 1 - March 2019TDD and Simple Design Workshop - Session 1 - March 2019
TDD and Simple Design Workshop - Session 1 - March 2019
 
TDD & Refactoring
TDD & RefactoringTDD & Refactoring
TDD & Refactoring
 
Agile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin NakovAgile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin Nakov
 
Agile Methodologies And Extreme Programming
Agile Methodologies And Extreme ProgrammingAgile Methodologies And Extreme Programming
Agile Methodologies And Extreme Programming
 
How To Do Kick-Ass Software Development
How To Do Kick-Ass Software DevelopmentHow To Do Kick-Ass Software Development
How To Do Kick-Ass Software Development
 
2013 09-11 java zone - extreme programming live
2013 09-11 java zone - extreme programming live2013 09-11 java zone - extreme programming live
2013 09-11 java zone - extreme programming live
 
JAZOON'13 - Sven Peters - How to do Kick-Ass Software Development
JAZOON'13 - Sven Peters - How to do Kick-Ass Software DevelopmentJAZOON'13 - Sven Peters - How to do Kick-Ass Software Development
JAZOON'13 - Sven Peters - How to do Kick-Ass Software Development
 
PHP World DC 2015 - What Can Go Wrong with Agile Development and How to Fix It
PHP World DC 2015 - What Can Go Wrong with Agile Development and How to Fix ItPHP World DC 2015 - What Can Go Wrong with Agile Development and How to Fix It
PHP World DC 2015 - What Can Go Wrong with Agile Development and How to Fix It
 
A Not-So-Serious Introduction to Test Driven Development (TDD)
A Not-So-Serious Introduction to Test Driven Development (TDD) A Not-So-Serious Introduction to Test Driven Development (TDD)
A Not-So-Serious Introduction to Test Driven Development (TDD)
 
TDD in Agile
TDD in AgileTDD in Agile
TDD in Agile
 
How technical excellence helps in LeSS adoption
How technical excellence helps in LeSS adoptionHow technical excellence helps in LeSS adoption
How technical excellence helps in LeSS adoption
 
L20 Agile Principles
L20 Agile PrinciplesL20 Agile Principles
L20 Agile Principles
 
Make a better with clean code
Make a better with clean codeMake a better with clean code
Make a better with clean code
 
Bdd - L'arte di non farsi i fatti propri
Bdd - L'arte di non farsi i fatti propriBdd - L'arte di non farsi i fatti propri
Bdd - L'arte di non farsi i fatti propri
 
Introduction to Test Driven Development
Introduction to Test Driven DevelopmentIntroduction to Test Driven Development
Introduction to Test Driven Development
 

More from Roc Boronat

Testing, CI and CD in the real world
Testing, CI and CD in the real worldTesting, CI and CD in the real world
Testing, CI and CD in the real world
Roc Boronat
 
Barcelona Bicing: Next steps
Barcelona Bicing: Next stepsBarcelona Bicing: Next steps
Barcelona Bicing: Next steps
Roc Boronat
 

More from Roc Boronat (10)

From CVS to GIT
From CVS to GITFrom CVS to GIT
From CVS to GIT
 
Introducing Clean Architecture
Introducing Clean ArchitectureIntroducing Clean Architecture
Introducing Clean Architecture
 
Testing, CI and CD in the real world
Testing, CI and CD in the real worldTesting, CI and CD in the real world
Testing, CI and CD in the real world
 
Testing, CI and CD in the real world
Testing, CI and CD in the real worldTesting, CI and CD in the real world
Testing, CI and CD in the real world
 
The chromecast's guide to the galaxy
The chromecast's guide to the galaxyThe chromecast's guide to the galaxy
The chromecast's guide to the galaxy
 
Sessió motivacional
Sessió motivacionalSessió motivacional
Sessió motivacional
 
QuitNow!
QuitNow!QuitNow!
QuitNow!
 
Hello NFC!
Hello NFC!Hello NFC!
Hello NFC!
 
Barcelona Bicing: Next steps
Barcelona Bicing: Next stepsBarcelona Bicing: Next steps
Barcelona Bicing: Next steps
 
Hello GoogleMaps!
Hello GoogleMaps!Hello GoogleMaps!
Hello GoogleMaps!
 

Recently uploaded

Activity Planning: Objectives, Project Schedule, Network Planning Model. Time...
Activity Planning: Objectives, Project Schedule, Network Planning Model. Time...Activity Planning: Objectives, Project Schedule, Network Planning Model. Time...
Activity Planning: Objectives, Project Schedule, Network Planning Model. Time...
Lovely Professional University
 
Final DBMS Manual (2).pdf final lab manual
Final DBMS Manual (2).pdf final lab manualFinal DBMS Manual (2).pdf final lab manual
Final DBMS Manual (2).pdf final lab manual
BalamuruganV28
 

Recently uploaded (20)

Vip ℂall Girls Karkardooma Phone No 9999965857 High Profile ℂall Girl Delhi N...
Vip ℂall Girls Karkardooma Phone No 9999965857 High Profile ℂall Girl Delhi N...Vip ℂall Girls Karkardooma Phone No 9999965857 High Profile ℂall Girl Delhi N...
Vip ℂall Girls Karkardooma Phone No 9999965857 High Profile ℂall Girl Delhi N...
 
Filters for Electromagnetic Compatibility Applications
Filters for Electromagnetic Compatibility ApplicationsFilters for Electromagnetic Compatibility Applications
Filters for Electromagnetic Compatibility Applications
 
Operating System chapter 9 (Virtual Memory)
Operating System chapter 9 (Virtual Memory)Operating System chapter 9 (Virtual Memory)
Operating System chapter 9 (Virtual Memory)
 
analog-vs-digital-communication (concept of analog and digital).pptx
analog-vs-digital-communication (concept of analog and digital).pptxanalog-vs-digital-communication (concept of analog and digital).pptx
analog-vs-digital-communication (concept of analog and digital).pptx
 
Lesson no16 application of Induction Generator in Wind.ppsx
Lesson no16 application of Induction Generator in Wind.ppsxLesson no16 application of Induction Generator in Wind.ppsx
Lesson no16 application of Induction Generator in Wind.ppsx
 
Activity Planning: Objectives, Project Schedule, Network Planning Model. Time...
Activity Planning: Objectives, Project Schedule, Network Planning Model. Time...Activity Planning: Objectives, Project Schedule, Network Planning Model. Time...
Activity Planning: Objectives, Project Schedule, Network Planning Model. Time...
 
Interfacing Analog to Digital Data Converters ee3404.pdf
Interfacing Analog to Digital Data Converters ee3404.pdfInterfacing Analog to Digital Data Converters ee3404.pdf
Interfacing Analog to Digital Data Converters ee3404.pdf
 
Online book store management system project.pdf
Online book store management system project.pdfOnline book store management system project.pdf
Online book store management system project.pdf
 
Electrostatic field in a coaxial transmission line
Electrostatic field in a coaxial transmission lineElectrostatic field in a coaxial transmission line
Electrostatic field in a coaxial transmission line
 
Diploma Engineering Drawing Qp-2024 Ece .pdf
Diploma Engineering Drawing Qp-2024 Ece .pdfDiploma Engineering Drawing Qp-2024 Ece .pdf
Diploma Engineering Drawing Qp-2024 Ece .pdf
 
Final DBMS Manual (2).pdf final lab manual
Final DBMS Manual (2).pdf final lab manualFinal DBMS Manual (2).pdf final lab manual
Final DBMS Manual (2).pdf final lab manual
 
Research Methodolgy & Intellectual Property Rights Series 2
Research Methodolgy & Intellectual Property Rights Series 2Research Methodolgy & Intellectual Property Rights Series 2
Research Methodolgy & Intellectual Property Rights Series 2
 
Software Engineering - Modelling Concepts + Class Modelling + Building the An...
Software Engineering - Modelling Concepts + Class Modelling + Building the An...Software Engineering - Modelling Concepts + Class Modelling + Building the An...
Software Engineering - Modelling Concepts + Class Modelling + Building the An...
 
Quiz application system project report..pdf
Quiz application system project report..pdfQuiz application system project report..pdf
Quiz application system project report..pdf
 
Module-III Varried Flow.pptx GVF Definition, Water Surface Profile Dynamic Eq...
Module-III Varried Flow.pptx GVF Definition, Water Surface Profile Dynamic Eq...Module-III Varried Flow.pptx GVF Definition, Water Surface Profile Dynamic Eq...
Module-III Varried Flow.pptx GVF Definition, Water Surface Profile Dynamic Eq...
 
NEWLETTER FRANCE HELICES/ SDS SURFACE DRIVES - MAY 2024
NEWLETTER FRANCE HELICES/ SDS SURFACE DRIVES - MAY 2024NEWLETTER FRANCE HELICES/ SDS SURFACE DRIVES - MAY 2024
NEWLETTER FRANCE HELICES/ SDS SURFACE DRIVES - MAY 2024
 
Instruct Nirmaana 24-Smart and Lean Construction Through Technology.pdf
Instruct Nirmaana 24-Smart and Lean Construction Through Technology.pdfInstruct Nirmaana 24-Smart and Lean Construction Through Technology.pdf
Instruct Nirmaana 24-Smart and Lean Construction Through Technology.pdf
 
Multivibrator and its types defination and usges.pptx
Multivibrator and its types defination and usges.pptxMultivibrator and its types defination and usges.pptx
Multivibrator and its types defination and usges.pptx
 
Lab Manual Arduino UNO Microcontrollar.docx
Lab Manual Arduino UNO Microcontrollar.docxLab Manual Arduino UNO Microcontrollar.docx
Lab Manual Arduino UNO Microcontrollar.docx
 
Electrical shop management system project report.pdf
Electrical shop management system project report.pdfElectrical shop management system project report.pdf
Electrical shop management system project report.pdf
 

Introducing EDD: Error Driven Development

  • 1. EDD Yes! We’re looking for a better name Error Driven Development
  • 2.
  • 3. 1. Customer satisfaction by early and continuous delivery of valuable software 2. Welcome changing requirements, even in late development 3. Working software is delivered frequently (weeks rather than months) 4. Close, daily cooperation between business people and developers 5. Projects are built around motivated individuals, who should be trusted 6. Face-to-face conversation is the best form of communication (co-location) 7. Working software is the principal measure of progress 8. Sustainable development, able to maintain a constant pace 9. Continuous attention to technical excellence and good design 10.Simplicity—the art of maximizing the amount of work not done—is essential 11.Best architectures, requirements, and designs emerge from self-organizing teams 12.Regularly, the team reflects on how to become more effective, and adjusts accordingly The Manifesto for Agile Software Development
  • 4. If you break something, no problem. If you break it again, something bad is happening. - Toni Navarro, the Battlefront guy
  • 6. Why we are not writing software by TDD? Feedback welcome! Google Form with two questions Why are we avoiding TDD? How can we start using TDD?
  • 7. Why we are not writing software by TDD? - Usually, we don’t make mistakes - We are not proficient with the testing framework - TDD takes time: it slows the team - The architecture is not test friendly - Lazyness: “it’s just a small change” - As it’s just a good practice, the team avoids it
  • 8. Error Driven Development We must reproduce bugs with tests before fixing them
  • 9. F: Usually, we don’t make mistakes EDD: Let’s focus bugs: the mistake was done
  • 10. F: We are not proficient with the testing framework EDD: Now, you must learn it
  • 11. F: TDD takes time: it slows the team EDD: Bugfixing is not faster than that
  • 12. F: The architecture is not test friendly EDD: There’s always a way to test
  • 13. F: Lazyness: “it’s just a small change” EDD: Ok for TDD, but not for EDD: Write that test
  • 14. F: As it’s just a good practice, the team avoids it EDD: Now, testing is a must
  • 15. The life without EDD S1E1
  • 16. Bug A
  • 18. Bug A Fixing the Bug A Yay!
  • 19. Bug A Fixing the Bug A Yay! Someone does something bad
  • 20. The life without EDD S1E2
  • 21. Bug B
  • 23. Bug B Bug C Fixing the Bug B
  • 24. Bug B Bug C Fixing the Bug B Fixing the Bug C
  • 25. The life with EDD S2E1
  • 26. Bug D
  • 28. Reproduce Bug D Bug D Fixing the Bug D
  • 29. Reproduce Bug D Bug D Bug E Fixing the Bug D
  • 30. Reproduce Bug EReproduce Bug D Bug D Bug E Fixing the Bug D
  • 31. Reproduce Bug EReproduce Bug D Bug D Bug E Fixing the Bug EFixing the Bug D
  • 32. Reproduce Bug EReproduce Bug D Bug D Bug E Fixing the Bug D Yay! Fixing the Bug E
  • 33. Reproduce Bug EReproduce Bug D Bug D Bug E Bug F Fixing the Bug EFixing the Bug D