INTERNATIONAL JOURNAL OF SCIENTIFIC & TECHNOLOGY RESEARCH VOLUME 4, ISSUE 02, FEBRUARY 2015 ISSN 2277-8616
44
IJSTR©2015
www.ijstr.org
A Framework For Software Quality Assurance
Using Agile Methodology
Maria Sagheer, Tehreem Zafar, Mehreen Sirshar
Abstract: Agile methodology that uses iterative and incremental approach is widely used in the industry projects as they can satisfy to the change of
requirements. Efficient product delivery is achieved by using short iterations. But assuring the quality in any system is essential and imperative part
which is very difficult task, which raises a question that: Is quality is assured in the software which is developed using agile methodology? The research
paper proposed a solution and summarizes that how the quality is achieved or assure in agile software development using different factors. The major
focus of this research paper is to analyse the quality parameter which assure quality in the agile methodology. The research paper includes the brief
overview of the parameters which assure quality in agile.
————————————————————
I. INTRODUCTION.
For the successful software engineering, the delivery of high
quality software is needed. Mainly the customer satisfaction
level is considered as the quality attribute which defines high
quality of any system. Traditionally waterfall approach is
used for the software development in which system is
developed by freezing the requirements. To achieve high
quality Agile methods rather than waterfall approach for the
software development are adapted by many organizations to
compete in the volatile market where the customer
requirements are changing at the internet speed, changing
organizational infrastructure and need for the short time
deliverables. Agile methods that are most popular in use are:
Extreme Programming (XP), Scrum, Feature Driven
Development and Crystal Method. Agile uses the iterative
and incremental approach for the software development due
to which the time needed to meet errors is limited and it also
emphasize developers to solve a problem as soon as
possible. Agile development focuses on the interaction of
individuals, customer participation and coping with change.
The agile development gives highest priority to the customer
needs, regular delivery of software and the quality of the
software. But it more focuses on development rather than
design and also not applicable for large projects.
II. EFFECT OF AGILE METHODOLOGY ON QUALITY
PARAMETERS IN DIFFERENT SCENERIO
Agile software processes, such as extreme programming
(XP), Scrum, etc., rely on best practices that are considered
to improve software development quality. It can be said that
best practices aim to induce software quality assurance
(SQA) into the project. The quality assurance activities, in
software development are also the backbone of the project.
These activities are also responsible for process quality. The
quality of the project is also affected by different parameters
such as time constraint, efficiency, reliability etc. The effects
of agile on different parameters have been figured out in
analysis. The evaluation criteria for software quality
assurance using agile methodologies is given in Table I, for
comparing effects of different parameters that are discussed
in analysis. The effects of agile; its strengths and weaknesses
on quality assurance activities, software development
process, maintainability, productivity and reusability are
discussed below.
2.1) Evaluation of Quality Assurance factors in Agile
Methodologies (S. Mehreen&A. Fahim ,2012)
For the improvement in the quality of software products, agile
method for software development has been adapted by many
organizations to sustain in the market. Evaluating agile
methodologies against main quality factors, acts as a tool for
studying quality in agile technique. By analysing the quality
factors against each methodology it has been notice that very
simple and commonly followed methodologies are used. This
defined tool introduces a new research era in development of
agile technology where as the limitation of this tool is that is
not applied in the industry yet.
2.2) Software Quality Assurance in Agile and Waterfall
– A Comparative Study (J. Sana & N. Jedaiah, 2008)
Formal software development methods or techniques are
linear and static while this technique is not effective in the
volatile environment where requirement changes at internet
speed. Software quality is achieved in development process
through two aspects; first is providing technique for software
developed is of high quality while the other one is that in
which quality factors is assured in the existing software. To
analyse agile quality assurance, agile is compared with
waterfall model. In this paper detailed waterfall model is
presented which is helpful in checking the quality in agile
methodology on the other hand waterfall model is not
applicable perfectly in the present scenario therefore quality
in agile should have to be compared with the present and
mostly used technology.
2.3) Agile Software Assurance (Noura, M. Andrew & B.
Gray, 2007).
Agile methodology is presented since 90’s in many books,
articles journals etc but a little research is conducted upon the
quality assurance in agile. The main purpose of this paper is
to search for the answer that how quality is assured in agile
_________________________
Maria Sagheer, Tehreem Zafar, Mehreen Sirshar
Department of Software Engineering,
Fatima Jinnah Women University, the Mall
Rawalpindi, Pakistan