Continuous Testing in an Agile Environment

I went to a Forum on 10/4/2006. It was conducted by an organization called C-SPIN, and the presenter covered a topic about “Continuous Testing in an Agile Environment”. The presenter seems to have observed a tremendous success in her organization (Macrovision) by applying some type of Agile environment.

 

According to the presenter, the following process has been implemented in her organization, and it seems to have significantly reduced defects in all the software products they develop.

·         QA is actively involved both in the Requirement Gathering Phase and Design Phase.

·         Developments of unit test plans are initiated from the Requirement Gathering Phase.

·         Unit test plans are formalized during Design Phase, and peer-reviewed by all parties.

·         Developers methodically execute the unit tests during Build Phase.

·         After the build phase, the QA team tests the software product.

·         As defects are found, the QA team records them.

·         The development team fixes the defects, and goes through the unit test process again before resending the code to the QA team.

I may have over-simplified the process; but that is what I could understand from the presentation. As you can see, it’s probably not unique to Macrovision. I believe many organizations apply somewhat similar methodologies. 

 

After the question and answer session however, I found the following items somewhat interesting:

  • QA involvement during Requirement Gathering and the Design Phase - I wonder how fruitful this involvement really is. Often times we are engaged in rigorous discussions during these phases without achieving any type of results. QA may have some input during the late stages of the Design phase; however, I somehow picture the QA team relatively lost during significant portion of these phases.
  • No Test Driven Development (TDD) - Developers do not use TDD, yet they perform some type of methodical testing (almost testing like the QA team). I am not endorsing TDD here; but some type of TDD might result into more productive efforts by the developers.
  • Semi-automated testing - QA team performs some type of automated testing; however, resources out of India do bulk of the testing. In order to achieve greater productivity and improved implementation of continuous testing process, more automated testing process might be useful.

In any case, it was my observation from a short presentation. It is obviously difficult to understand and evaluate the nature of the success Macrovision has achieved just by sitting on a presentation. Nonetheless, I had noticed some room for improvement. Then again, there’s always room for improvement in everything we do.  

Print | posted @ Monday, October 16, 2006 5:14 PM

Comments on this entry:

No comments posted yet.

Your comment:

Title:
Name:
Email:
Website:
 
Italic Underline Blockquote Hyperlink
 
 
Please add 5 and 2 and type the answer here: