Can we think beyond Test Planning?

      Since the time we started testing software, I mean software testing as a separate, distinct and independent activity in SDLC, we are following the same STLC: Test Planning, Test Execution,Test Reporting and Sign Off. We may say, we are following V-model or water fall or agile, ultimately we end up with same method of writing test cases and executing them.

         If we see the evolution of software development methodology in last two decades, it has gone through a lot of changes. But our testing process has not been changed in reciprocal to that. We still follow the same processes which were developed may be ten fifteen years ago. I feel this typical testing life cycle is the brain child of service industry pioneers, predominantly, one to bill the customer nicely  for each end every activities, two to minimize the people dependency (It would be another debate to justify how any process can replace the smart people, ordinary people can be replaced even by automation ), three to maintain the compliance.

           How many start up companies building really cool products have a well defined and base lined requirement document or design document. Is delivering the right products at right time takes priority or maintaining the documentation. To accomplish a feature in the product, do they first change the design document then change the architecture? Documentation within the code(commenting) and product manual for customers make sense, but making big fuss about the up to dated  BRD or SRD is little too much at times.

     Similarly for testing, can we effectively test the product without proper test cases? Do every tester follow exact test steps and find defects? I would say we are degrading the quality of testing by writing the test cases and test steps. Does all logic in the application hold true when we have written the test cases and when we are executing them? We are underestimating the capability of human brain. We are over simplifying the concept of software testing. By writing detailed steps we assume just anyone can test reading the test cases. So any resource(not tester) can be replaced, so we can declare ourselves process driven not people driven. 

         So that is the state of our testing industry. We have thousands of testers, but where is the quality ? Our testing is driven by test steps not by our analytical ability. Definitely software testing is not rocket science, we don't need a technical degree to be a smart software tester(same applicable for programmer as well). But at the same time we should not consider it a no-brainer. Both the testers and managers should understand testing is beyond just writing and executing the test cases. We should learn and practice techniques like Exploratory Testing and Rapid Testing. Even If you have become a experienced tester, learn unlearn and keep your self updated. Invest some time and effort in honing the skills, meeting other testers, attending the conferences etc.


Comments

Popular posts from this blog

Fake Experience in IT and specifically Testing

Tips for Toastmaster Humorous Speech Contest