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


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.

Comments

  1. It is a great post for every blog and for me. Obviously I want to say that this is very important post for learn. Thanks

    Scrum Methodology

    ReplyDelete

Post a Comment

Please post comments here:-)

Popular posts from this blog

Android Objective type Question and Answers

Android Questions and Answers for written exams

SCJP1.6 Question and Answers