This document discusses quality assurance and testing in agile projects. It defines key terms like quality assurance, quality control, and testing. It then explains how traditional testing practices have evolved with agile methodologies like Scrum. Quality is a team effort in agile, with all members sharing ownership. Testing focuses on providing effort estimates, exploratory testing, and continuous feedback in each sprint. Metrics are used to measure success and ensure a quality focused culture.
1. Quality Assurance and Testing
in Agile Projects
Ana-Maria Figher, ana.figher@embarcadero.com,
Embarcadero, www.embarcadero.com
Ia i, 8th of May 2010
2. Agenda
QA , QC, Testing
What is Agile?
Quality Assurance in Agile Projects
Quality Focused Culture
Measuring success
3. QA, QC, Testing
Testing:
It’s process of executing a system with the intent of finding defects.
Quality Control (product oriented) :
Measuring & Monitoring the quality of software after completion of every phase
Quality Assurance (process oriented) :
It’s a set of activities carried out to provide adequate confidence that processes are
established and continuously improved in order to produce products that meets the quality
requirements
Quality assurance Quality
control
Testing
4. QA, QC, Testing
QA QC Testing
Quality control (QC) Testing Unit
Procedures Static testing & Integration
Management reviews reviews System
Documentation Internal audits Acceptance
Training Maintenance
Tests &
measurements
8. Agile = Continuous Stream of Value
Iterative approaches mean we can trade features for time instead of
sacrificing quality.
9. SCRUM
Product backlog – A prioritized list of tasks to be completed on the project
Sprint – A time period (typically 2–4 weeks) in which development occurs on a set of
backlog items that the Team has committed to
Story - A very high level definition of what the customer wants
10. Calling It “Agile” Doesn’t Make It So
This is NOT Agile:
Compress the schedule
Toss out the documentation
Code up to the last minute
Less testing
The organization may gain
short term speed but at the cost of
long term pain.
13. Testing Focus in Sprint
Provide effort estimates during sprint planning and
establish the testing priorities
Focus on test automation
Focus more on exploratory testing
Provide continuous feedback to the team
Participate in sprint review meeting
14. Quality is a Team Effort
In agile organizations, all team members share quality ownership
Involve developers in test
Share ideas regarding how a feature can be tested
They DO care about the results.
A good way to share ownership, is have them run your tests
Demo testing and test results
Metrics based reporting that developers can act on
Involve product owners in test
Share and discuss test results with team to promote
shared ownership
15. QA “Tools”
High Level QA Plan
Example: DBArtisan patch test plan
Functional Test plans and Acceptance Test plan
Quality dashboard
Example: DBArtisan QA dashboard
Product Quality Support report
Example : DBArtisan Quality status
Others
Works with Development management at the Project Sprint burn down
Example: DBArtisan 9.0 Sprint report
16. QA main challenges
Planning accordingly
Risk analysis and mitigation plan
Implementing and reassessing the plan
Reporting the right information
18. Quality Focused Culture
Champion the Customer
Continuous introspection
Are we doing things right?
Are we doing the right things?
Documentation
Project Role
Reporting
Defect Management
Test Coverage
Test Automation
Beta
Training
Define and track a standard set of quality metrics
Communicate the value of Quality - $$$!
19. Quality Assurance Value
Early bug identification means easier fixing
Short testing cycle allows more features to be implemented
Providing quality metrics helps management makes the
right decisions
High product quality results in product success
Frequent automated testing ensures product quality stays
high
24. 3. Testing Metrics
Test results
Code coverage
Bug find/fix rates
Bug categorization – type/frequency
Customer satisfaction ratings
Product performance
Product stability
Metrics allow you to measure where you are in relation to
your product goals.
26. Engage!
Attitude towards Quality is something YOU control
Customers include Developers, Product Management,
Support and Sales Engineers
Have fun – testing is a challenge, a puzzle and the results
are a meaningful accomplishment.
27. Resources
Agile Manifesto: http://agilemanifesto.org/
www.testobsessed.com
www.testingreflections.com
“Agile Software Development Quality Assurance” , Ioannis
G. Stamelos and Panagiotis Sfetsos
Software Quality Assurance: Principles and Practice , Nina
S Godbole