SlideShare a Scribd company logo
1 of 26
© 2011 Seapine Software, Inc. All rights reserved. A Software Manager’s Guide to Defining Testing in an Agile Age A Seapine Software Webinar Peter VarholSolutions Evangelist, Seapine Software
Agenda What Does it Mean to Be Agile? Principles of Agile Development Integrating Testing into Agile Development Testing and Automation Making Testing Count with Agile Summary and Questions
What Does It Mean to Be Agile? Satisfy the customer through early and continuous delivery of valuable software Working software is the primary measure of progress Deliver working software frequently Build projects around motivated individuals At regular intervals, the team reflects on how to become more effective
What Does It Mean to Be Agile? Early and continuous delivery of software Requirements less formal – user stories Iterative development cycle One week to one month Working software at the end of each
What Does It Mean to Be Agile? Working software is the primary measure of progress User stories translated to features Features delivered after each iteration
What Does It Mean to Be Agile? Deliver working software frequently One week to one month Timeframe continues to shorten
What Does It Mean to Be Agile? Build projects around motivated individuals Developers, testers, users
What Does It Mean to Be Agile? Reflect on how to become more effective Don’t keep making the same mistakes
Integrating Testing into Agile Development There’s not one single prescription Agile methodologies promote short release cycles Every project is unique
Assignment: Reinvention Quality is a high priority But testing can’t plan like it used to Needed: a new approach to testing Testers have to reinvent themselves and their craft A path to value
Integrating Testing into Agile Development Reinventing testing for Agile Testers remain essential to quality A long lead time before active testing is infeasible How to reconcile test planning with up-front execution Can planning be saved?
Integrating Testing into Agile Development Iterate on planning Keep pace with development Iterate on testing Manage risk so that the most important features and actions are well-tested Iterate on quality Measure your quality Improve it in the next iteration
Integrating Testing into Agile Development Early involvement by testers Testers need to work directly with product owners Must understand the user needs Get underneath the user story
Integrating Testing into Agile Development Focus testing on features that make a difference to users No requirements to analyze No time for comprehensive test plans Learn what the users need Make sure those features work Users sign off, testers validate
Integrating Testing into Agile Development Ensure that testers take the lead Take responsibility for application quality Become an interface to the user community Work with developers as equal partners
Integrating Testing into Agile Development Enable testers to work side-by-side with developers Testers need to know about tactical development decisions This is especially important in Agile projects without formal requirements
Integrating Testing into Agile Development  Make automation an integral part of testing Agility and automation work hand in hand Accelerate testing to show agility Data collection and analysis essential
Testing and Automation Automate both process and testing Agile methodologies are lightweight But tools are essential for speed and flexibility Tools accelerate repetitive manual processes But tool overhead can’t outweigh benefits Easy to learn and use Provide easily digestibleinformation
Testing and Automation Process Automation User story tracking - Hint: 3 x 5 cards don’t cut it Feature backlog Defect tracking
Testing and Automation Testing automation Test management Automated functional and regression tests Automated load testing – valuable for assessing design and coding practices
Making Testing Count With Agile Ensure that testers take the lead on the building and execution of functional, regression, and acceptance test cases Independence from development helps ensure objective evaluation
Making Testing Count With Agile Enable testers and developers to make coding decisions together Helps prioritize testing Guide development in decision-making
Making Testing Count with Agile Automate to achieve speed and efficiency Use tools when there is a clear advantage Don’t get bogged down with configuring and maintenance Focus on the goal
Summary Agile methodologies and testing work well together Quality is the common factor Testers need earlier involvement, more interaction with users and developers An independent voice of quality Automation makes testing feasible Repetitive activities are accelerated
For More Information Seapine Software – www.seapine.com “Testing in an Agile Age” Whitepaper http://bit.ly/hiGtkk Agile Expedition – www.seapine.com/exploreagile The Seapine View - http://blogs.seapine.com/
© 2011 Seapine Software, Inc. All rights reserved. Thank you

More Related Content

More from Seapine Software

The Road to Better Traceability
The Road to Better TraceabilityThe Road to Better Traceability
The Road to Better TraceabilitySeapine Software
 
2013 State of medical device webinar
2013 State of medical device webinar2013 State of medical device webinar
2013 State of medical device webinarSeapine Software
 
Beyond FDA Compliance Webinar: 5 Hidden Benefits of Your Traceability Matrix
Beyond FDA Compliance Webinar: 5 Hidden Benefits of Your Traceability MatrixBeyond FDA Compliance Webinar: 5 Hidden Benefits of Your Traceability Matrix
Beyond FDA Compliance Webinar: 5 Hidden Benefits of Your Traceability MatrixSeapine Software
 
Sw qual joint webinar deck (5)
Sw qual joint webinar deck (5)Sw qual joint webinar deck (5)
Sw qual joint webinar deck (5)Seapine Software
 
Pragmatic Device Risk Management
Pragmatic Device Risk Management Pragmatic Device Risk Management
Pragmatic Device Risk Management Seapine Software
 
Use the Windshield, Not the Mirror Predictive Metrics that Drive Successful ...
 Use the Windshield, Not the Mirror Predictive Metrics that Drive Successful ... Use the Windshield, Not the Mirror Predictive Metrics that Drive Successful ...
Use the Windshield, Not the Mirror Predictive Metrics that Drive Successful ...Seapine Software
 
Leveraging Reusability and Traceability in Medical Device Development
Leveraging Reusability and Traceability in Medical Device DevelopmentLeveraging Reusability and Traceability in Medical Device Development
Leveraging Reusability and Traceability in Medical Device DevelopmentSeapine Software
 
Webinar - Maximizing Requirements Value Throughout the Product Lifecycle
Webinar - Maximizing Requirements Value Throughout the Product Lifecycle Webinar - Maximizing Requirements Value Throughout the Product Lifecycle
Webinar - Maximizing Requirements Value Throughout the Product Lifecycle Seapine Software
 
Medical Device Development - Automating Traceability and Documentation
Medical Device Development - Automating Traceability and DocumentationMedical Device Development - Automating Traceability and Documentation
Medical Device Development - Automating Traceability and DocumentationSeapine Software
 
FDA Expectations for Traceability in Device & Diagnostic Design
FDA Expectations for Traceability in Device & Diagnostic DesignFDA Expectations for Traceability in Device & Diagnostic Design
FDA Expectations for Traceability in Device & Diagnostic DesignSeapine Software
 
Take the Pain (and Weekends) Out of Test Case Management
Take the Pain (and Weekends) Out of Test Case ManagementTake the Pain (and Weekends) Out of Test Case Management
Take the Pain (and Weekends) Out of Test Case ManagementSeapine Software
 
Understanding the Business Case for Agile
Understanding the Business Case for AgileUnderstanding the Business Case for Agile
Understanding the Business Case for AgileSeapine Software
 
Agile at Seapine (University of Cincinnati 2011)
Agile at Seapine (University of Cincinnati 2011)Agile at Seapine (University of Cincinnati 2011)
Agile at Seapine (University of Cincinnati 2011)Seapine Software
 
Monitoring Quality Metrics to Know When to Ship
Monitoring Quality Metrics to Know When to ShipMonitoring Quality Metrics to Know When to Ship
Monitoring Quality Metrics to Know When to ShipSeapine Software
 
Improving the Development Lifecycle with a Quality-Centric Approach
Improving the Development Lifecycle with a Quality-Centric ApproachImproving the Development Lifecycle with a Quality-Centric Approach
Improving the Development Lifecycle with a Quality-Centric ApproachSeapine Software
 

More from Seapine Software (16)

The Road to Better Traceability
The Road to Better TraceabilityThe Road to Better Traceability
The Road to Better Traceability
 
2013 State of medical device webinar
2013 State of medical device webinar2013 State of medical device webinar
2013 State of medical device webinar
 
Beyond FDA Compliance Webinar: 5 Hidden Benefits of Your Traceability Matrix
Beyond FDA Compliance Webinar: 5 Hidden Benefits of Your Traceability MatrixBeyond FDA Compliance Webinar: 5 Hidden Benefits of Your Traceability Matrix
Beyond FDA Compliance Webinar: 5 Hidden Benefits of Your Traceability Matrix
 
Sw qual joint webinar deck (5)
Sw qual joint webinar deck (5)Sw qual joint webinar deck (5)
Sw qual joint webinar deck (5)
 
Pragmatic Device Risk Management
Pragmatic Device Risk Management Pragmatic Device Risk Management
Pragmatic Device Risk Management
 
Use the Windshield, Not the Mirror Predictive Metrics that Drive Successful ...
 Use the Windshield, Not the Mirror Predictive Metrics that Drive Successful ... Use the Windshield, Not the Mirror Predictive Metrics that Drive Successful ...
Use the Windshield, Not the Mirror Predictive Metrics that Drive Successful ...
 
Leveraging Reusability and Traceability in Medical Device Development
Leveraging Reusability and Traceability in Medical Device DevelopmentLeveraging Reusability and Traceability in Medical Device Development
Leveraging Reusability and Traceability in Medical Device Development
 
Webinar - Maximizing Requirements Value Throughout the Product Lifecycle
Webinar - Maximizing Requirements Value Throughout the Product Lifecycle Webinar - Maximizing Requirements Value Throughout the Product Lifecycle
Webinar - Maximizing Requirements Value Throughout the Product Lifecycle
 
Medical Device Development - Automating Traceability and Documentation
Medical Device Development - Automating Traceability and DocumentationMedical Device Development - Automating Traceability and Documentation
Medical Device Development - Automating Traceability and Documentation
 
FDA Expectations for Traceability in Device & Diagnostic Design
FDA Expectations for Traceability in Device & Diagnostic DesignFDA Expectations for Traceability in Device & Diagnostic Design
FDA Expectations for Traceability in Device & Diagnostic Design
 
Take the Pain (and Weekends) Out of Test Case Management
Take the Pain (and Weekends) Out of Test Case ManagementTake the Pain (and Weekends) Out of Test Case Management
Take the Pain (and Weekends) Out of Test Case Management
 
Understanding the Business Case for Agile
Understanding the Business Case for AgileUnderstanding the Business Case for Agile
Understanding the Business Case for Agile
 
When Requirements Change
When Requirements ChangeWhen Requirements Change
When Requirements Change
 
Agile at Seapine (University of Cincinnati 2011)
Agile at Seapine (University of Cincinnati 2011)Agile at Seapine (University of Cincinnati 2011)
Agile at Seapine (University of Cincinnati 2011)
 
Monitoring Quality Metrics to Know When to Ship
Monitoring Quality Metrics to Know When to ShipMonitoring Quality Metrics to Know When to Ship
Monitoring Quality Metrics to Know When to Ship
 
Improving the Development Lifecycle with a Quality-Centric Approach
Improving the Development Lifecycle with a Quality-Centric ApproachImproving the Development Lifecycle with a Quality-Centric Approach
Improving the Development Lifecycle with a Quality-Centric Approach
 

Recently uploaded

The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 

Recently uploaded (20)

The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 

A Software Manager’s Guide to Defining Testing in an Agile Age

  • 1. © 2011 Seapine Software, Inc. All rights reserved. A Software Manager’s Guide to Defining Testing in an Agile Age A Seapine Software Webinar Peter VarholSolutions Evangelist, Seapine Software
  • 2. Agenda What Does it Mean to Be Agile? Principles of Agile Development Integrating Testing into Agile Development Testing and Automation Making Testing Count with Agile Summary and Questions
  • 3. What Does It Mean to Be Agile? Satisfy the customer through early and continuous delivery of valuable software Working software is the primary measure of progress Deliver working software frequently Build projects around motivated individuals At regular intervals, the team reflects on how to become more effective
  • 4. What Does It Mean to Be Agile? Early and continuous delivery of software Requirements less formal – user stories Iterative development cycle One week to one month Working software at the end of each
  • 5. What Does It Mean to Be Agile? Working software is the primary measure of progress User stories translated to features Features delivered after each iteration
  • 6. What Does It Mean to Be Agile? Deliver working software frequently One week to one month Timeframe continues to shorten
  • 7. What Does It Mean to Be Agile? Build projects around motivated individuals Developers, testers, users
  • 8. What Does It Mean to Be Agile? Reflect on how to become more effective Don’t keep making the same mistakes
  • 9. Integrating Testing into Agile Development There’s not one single prescription Agile methodologies promote short release cycles Every project is unique
  • 10. Assignment: Reinvention Quality is a high priority But testing can’t plan like it used to Needed: a new approach to testing Testers have to reinvent themselves and their craft A path to value
  • 11. Integrating Testing into Agile Development Reinventing testing for Agile Testers remain essential to quality A long lead time before active testing is infeasible How to reconcile test planning with up-front execution Can planning be saved?
  • 12. Integrating Testing into Agile Development Iterate on planning Keep pace with development Iterate on testing Manage risk so that the most important features and actions are well-tested Iterate on quality Measure your quality Improve it in the next iteration
  • 13. Integrating Testing into Agile Development Early involvement by testers Testers need to work directly with product owners Must understand the user needs Get underneath the user story
  • 14. Integrating Testing into Agile Development Focus testing on features that make a difference to users No requirements to analyze No time for comprehensive test plans Learn what the users need Make sure those features work Users sign off, testers validate
  • 15. Integrating Testing into Agile Development Ensure that testers take the lead Take responsibility for application quality Become an interface to the user community Work with developers as equal partners
  • 16. Integrating Testing into Agile Development Enable testers to work side-by-side with developers Testers need to know about tactical development decisions This is especially important in Agile projects without formal requirements
  • 17. Integrating Testing into Agile Development Make automation an integral part of testing Agility and automation work hand in hand Accelerate testing to show agility Data collection and analysis essential
  • 18. Testing and Automation Automate both process and testing Agile methodologies are lightweight But tools are essential for speed and flexibility Tools accelerate repetitive manual processes But tool overhead can’t outweigh benefits Easy to learn and use Provide easily digestibleinformation
  • 19. Testing and Automation Process Automation User story tracking - Hint: 3 x 5 cards don’t cut it Feature backlog Defect tracking
  • 20. Testing and Automation Testing automation Test management Automated functional and regression tests Automated load testing – valuable for assessing design and coding practices
  • 21. Making Testing Count With Agile Ensure that testers take the lead on the building and execution of functional, regression, and acceptance test cases Independence from development helps ensure objective evaluation
  • 22. Making Testing Count With Agile Enable testers and developers to make coding decisions together Helps prioritize testing Guide development in decision-making
  • 23. Making Testing Count with Agile Automate to achieve speed and efficiency Use tools when there is a clear advantage Don’t get bogged down with configuring and maintenance Focus on the goal
  • 24. Summary Agile methodologies and testing work well together Quality is the common factor Testers need earlier involvement, more interaction with users and developers An independent voice of quality Automation makes testing feasible Repetitive activities are accelerated
  • 25. For More Information Seapine Software – www.seapine.com “Testing in an Agile Age” Whitepaper http://bit.ly/hiGtkk Agile Expedition – www.seapine.com/exploreagile The Seapine View - http://blogs.seapine.com/
  • 26. © 2011 Seapine Software, Inc. All rights reserved. Thank you

Editor's Notes

  1. Laurie Williams, a professor at North Carolina State University, recently conducted a survey to find out which principles and practices are used by agile teams. According to the survey respondents, these five characteristics were widely held to be associated with agile. Let’s take a quick look at each of them.
  2. Agile requires fast delivery of working software. To meet this goal, they have to work fast at the beginning. Rather than meticulously planning out all of the business needs, organizing them, and carefully designing out all aspects of the software, they get just enough of the business needs, and do just enough of the design, to code a few features at a time. What makes this work is regular feedback from the users.It’s interesting to note that this approach is the very antithesis of the one promoted by software engineering practitioners over the years. Their mantra was that if you planned long enough and well enough, coding should just be almost a footnote at the end of the process.
  3. We can collect all of our metrics, all of our measures of productivity, and keep all of our complex schedules, but ultimately the only measure that counts is working software features. That means that those features deployed are of high quality, and that users are productively using them.
  4. Frequent delivery means that there’s not a significant gap in what the users think they need, and are able to try out at least some of it. Depending on the Agile process used, new features may be delivered anywhere from every week to every month. This enables the users to have fast access to critical features, while enabling the project team to get timely feedback.
  5. Had to include the Rosie the Riveter poster.What does motivation have to do with it? Motivated people do more than build software. They understand the domain, talk to the users, and make decisions on the fly that benefit the project and software. By giving motivated professionals key roles, you shape the project with their energy and focus on success.
  6. We’ve all made poor decisions on projects, through inexperience or lack of good information. We would like to not make such mistakes in the future, by analyzing and learning from those in the past. In an Agile project, most of those mistakes are recent. At least some we realized and had to correct along the way.Agile teams take the time at the end of a project to reflect on what went right and what went wrong. This is similar to some of the lessons learned done at the end of traditional projects, but because these are Agile, the lessons tend to be closer in time.
  7. One of the most important topics for any team deciding to adopt an Agile process is the role of testing. Testing in traditional processes is very well-defined; however, the extensive and detailed planning inherent in those processes maps poorly to any Agile process.There’s no one answer to this question, because every project is different. But there are some guidelines that managers and project leaders can use to integrate testing in such a way that testers are equal contributors to the project, and the software produced is of high quality.
  8. The first thing to remember is that being Agile doesn’t mean that quality takes a back seat. Quality remains a high priority, and the developers aren’t in a good position to ensure quality, because they are writing the code. This means there is a role for testers, albeit not using the traditional testing processes.Testers have to reinvent those processes, and in doing so reinvent themselves.
  9. How can testers reconcile the need for quality but not for extensive test planning? Can we save any part of the planning process?
  10. So where should the focus of testers be? Probably the best prescription is to follow the lead of Agile developers – do enough to get you started, then iterate on each phase of the testing process to refine it more as the project progresses.Start with planning – do enough planning to understand the project and user stories. Devise initial testing strategies focused on the first user stories selected. Be ready to participate when developers start coding.Iterate on testing – Don’t expect that you’re going to have comprehensive coverage, at least not right away. Make decisions on the most important aspects of the application for the user, and focus on testing those at first. Over time, if there are hardening iterations or features that depend on other features, you can expand your test coverage.Iterate on quality – Because you won’t have comprehensive testing, your initial efforts at quality will be approximations. Like developers iterate on features, testers also iterate on quality, improving over time.
  11. To make the iterative approach work, you have to have testers directly involved at the very beginning. They are members of the team, not professionals who sit to one side in their own world. They need to know the users and the problem domain in order to know what to test and how to test it. And they need to do more than that; they need to get underneath the user story in a way not required of the developers, in order to know how a feature will be used, and what is important to the user.
  12. Here’s where testing and Agile come together. Testing remains an important part of the process. But without requirements to analyze and test plans to write, you have to look at what the user says is important. This means studying the user stories, and going back to the product owner and asking questions. You can’t be passive; you have to actively seek out opportunities to learn more about the domain to have more effective testing.
  13. That’s right, testers can’t sit back and be passive. That role may work in traditional processes, where testers maintain professional separation from the development process. In Agile, testers have to be an integral part of the developer process. They bridge developers to the users, and take active responsibility for application quality.
  14. To take an leadership role, and be involved from the beginning, testers also have to work alongside developers. They need to understand the tactical decisions developers are making while writing code, so that they understand the underlying structure of the application and the reason why it works as it does. This will accelerate the ability to develop tests that focus on those features.
  15. You have to automate to test in an Agile process. At first, this may seem to be a contradiction, as Agile processes are intended to be lightweight, but there is no substitute for the speed that selective automation delivers. Further, automation allows testers to collect data to measure aspects of the process. This enables them to iterate on testing and quality, by knowing where to place their future efforts.
  16. There are a couple of different aspects to automation. First is automating the process in general. This refers to things like user stories/feature descriptions and bug tracking. The second is testing in particular, like test management and automated functional testing.The key to employing automation in Agile is that you are looking to accelerate repetitive manual processes, so you have to make sure your tools and strategies are lightweight.There needs to be a balance here. The costs of automation, in terms of learning and administration, can’t outweigh the benefits.
  17. You can use process automation tools to track user stories and features, the feature backlog, and for defect tracking. While Agile is typically described as using 3 by 5 cards for recording and tracking user stories, in actual projects that just doesn’t cut it. These need to be available to all project participants, and they need to be able to track any changes that have been made to the stories. Once again, you don’t want to make a career out of tracking user stories, but you need to focus on the things the team and the organization need to move forward.
  18. Testing automation includes test management, automated functional and regression testing, and load testing. Test management refers to defining tests, tracking test execution, and collecting and analyzing data. Any tests and testing has to be tracked in some way, for efficiency’s sake, but the automation can’t overwhelm the actual testing.Automated functional testing is a challenge, because you typically have to manually execute the test once to automate it. At a minimum, it’s good to automate all tests, even though you may be only re-executing the ones that fail initially.Load testing can be tied with automated functional testing, which is another reason to automate functional tests, so those tests can be used as actions for load testing. Ideally, load testing can be a key indicator of whether to use one or more iterations solely for the purpose of paying down debt of the existing feature set (often called hardening iterations) instead of paying down debt in an iteration that implements new features.
  19. Ensure that testers take the lead on the development and execution of functional, regression, and acceptance test cases, and perform these tests throughout Agile sprints, and prior to application deployment. Because Agile tends to blur the line between writing code and testing code, the independence testers bring to the process is essential.
  20. Enable testers to work side-by-side with developers as coding decisions are made, both to appropriately reflect the intentions of the user stories and to enable testers to gain insight into development issues that may impact quality.
  21. I’ve spent some time on automation here, and I can’t stress enough how important it is to be able to use automation to accelerate activities in an Agile process. One caution – don’t get bogged down in the tool; instead, focus on the goal of speed and efficiency.
  22. In sum, testing is essential in Agile projects, and in fact can work well in Agile processes. Application quality is the factor that brings them together. To do so, testers need early involvement and must become partners with both users and developers.