Agile Model and Methodologies
Agile Model and Methodologies
Agile Model and Methodologies
What is Agile?
AGILE is a methodology that promotes continuous iteration of development and testing throughout the software development life cycle
of the project. Both development and testing activities are concurrent unlike the Waterfall model
There are various methods present in agile testing, and those are listed below:
Scrum
SCRUM is an agile development method which concentrates specifically on how to manage tasks within a team based development
environment. Basically, Scrum is derived from activity that occurs during a rugby match. Scrum believes in empowering the development
team and advocates working in small teams (say- 7 to 9 members). It consists of three roles, and their responsibilities are explained as
follows:
Scrum Master
o Master is responsible for setting up the team, sprint meeting and removes obstacles to progress
Product owner
o The Product Owner creates product backlog, prioritizes the backlog and is responsible for the delivery of the
functionality at each iteration
Scrum Team
o Team manages its own work and organizes the work to complete the sprint or cycle
Product Backlog
This is a repository where requirements are tracked with details on the no of requirements to be completed for each release. It should be
maintained and prioritized by product owner, and it should be distributed to the scrum team. Team can also request for a new
requirement addition or modification or deletion
Scrum Practices
Practices are described in detailed:
In this type of methodology, releases are based on the shorter cycles called Iterations with span of 14 days time period. Each iteration
includes phases like coding, unit testing and system testing where at each phase some minor or major functionality will be built in the
application.
Planning
Identification of stakeholders and sponsors
Infrastructure Requirements
Security related information and gathering
Service Level Agreements and its conditions
Analysis
Capturing of Stories in Parking lot
Prioritize stories in Parking lot
Scrubbing of stories for estimation
Define Iteration SPAN(Time)
Resource planning for both Development and QA teams
Design
Break down of tasks
Test Scenario preparation for each task
Regression Automation Framework
Execution
Coding
Unit Testing
Execution of Manual test scenarios
Defect Report generation
Conversion of Manual to Automation regression test cases
Mid Iteration review
End of Iteration review
Wrapping
Small Releases
Regression Testing
Demos and reviews
Develop new stories based on the need
Process Improvements based on end of iteration review comments
Closure
Pilot Launch
Training
Production Launch
SLA Guarantee assurance
Review SOA strategy
Production Support
There are two storyboards available to track the work on a daily basis, and those are listed below for reference.
Story Cardboard
o This is a traditional way of collecting all the stories in a board in the form of stick notes to track daily XP activities. As
this manual activity involves more effort and time, it is better to switch to an online form.
Online Storyboard
o Online tool Storyboard can be used to store the stories. Several teams can use it for different purposes.
Crystal Methodologies
Crystal Methodology is based on three concepts
1. Chartering: Various activities involved in this phase are creating a development team, performing a preliminary feasibility
analysis, developing an initial plan and fine-tuning the development methodology
2. Cyclic delivery: The main development phase consists of two or more delivery cycles, during which the
2. Implements a subset of the requirements through one or more program test integrate iterations
3. Wrap Up: The activities performed in this phase are deployment into the user environment, post- deployment reviews and
reflections are performed.
1. Time Boxing
2. MoSCoW Rules
3. Prototyping
1. Pre-project
2. Feasibility Study
3. Business Study
6. Implementation
7. Post-project
2. Development by feature
4. Feature Teams
5. Inspections
6. Configuration Management
7. Regular Builds
1. Eliminating Waste
2. Amplifying learning
4. Early delivery
Kanban
Kanban originally emerged from Japanese word that means, a card containing all the information needed> to be done on the product at
each stage along its path to completion. This framework or method is quite adopted in software testing method especially in agile testing.
Scrum Kanban
Agile metrics:
Metrics that can be collected for effective usage of Agile is:
Drag Factor
o Effort in hours which do not contribute to sprint goal
o Drag factor can be improved by reducing number of shared resources, reducing the amount of non-contributing
work
o New estimates can be increased by percentage of drag factor -New estimate = (Old estimate+drag factor)
Velocity
o Amount of backlog converted to shippable functionality of sprint
No of Unit Tests added
Time taken to complete daily build
Bugs detected in an iteration or in previous iterations
Production defect leakage