SlideShare una empresa de Scribd logo
1 de 24
Test Driven Development
Scrum is Hot, but…
Many Scrum teams are struggling
• Slow down (fewer features/sprint)
   – More and more production issues
   – Increased fragility
• Requests for ‘refactoring’ stories from
  development team
Scrum is Hot, but…
• Regression testing is demanded
   – Takes up lots of time in a sprint
   – Sprints start to lengthen
• Documentation becomes an issue because Agile
  teams “don’t do” documentation.
• Technical debt is introduced via “Copy and paste
  coding”.
10 Year Agile Manifesto meet up 2011 concluded

“As a group, we agreed on the following four belief statements:
    •Demand technical excellence
    •Promote individual change and lead organizational change
    •Organize knowledge and improve education
    •Maximize value creation across the entire process”
Combine Scrum with XP
Test Driven Development
Uncle Bob About TDD

 “The act of writing a unit test is more an act of
 design than of verification. It is also more an act
      of documentation than of verification.
The act of writing a unit test closes a remarkable
  number of feedback loops, the least of which is
   the one pertaining to verification of function”
Kent Beck about TDD

“TDD encourages simple designs
   and inspires confidence”
About Unit Testing


 “A procedure used to validate that individual units
         of source code are working properly.
A unit is the smallest testable part of an application.
      In procedural programming a unit may be
  an individual program, function, procedure, etc.,
        while in object oriented programming,
            the smallest unit is a method.”
Why Unit Tests?
•   Avoid Combinatorial Complexity
•   Fine grained makes it easy to pin-point defects
•   Coded documentation that stays in sync
•   Supports changing the code
•   Supports collective code ownership
Source: Agile in a Flash by Jeff Langr and Tim Ottinger
Things we forget while coding
• SOLID principle
   – Lower Complexity
   – Loosely Coupled
   – Tighter cohesion
• Keep focus on Simple Design
   – YAGNI, DRY
• Continues Refactoring
Source: Agile in a Flash by Jeff Langr and Tim Ottinger
TDD mantras
TDD mantras
Given, When, Then or Arrange, Act, Assert
Source: Agile in a Flash by Jeff Langr and Tim Ottinger
Source: Agile in a Flash by Jeff Langr and Tim Ottinger
START NOW!
TestDriven Development, Why How and Smells

Más contenido relacionado

La actualidad más candente

Adopting Continuous Integration in an Ops Group
Adopting Continuous Integration in an Ops GroupAdopting Continuous Integration in an Ops Group
Adopting Continuous Integration in an Ops Group
colleenfry
 
Making testability our mission
Making testability our missionMaking testability our mission
Making testability our mission
Ash Winter
 
Driving application development through behavior driven development
Driving application development through behavior driven developmentDriving application development through behavior driven development
Driving application development through behavior driven development
Einar Ingebrigtsen
 

La actualidad más candente (20)

Carl shaulis agile_td2014
Carl shaulis agile_td2014Carl shaulis agile_td2014
Carl shaulis agile_td2014
 
Making disaster routine
Making disaster routineMaking disaster routine
Making disaster routine
 
Devops Kaizen - DevopsDays Dallas 2017
Devops Kaizen - DevopsDays Dallas 2017 Devops Kaizen - DevopsDays Dallas 2017
Devops Kaizen - DevopsDays Dallas 2017
 
Mark Andersen DFW DevOps Days 2017
Mark Andersen DFW DevOps Days 2017Mark Andersen DFW DevOps Days 2017
Mark Andersen DFW DevOps Days 2017
 
Lean Canvas for Internal Product Owners
Lean Canvas for Internal Product OwnersLean Canvas for Internal Product Owners
Lean Canvas for Internal Product Owners
 
Adopting Continuous Integration in an Ops Group
Adopting Continuous Integration in an Ops GroupAdopting Continuous Integration in an Ops Group
Adopting Continuous Integration in an Ops Group
 
Cloud Academy Webinar: Recipe for DevOps Success: Capital One Style
Cloud Academy Webinar: Recipe for DevOps Success: Capital One StyleCloud Academy Webinar: Recipe for DevOps Success: Capital One Style
Cloud Academy Webinar: Recipe for DevOps Success: Capital One Style
 
Making testability our mission
Making testability our missionMaking testability our mission
Making testability our mission
 
Adapt your testing for Agile
Adapt your testing for AgileAdapt your testing for Agile
Adapt your testing for Agile
 
Adventures in QA
Adventures in QAAdventures in QA
Adventures in QA
 
Minimum Viable Architecture -- Good Enough is Good Enough in a Startup
Minimum Viable Architecture -- Good Enough is Good Enough in a StartupMinimum Viable Architecture -- Good Enough is Good Enough in a Startup
Minimum Viable Architecture -- Good Enough is Good Enough in a Startup
 
Road to Continuous Delivery - Wix.com
Road to Continuous Delivery - Wix.comRoad to Continuous Delivery - Wix.com
Road to Continuous Delivery - Wix.com
 
Api fundamentals
Api fundamentalsApi fundamentals
Api fundamentals
 
Shifting is more than shifting left
Shifting is more than shifting leftShifting is more than shifting left
Shifting is more than shifting left
 
DevOps Security Coffee - Lazy hackers who think out of the box, but stay in t...
DevOps Security Coffee - Lazy hackers who think out of the box, but stay in t...DevOps Security Coffee - Lazy hackers who think out of the box, but stay in t...
DevOps Security Coffee - Lazy hackers who think out of the box, but stay in t...
 
Art of the Possible - Serverless Conference NYC 2017
Art of the Possible - Serverless Conference NYC 2017 Art of the Possible - Serverless Conference NYC 2017
Art of the Possible - Serverless Conference NYC 2017
 
Driving application development through behavior driven development
Driving application development through behavior driven developmentDriving application development through behavior driven development
Driving application development through behavior driven development
 
You build it - Cyber Chicago Keynote
You build it -  Cyber Chicago KeynoteYou build it -  Cyber Chicago Keynote
You build it - Cyber Chicago Keynote
 
Getting Ahead of Delivery Issues with Deep SDLC Analysis by Donald Belcham
Getting Ahead of Delivery Issues with Deep SDLC Analysis by Donald BelchamGetting Ahead of Delivery Issues with Deep SDLC Analysis by Donald Belcham
Getting Ahead of Delivery Issues with Deep SDLC Analysis by Donald Belcham
 
MongoDB World 2018: How an Idea Becomes a MongoDB Feature
MongoDB World 2018: How an Idea Becomes a MongoDB FeatureMongoDB World 2018: How an Idea Becomes a MongoDB Feature
MongoDB World 2018: How an Idea Becomes a MongoDB Feature
 

Destacado

"WTF is LRM, YAGNI, JIT?“ или вы не знаете основные Agile-принципы
"WTF is LRM, YAGNI, JIT?“ или вы не знаете основные Agile-принципы"WTF is LRM, YAGNI, JIT?“ или вы не знаете основные Agile-принципы
"WTF is LRM, YAGNI, JIT?“ или вы не знаете основные Agile-принципы
Timofey (Tim) Yevgrashyn
 
Agile is dead or The Force Awakening? (ITEM, 2016)
Agile is dead or The Force Awakening? (ITEM, 2016)Agile is dead or The Force Awakening? (ITEM, 2016)
Agile is dead or The Force Awakening? (ITEM, 2016)
Timofey (Tim) Yevgrashyn
 
Вспомните о Пользователях
Вспомните о ПользователяхВспомните о Пользователях
Вспомните о Пользователях
Timofey (Tim) Yevgrashyn
 
Сеанс коллективного гадания или почему совместные оценки все-таки помогают Ag...
Сеанс коллективного гадания или почему совместные оценки все-таки помогают Ag...Сеанс коллективного гадания или почему совместные оценки все-таки помогают Ag...
Сеанс коллективного гадания или почему совместные оценки все-таки помогают Ag...
Timofey (Tim) Yevgrashyn
 
Внутренний PR для ИТ-компаний
Внутренний PR для ИТ-компанийВнутренний PR для ИТ-компаний
Внутренний PR для ИТ-компаний
Timofey (Tim) Yevgrashyn
 

Destacado (20)

Agile in Heads and Companies
Agile in Heads and CompaniesAgile in Heads and Companies
Agile in Heads and Companies
 
Scrummy Scrum
Scrummy ScrumScrummy Scrum
Scrummy Scrum
 
От Agile к глобальным измененям в компании
От Agile к глобальным измененям в компанииОт Agile к глобальным измененям в компании
От Agile к глобальным измененям в компании
 
Продукт: вам нарезать или целым куском?
Продукт: вам нарезать или целым куском?Продукт: вам нарезать или целым куском?
Продукт: вам нарезать или целым куском?
 
"WTF is LRM, YAGNI, JIT?“ или вы не знаете основные Agile-принципы
"WTF is LRM, YAGNI, JIT?“ или вы не знаете основные Agile-принципы"WTF is LRM, YAGNI, JIT?“ или вы не знаете основные Agile-принципы
"WTF is LRM, YAGNI, JIT?“ или вы не знаете основные Agile-принципы
 
Мифы и реалии самоорганизующихся команд - AgileBaseCamp@Kharkov
Мифы и реалии самоорганизующихся команд - AgileBaseCamp@KharkovМифы и реалии самоорганизующихся команд - AgileBaseCamp@Kharkov
Мифы и реалии самоорганизующихся команд - AgileBaseCamp@Kharkov
 
Agility, как способ выживания (ITEM, Днепропетровск, 2015)
Agility, как способ выживания (ITEM, Днепропетровск, 2015)Agility, как способ выживания (ITEM, Днепропетровск, 2015)
Agility, как способ выживания (ITEM, Днепропетровск, 2015)
 
Первое правило распределенных самоорганизующихся систем (доклад AgileBaseCamp...
Первое правило распределенных самоорганизующихся систем (доклад AgileBaseCamp...Первое правило распределенных самоорганизующихся систем (доклад AgileBaseCamp...
Первое правило распределенных самоорганизующихся систем (доклад AgileBaseCamp...
 
Три примера Scrum команд
Три примера Scrum командТри примера Scrum команд
Три примера Scrum команд
 
Agile is dead or The Force Awakening? (ITEM, 2016)
Agile is dead or The Force Awakening? (ITEM, 2016)Agile is dead or The Force Awakening? (ITEM, 2016)
Agile is dead or The Force Awakening? (ITEM, 2016)
 
Вспомните о Пользователях
Вспомните о ПользователяхВспомните о Пользователях
Вспомните о Пользователях
 
Agility, как способ выживания компаний (ver. 2)
Agility, как способ выживания компаний (ver. 2)Agility, как способ выживания компаний (ver. 2)
Agility, как способ выживания компаний (ver. 2)
 
Сеанс коллективного гадания или почему совместные оценки все-таки помогают Ag...
Сеанс коллективного гадания или почему совместные оценки все-таки помогают Ag...Сеанс коллективного гадания или почему совместные оценки все-таки помогают Ag...
Сеанс коллективного гадания или почему совместные оценки все-таки помогают Ag...
 
Scrum Bangalore 13th meet up 13 june 2015 - n ways to retrospective - nagesh ...
Scrum Bangalore 13th meet up 13 june 2015 - n ways to retrospective - nagesh ...Scrum Bangalore 13th meet up 13 june 2015 - n ways to retrospective - nagesh ...
Scrum Bangalore 13th meet up 13 june 2015 - n ways to retrospective - nagesh ...
 
SCALING PRODUCT COMPANY THE AGILE WAY
SCALING PRODUCT COMPANY THE AGILE WAYSCALING PRODUCT COMPANY THE AGILE WAY
SCALING PRODUCT COMPANY THE AGILE WAY
 
Истории Пользователей (User Stories) - семинар на AgileUkraine 7, 2009-04-25
Истории Пользователей (User Stories) - семинар на AgileUkraine 7, 2009-04-25Истории Пользователей (User Stories) - семинар на AgileUkraine 7, 2009-04-25
Истории Пользователей (User Stories) - семинар на AgileUkraine 7, 2009-04-25
 
Agile in Ukraine
Agile in UkraineAgile in Ukraine
Agile in Ukraine
 
Всегда ли ваш Scrum Scrummy? на CV.InTouch
Всегда ли ваш Scrum Scrummy? на CV.InTouchВсегда ли ваш Scrum Scrummy? на CV.InTouch
Всегда ли ваш Scrum Scrummy? на CV.InTouch
 
Внутренний PR для ИТ-компаний
Внутренний PR для ИТ-компанийВнутренний PR для ИТ-компаний
Внутренний PR для ИТ-компаний
 
Культура Лидерства в ИТ
Культура Лидерства в ИТКультура Лидерства в ИТ
Культура Лидерства в ИТ
 

Similar a TestDriven Development, Why How and Smells

Be Modern Agile Tester
Be Modern Agile TesterBe Modern Agile Tester
Be Modern Agile Tester
Yi Xu
 
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Into...
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Into...Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Into...
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Into...
Ortus Solutions, Corp
 

Similar a TestDriven Development, Why How and Smells (20)

Agile Testing – Is it for me and how are others doing it?
Agile Testing – Is it for me and how are others doing it?Agile Testing – Is it for me and how are others doing it?
Agile Testing – Is it for me and how are others doing it?
 
Test Driven Development - a Practitioner’s Perspective
Test Driven Development - a Practitioner’s PerspectiveTest Driven Development - a Practitioner’s Perspective
Test Driven Development - a Practitioner’s Perspective
 
Agile Testing
Agile TestingAgile Testing
Agile Testing
 
Agile Transformation: People, Process and Tools to Make Your Transformation S...
Agile Transformation: People, Process and Tools to Make Your Transformation S...Agile Transformation: People, Process and Tools to Make Your Transformation S...
Agile Transformation: People, Process and Tools to Make Your Transformation S...
 
"Challenges Faced by Testers Working on Agile Teams" by Aldo Rall
"Challenges Faced by Testers Working on Agile Teams" by Aldo Rall"Challenges Faced by Testers Working on Agile Teams" by Aldo Rall
"Challenges Faced by Testers Working on Agile Teams" by Aldo Rall
 
Benefits from AATs
Benefits from AATsBenefits from AATs
Benefits from AATs
 
Fundamentals of Agile
Fundamentals of AgileFundamentals of Agile
Fundamentals of Agile
 
Test Drive Development
Test Drive DevelopmentTest Drive Development
Test Drive Development
 
Essential practices and thinking tools for Agile Adoption
Essential practices and thinking tools for Agile AdoptionEssential practices and thinking tools for Agile Adoption
Essential practices and thinking tools for Agile Adoption
 
Scrum plus – why scrum is not enough for successful delivery
Scrum plus – why scrum is not enough for successful deliveryScrum plus – why scrum is not enough for successful delivery
Scrum plus – why scrum is not enough for successful delivery
 
DevOps, Common use cases, Architectures, Best Practices
DevOps, Common use cases, Architectures, Best PracticesDevOps, Common use cases, Architectures, Best Practices
DevOps, Common use cases, Architectures, Best Practices
 
Be Modern Agile Tester
Be Modern Agile TesterBe Modern Agile Tester
Be Modern Agile Tester
 
Agile test practices
Agile test practicesAgile test practices
Agile test practices
 
Intro Of Agile
Intro Of AgileIntro Of Agile
Intro Of Agile
 
Agile
AgileAgile
Agile
 
Agile Testing - What, why and how.
Agile Testing - What, why and how.Agile Testing - What, why and how.
Agile Testing - What, why and how.
 
Agile testing
Agile testingAgile testing
Agile testing
 
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Into...
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Into...Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Into...
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Into...
 
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Adob...
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Adob...Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Adob...
Introduction to Unit Testing, BDD and Mocking using TestBox & MockBox at Adob...
 
Understanding TDD - theory, practice, techniques and tips.
Understanding TDD - theory, practice, techniques and tips.Understanding TDD - theory, practice, techniques and tips.
Understanding TDD - theory, practice, techniques and tips.
 

Último

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
Victor Rentea
 
+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...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Último (20)

Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
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
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
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
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
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
 
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
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
+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...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 

TestDriven Development, Why How and Smells

  • 2. Scrum is Hot, but… Many Scrum teams are struggling • Slow down (fewer features/sprint) – More and more production issues – Increased fragility • Requests for ‘refactoring’ stories from development team
  • 3. Scrum is Hot, but… • Regression testing is demanded – Takes up lots of time in a sprint – Sprints start to lengthen • Documentation becomes an issue because Agile teams “don’t do” documentation. • Technical debt is introduced via “Copy and paste coding”.
  • 4. 10 Year Agile Manifesto meet up 2011 concluded “As a group, we agreed on the following four belief statements: •Demand technical excellence •Promote individual change and lead organizational change •Organize knowledge and improve education •Maximize value creation across the entire process”
  • 6.
  • 8.
  • 9. Uncle Bob About TDD “The act of writing a unit test is more an act of design than of verification. It is also more an act of documentation than of verification. The act of writing a unit test closes a remarkable number of feedback loops, the least of which is the one pertaining to verification of function”
  • 10. Kent Beck about TDD “TDD encourages simple designs and inspires confidence”
  • 11.
  • 12. About Unit Testing “A procedure used to validate that individual units of source code are working properly. A unit is the smallest testable part of an application. In procedural programming a unit may be an individual program, function, procedure, etc., while in object oriented programming, the smallest unit is a method.”
  • 13. Why Unit Tests? • Avoid Combinatorial Complexity • Fine grained makes it easy to pin-point defects • Coded documentation that stays in sync • Supports changing the code • Supports collective code ownership
  • 14. Source: Agile in a Flash by Jeff Langr and Tim Ottinger
  • 15.
  • 16. Things we forget while coding • SOLID principle – Lower Complexity – Loosely Coupled – Tighter cohesion • Keep focus on Simple Design – YAGNI, DRY • Continues Refactoring
  • 17.
  • 18. Source: Agile in a Flash by Jeff Langr and Tim Ottinger
  • 20. TDD mantras Given, When, Then or Arrange, Act, Assert
  • 21. Source: Agile in a Flash by Jeff Langr and Tim Ottinger
  • 22. Source: Agile in a Flash by Jeff Langr and Tim Ottinger