SlideShare une entreprise Scribd logo
1  sur  21
Télécharger pour lire hors ligne
Agile Testing,
                   Uncertainty,
                   Risk, and
                   Why It All Works
                    Elisabeth Hendrickson
                    Quality Tree Software, Inc.
                    www.qualitytree.com
                    esh@qualitytree.com


                                              Last updated April 27, 2010
                               Copyright © 2010 Quality Tree Software, Inc.
This work is licensed under the Creative Commons Attribution 3.0 United States License.
View a copy of this license.
What Does Agile Really Mean?

Agile software teams…
…Deliver value in the form of
 releasable software at frequent
 regular intervals (at least
 monthly)…
…At a sustainable pace…
…While adapting to the changing
 needs of the business.
It’s Not Done Until It’s Tested

  We’re really                    But what if
behind. Let’s just                 it doesn’t
call it “done” and                   work?
     move on.




 It’s not releasable until it’s Done. (Really Done.)
    Done includes both implemented and tested.
     And tested means checked and explored.
Testing: Consider Certainty v. Time

“Traditional”
     Release


Single Sprint


   Sequence
   of Sprints
Illusion Buildup
Illusion




                Time
Four Big Sources of Technical Risk




 Ambiguity                 Dependencies




Assumptions                  Capacity
Eight Key Testing-Related Practices in Agile


                                      Exploratory
   ATDD                 TDD
                                        Testing



 Automated         Automated        Collective Test
System Tests       Unit Tests         Ownership



          Continuous            Rehearse
          Integration           Delivery
Practice: Acceptance-Test Driven Development (ATDD)
Principle: Tests Represent Expectations

I found a great bug!       Ummm…and what gave
  It won’t run on a          you the idea that
   Commodore 64!           should be a supported
                                 platform?




    Test Driven practices make expectations
     explicit and drive out ambiguity early.
Principle: Reduce Test Documentation Overhead




    ATDD provides leveraged documentation and
       results in executable requirements.
Practice: Automated System-Level Regression Tests

                   • Are business-facing,
                     written by various members
                     of the team in collaboration
                   • Express expectations about
                     externally verifiable
                     behavior
                   • Represent executable
                     requirements
Principle: Reduce Feedback Latency




           Latency
Practice: Test Driven Development (TDD)
Practice: Automated Unit Tests

         • Are code-facing, written by
           programmers to support
           the coding effort
         • Express expectations of the
           internal behavior of the
           code
         • Isolate element(s) under
           test
         • Execute quickly and often
Practice: Collective Test Ownership
Practice: Continuous Integration (CI)


       CI tools do
automated builds,
execute tests, and
report the results


                     Developers practicing CI
                     merge their changes
                     locally & execute tests
                     before checking in
Principle: Red Build Means Stop the Line


    We can just throw            But that will
   that bug on the pile       increase technical
     with the others.            debt & slow
                                   velocity.




                           Yuck.
If a previously passing expectation fails, there’s a
     bug. Bugs slow everything down. To keep
          sustainable pace, fix bugs fast.
Practice: Exploratory Testing

              Simultaneously…
              …learning about the software
              …designing tests
              …executing tests
              using feedback from the last
              test to inform the next



(See Jon and James Bach’s work on Session-Based ET)
Principle: Fail Early, Fail Fast


Failing late results in
 panic. Failing early
 gives us time to fix
    the problems.
Practice: Rehearse Delivery


 Until we ship or
 deploy, we don’t
know what will go
 wrong getting a
“Done” system out
    the door.
Agile Testing Practices Mitigate Risk


                                     Continuous
     ATDD                            Integration
                             Rehearse
     Ambiguity                   Dependencies
                              Delivery
           TDD              Automated Automated
                           System TestsUnit Tests


 Exploratory Continuous      Collective Test
    Rehearse Integration
   Testing                               Rehearse
                               Ownership
    Assumptions
     Delivery                             Delivery
                                    Capacity
 Automated Automated        Automated Automated
System Tests Unit Tests    System TestsUnit Tests

Contenu connexe

Tendances

Building and Scaling High Performing Technology Organizations by Jez Humble a...
Building and Scaling High Performing Technology Organizations by Jez Humble a...Building and Scaling High Performing Technology Organizations by Jez Humble a...
Building and Scaling High Performing Technology Organizations by Jez Humble a...Agile India
 
Agile and test driven development
Agile and test driven developmentAgile and test driven development
Agile and test driven developmentAhmed El-Deeb
 
Why Automated Testing Matters To DevOps
Why Automated Testing Matters To DevOpsWhy Automated Testing Matters To DevOps
Why Automated Testing Matters To DevOpsdpaulmerrill
 
Dependency Injection in iOS
Dependency Injection in iOSDependency Injection in iOS
Dependency Injection in iOSPablo Villar
 
Architecture In An Agile World
Architecture In An Agile WorldArchitecture In An Agile World
Architecture In An Agile WorldJames Cooper
 
DevOps - Boldly Go for Distro
DevOps - Boldly Go for DistroDevOps - Boldly Go for Distro
DevOps - Boldly Go for DistroPaul Boos
 
TDD That Was Easy!
TDD   That Was Easy!TDD   That Was Easy!
TDD That Was Easy!Kaizenko
 
Towards FutureOps: Stable, Repeatable environments from Dev to Prod
Towards FutureOps: Stable, Repeatable environments from Dev to ProdTowards FutureOps: Stable, Repeatable environments from Dev to Prod
Towards FutureOps: Stable, Repeatable environments from Dev to ProdNaresh Jain
 
Test driven development
Test driven developmentTest driven development
Test driven developmentShalabh Saxena
 
Devops culture in customer systems
Devops culture in customer systemsDevops culture in customer systems
Devops culture in customer systemsMatthew Jones
 
11 best practices_for_peer_code_review
11 best practices_for_peer_code_review11 best practices_for_peer_code_review
11 best practices_for_peer_code_reviewSmartBear Software
 
TDD vs. ATDD - What, Why, Which, When & Where
TDD vs. ATDD - What, Why, Which, When & WhereTDD vs. ATDD - What, Why, Which, When & Where
TDD vs. ATDD - What, Why, Which, When & WhereDaniel Davis
 
Agile2012 soccer witha_basketballteam
Agile2012 soccer witha_basketballteamAgile2012 soccer witha_basketballteam
Agile2012 soccer witha_basketballteamdrewz lin
 
Pair Programming Presentation
Pair Programming PresentationPair Programming Presentation
Pair Programming PresentationThoughtWorks
 
ATDD in Practice
ATDD in PracticeATDD in Practice
ATDD in PracticeSteven Mak
 
Acceptance Testing for Continuous Delivery by Dave Farley at #AgileIndia2019
Acceptance Testing for Continuous Delivery by Dave Farley at #AgileIndia2019Acceptance Testing for Continuous Delivery by Dave Farley at #AgileIndia2019
Acceptance Testing for Continuous Delivery by Dave Farley at #AgileIndia2019Agile India
 
Agile Programming Systems # TDD intro
Agile Programming Systems # TDD introAgile Programming Systems # TDD intro
Agile Programming Systems # TDD introVitaliy Kulikov
 

Tendances (20)

Building and Scaling High Performing Technology Organizations by Jez Humble a...
Building and Scaling High Performing Technology Organizations by Jez Humble a...Building and Scaling High Performing Technology Organizations by Jez Humble a...
Building and Scaling High Performing Technology Organizations by Jez Humble a...
 
Agile and test driven development
Agile and test driven developmentAgile and test driven development
Agile and test driven development
 
Why Automated Testing Matters To DevOps
Why Automated Testing Matters To DevOpsWhy Automated Testing Matters To DevOps
Why Automated Testing Matters To DevOps
 
Dependency Injection in iOS
Dependency Injection in iOSDependency Injection in iOS
Dependency Injection in iOS
 
Architecture In An Agile World
Architecture In An Agile WorldArchitecture In An Agile World
Architecture In An Agile World
 
DevOps - Boldly Go for Distro
DevOps - Boldly Go for DistroDevOps - Boldly Go for Distro
DevOps - Boldly Go for Distro
 
Agile Testing
Agile TestingAgile Testing
Agile Testing
 
TDD That Was Easy!
TDD   That Was Easy!TDD   That Was Easy!
TDD That Was Easy!
 
Towards FutureOps: Stable, Repeatable environments from Dev to Prod
Towards FutureOps: Stable, Repeatable environments from Dev to ProdTowards FutureOps: Stable, Repeatable environments from Dev to Prod
Towards FutureOps: Stable, Repeatable environments from Dev to Prod
 
Test driven development
Test driven developmentTest driven development
Test driven development
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Devops culture in customer systems
Devops culture in customer systemsDevops culture in customer systems
Devops culture in customer systems
 
11 best practices_for_peer_code_review
11 best practices_for_peer_code_review11 best practices_for_peer_code_review
11 best practices_for_peer_code_review
 
TDD vs. ATDD - What, Why, Which, When & Where
TDD vs. ATDD - What, Why, Which, When & WhereTDD vs. ATDD - What, Why, Which, When & Where
TDD vs. ATDD - What, Why, Which, When & Where
 
Chapter 3 Reducing Risks Using CI
Chapter 3 Reducing Risks Using CIChapter 3 Reducing Risks Using CI
Chapter 3 Reducing Risks Using CI
 
Agile2012 soccer witha_basketballteam
Agile2012 soccer witha_basketballteamAgile2012 soccer witha_basketballteam
Agile2012 soccer witha_basketballteam
 
Pair Programming Presentation
Pair Programming PresentationPair Programming Presentation
Pair Programming Presentation
 
ATDD in Practice
ATDD in PracticeATDD in Practice
ATDD in Practice
 
Acceptance Testing for Continuous Delivery by Dave Farley at #AgileIndia2019
Acceptance Testing for Continuous Delivery by Dave Farley at #AgileIndia2019Acceptance Testing for Continuous Delivery by Dave Farley at #AgileIndia2019
Acceptance Testing for Continuous Delivery by Dave Farley at #AgileIndia2019
 
Agile Programming Systems # TDD intro
Agile Programming Systems # TDD introAgile Programming Systems # TDD intro
Agile Programming Systems # TDD intro
 

En vedette

On the Care and Feeding of Feedback Cycles
On the Care and Feeding of Feedback CyclesOn the Care and Feeding of Feedback Cycles
On the Care and Feeding of Feedback CyclesElisabeth Hendrickson
 
Exploratory Testing in an Agile Context
Exploratory Testing in an Agile ContextExploratory Testing in an Agile Context
Exploratory Testing in an Agile ContextElisabeth Hendrickson
 
Introduction to Acceptance Test Driven Development
Introduction to Acceptance Test Driven DevelopmentIntroduction to Acceptance Test Driven Development
Introduction to Acceptance Test Driven DevelopmentElisabeth Hendrickson
 
Quality Risk Management
Quality Risk ManagementQuality Risk Management
Quality Risk ManagementDigital-360
 
Quality risk management
Quality risk managementQuality risk management
Quality risk managementpraveen dubey
 
Risk Management and Reliable Forecasting using Un-reliable Data (magennis) - ...
Risk Management and Reliable Forecasting using Un-reliable Data (magennis) - ...Risk Management and Reliable Forecasting using Un-reliable Data (magennis) - ...
Risk Management and Reliable Forecasting using Un-reliable Data (magennis) - ...Troy Magennis
 
P&msp2010 07 risk-and-change-management
P&msp2010 07 risk-and-change-managementP&msp2010 07 risk-and-change-management
P&msp2010 07 risk-and-change-managementEmanuele Della Valle
 
Presenter Slides - E-Workshop: Agricultural risk management with FAO and ILO
Presenter Slides - E-Workshop: Agricultural risk management with FAO and ILOPresenter Slides - E-Workshop: Agricultural risk management with FAO and ILO
Presenter Slides - E-Workshop: Agricultural risk management with FAO and ILOMicrocredit Summit Campaign
 
02 - Testing Management - Crash Slides
02 - Testing Management - Crash Slides02 - Testing Management - Crash Slides
02 - Testing Management - Crash SlidesSamer Desouky
 
Improving Financial Management
Improving Financial ManagementImproving Financial Management
Improving Financial ManagementCherry_Birch
 
Outsourcing - Key management issues
Outsourcing - Key management issuesOutsourcing - Key management issues
Outsourcing - Key management issuesSarang Bhutada
 
Chapter 12 - Operational risk management
Chapter 12 - Operational risk managementChapter 12 - Operational risk management
Chapter 12 - Operational risk managementQuan Risk
 
Measuring operational risk
Measuring operational riskMeasuring operational risk
Measuring operational riskUjjwal 'Shanu'
 

En vedette (20)

Agile Quality and Risk Management
Agile Quality and Risk ManagementAgile Quality and Risk Management
Agile Quality and Risk Management
 
AGILEEE Friday 17:15 Talk
AGILEEE Friday 17:15 TalkAGILEEE Friday 17:15 Talk
AGILEEE Friday 17:15 Talk
 
Wclessons atd-sm
Wclessons atd-smWclessons atd-sm
Wclessons atd-sm
 
Agile: Get Real
Agile: Get RealAgile: Get Real
Agile: Get Real
 
On the Care and Feeding of Feedback Cycles
On the Care and Feeding of Feedback CyclesOn the Care and Feeding of Feedback Cycles
On the Care and Feeding of Feedback Cycles
 
Exploratory Testing in an Agile Context
Exploratory Testing in an Agile ContextExploratory Testing in an Agile Context
Exploratory Testing in an Agile Context
 
Exploratory Testing in Practice
Exploratory Testing in PracticeExploratory Testing in Practice
Exploratory Testing in Practice
 
Introduction to Acceptance Test Driven Development
Introduction to Acceptance Test Driven DevelopmentIntroduction to Acceptance Test Driven Development
Introduction to Acceptance Test Driven Development
 
Quality Risk Management
Quality Risk ManagementQuality Risk Management
Quality Risk Management
 
Agile quality management
Agile quality managementAgile quality management
Agile quality management
 
Quality risk management
Quality risk managementQuality risk management
Quality risk management
 
Risk Management and Reliable Forecasting using Un-reliable Data (magennis) - ...
Risk Management and Reliable Forecasting using Un-reliable Data (magennis) - ...Risk Management and Reliable Forecasting using Un-reliable Data (magennis) - ...
Risk Management and Reliable Forecasting using Un-reliable Data (magennis) - ...
 
P&msp2010 07 risk-and-change-management
P&msp2010 07 risk-and-change-managementP&msp2010 07 risk-and-change-management
P&msp2010 07 risk-and-change-management
 
Presenter Slides - E-Workshop: Agricultural risk management with FAO and ILO
Presenter Slides - E-Workshop: Agricultural risk management with FAO and ILOPresenter Slides - E-Workshop: Agricultural risk management with FAO and ILO
Presenter Slides - E-Workshop: Agricultural risk management with FAO and ILO
 
02 - Testing Management - Crash Slides
02 - Testing Management - Crash Slides02 - Testing Management - Crash Slides
02 - Testing Management - Crash Slides
 
Improving Financial Management
Improving Financial ManagementImproving Financial Management
Improving Financial Management
 
Outsourcing - Key management issues
Outsourcing - Key management issuesOutsourcing - Key management issues
Outsourcing - Key management issues
 
ICH Q9 Quality Risk Management
ICH Q9 Quality Risk ManagementICH Q9 Quality Risk Management
ICH Q9 Quality Risk Management
 
Chapter 12 - Operational risk management
Chapter 12 - Operational risk managementChapter 12 - Operational risk management
Chapter 12 - Operational risk management
 
Measuring operational risk
Measuring operational riskMeasuring operational risk
Measuring operational risk
 

Similaire à Agile Testing, Uncertainty, Risk, and Why It All Works

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 AdoptionSteven Mak
 
Agile Testing. Risks, Uncertainty and Why It All Works
Agile Testing. Risks, Uncertainty and Why It All WorksAgile Testing. Risks, Uncertainty and Why It All Works
Agile Testing. Risks, Uncertainty and Why It All WorksAgileee
 
Agile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai CultureAgile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai CultureWee Witthawaskul
 
Quality Assurance - The Other Side of the Fence
Quality Assurance - The Other Side of the FenceQuality Assurance - The Other Side of the Fence
Quality Assurance - The Other Side of the FenceTom Oketch
 
Agile testing overview
Agile testing overviewAgile testing overview
Agile testing overviewraianup
 
Agile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer PerspectiveAgile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer PerspectiveWee Witthawaskul
 
#DOAW16 - DevOps@work Roma 2016 - Testing your databases
#DOAW16 - DevOps@work Roma 2016 - Testing your databases#DOAW16 - DevOps@work Roma 2016 - Testing your databases
#DOAW16 - DevOps@work Roma 2016 - Testing your databasesAlessandro Alpi
 
TEA Presentation V 0.3
TEA Presentation V 0.3TEA Presentation V 0.3
TEA Presentation V 0.3Ian McDonald
 
Releasing fast code - The DevOps approach
Releasing fast code - The DevOps approachReleasing fast code - The DevOps approach
Releasing fast code - The DevOps approachMichael Kopp
 

Similaire à Agile Testing, Uncertainty, Risk, and Why It All Works (20)

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
 
Agile Testing. Risks, Uncertainty and Why It All Works
Agile Testing. Risks, Uncertainty and Why It All WorksAgile Testing. Risks, Uncertainty and Why It All Works
Agile Testing. Risks, Uncertainty and Why It All Works
 
Agile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai CultureAgile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai Culture
 
Testing in java
Testing in javaTesting in java
Testing in java
 
Quality Assurance - The Other Side of the Fence
Quality Assurance - The Other Side of the FenceQuality Assurance - The Other Side of the Fence
Quality Assurance - The Other Side of the Fence
 
Agile testing overview
Agile testing overviewAgile testing overview
Agile testing overview
 
Agile testingoverview
Agile testingoverviewAgile testingoverview
Agile testingoverview
 
Agile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer PerspectiveAgile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer Perspective
 
TDD - Agile
TDD - Agile TDD - Agile
TDD - Agile
 
Agile testing
Agile testingAgile testing
Agile testing
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
 
#DOAW16 - DevOps@work Roma 2016 - Testing your databases
#DOAW16 - DevOps@work Roma 2016 - Testing your databases#DOAW16 - DevOps@work Roma 2016 - Testing your databases
#DOAW16 - DevOps@work Roma 2016 - Testing your databases
 
TEA Presentation V 0.3
TEA Presentation V 0.3TEA Presentation V 0.3
TEA Presentation V 0.3
 
Unit testing
Unit testingUnit testing
Unit testing
 
Continuous testing the new must have skill of tomorrow's tech leaders
Continuous testing  the new must have skill of tomorrow's tech leadersContinuous testing  the new must have skill of tomorrow's tech leaders
Continuous testing the new must have skill of tomorrow's tech leaders
 
test
testtest
test
 
test
testtest
test
 
Releasing fast code - The DevOps approach
Releasing fast code - The DevOps approachReleasing fast code - The DevOps approach
Releasing fast code - The DevOps approach
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Agile Testing
Agile TestingAgile Testing
Agile Testing
 

Dernier

CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxthorishapillay1
 
Blooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxBlooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxUnboundStockton
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
internship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerinternship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerunnathinaik
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Sapana Sha
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
Pharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfPharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfMahmoud M. Sallam
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting DataJhengPantaleon
 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfadityarao40181
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxRaymartEstabillo3
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Science lesson Moon for 4th quarter lesson
Science lesson Moon for 4th quarter lessonScience lesson Moon for 4th quarter lesson
Science lesson Moon for 4th quarter lessonJericReyAuditor
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Celine George
 

Dernier (20)

TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptx
 
Blooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxBlooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docx
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
 
internship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerinternship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developer
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
Pharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfPharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdf
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdf
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Science lesson Moon for 4th quarter lesson
Science lesson Moon for 4th quarter lessonScience lesson Moon for 4th quarter lesson
Science lesson Moon for 4th quarter lesson
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17
 

Agile Testing, Uncertainty, Risk, and Why It All Works

  • 1. Agile Testing, Uncertainty, Risk, and Why It All Works Elisabeth Hendrickson Quality Tree Software, Inc. www.qualitytree.com esh@qualitytree.com Last updated April 27, 2010 Copyright © 2010 Quality Tree Software, Inc. This work is licensed under the Creative Commons Attribution 3.0 United States License. View a copy of this license.
  • 2. What Does Agile Really Mean? Agile software teams… …Deliver value in the form of releasable software at frequent regular intervals (at least monthly)… …At a sustainable pace… …While adapting to the changing needs of the business.
  • 3. It’s Not Done Until It’s Tested We’re really But what if behind. Let’s just it doesn’t call it “done” and work? move on. It’s not releasable until it’s Done. (Really Done.) Done includes both implemented and tested. And tested means checked and explored.
  • 4. Testing: Consider Certainty v. Time “Traditional” Release Single Sprint Sequence of Sprints
  • 6. Four Big Sources of Technical Risk Ambiguity Dependencies Assumptions Capacity
  • 7. Eight Key Testing-Related Practices in Agile Exploratory ATDD TDD Testing Automated Automated Collective Test System Tests Unit Tests Ownership Continuous Rehearse Integration Delivery
  • 8. Practice: Acceptance-Test Driven Development (ATDD)
  • 9. Principle: Tests Represent Expectations I found a great bug! Ummm…and what gave It won’t run on a you the idea that Commodore 64! should be a supported platform? Test Driven practices make expectations explicit and drive out ambiguity early.
  • 10. Principle: Reduce Test Documentation Overhead ATDD provides leveraged documentation and results in executable requirements.
  • 11. Practice: Automated System-Level Regression Tests • Are business-facing, written by various members of the team in collaboration • Express expectations about externally verifiable behavior • Represent executable requirements
  • 12. Principle: Reduce Feedback Latency Latency
  • 13. Practice: Test Driven Development (TDD)
  • 14. Practice: Automated Unit Tests • Are code-facing, written by programmers to support the coding effort • Express expectations of the internal behavior of the code • Isolate element(s) under test • Execute quickly and often
  • 16. Practice: Continuous Integration (CI) CI tools do automated builds, execute tests, and report the results Developers practicing CI merge their changes locally & execute tests before checking in
  • 17. Principle: Red Build Means Stop the Line We can just throw But that will that bug on the pile increase technical with the others. debt & slow velocity. Yuck. If a previously passing expectation fails, there’s a bug. Bugs slow everything down. To keep sustainable pace, fix bugs fast.
  • 18. Practice: Exploratory Testing Simultaneously… …learning about the software …designing tests …executing tests using feedback from the last test to inform the next (See Jon and James Bach’s work on Session-Based ET)
  • 19. Principle: Fail Early, Fail Fast Failing late results in panic. Failing early gives us time to fix the problems.
  • 20. Practice: Rehearse Delivery Until we ship or deploy, we don’t know what will go wrong getting a “Done” system out the door.
  • 21. Agile Testing Practices Mitigate Risk Continuous ATDD Integration Rehearse Ambiguity Dependencies Delivery TDD Automated Automated System TestsUnit Tests Exploratory Continuous Collective Test Rehearse Integration Testing Rehearse Ownership Assumptions Delivery Delivery Capacity Automated Automated Automated Automated System Tests Unit Tests System TestsUnit Tests