Agile methodology is a process of software development process like other software development methodology such as waterfall model, V-Model and Iterative model.
In water fall model, each phase must get completed full before the next phase. At end of each phase a review will be done and decide before moving to next phase. This model can be used for small product and no changes in requirement. The waterfall model goes in below phases. Also it will take years to complete the project and delivers to client.
I. Requirement phase
II. Design phase
III. Implementation phase
IV. Testing phase
V. Deployment phase
VI. Maintenance Phase
In waterfall model it will take extensive periods of time for each phase to get complete. The customers or client even need to wait for years to see end product.
General Overview of “Waterfall model”
In Agile methodology, the projects have sprints / iterations which is shorter in duration. A project can have one or more sprint / iteration. Sprint can be vary for 2 weeks to 8 weeks. But all sprints should have same time duration. At the end of each sprint, a working product need to be delivered to client.
Simply in agile method the project has broken into 5 to 7 release and for each release it will take 4 weeks based on the decision taken at time of project discussion.
Using this agile methodology, it allow customer to interact with functioning product at end of each sprint and it will helps them to give feedback on it. Based on the customer feedback the team can easily change and make the correction at beginning itself.
Agile methodology gives chance to interact within the team, collaboration with customer and make quickly changes to the customer feedback in the project.
Example of sprint / iteration process
Role of QA person in agile methodology process:
Basically in normal software development process the QA person will be ideal until the complete product is developed and released for testing. Once the product is released for testing, it will take enormous amount of time for testing, because the QA person start test the product for the first time
In Agile methodology, QA person will interact from the beginning of the project which come inside the company. QA works will be start from requirement gathering, designing the product, implementation and Maintenance.
In requirement phase, QA person will be with team and gather requirement, analysis and prepare document if there is any query’s in the requirement. Also they can prepare test plan document
In Design phase, QA person will be check whether the product is designed according to the requirement provided by the client.
In implementation Phase, QA person will need to test the product whether it meets the client requirement and need to think various other scenario in the sprint.
In testing phase, QA person will have to test the product at all scenarios as well as client requirements and prepare issue document.
Advantage of Agile methodology
1. The customer are satisfied because of reviewing the product at every sprint release to them.
2. If the customer has any feedbacks or changes, that can be changed in the current sprint and release the product.
3. Here there need to be daily interaction between developers and business people.
4. Changes can be accepted even in later stages of the development
Disadvantage of Agile methodology
1. Documentation is less.
2. In this methodology sometimes the requirement is not clear so that it become more difficult to predict the end result.