SlideShare a Scribd company logo
How to Fit Testing
in the Iteration




   www.rallydev.com                                        1
                      © 2009 Rally Software Development, Inc.
The Grains Have Been Changed…
• Fully tested, working code every 1-4 week iteration.
• New teams often wonder how testing can be squeezed into that timeframe
• If anything, there is more time devoted to testing on an Agile project.
• What changes is the size or grain of what’s tested. The most common
“System Under Test” (SUT) is a user story – typically the result of 1 to 3 days of work.




In this presentation, we’ll walk through a typical iteration, highlighting test activities and
showing how Quality is “Baked In” as part of the process vs. “Tested In” at the end.

       (Graphics adopted from Naresh Jain, Licensed under Creative Commons)
           www.rallydev.com                                                                                    2
                                                                          © 2009 Rally Software Development, Inc.
Testing in the Iteration
        Starts with the User Story




www.rallydev.com                                                      3
                                 © 2009 Rally Software Development, Inc.
The User Story Describes
                        What the System Should Do
• During iteration planning, the team agrees on a set of User Stories
  to be delivered. A User Story describes what the system should do, in a
  way that emphasizes value to a user.

• Example:

Review Items in Shopping Cart

 As a shopper,

 I want to see a list of items, prices and delivery
 dates as I checkout,                                  Rally allows teams to
                                                         define, prioritize,
                                                        schedule, track and
                                                      report on User Stories,
 so that I know what I ordered, when I get it and       Tasks, Defects, Test
 how much it costs.                                   Cases and Test Results



         www.rallydev.com                                                                        4
                                                            © 2009 Rally Software Development, Inc.
Every User Story
                            has Acceptance Criteria
• At the start of an Agile iteration, the product owner reviews the
  prioritized user stories.

• Testers ask questions that elicit examples and clarification.

• User stories are given Acceptance Criteria (AC).
  AC are business oriented tests that let us know if the
  implementation meets Product Owner expectations.

• Acceptance Criteria are written so that:
  • The Product Owner can verify
    that the story was implemented as intended
  • Developers and Testers know when they are done

         www.rallydev.com                                                                         5
                                                             © 2009 Rally Software Development, Inc.
Testers help PO’s clarify
                                with Examples and Tests
•   The Product Owner (PO)
    whiteboards an example…

•   The Team has questions...


    How do we display out of stock items?
    If a shopper applies a promo code, should we show list and discounted prices?
    What about shipping charges? Is there really a book titled “American Nerd”?, etc.

    The PO answers and clarifications are made to the AC. This process of
    “just-in-time” elaboration continues throughout the iteration. As questions arise
    during the iteration, the PO is available for team members to ask for clarification.
•   The AC does not cover boundary conditions. These will be addressed by unit and
    exploratory testing. We’re primarily concerned with specifying the business value that
    should be delivered. The test serves a requirements and design role.
    Testing and Development become one process. The whole team owns quality.

           www.rallydev.com                                                                                   6
                                                                         © 2009 Rally Software Development, Inc.
User Stories Break Down into Tasks
             Test Tasks are Included
•   Iteration planning continues as the team breaks the user story
    (the what) into tasks (the how) and estimates effort

•   Testers fully participate in estimating effort
    by adding test tasks to the User Story breakdown. For example…


                                                                                 Rally makes
                                                                                  it easy for
                                                                                   teams to
                                                                                 collaborate
                                                                                and see story
                                                                                   and task
                                                                                     status



                               Stories move from
Backlog (B), to Defined (D), to In-Progress (P) to Complete (C) to Accepted (A)


          www.rallydev.com                                                                                7
                                                                     © 2009 Rally Software Development, Inc.
Testing and Coding are One Process
      In the Iteration, Testing and Coding occur at the same time

                    • A programmer picks the first task
                    • The tester picks the first test task.
                    • Typical test tasks include defining test data,
                      designing test approaches, evaluating risk, etc.
                    • Testers, Developers and Product Owners
                      continue to clarify story requirements,
                      brainstorm testability approaches and
                      collaborate as a team.
       Product Owner, Developer and Tester
     work together towards their shared objective:
  A High Quality product that Delivers Business Value
 www.rallydev.com                                                                              8
                                                          © 2009 Rally Software Development, Inc.
Agile Developers are Responsible for Unit Testing

                      • Unit tests are written by programmers, in
                        the same language they develop in, usually
                        using one of the popular xUnit
                        frameworks.

                      • These tests take the smallest piece of
                        testable code, isolate it from the rest of
                        the system, and determine if the results
                        are as expected.

                      • Since unit tests isolate the code under test,
                        they remain stable over time, with very
                        low Total Cost of Ownership (TCO)


   www.rallydev.com                                                                        9
                                                      © 2009 Rally Software Development, Inc.
Unit Testing frees Testers to Automate
             Acceptance Tests and Do Exploratory Testing

• With Unit Testing, Testers get much higher quality code to start with

• While programmers are coding, testers are preparing Acceptance Tests

• When dev tasks complete, developer and tester walk through
  different scenarios for the story

• Tester and Developer collaborate until the Acceptance Test is “Green”

• Exploratory Testing begins as soon as the story is coded

• Both tester and programmer have the story at the top of their mind or
  in context. This dramatically boosts productivity.

        www.rallydev.com                                                                         10
                                                             © 2009 Rally Software Development, Inc.
The Product Owner
                       Accepts the Fully Tested Story
• Teams commit to delivering a set of User Stories with an Iteration

• Each User Story must be accepted by the Product Owner

• The Product Owner reviews the implementation and
  either accepts the story or requests changes.

• The Team also agrees on a general “Definition of Done” for stories.
  Fully tested and defect-free are part of the criteria.

• Testing can never “fall behind” coding because no stories are accepted
  without being fully tested. Quality gets baked into the process.


        www.rallydev.com                                                                     11
                                                         © 2009 Rally Software Development, Inc.
Non-Functional Requirements are
               Scheduled as User Stories in the Iteration

• Performance, Load Testing, Security and other
  Non-Functional Requirements are Scheduled in the Iteration

• User stories are used to capture these requirements
   • As a shopper, I want all of my checkout pages to display in less than 2 seconds
     so that I don’t get frustrated and cancel my order
   • As a shopper, I want to be able to use Firefox 3.0+, MSIE 6.0+, Safari 3.2+, or Opera 9.6+,
     or Chrome 1.0+ so that I’ll have a supported browser 99% of the time.
   • As a shopper, I want my credit card number protected from identity theft,
     so that I don’t experience financial ruin and start a class-action suit against you


• Testing may be done by a specialty team
   • If this is the case, the tester within the team acts as a proxy for the specialist group
   • Testing begins much earlier in the development cycle. The team can respond to
     performance, security and usability issues while there’s time to address them.

         www.rallydev.com                                                                                        12
                                                                             © 2009 Rally Software Development, Inc.
How Does Defect Management Change?
           The High Defect Counts on Traditional Projects Add Weight

• Traditional projects use the
  Defect Tracking System (DTS)
  for workflow, with complex
  rule engines for routing and
  signoffs
• Results are heavy process
  burdens, high management
  effort and delay
• The DTS becomes a hidden
  “backlog” of work, and the
  project end game is
  defect-driven



        www.rallydev.com                                                                           13
                                                               © 2009 Rally Software Development, Inc.
Agile Teams are
      “Value-Driven” – Not “Defect-Driven”
• Stories are the unit of value and tests indicate when that value is complete.
• Defects are killed on arrival or scheduled alongside of new features
  to be prioritized by the product owner.
• Continuous testing and integration combine with short iterations for tiny defect
  counts, typically dozens, with little management burden and team overhead.
• The team resolves failures immediately. Potentially shippable code is the goal.




                                                Complex defect workflows are
                                                        replaced with
                                                  the simplicity of Pass/Fail



           www.rallydev.com                                                                        14
                                                               © 2009 Rally Software Development, Inc.
Test Impediments are
          Addressed in the Retrospective
• Every Agile iteration has a retrospective at the close of an iteration.
• In the retrospective, the team looks back at the
  iteration, notes facts and feelings, generates insights
  and decides what to do about them.
• Retrospectives are great tools for improving
  testability and raising test issues
• For example,
    • We need a Virtual PC image for Safari browser testing
    • John’s shopping cart FitNesse Adapter makes it easier to write
       tests, we should look at more domain specific approaches.
    • The GUI smoke test was hard to write without unique IDs
               Agile Teams focus on continual improvement,
            Building quality in is faster than inspecting defects out
         www.rallydev.com                                                                      15
                                                           © 2009 Rally Software Development, Inc.
Summary and Next Steps

 Summary                                                  Next Steps
              • Agile teams “Bake Quality In”             • Explore the Implementing Agile Teams ,
                making testing, early                       Agile Test & Engineering Practices, and
                feedback and continuous                     Rally JumpStart Service Offerings
                improvement part of the
                process                                   • View the next presentation,
              • Coding and Testing are One                  “Build and Test Automation” to see
                 – Coding doesn’t start w/o                 how Agile Teams shorten feedback
                   Acceptance Criteria
                                                            loops and boost productivity
                 – User Stories are not accepted
                   unless they are tested + defect free
                                                          • Review the Related Materials for
• Agile teams spend as much or more time on
                                                            guides, sample meeting agendas and
  testing as traditional teams, but the grain of
                                                            additional resources
  what’s tested is smaller.


            www.rallydev.com                                                                                      16
                                                                              © 2009 Rally Software Development, Inc.

More Related Content

PPTX
Build And Test Automation - Shortening the Feedback Loop
PDF
IIT Academy: 204 User stories and acceptance criteria
PPTX
Product backlog
PDF
Software Development Guide To Accelerate Performance
PDF
Scrum Crash Course - Anatoli Iliev and Lyubomir Cholakov, Infragistics
PPT
Agile and user story workshop Peter Saddington
PDF
Agile Requirements Writing
PPT
Agile scrum induction
Build And Test Automation - Shortening the Feedback Loop
IIT Academy: 204 User stories and acceptance criteria
Product backlog
Software Development Guide To Accelerate Performance
Scrum Crash Course - Anatoli Iliev and Lyubomir Cholakov, Infragistics
Agile and user story workshop Peter Saddington
Agile Requirements Writing
Agile scrum induction

What's hot (20)

PDF
PDF
PDF
Offshore Agile Challenges
PPTX
India Agile Week 2015
PPTX
Effective User Story Writing
PPTX
Acceptance criteria
PPTX
Lean Product Development at Discovery Communications: Methodology, Practices,...
PDF
Agile Usability
PDF
Agile Software Development in Practice - A Developer Perspective
PPTX
Browser core red bus presentation
PDF
Agile Software Development Process Practice in Thai Culture
PPTX
Introduction to Agile
PDF
Accelerate Your Next AEM Project
PDF
Becoming an Effective Product Owner
PDF
Scrum agile process
PPTX
Scrum - Product Backlog
PDF
Agile Product Management
PPTX
Test pyramid agile pune conference
PPTX
Lessons learnt Integrating Test into the Agile Lifecycle
PDF
What\'s new in LoadRunner and Performance Center 11
Offshore Agile Challenges
India Agile Week 2015
Effective User Story Writing
Acceptance criteria
Lean Product Development at Discovery Communications: Methodology, Practices,...
Agile Usability
Agile Software Development in Practice - A Developer Perspective
Browser core red bus presentation
Agile Software Development Process Practice in Thai Culture
Introduction to Agile
Accelerate Your Next AEM Project
Becoming an Effective Product Owner
Scrum agile process
Scrum - Product Backlog
Agile Product Management
Test pyramid agile pune conference
Lessons learnt Integrating Test into the Agile Lifecycle
What\'s new in LoadRunner and Performance Center 11
Ad

Viewers also liked (20)

PDF
21st Century Talent Management: The New Ways Companies Hire, Engage, and Lead
PDF
Produtividade na gestão de equipes ágeis com Rally Agile ALM
PPTX
Acceptance test driven development (attd) cycle
PPTX
ATDD in practice
PPTX
Specflow - Criando uma ponte entre desenvolvedores.
PDF
ICTSS 2010 - Iterative Software Testing Process for Scrum and Waterfall Projects
PPT
Acceptance Test Driven Development With Spec Flow And Friends
PDF
Agile Product Management
PDF
Acceptance Test Driven Development at StarWest 2014
PDF
Agile Acceptance testing with Fitnesse
PPTX
Writing Acceptance Tests Using Fitnesse
PDF
Acceptance Test Driven Development
PPTX
Agile Release Planning
KEY
ATDD in Practice
PDF
Release planning in Scrum
PPTX
Risk Mitigation Using Exploratory and Technical Testing | QASymphony Webinar
PPTX
Where Testers & QA Fit in the Story of DevOps
PPTX
CA Technologies' Agile Application Lifecycle Management (ALM) Solution – An E...
PDF
ATDD Using Robot Framework
PPTX
Agile Release & Iteration Planning
21st Century Talent Management: The New Ways Companies Hire, Engage, and Lead
Produtividade na gestão de equipes ágeis com Rally Agile ALM
Acceptance test driven development (attd) cycle
ATDD in practice
Specflow - Criando uma ponte entre desenvolvedores.
ICTSS 2010 - Iterative Software Testing Process for Scrum and Waterfall Projects
Acceptance Test Driven Development With Spec Flow And Friends
Agile Product Management
Acceptance Test Driven Development at StarWest 2014
Agile Acceptance testing with Fitnesse
Writing Acceptance Tests Using Fitnesse
Acceptance Test Driven Development
Agile Release Planning
ATDD in Practice
Release planning in Scrum
Risk Mitigation Using Exploratory and Technical Testing | QASymphony Webinar
Where Testers & QA Fit in the Story of DevOps
CA Technologies' Agile Application Lifecycle Management (ALM) Solution – An E...
ATDD Using Robot Framework
Agile Release & Iteration Planning
Ad

Similar to How To Fit Testing Into The Iteration (20)

PPTX
Agile Testing and Test Automation
PPTX
Slow Down to Speed Up - Leveraging Quality to Enable Productivity and Speed w...
DOC
Abhishek Tomar_9.5 Years_Localization Testing
PDF
QA Role in Agile Teams
PPTX
Agile Testing: The Role Of The Agile Tester
PPTX
Automated Acceptance Tests & Tool choice
PDF
Imaginea qa&automation
PDF
Utah PMA Quarterly Meeting, June, 2009
PPTX
Testing in agile
PDF
Assessing Your Agility: Introducing the Comparative Agility Assessment
PPTX
Application Lifecycle Management with Visual Studio 2013
PDF
pdfcoffee.com_agile-testing-4-pdf-free.pdf
DOC
SuchhandaDey_Exp_Resume
PDF
Agile process
PDF
Tester Challenges in Agile ?
PDF
Agile Testing 20021015
DOC
Software Test Engineer with 3.6 years of experience
PDF
Introduction to Agile Software Development Process
KEY
Essential practices and thinking tools for Agile Adoption
PPTX
A Roadmap to Enterprise Quality
Agile Testing and Test Automation
Slow Down to Speed Up - Leveraging Quality to Enable Productivity and Speed w...
Abhishek Tomar_9.5 Years_Localization Testing
QA Role in Agile Teams
Agile Testing: The Role Of The Agile Tester
Automated Acceptance Tests & Tool choice
Imaginea qa&automation
Utah PMA Quarterly Meeting, June, 2009
Testing in agile
Assessing Your Agility: Introducing the Comparative Agility Assessment
Application Lifecycle Management with Visual Studio 2013
pdfcoffee.com_agile-testing-4-pdf-free.pdf
SuchhandaDey_Exp_Resume
Agile process
Tester Challenges in Agile ?
Agile Testing 20021015
Software Test Engineer with 3.6 years of experience
Introduction to Agile Software Development Process
Essential practices and thinking tools for Agile Adoption
A Roadmap to Enterprise Quality

More from Rally Software (15)

PPTX
Next Level Agile - Ryan Polk
PPTX
Unlocking Excellence with Agile Metrics
PDF
How is Agile Working For You?
PDF
Business Agility and Annual Planning: Solving the Paradox
PDF
The Impact of Agile Quantified - Agile Australia 2014
PPTX
Think Differently: Re-imagining Resource Management in a Disruptive Age
PDF
Beyond Agile Execution: Agility for Impact by Ryan Martens
PDF
When Worlds Collide by Karl Scotland
PDF
Agile Transformations, the Good, the Bad and the Ugly
PPTX
Rally For Impact Introduction
PDF
Dollars and Dates are Killing Agile
PDF
Agile Metrics - Modeling, Simulation, and Data Mining
PPTX
Executive Experience Reports
PDF
Greening our Planet, our Industry, our Community and our Company – a goal we ...
PDF
Agile Enterprise Adoption And Enterprise Agile Enterprise Adoption And Enterp...
Next Level Agile - Ryan Polk
Unlocking Excellence with Agile Metrics
How is Agile Working For You?
Business Agility and Annual Planning: Solving the Paradox
The Impact of Agile Quantified - Agile Australia 2014
Think Differently: Re-imagining Resource Management in a Disruptive Age
Beyond Agile Execution: Agility for Impact by Ryan Martens
When Worlds Collide by Karl Scotland
Agile Transformations, the Good, the Bad and the Ugly
Rally For Impact Introduction
Dollars and Dates are Killing Agile
Agile Metrics - Modeling, Simulation, and Data Mining
Executive Experience Reports
Greening our Planet, our Industry, our Community and our Company – a goal we ...
Agile Enterprise Adoption And Enterprise Agile Enterprise Adoption And Enterp...

Recently uploaded (20)

PDF
KodekX | Application Modernization Development
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPT
Teaching material agriculture food technology
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
sap open course for s4hana steps from ECC to s4
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPTX
Cloud computing and distributed systems.
KodekX | Application Modernization Development
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Chapter 3 Spatial Domain Image Processing.pdf
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
Unlocking AI with Model Context Protocol (MCP)
NewMind AI Weekly Chronicles - August'25 Week I
The Rise and Fall of 3GPP – Time for a Sabbatical?
Teaching material agriculture food technology
Agricultural_Statistics_at_a_Glance_2022_0.pdf
MIND Revenue Release Quarter 2 2025 Press Release
Programs and apps: productivity, graphics, security and other tools
Reach Out and Touch Someone: Haptics and Empathic Computing
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Building Integrated photovoltaic BIPV_UPV.pdf
sap open course for s4hana steps from ECC to s4
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
“AI and Expert System Decision Support & Business Intelligence Systems”
Cloud computing and distributed systems.

How To Fit Testing Into The Iteration

  • 1. How to Fit Testing in the Iteration www.rallydev.com 1 © 2009 Rally Software Development, Inc.
  • 2. The Grains Have Been Changed… • Fully tested, working code every 1-4 week iteration. • New teams often wonder how testing can be squeezed into that timeframe • If anything, there is more time devoted to testing on an Agile project. • What changes is the size or grain of what’s tested. The most common “System Under Test” (SUT) is a user story – typically the result of 1 to 3 days of work. In this presentation, we’ll walk through a typical iteration, highlighting test activities and showing how Quality is “Baked In” as part of the process vs. “Tested In” at the end. (Graphics adopted from Naresh Jain, Licensed under Creative Commons) www.rallydev.com 2 © 2009 Rally Software Development, Inc.
  • 3. Testing in the Iteration Starts with the User Story www.rallydev.com 3 © 2009 Rally Software Development, Inc.
  • 4. The User Story Describes What the System Should Do • During iteration planning, the team agrees on a set of User Stories to be delivered. A User Story describes what the system should do, in a way that emphasizes value to a user. • Example: Review Items in Shopping Cart As a shopper, I want to see a list of items, prices and delivery dates as I checkout, Rally allows teams to define, prioritize, schedule, track and report on User Stories, so that I know what I ordered, when I get it and Tasks, Defects, Test how much it costs. Cases and Test Results www.rallydev.com 4 © 2009 Rally Software Development, Inc.
  • 5. Every User Story has Acceptance Criteria • At the start of an Agile iteration, the product owner reviews the prioritized user stories. • Testers ask questions that elicit examples and clarification. • User stories are given Acceptance Criteria (AC). AC are business oriented tests that let us know if the implementation meets Product Owner expectations. • Acceptance Criteria are written so that: • The Product Owner can verify that the story was implemented as intended • Developers and Testers know when they are done www.rallydev.com 5 © 2009 Rally Software Development, Inc.
  • 6. Testers help PO’s clarify with Examples and Tests • The Product Owner (PO) whiteboards an example… • The Team has questions... How do we display out of stock items? If a shopper applies a promo code, should we show list and discounted prices? What about shipping charges? Is there really a book titled “American Nerd”?, etc. The PO answers and clarifications are made to the AC. This process of “just-in-time” elaboration continues throughout the iteration. As questions arise during the iteration, the PO is available for team members to ask for clarification. • The AC does not cover boundary conditions. These will be addressed by unit and exploratory testing. We’re primarily concerned with specifying the business value that should be delivered. The test serves a requirements and design role. Testing and Development become one process. The whole team owns quality. www.rallydev.com 6 © 2009 Rally Software Development, Inc.
  • 7. User Stories Break Down into Tasks Test Tasks are Included • Iteration planning continues as the team breaks the user story (the what) into tasks (the how) and estimates effort • Testers fully participate in estimating effort by adding test tasks to the User Story breakdown. For example… Rally makes it easy for teams to collaborate and see story and task status Stories move from Backlog (B), to Defined (D), to In-Progress (P) to Complete (C) to Accepted (A) www.rallydev.com 7 © 2009 Rally Software Development, Inc.
  • 8. Testing and Coding are One Process In the Iteration, Testing and Coding occur at the same time • A programmer picks the first task • The tester picks the first test task. • Typical test tasks include defining test data, designing test approaches, evaluating risk, etc. • Testers, Developers and Product Owners continue to clarify story requirements, brainstorm testability approaches and collaborate as a team. Product Owner, Developer and Tester work together towards their shared objective: A High Quality product that Delivers Business Value www.rallydev.com 8 © 2009 Rally Software Development, Inc.
  • 9. Agile Developers are Responsible for Unit Testing • Unit tests are written by programmers, in the same language they develop in, usually using one of the popular xUnit frameworks. • These tests take the smallest piece of testable code, isolate it from the rest of the system, and determine if the results are as expected. • Since unit tests isolate the code under test, they remain stable over time, with very low Total Cost of Ownership (TCO) www.rallydev.com 9 © 2009 Rally Software Development, Inc.
  • 10. Unit Testing frees Testers to Automate Acceptance Tests and Do Exploratory Testing • With Unit Testing, Testers get much higher quality code to start with • While programmers are coding, testers are preparing Acceptance Tests • When dev tasks complete, developer and tester walk through different scenarios for the story • Tester and Developer collaborate until the Acceptance Test is “Green” • Exploratory Testing begins as soon as the story is coded • Both tester and programmer have the story at the top of their mind or in context. This dramatically boosts productivity. www.rallydev.com 10 © 2009 Rally Software Development, Inc.
  • 11. The Product Owner Accepts the Fully Tested Story • Teams commit to delivering a set of User Stories with an Iteration • Each User Story must be accepted by the Product Owner • The Product Owner reviews the implementation and either accepts the story or requests changes. • The Team also agrees on a general “Definition of Done” for stories. Fully tested and defect-free are part of the criteria. • Testing can never “fall behind” coding because no stories are accepted without being fully tested. Quality gets baked into the process. www.rallydev.com 11 © 2009 Rally Software Development, Inc.
  • 12. Non-Functional Requirements are Scheduled as User Stories in the Iteration • Performance, Load Testing, Security and other Non-Functional Requirements are Scheduled in the Iteration • User stories are used to capture these requirements • As a shopper, I want all of my checkout pages to display in less than 2 seconds so that I don’t get frustrated and cancel my order • As a shopper, I want to be able to use Firefox 3.0+, MSIE 6.0+, Safari 3.2+, or Opera 9.6+, or Chrome 1.0+ so that I’ll have a supported browser 99% of the time. • As a shopper, I want my credit card number protected from identity theft, so that I don’t experience financial ruin and start a class-action suit against you • Testing may be done by a specialty team • If this is the case, the tester within the team acts as a proxy for the specialist group • Testing begins much earlier in the development cycle. The team can respond to performance, security and usability issues while there’s time to address them. www.rallydev.com 12 © 2009 Rally Software Development, Inc.
  • 13. How Does Defect Management Change? The High Defect Counts on Traditional Projects Add Weight • Traditional projects use the Defect Tracking System (DTS) for workflow, with complex rule engines for routing and signoffs • Results are heavy process burdens, high management effort and delay • The DTS becomes a hidden “backlog” of work, and the project end game is defect-driven www.rallydev.com 13 © 2009 Rally Software Development, Inc.
  • 14. Agile Teams are “Value-Driven” – Not “Defect-Driven” • Stories are the unit of value and tests indicate when that value is complete. • Defects are killed on arrival or scheduled alongside of new features to be prioritized by the product owner. • Continuous testing and integration combine with short iterations for tiny defect counts, typically dozens, with little management burden and team overhead. • The team resolves failures immediately. Potentially shippable code is the goal. Complex defect workflows are replaced with the simplicity of Pass/Fail www.rallydev.com 14 © 2009 Rally Software Development, Inc.
  • 15. Test Impediments are Addressed in the Retrospective • Every Agile iteration has a retrospective at the close of an iteration. • In the retrospective, the team looks back at the iteration, notes facts and feelings, generates insights and decides what to do about them. • Retrospectives are great tools for improving testability and raising test issues • For example, • We need a Virtual PC image for Safari browser testing • John’s shopping cart FitNesse Adapter makes it easier to write tests, we should look at more domain specific approaches. • The GUI smoke test was hard to write without unique IDs Agile Teams focus on continual improvement, Building quality in is faster than inspecting defects out www.rallydev.com 15 © 2009 Rally Software Development, Inc.
  • 16. Summary and Next Steps Summary Next Steps • Agile teams “Bake Quality In” • Explore the Implementing Agile Teams , making testing, early Agile Test & Engineering Practices, and feedback and continuous Rally JumpStart Service Offerings improvement part of the process • View the next presentation, • Coding and Testing are One “Build and Test Automation” to see – Coding doesn’t start w/o how Agile Teams shorten feedback Acceptance Criteria loops and boost productivity – User Stories are not accepted unless they are tested + defect free • Review the Related Materials for • Agile teams spend as much or more time on guides, sample meeting agendas and testing as traditional teams, but the grain of additional resources what’s tested is smaller. www.rallydev.com 16 © 2009 Rally Software Development, Inc.