Tuesday, December 3, 2013

Testing and Agile methodology

We all have been knowing the role of tester’s and testing in all the SDLC models. Testing has always been an important phase of any SDLC models. In some SDLC models testing starts at the end of the coding in some SDLC Models Testing starts with the beginning of the projects but one thing was common in all the SDLC models “Testing start once complete product is ready”.

Agile methodology follows a different approach here we have smaller component which needs to be tested every week or every two week depending on the scum time line defined by your team. Here every sprint has to go through the all the SDLC phases.

Brett Pettichord defined the role of testing within agile projects as:
Testing is the headlights of the project – where are you now? Where are you headed?
Testing provides information to the team – allowing the team to make informed decisions
A “bug” is anything that could bug a user – testers don’t make the final call
Testing does not assure quality – the team does (or doesn’t)
Testing is not a game of “gatcha” – find ways to set goals, rather than focusing on mistakes

Challenges faced while testing in agile environment:
  1. Since you are getting one sprint every week or every two week so your scope of regression testing increases. With the release of every sprint your regression testing scope is increasing.
  2. Unlike traditional business requirement document here you have story cards or the post stick, where every card has information about just one module/feature and the details of the requirement need to be captured via discussion or meeting or communicating with the people who are involved in the development of that feature
  3. Test cases are part of the requirement analysis process as you are writing them before the software is developed.
  4. In Tradiotnal SDLC models tester’s role was to ensure that software does what it is written in the requirement but in agile methodology we have to analyze and understand the requirement and will have to make sure that software runs as per the customer needs.
Now question comes how to do testing in agile environment and deliver a Quality Product?

In order to deliver a Quality product we need to understand the following points:
  1. Quality is not just responsibility of the testing team but it is the responsibility of the whole agile team. In short we can say that “Agile team is responsible for the quality” not just the “QA/Testing Team”. So we need to implement the Team concept.
  2. Tester should not just sit and wait for the requirement document and then start their work. They can help in writing document or in understanding design or can help to make an understanding of the end product so that a sprint is delivered on time and with quality.
  3. Almost 80% of the defects are found in requirement and in design phase therefore testers can help the developers in understanding the flows in these phases based on their experience.
 

Friday, August 2, 2013

Process or No Process?

This post I am writing to know my reader's view.

Many a times we hear words like we should follow this ‘Process’ or we should follow ’CMM’ level standard or my company follows ‘ISO’ standard. So is it useful to follow the process or is it good if we work without following any standard or process?
 

In my opinion following process is always good because if there is no process, then the organization runs on the minds of some heroes and later if they quit the company then it will lead to big problems. Because if there are no standards or processes followed in a firm then those heroes work the way they want to and they hide the information. They never share the important things with their colleagues so if they leave then others won’t have much knowledge of their own systems. Even if the heroes don't leave the firm, there will be a dependency on them forever. 

Software Testing is an easy job? Part 2

This is the continuation of the Software Testing is an easy job? post.
In first post  i had written about the struggle which a tester facing in his new company where they don't follow any process or standards.

This is just a concluding part so will not be writing in the dialogue forms.

Story goes like this-- T keeps on getting new requirement, requirement changes , enhancement as it happens almost in every company and keeps on struggling  to maintain the process. T decide to do his part of work following the process; Good thing is Manager always support him to do the work in his way and the bad part is Manager himself keeps on changing the process :(