Monday, June 25, 2012

Testing Lead to Preventive Measure

Why testing is important for any product? Everybody knows about it but ignores it intentionally, especially when change is minor. Normally, people assume that for small changes why we should spend so much time on testing. The reason is, we are using so many tools and technologies available in the market without even knowing 20% of its usage and implication. Do we really aware of these tools being passed all the testing hurdles? Do we really understand the limitations? Do we understand internal complexity of it? Do we analyze if it would be fit for our project? Even though, if, it is known to the architect/designer, is this knowledge pass down to the developer level? The answer is NO!!!!!

That is reason why I would suggest having more review & testing time than earlier.

Testing team should be completely different from development team and directly reporting to client. That way, client can ensure correctness and completeness of development. It is a difficult thing to convince service industry, but, client should make themselves aware of these facts.

Software testing is to ensure the business and technical requirement is being met based on the test data and controlled as well as uncontrolled operating conditions.

Software testing is a process of creating test cases based on requirement (both business & technical) and run it under conditions to see the expected results. The result in software testing is either pass or fail. You can compare this to your exams!!!!! It is the examination time for development team.

There various methods that can be used for software product. But, the methods should be chosen based on following criteria: 1. Type of project/product (Development, Maintenance, Support,) 2. Size of the project/product 3. Type of talent in the team Testing is a major contributor in deciding on preventive action to be taken.

Companies normally put good amount of money on quality, six sigma, CMM assessment but one thing that they forget is all these processes will work perfectly when you have strong review & testing team/process. Unless, you understand every possible issue, small or big, there is no way you can prevent it in future.

I remember one incident when we were developing a client based product. This was the time when we were hardcore developers. We have developed it with solid design (using OOPs methodology, those days it was bigger achievement) and used all the robust objects under VC++. The product got developed and I was assigned to do the testing of the product. I did the testing and passed it. However, one of my friends had some doubt on this and sat with me for another round of testing. We have tested this product by running the same application again and again. After testing it 14th time, there is an object in the menu got disappear!! Subsequently, for each cycle of testing objects are getting disappeared

The problem was we release an object which is created by us, however, as per the guideline this object will also get released by compiler as well.

You know, what the preventive measure is for this..Why testing is important for any product? Everybody knows about it but ignores it intentionally, especially when change is minor. Normally, people assume that for small changes why we should spend so much time on testing. The reason is, we are using so many tools and technologies available in the market without even knowing 20% of its usage and implication. Do we really aware of these tools being passed all the testing hurdles? Do we really understand the limitations? Do we understand internal complexity of it? Do we analyze if it would be fit for our project? Even though, if, it is known to the architect/designer, is this knowledge pass down to the developer level? The answer is NO!!!!!

That is reason why I would suggest having more review & testing time than earlier.

Testing team should be completely different from development team and directly reporting to client. That way, client can ensure correctness and completeness of development. It is a difficult thing to convince service industry, but, client should make themselves aware of these facts.

Software testing is to ensure the business and technical requirement is being met based on the test data and controlled as well as uncontrolled operating conditions.

Software testing is a process of creating test cases based on requirement (both business & technical) and run it under conditions to see the expected results. The result in software testing is either pass or fail. You can compare this to your exams!!!!! It is the examination time for development team.

There various methods that can be used for software product. But, the methods should be chosen based on following criteria: 1. Type of project/product (Development, Maintenance, Support,) 2. Size of the project/product 3. Type of talent in the team Testing is a major contributor in deciding on preventive action to be taken.

Companies normally put good amount of money on quality, six sigma, CMM assessment but one thing that they forget is all these processes will work perfectly when you have strong review & testing team/process. Unless, you understand every possible issue, small or big, there is no way you can prevent it in future.

I remember one incident when we were developing a client based product. This was the time when we were hardcore developers. We have developed it with solid design (using OOPs methodology, those days it was bigger achievement) and used all the robust objects under VC++. The product got developed and I was assigned to do the testing of the product. I did the testing and passed it. However, one of my friends had some doubt on this and sat with me for another round of testing. We have tested this product by running the same application again and again. After testing it 14th time, there is an object in the menu got disappear!! Subsequently, for each cycle of testing objects are getting disappeared

The problem was we release an object which is created by us, however, as per the guideline this object will also get released by compiler as well.

You know, what the preventive measure is for this..





No comments:

Post a Comment