specialized testing focus in agile 01...
TRANSCRIPT
Specialized Testing Focus in AgileSpecialized Testing Focus in Agile
1
Harleen Bedi
Sujatha Badri Narayanan
Agenda
� Testing in Agile vs Traditional
� Need to plan for Specialized Testing
� Unbalanced Agile Testing Quadrants
� Focused Approach of Implementation
� Example - Performance Testing � Example - Performance Testing
� Potential Benefits
� Challenges in Implementation
� Key Success Factors
2
Testing in Agile vs Traditional
Story Identific
ation
Design
Deploy or Review
from Stakeholder
sSprintSprint
Traditional Waterfall Model Agile Model
Requirement
System Design
Coding
System Testing
3
DevelopTest Release
� Sequential phases
� Requirements are clearly defined and documented
� Mostly, independent testing team
� Test Manager – enough time to plan for testing
� Testing phase is planned
� Iterative phases
� Limited documented requirements
� Testers integral part of team
� Very less testing time available in each sprint
Specialized Testing
Pa
cka
ge
Pe
rfo
rma
nce
Te
stin
g
DW
/BI
Mo
bil
e
SO
A
Co
mp
lia
nce
4
� More than functional testing
� Requires technology focus
� Validates non-functional aspects
� Need People with “niche” skill set
Need to plan for Specialized Testing
� Agile is development centric?
� Agile is ad-hoc testing/ exploratory?
� Rarely articulate non-functional criteria in user stories
� Rarely have tests designed for these aspects
5
� Failed to implement appropriate testing strategies
� Specialized Testing is postponed until product is fully integrated
But! Its often too late into the project cycle. “Defects¨ found here may go directly into
the backlog for the next release or cause a feature to be pulled from a release.
Unbalanced Agile Testing Quadrants
Functional Tests
Story tests
Exploratory Testing
Usability
UAT
Business FacingManual &
AutomatedManual
Q2 Q3
Q1 Q4
Su
pp
ort
ing
th
e t
ea
m
Cri
tiq
ue
Pro
du
ct
6
Unit Tests
Component Tests
Performance and Load Testing
Security Testing
ility Tests
Technology Facing
ToolsAutomated
Q1 Q4
Su
pp
ort
ing
th
e t
ea
m
Cri
tiq
ue
Pro
du
ct
Quadrant 3 & 4 in particular require focused effort that is not directly related to individual features built during sprints
** Source : Agile Testing Quadrants from Brian Marick
Agile development aims to deliver a
feature that can be independently
evaluated and used by customers…
and what will to be delivered to
customers…needs to be customers…needs to be
TESTED THOROUGHLY!
7
Focused Approach of Implementation…
� Sprint Zero or release planning –
� include Specialized testing member on project team
� Involve the tester in sizing and estimates
Story Ide
Deploy or Review from Stakeholders
Agile Project Lifecycle
SprintSprint
8
� Identify the type of testing required
Test
Agile Project Lifecycle
Specialized Testing that should get into Agile
Performance TestingDesign / Code Tuning defects found at
this stage are less costlier to fix
Usability TestingEnd users get to see the product
earlier in the lifecycle
Security TestingMore open source / third party
components
Maintainability TestingCode gets churned out every other
sprint and should be easily maintainable over several sprints and
releases
Data warehouse TestingTesting Efficiency will be better as more samples can be taken. More
opportunities for automation
9
Web Services TestingTesting as and when they are developed reduces Integration
issues
…Focused Approach of Implementation
� Requirements -
� Add specialized Testing requirements in Product backlog
� Definition of Done
� Infrastructure set up –
10
� Infrastructure set up –
� Identify specific needs for environment of Infrastructure required to perform these
tests
� Use Appropriate tools –
� Wherever required plan for usage of tools
Performance Testing Approach for Agile
NFR Gathering Design Development System Testing Performance Testing
Testability Analysis
Testability Analysis
Traditional Waterfall Model
Agile Model
11
NFR Modeling
Early Validation
Scripting & Execution
Bottleneck Analysis
Analysis
NFR Modeling
Early Validation
Scripting & Execution
Bottleneck Analysis
End to End PT
Execution
Bottleneck Analysis
Sprint 1 Sprint n
Performance Testing Approach in detailNon Functional
Requirements Modeling Early Validation Service Virtualization
12
Using service virtualization, various systems can be tested even if the dependent components are not available. For example:
• Mainframes
• Platforms - ORACLE, Siebel, TIBCO
• Services - SOAP, CORBA
Design Phase:
� Static Review of application Design
� Performance Modeling
Build Phase:
� Dynamic code profiling
� Static Code Review
� Non Functional RequirementsModeling Framework assists increating Component level NFRs forComplex Systems
� Business Requirements, SystemAppreciation documents and takinginputs from Business Analysts /Component owners
A Case Study
Drivers/ Objectives
• Client as the part of their customer strategy, envisioned the launch of
online shopping eCommerce site with objective to enhance customer
shopping experience with the entire product catalog.
• The concept-to-launch time for the website was 6 months.
• Iterative development methodology was adopted in order to achieve
Testing Solution Approach• Risk Based testing for iterative development methodology
• QA validation strategy aligned with the development tracks earlier in
program and converging to end to end business process testing in the
final phase. This helped in detecting defects in individual modules
earlier in the life cycle thus improving testing turn around time at the
later phase
Back ground and Brief ContextClient is a World leader in Healthcare with business spread across 50 countries and revenues of more than $2 Billion. With a presence in more than 59
countries, the client has more than 1,000,000 distributors This system supports the core business model including Customer management System,
Order management system and Compensation Management System
13
• Iterative development methodology was adopted in order to achieve
time to market
• The implementation was a critical success measure of the new
business model envisioned by the organization.
later phase
• Implement Keyword driven framework of functional test automation in
parallel to manual test planning
• Non functional testing - Compatibility, Security, Performance, usability
scheduled inline with release dates and prioritization based on criticality
• Implementation & Customization of Quality Center for test management
Accomplishments and Business Benefits• Focus on non functional testing at an earlier stage preempted major flaws in the areas of performance and compatibility
• Better communication with all stakeholders resulted in lesser turn around time for defect fixes
• Knowledge management Portal with Training materials and induction kits helped in facilitating quick ramp up of new team members
• Comprehensive Validation strategy for the eCommerce implementation on new platform ensured seamless integration with the existing Order
management backend framework. Product was delivered with no major issues and on time to market
Potential Benefits
� Reduces Business Risk, improves quality
� Delivers business value early
� Reduces Total cost of ownership
� Stays competitive
14
Challenges in Implementation
� Stakeholder’s buy in (due to intangible benefits)
� Availability of stakeholders to derive Non Functional requirements
� Very limited time for developing specialized testing scripts
� Highly skilled talent� Highly skilled talent
� High Collaboration with development team
� Constant involvement of business
15
Key to Success…
� Shift in mind set of team
� Right People on the team - People with focus on specialized testing
� Early involvement of testers and not pushing specialized testing till system testing
� Carefully plan sprints in such a way that addresses the need to test all non-functional
/specialized testing/specialized testing
� Collaboration, Communication, Integration
16
17
Sujatha Badri Narayanan , PMP®
Senior Project Manager, Infosys Ltd.
Harleen Bedi, PMP®
Senior Project Manager, Infosys Ltd.
THANK YOU
www.infosys.com
The contents of this document are proprietary and confidential to Infosys Limited and may not be disclosed in whole or in part at any time, to any third party without the prior written consent of Infosys Limited.
© 2011 Infosys Limited. All rights reserved. Copyright in the whole and any part of this document belongs to Infosys Limited. This work may not be used, sold, transferred, adapted, abridged, copied or reproduced in
whole or in part, in any manner or form, or in any media, without the prior written consent of Infosys Limited.