You are on page 1of 18

Agile Testing Introduction

Brief

Why Agile Testing?


Testing is NOT a Phase
Agile teams test continuously. Its the only way to
be sure that the features implemented during a
given iteration or sprint are actually done. Agile
team test early and often.
Continuous testing is the only way to
ensure continuous progress.

Non-agile vs Agile
1. Predictability
2. Panning first and then executing the
plans
3. No chance of launching it as bits or
stages.
4. Changes are not possible since any
changes to be made means the project
has to be started all over again.

1. Adaptability
2. Involve planning what one wants and
then adapting these plans to the results
3. Advantage is one has a launch able
product at the end of each tested stage
4. Allow for specification changes as per
end-users requirements, spelling
customer satisfaction

Agile Approach

Product Backlog

Business
Problems
4

Milestones

Sprint Backlogs

Releases

Sprints

Terms
Product Backlog -Current prioritized list of
work to be done
Effort Estimation - iterative on Backlog items
Sprint Duration - 2-3 Weeks *
Sprint Planning Meeting - decide goals for
next spring and how team will implement
Sprint Backlog -Product Backlog items for
sprint
Daily Scrum meeting - what doing, what will
do, and any problems
Sprint Review Meeting -present results of
sprint

Agile- Sprint Cycle


End- End
System
Testing

Dev Team
BVT Success
Functional
testing

BVT

Sprint
Test Cycle

Regression
Testing

Build of QA

Defect
Logging

Defect fix
validation

QA Sign-off

Daily Stand-up

Story Board
Design Document

Sprint Burndown
charts

Write Story & Scenario

Business Review/ Retrospective

Sprint N

Sprint & Capacity


Planning

Inputs from Customers,


Business Users and
Stakeholders

Sprint
Sprint Planning
Planning
Meeting
Meeting

Sprint Backlog Product Backlog


Tracker

Review Product Backlog


Prioritize Sprint Items
Estimate Sprint Backlog
Comments

Daily
Daily Stand-up
Stand-up
Meeting
Meeting

Done since last meeting


Plan for today
Risk/ Challenges any?

Sprint
Sprint Review
Review
Meeting
Meeting

Demo features to all


Clarification Support
Retrospective on the sprint
adjustments

Typical Operating Model


Onsite Team

Test Lead
Automation Test
Analysts
Test Analysts

Responsibilities

Business/Users
Requirements
Requirement Prioritization
Clarifications & Reviews
User Acceptance Test
Product Smoke Test

Roles

Business Users
Business Analyst
Scrum Master

Responsibilities

Roles

Offshore Team

Sprint & Capacity Planning


Technical design
Development Activities
Verification & Validation
UAT & Production support
Release and Deployment
Mgmt.
Metrics collection

Roles and Responsibilities


Scrum Master - project following rules
and practices
Product owner -officially responsible
for project
Scrum Team - project team. Free to
organize as they see fit to achieve goals
of each sprint
Customer - participates in Backlog
items
Management - Makes final decisions

Different Teams in Agile Process

Metrics and KPIs based


Management
For Timely, Accurate, Objective Reporting on Quality
Our metrics dashboards provide a means to
Monitor progress of product burn down in each sprint
Objectively assess the effectiveness and efficiency of deliverables in each sprint
Objectively assess the quality of testing in each sprint
Monitor the productivity and resource utilization
Pinpoint the variance in the software development lifecycle process and testing for each sprint

Management Measures
* Sprint Planning /Schedule
variance
* PBI Prioritization variance
SBI Prioritization
* Requirement Ambiguity
* Backed out/differed PBIs
* Resource Utilization
* Sprint Burn down
* Sprint Interference

10

QA Measure
* Test Case Preparation Productivity
* Test Case execution productivity
* Build stability index
* Defect Density
* Defect Rejection Ratio
* Defect Leakage Ratio

Testing Methodology

Challenges and Mitigations


Challenges

Mitigations
1. Communication with the team at
multiple locations
2. Understanding on the Process
3. Roles and responsibilities
4. Insufficient Requirements in Product
Backlog & Sprint Backlog
5. Requirement clarity
6. Functional clarity
7. Defect fixing and retesting those
fixed defects
8. Execution of Regression suite

1. Daily scrum call/meetings to understand the


current status and the progress of each
individual
2. Process for the project is predefined before
the sprints start
3. Roles and Responsibilities for the team are
predefined
4. The Backlog items are been further described
in High level and Low Level functional
documents with the functionalities involved
5. Ambiguity report is prepared on HLDs and
LLDs to get ambiguities clarified*
6. Issue log is created for functional
requirements clarity
7. Defect log is being maintained to prioritize
the defects raised and to resolve depending
on the prioritization list
8. Planning for automation of regression test
suite

Best Practices
At the beginning of an agile project you will need to invest some
time to identify the high level scope of the project and to create
the initial prioritized list of requirements as Product Backlog

Stakeholders should provide information


in a timely manner, make decisions in a
timely manner, and be as actively involved
in the development process

Product Backlog-Prioritized list

Active stakeholder
participation
Requirement driven architecture
high-level architectural modeling
to identify a viable technical
strategy for your solution
Should be in the form of
executable specifications

Architecture Envisioning
To avoid speculative ideas that are
likely to change in favor of stable
information

Details captured

Late documentation
Strive to capture information in one
Specify requirements in the form of executable "customer
tests or user tests", and your design as executable
developer tests, instead of non-executable "static"
documentation

Single Source Information

Executable Specifications

Iteration Modeling

At the beginning of each iteration planning should be


done. Sometimes requirements that are nearing the top of
your priority list are complex, motivating you to invest
some effort plan to explore them before they're popped off
the top of the work item list so as to reduce overall risk

Prioritized Requirements

Agile teams implement requirements in priority


order, as defined by their stakeholders, so as
to provide the greatest Return On Investment
(ROI) possible

Agile Manifesto-Developed by Agile


Alliance

1. Our highest priority is to satisfy the costumer through


early and continuous delivery of valuable software
2. Welcome changing requirements, even late in
development. Agile process harness change for the
customers competitive advantage
3. Deliver working software frequently, from a couple
of weeks to a couple of months, with a preference to
the shorter timescale

Agile Manifesto
4. Business people and developers must work together
daily throughout the project
5. Build projects around motivated individuals. Give
them the environment and support they need, and
trust them to get the job done
6. The most efficient and effective method of conveying
information to and within a development team is
face-to-face conversation

Agile Manifesto
7. Working software is the primary measure of
progress
8. Agile processes promote sustainable
development. The sponsors, developers, and
users should be able to maintain a constant
pace indefinitely
9. Continuous attention to technical excellence
and good design enhances agility

Agile Manifesto
10. Simplicity the art of maximizing the
amount of work not done is essential
11. The best architectures, requirements, and
designs emerge from self-organizing teams
12. At regular intervals, the team reflects on how
to become more effective, then tunes and
adjusts its behavior accordingly

1
Agile Tools
Version One is the tool which is currently used by
Safeway

You might also like