SlideShare a Scribd company logo
QA best practices
in Agile world
What is Agile?
Agile is a time boxed, iterative approach to software delivery that builds
software incrementally from the start of the project, instead of trying to
deliver it all at once near the end.
Agile Manifesto
12 principles of agile development
• Satisfy the customer through early and continuous delivery
• Welcome changing requirements, even late in development
• Deliver working software frequently
• Business people and developers work together daily
• Build projects around motivated individuals
• Convey information via face-to-face conversation
• Working software is the primary measure of progress
• Maintain a constant pace indefinitely
12 principles of agile development
• Give continuous attention to technical excellence
• Simplify: maximize the amount of work not done
• Teams self-organize
• Teams retrospect and tune their behaviors
The Software Development Evolution –
Traditional to Agile
• Growing Realization that Requirements are never fully understood
• Fast paced development environments using new development Technologies and
Tools
• Shortened product delivery cycles
• Increased involvement of business users in the development cycle
• Migration towards Agile product development models like SCRUM, RUP, XP
Agile Misconception
• Compromises on quality
• Testers get easily influenced by developers,
• Testers concerns/voice is less heard
• Agile squeezes all SDLC phases in 2 to 4 weeks (which ideally should
happen in 4 to 8 months)
The challenges?
• Is QA part of the development team?
• Can we fit QA in the same iteration as development?
• Does QA costs more in Agile as product seems to change from sprint to sprint?
• Do we need “test plan”?
• Are story acceptance tests enough?
• When do we know testing is done?
• Do we need to track bugs?
Why Agile Testing
• Faster time-to-market
• Increases revenue and market share
• Reduces cost
• Improves quality
• Happy customers and happy employees
Being Agile
Testing best practices in Agile world
• Communication is the key
• Onsite customer, programmers in shared space
• Communicate in person, not via document
• Rapid feedback
• Short increments
• Measure progress only by working code
Testing best practices in Agile world
• Attend daily stand ups, sprint planning, retrospective sessions
• Execute acceptance criteria manually (current sprint)
• Automate smoke tests UI/regression (previous sprint)
• Demo effectiveness of testing
Testing is continues, NOT a Phase
Testing is Collaborative
• Quality is everyone’s problem, not just of testers
• Testing is the responsibility of the whole team
Quick feedback
• Faster feedback loops Increase Agility – the ability to respond to
change
• Test Automation provides quick feedback on how the software is
behaving
“Leave no broken windows”
• Fix bugs as they are found
• The sooner you find a defect, the cheaper it is to fix
What are acceptance tests?
• Tests that demonstrate business purpose from end user’s point of view
• Black-box testing
What is Acceptance Test Driven
Development(ATDD)
A practice in which the whole team collaboratively discusses acceptance criteria,
with examples, and then distills them into a set of concrete acceptance tests before
development begins.
QA Best Practices in Agile World_new
QA Role in Release Planning
• In contrast to traditional processes testers are involved from day one of the
project.
• Sizing Stories – QA gives estimate for testing effort for the upcoming stories. In
some cases testing a piece of functionality might take longer than coding it.
• Prioritizing – Stories that have many unknown areas or have high business impact
should be planned in an early iteration, so there is time to recover if story blows
up.
• Infrastructure – Plan for CI setup, test environment, test data set up
QA role at the iteration kick-off
Write high level test cases
Write detailed test cases
Acceptance testing for API
Detailed functional testing for API
Exploratory testing
Automation
Review high level test cases with developers
Release Sprint Testing (Harding Sprint)
Following testing activities need to occur during release sprint before finally
shipping the product.
• Final pass of end-to-end system integration test
• Final performance/security test
• Documentation touch ups
• User Acceptance Test
• Time required is greatly reduced (from initial 3 weeks to 1 week, in our case ) as
compared to traditional process and less likelihood of any surprises.
Agile testing-Summary
• Increased customer satisfaction
• On time deliveries without compromising quality
• Iteration wise testing makes QA more focused on specific
functionality which results in effective testing.
• Due to stable builds test cases execution was fast
• Reduction in number of defects observed in testing
Thank you
QA Best Practices in Agile World_new

More Related Content

PPTX
Agile testing - Testing From Day 1
PDF
PPTX
Test Automation in Agile
PPTX
What is (tcoe) testing center of excellence
PPTX
Agile Testing Strategy
PPTX
Testing as a Managed Service using SLAs and KPIs
PDF
Building a Test Automation Strategy for Success
PPT
Agile QA presentation
Agile testing - Testing From Day 1
Test Automation in Agile
What is (tcoe) testing center of excellence
Agile Testing Strategy
Testing as a Managed Service using SLAs and KPIs
Building a Test Automation Strategy for Success
Agile QA presentation

What's hot (20)

PPTX
Agile Testing - presentation for Agile User Group
PPT
Agile QA and Testing process
PPTX
Agile Testing: The Role Of The Agile Tester
PPT
Role Of Qa And Testing In Agile 1225221397167302 8
PPT
Agile testing
PPTX
Testing strategy for agile projects updated
PDF
Agile testing principles and practices - Anil Karade
PPT
Testing in Agile Projects
PPT
Test Automation Strategies For Agile
PPT
QA process Presentation
PPTX
Test Management in Agile - Agile testing Days 2018
ODP
BDD with Cucumber
PPT
Scrum Testing Methodology
PPT
Test Automation Best Practices (with SOA test approach)
PPTX
Shift Left Testing: A New Paradigm Shift To Quality
PPTX
Test Automation Framework with BDD and Cucumber
PDF
Agile Testing – embedding testing into agile software development lifecycle
PPTX
Agile Testing and Test Automation
PPTX
Regression testing
PDF
Agile Testing Framework - The Art of Automated Testing
Agile Testing - presentation for Agile User Group
Agile QA and Testing process
Agile Testing: The Role Of The Agile Tester
Role Of Qa And Testing In Agile 1225221397167302 8
Agile testing
Testing strategy for agile projects updated
Agile testing principles and practices - Anil Karade
Testing in Agile Projects
Test Automation Strategies For Agile
QA process Presentation
Test Management in Agile - Agile testing Days 2018
BDD with Cucumber
Scrum Testing Methodology
Test Automation Best Practices (with SOA test approach)
Shift Left Testing: A New Paradigm Shift To Quality
Test Automation Framework with BDD and Cucumber
Agile Testing – embedding testing into agile software development lifecycle
Agile Testing and Test Automation
Regression testing
Agile Testing Framework - The Art of Automated Testing
Ad

Similar to QA Best Practices in Agile World_new (20)

PPTX
Chapter -5 Agile Testing types and its examples.pptx
PDF
AgileTesting_Ver1.0
PPTX
Kanban testing
PDF
Agile Methodology - Software Engineering
PPTX
Fundamentals of Agile
PPT
7 steps to Software test automation success
PPT
UNIT IV.ppt
PDF
Methodology: IT test
PDF
Agile Acceptance testing with Fitnesse
PPTX
State of continuous delivery in 2015 - Minsk 15-5-2015
PPTX
Павел Чуняев - State of Continuous Delivery in 2015
PPTX
Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".
PPT
Project management for qa manager
PPTX
Agile software development
PPTX
Shorten Business Life Cycle Using DevOps
PDF
Agile project management using scrum
PPT
Applying Quality to the Project and Product Management Process
PPTX
GhostQA for Startups - Cost-Effective Test Automation Solutions.pptx
PPTX
Continuous everything
PPTX
Digital transformation through devops dod indianapolis
Chapter -5 Agile Testing types and its examples.pptx
AgileTesting_Ver1.0
Kanban testing
Agile Methodology - Software Engineering
Fundamentals of Agile
7 steps to Software test automation success
UNIT IV.ppt
Methodology: IT test
Agile Acceptance testing with Fitnesse
State of continuous delivery in 2015 - Minsk 15-5-2015
Павел Чуняев - State of Continuous Delivery in 2015
Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".
Project management for qa manager
Agile software development
Shorten Business Life Cycle Using DevOps
Agile project management using scrum
Applying Quality to the Project and Product Management Process
GhostQA for Startups - Cost-Effective Test Automation Solutions.pptx
Continuous everything
Digital transformation through devops dod indianapolis
Ad

QA Best Practices in Agile World_new

  • 1. QA best practices in Agile world
  • 2. What is Agile? Agile is a time boxed, iterative approach to software delivery that builds software incrementally from the start of the project, instead of trying to deliver it all at once near the end.
  • 4. 12 principles of agile development • Satisfy the customer through early and continuous delivery • Welcome changing requirements, even late in development • Deliver working software frequently • Business people and developers work together daily • Build projects around motivated individuals • Convey information via face-to-face conversation • Working software is the primary measure of progress • Maintain a constant pace indefinitely
  • 5. 12 principles of agile development • Give continuous attention to technical excellence • Simplify: maximize the amount of work not done • Teams self-organize • Teams retrospect and tune their behaviors
  • 6. The Software Development Evolution – Traditional to Agile • Growing Realization that Requirements are never fully understood • Fast paced development environments using new development Technologies and Tools • Shortened product delivery cycles • Increased involvement of business users in the development cycle • Migration towards Agile product development models like SCRUM, RUP, XP
  • 7. Agile Misconception • Compromises on quality • Testers get easily influenced by developers, • Testers concerns/voice is less heard • Agile squeezes all SDLC phases in 2 to 4 weeks (which ideally should happen in 4 to 8 months)
  • 8. The challenges? • Is QA part of the development team? • Can we fit QA in the same iteration as development? • Does QA costs more in Agile as product seems to change from sprint to sprint? • Do we need “test plan”? • Are story acceptance tests enough? • When do we know testing is done? • Do we need to track bugs?
  • 9. Why Agile Testing • Faster time-to-market • Increases revenue and market share • Reduces cost • Improves quality • Happy customers and happy employees
  • 11. Testing best practices in Agile world • Communication is the key • Onsite customer, programmers in shared space • Communicate in person, not via document • Rapid feedback • Short increments • Measure progress only by working code
  • 12. Testing best practices in Agile world • Attend daily stand ups, sprint planning, retrospective sessions • Execute acceptance criteria manually (current sprint) • Automate smoke tests UI/regression (previous sprint) • Demo effectiveness of testing
  • 13. Testing is continues, NOT a Phase
  • 14. Testing is Collaborative • Quality is everyone’s problem, not just of testers • Testing is the responsibility of the whole team
  • 15. Quick feedback • Faster feedback loops Increase Agility – the ability to respond to change • Test Automation provides quick feedback on how the software is behaving
  • 16. “Leave no broken windows” • Fix bugs as they are found • The sooner you find a defect, the cheaper it is to fix
  • 17. What are acceptance tests? • Tests that demonstrate business purpose from end user’s point of view • Black-box testing
  • 18. What is Acceptance Test Driven Development(ATDD) A practice in which the whole team collaboratively discusses acceptance criteria, with examples, and then distills them into a set of concrete acceptance tests before development begins.
  • 20. QA Role in Release Planning • In contrast to traditional processes testers are involved from day one of the project. • Sizing Stories – QA gives estimate for testing effort for the upcoming stories. In some cases testing a piece of functionality might take longer than coding it. • Prioritizing – Stories that have many unknown areas or have high business impact should be planned in an early iteration, so there is time to recover if story blows up. • Infrastructure – Plan for CI setup, test environment, test data set up
  • 21. QA role at the iteration kick-off Write high level test cases Write detailed test cases Acceptance testing for API Detailed functional testing for API Exploratory testing Automation Review high level test cases with developers
  • 22. Release Sprint Testing (Harding Sprint) Following testing activities need to occur during release sprint before finally shipping the product. • Final pass of end-to-end system integration test • Final performance/security test • Documentation touch ups • User Acceptance Test • Time required is greatly reduced (from initial 3 weeks to 1 week, in our case ) as compared to traditional process and less likelihood of any surprises.
  • 23. Agile testing-Summary • Increased customer satisfaction • On time deliveries without compromising quality • Iteration wise testing makes QA more focused on specific functionality which results in effective testing. • Due to stable builds test cases execution was fast • Reduction in number of defects observed in testing