QA City

Most Popular

Waterfall or Agile- Which is a Better Methodology for Software Testing?

By SiliconIndia   |     |    1 Comments
Print Email


Bangalore: Methodologies in software testing are designed based on the purpose; however, most of them divide the tasks and share them across the phases. There are many software development approaches that are engaged in the development process. These models follow a distinct life cycle to make sure that the process is successful. The nature of the project undertaken, the schedule and the availability of resources determine the type of methodology a tester would choose.



Let us have a look at the features of Waterfall and Agile Methodology.



Waterfall Model
The waterfall model is one of the earliest models of software development. The process of software development in a waterfall model is divided into phases. They are:



1.    System Feasibility:
The developer should assess the various approaches to build the required software apart from identifying which characteristic can be incorporated in a system.

2.    Requirement Analysis:
The end user has some expectations from the system. These requirements can be obtained from them at the start of the development phase. Eventually, a document with all the requirements is created which will act as a guideline for the next development phase.

3.    System Design:
With the aim of indicating the hardware and system requirements, system design will help define the overall system planning. This will in turn act as an input for the next stage of the model.

4.    Unit Testing and Coding
The developer is involved in writing the code for the software. Ones it has been written, the developer would need to review the code. By doing so, they would test the functionality of the units.

5.    Integration and System Testing
The tester will integrate all the units in the system and will test them as a single entity. This will ensure that the system as a whole meets the requirements.

6.    Deployment and Maintenance
The software once developed is deployed and then any error that is found is being removed apart from modifying the software based on the requirements.

Agile Model
As a response to the growing complexity of software development, agile methodology was developed with an aim to adapt to the changes quickly and smoothly. Using this model, the product is ready to be launched at the end of testing at each stage. This will ensure that the errors are detected and removed in the development phase. This method allows changes to be made as per the requirements of the end user at any point of time. Thereby, ensuring customer satisfaction.

Agile Methodologies has four distinct phases.

1.    Inception
Here, the tester would identify the scope of the project and then provide a blue print of the development to the clients for approval.

2.    System Design
Once the developer has identified the scope of the development, he will be involved in defining the overall system architecture that is needed for developing the software.  

3.    Construction
Here, the developer is involved in writing the codes for the software. Once it is completed, the software is sent for development releases.

4.    Transition
 Once the product has been developed, it is being deployed for release in versions to the production server. In case any requirements need to be added or modified, it can be done immediately after the production releases.


Sign Up for QA Digest and Read the Day's Highlights
Don't Miss
Experts on QA
Swaid Qadir Bhat
Sr System Architect
Virtusa Corporation
Subhash  Motwani
Founder
COMPACT TRAVELS PVT
Prasad Rao Pasam
FOUNDER & CEO
SHAR TECHNOLOGIES
Ayaskanta  Mohanty
Managing Director
TATWA Technologies
Rajesh  Dagar
Software Architect
Connect Icon Pvt Ltd
Yasar  Khuthub
Software QA Manager
Azure IT Solutions
Sunil  Bhat
Project Management
HCL Infosystems Limi
Sharad  Agarwal
Team Lead
Infosys
Write your comment now
 
Reader's comments(1)
1: The process to be followed depends on the product/service under test. In either process, the foremost important thing is the people involved in forming the development team & requirement definition team, as they can make or break a project & put the blame on tester (whatever be the process followed).
Posted by:ssasdfas - 22 Jun, 2012
Whitepapers
This report is the result of the largest public-private sector rese...
For those not familiar with the Coverity Scan™ service, i...