Quality assurance in agile software development focuses on close collaboration between developers and testers. Testing is integrated into short iterative sprints to deliver quality code quickly. Common agile methods like Scrum emphasize prioritizing tasks, daily stand-ups to track progress, and sprints to structure work into incremental releases. While agile aims to improve quality through testing in each sprint, challenges can include unclear tester roles and squeezing testing due to deadlines.
2. Introduction
NASA Software Quality Assurance Centre describes SQA, “Software
Quality Assurance (SQA) is defined as a planned and systematic
approach to the evaluation of the quality of and adherence to software
product standards, processes, and procedures”
Purpose of quality assurance: to attain better quality in software
product.
Agile Software Development emphasizes on close team collaboration,
quality and relationship between developer and customer.
4. Agile Software Development
Agile approach is short iterative, incremental and people-centric.
Agile software development encourages people collaboration through
the project.
Responds to change efficiently as it is incremental and iterative.
Commonly used agile method:
• Scrum
5. commonly used agile methods are: • Extreme Programming (XP) • Scrum
Agile Software Development
6. SQA under Agile Development
Testing is integrated in each iteration that helps to shorten the release
time and provides with better quality
7. AGILE DEVELOPMENT AND QUALITY
Agility
Agility, can be expressed as the flexible, ready to change and quick-
responsive nature of software development process.
short releases and discourage heavy documentation that shortens the
time wastage and clear the vision of product, to be developed.
8. AGILE DEVELOPMENT AND QUALITY
Scrum
Provides project management with frame work that includes
development tasks like requirement gathering, design and programming
NO specific method to be applied; it guides the management how their
team should function to maintain the flexibility of the system, in applying
the environmental changes.
Contains both managerial and also development processes.
The main practice in scrum is daily 15 minutes meeting to coordinate
and integrate the development issues
9. Scrum key practices
Product Backlog
Sprints –
• 30-days in long.
• Developers assigned with number of task to execute a sprint.
• During a sprint, no changes are allowed from outside the
team.
• Main working tools of the team are Sprint Planning Meetings,
Sprint Backlog and Daily Scrum meetings.
Sprint planning meeting
Sprint Backlog
Daily Scrum
10. Product BacklogProduct Backlog
Master list of all “features”
High priority features are
split into tasks achievable
within an iteration.
Each task is prioritized
and scoped.
11. Sprint Planning MeetingSprint Planning Meeting
Early Sprint planning
meetings attended by
the customers, users,
management, product
owner and Scrum
Team : decide the
goals and functionality
of the system.
After that Scrum Master
and the Scrum Team
set their focus on
product development.
12. Sprint BacklogSprint Backlog
List of features are
assigned to a particular
Sprint.
When all these features
are completed a new
iteration of the system
is delivered.
13. Daily ScrumDaily Scrum
• Each team member
describes:
• What they did
• What they plan to do
• Obstacles
Purpose: to maintain the
progress and discuss the
problems of team during
development.
Help to raise the moral of the
team and improve
communication between
team members.
• 10 – 15 minutes
15. AGILE Testing Approach
Testers are first class citizens on agile teams and part of the “whole team”
supporting customers, business stakeholders, developers and other team
members
Testers support quality infusion through entire team and product cycle
Test tasks and stories are planned and executed like development tasks and
stories
Automate where possible and use session-based testing for exploratory
testing
Communicate through information radiators
16. The Bright Side of Agile Development
• Flexibility
• Increased productivity
• Early detection of feasibility and error
• High software quality
• Project control
• Knowledge transfer
17. Agile Testing Challenges
Generating Recommendation Candidates
Testers may not value team
Unclear role of testers on team
Testing is often squeezed as deadlines approach
Developers and testers are often in different operational silos
Team may not have the skills or domain expertise to develop/test
effectively
Fear of change
Heavy documentation mindset
19. Conclusions
organizations using agile development, target on quality of product by focusing on
testing.
organizations following conventional development, concentrate on several aspects of
quality by focusing on quality of product, project and process
agile development must also concentrate on quality of process to manage, organize
and measure in better way .