What is Agile Testing?
Agile as the name refers 
implies something to do very quickly. Hence Agile Testing refers to 
validate the client requirements as soon as possible and make it 
customer friendly. As soon as the build is out, testing is expected to 
get started and report the bugs quickly if any found. As a Tester, you 
need to provide your thoughts on the client requirements rather than 
just being the audience at the other end. Emphasis has to be laid down 
on the quality of the deliverable in spite of short time frame which will
 further help in reducing the cost of development and your feedback's 
will be implemented in the code which will avoid the defects coming from
 the end user.
Advantages offered by Agile Methodology:
The very 
first advantage that the company got to see with the Agile Methodology 
is the saving of time and money. There is less documentation required 
though documents help to a great deal in verifying and validating the 
requirements but considering the time frame of the project, this 
approach leads to focus more on the application rather than documenting 
the things. Since it is iterative in its form, it tends to have a 
regular feedback from the end user so that the same can be implemented 
as soon as possible. And because all phases of SDLC need to be completed
 very quickly, there is a transparency to each individual working on the
 project with the status of each phase.
Another advantage that 
Agile Methodology offers to other approaches available is that in case 
there is any Change request or enhancements come in between any phase, 
it can be implemented without any budget constraint though there needs 
to be some adjustment in the already allotted time frame which will not 
be a difficult task for the projects following Agile tactics. Though it 
is useful for any Programming language or Technology around, it is 
advisable to make it employ for Web 2.0 or the projects which are new in
 media.
Daily meetings and discussions for the project following
 Agile approach can help to determine the issues well in advance and 
work on it accordingly. Quick coding and Testing makes the management 
aware of the gaps existing in either requirements or technology used and
 can try to find the workaround for the same.
Hence, with the 
quicker development, testing and constant feedback's from the user, the 
Agile methodology becomes the appropriate approach for the projects to 
be delivered in a short span of time.
Agile Testing Myth
One thing that must bind it tight 
to your minds is that Agile Testing is not an easy task to undertake. 
The other important thing is to nullify the statement that Agile Testing
 can be done without the need of the testers. Get in touch with your 
developers to obtain each and every minute detail on the Application 
workflow in order to come out with successful Black box as well as White
 Box Testing in short span of time.
Challenges in Agile Testing
- Agile Testing offers an open door policy for the requirements to creep in any time during any phase of the project and it will be greeted vey graciously and tested as per it is intended to function. Though not an easy task, but becomes a challenge for the team working on Agile methodology to accommodate the same in the already allotted functionalities to be validated.
 - Because Agile methodologies move faster, it becomes a challenge for the team to navigate through whole application. Proper approach needs to be followed in order to accomplish the same such as Testing the application as per Risk-based Strategy can do wonders and also prioritizing the Test scenarios as per their priority will enhance the quality of the deliverable.
 - In case of incomplete or inadequate unit testing performed by the developers, it is the testers who are at target to showcase their abilities in finding out the 90% of the hidden bugs missed by developers. It is indeed a challenging task considering the time frame of the testing phase that Agile methodology offers.
 - It is not only new functionalities that need to be working as designed but Agile Testers also need to make sure that the already placed functionalities do not get affected and hence regression testing plays a vital role in Agile Methodology.
 - Projects following Agile approach always lack with the appropriate documents and hence it becomes a challenging job for the testers to validate the requirements with the developers and confirm if the same is expected to work the way it is reflecting in the application else an another resource of communication will be required which will involve the customers of this Application to get the queries clarified and test accordingly.
 
Looking
 at the Challenges that Agile Testing is equipped with; it indeed 
becomes a very difficult task though not impossible to meet the expected
 commitment and deadlines.
When is Agile Testing Approach followed?
In case there
 is a situation in the project where there is a frequent change in the 
requirements from the client and it is difficult to accommodate them 
each time in your documentation as well as Test Assets, it is always 
advisable to follow the Agile Testing Approach which is often used when 
there is a dynamic change in the requirements from the client.
Comparison of Agile over Other methods:
Here
 is a limelight on the Agile advantages over other methods which are 
known to be traditional now considering the advantages that Agile 
methodology offers.
-> Development of an 
application in Agile is incremental rather than progressive or 
sequential as compared to other methods such as waterfall model which 
tends to have a phase wise development. This feature of Agile helps to 
have quick testing and results in small incremental releases and each of
 them is tested to the depth in order to meet the requirements and in 
case any requirement is to be introduced further, it is not a difficult 
task to do so in case of Agile as compared to waterfall where it will 
have to be traced down to the beginning of the phase to make the 
appropriate changes. 
-> Rather than tools 
and technologies talking with each other, it is the individuals who 
communicate with each other more often in Agile Testing approach. In 
case of waterfall, Extreme Programming or V-model, it is the tools, 
processes and technologies that often meet with each other and decide 
the relevant outcome. So Human communication lacks in other methods as 
compared to Agile method.
-> Working or 
rather testing the Application is always on the top priority for the 
projects following Agile Methodology as compared to other methods where 
documentation is given a more edge over other critical tasks.
-> The
 best part of the Agile over other methods is that it directly 
communicates with the user of the Application rather than having any 
intermediary party like client. This enables them to quickly get the 
feedback from the customer and appropriately implement the change in the
 Application.
-> When any enhancement or 
change request comes in, it is directly taken into account to be 
implemented in the Application rather than deciding to go for a further 
planning and revisiting the budget and time constraints as use to happen
 in other methods.
Agile methodology if compared to other 
methods offers advantages which are helpful to save time and money for 
Testing Phase which are important elements of any project.
blog is awesome (GSM and everything) but it would have been very great if you have introduce digital communications in your blog
ReplyDeleteit's niz suggestion satya thank you...will do that..
Delete