Post on 08-May-2015
description
transcript
Quality Assurance and Testingin Agile Projects
Ana-Maria Figher, ana.figher@embarcadero.com, Embarcadero, www.embarcadero.com
Ia�i, 8th of May 2010
Agenda
QA , QC, TestingWhat is Agile?Quality Assurance in Agile ProjectsQuality Focused Culture Measuring success
QA, QC, TestingTesting:
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
Testing
Quality control
Quality assurance
QA, QC, TestingQA QC Testing
Quality control (QC)ProceduresManagement reviewsDocumentationTrainingTests & measurements
TestingStatic testing & reviewsInternal audits
UnitIntegrationSystemAcceptanceMaintenance
What’s “Agile?”
How Traditional Test Practices EvolvedWith great optimism and the best of intentions, The Project Plan is announced:
How Traditional Test Practices EvolvedInevitably, The Project Plan is revised:
Agile = Continuous Stream of ValueIterative approaches mean we can trade features for time instead of sacrificing quality.
SCRUMProduct 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
Calling It “Agile” Doesn’t Make It SoThis is NOT Agile:
Compress the scheduleToss out the documentationCode up to the last minuteLess testing
The organization may gainshort term speed but at the cost oflong term pain.
Assuring Quality in Agile - How we make it happen?
Quality Assurance in Agile Projects
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
Quality is a Team EffortIn agile organizations, all team members share quality ownership
Involve developers in testShare ideas regarding how a feature can be testedThey DO care about the results.A good way to share ownership, is have them run your testsDemo testing and test resultsMetrics based reporting that developers can act on
Involve product owners in test
Share and discuss test results with team to promote shared ownership
QA “Tools”High Level QA Plan
Example: DBArtisan patch test plan
Functional Test plans and Acceptance Test plan
Quality dashboardExample: DBArtisan QA dashboard
Product Quality Support reportExample : DBArtisan Quality status
Others Works with Development management at the Project Sprint burn downExample: DBArtisan 9.0 Sprint report
QA main challenges
Planning accordingly
Risk analysis and mitigation plan
Implementing and reassessing the plan
Reporting the right information
Try…
Quality Focused CultureChampion the CustomerContinuous introspection
Are we doing things right?Are we doing the right things?
Documentation Project RoleReportingDefect ManagementTest CoverageTest AutomationBetaTraining
Define and track a standard set of quality metricsCommunicate the value of Quality - $$$!
Quality Assurance ValueEarly bug identification means easier fixing
Short testing cycle allows more features to be implementedProviding quality metrics helps management makes the right decisionsHigh product quality results in product successFrequent automated testing ensures product quality stays high
Measuring Success1. Customer satisfaction 2. Test effectiveness3. Objective test metrics
1. Customer SatisfactionBeta surveysPublic product surveysNewsgroupsSupport callsDefects found after release
2. Test Effectiveness
3. Testing MetricsTest resultsCode coverageBug find/fix ratesBug categorization – type/frequencyCustomer satisfaction ratingsProduct performanceProduct stability
Metrics allow you to measure where you are in relation to your product goals.
Constantly Seek To Improve
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.
ResourcesAgile Manifesto: http://agilemanifesto.org/www.testobsessed.comwww.testingreflections.com“Agile Software Development Quality Assurance” , Ioannis G. Stamelos and Panagiotis SfetsosSoftware Quality Assurance: Principles and Practice , Nina S Godbole
Q&A
Please fill the evaluation form
Thank you very much!Ana-Maria Figher, ana.figher@embarcadero.com, Embarcadero, www.embarcadero.com