Wednesday, November 14, 2007

Software Testing..Why,How and What....!!!!

The content below is aimed to provide an insight into the perspective of testing, to someone who does not know much about ...

Introduction:

There an lot of definitions for Software testing and the way I define it is the activity performed to validate and verify the specified quality attributes and also detect the inherent flaws built in into the system. The purpose of it is definietly to certify the system is ready for use , but the approach followed is by breaking it.No wonder testers are branded as negative minded people.

History of Testing:

Testing is an inherent activity built into all living creatures, which is exactly why the supply for the testing industry is huge but the need of the hour are quality testers, which is not easy as being found by the industry. Study suggests that testing is one of the major players in the outsourcing industry and ie expecting to be 20 billion dollar market all by itself. Gone are the days when Mangers considered testing is low end work and needs no special interest.

Importance and Need for Testing:

Testing by itself is complementary activity which is gaining standaloone status as the industry matures.However there are people who argue that the testing is not required if the a process oriented model is followed to develop a software system.

I do agree with those, but to achieve a flawless process model, there has to be extensive testing done on the model itself, which calls for testers with special skills.

No model can ever eradicate the hidden defects in a system just like no system can be termed as defect free through any amount of testing.

Lets look into some of the needs for Testing:
Business Needs. Customer oriented market. System complexity. System Criticality Immature process used.

Offlate there has been ever growing demand for good Automation testers, this is has been possible mainly due to the amount of manual testing that has happened over the years, thus enabling vendors to churn out matured systems developed with matured and industry standard processes. Needless to say the bar has been raised with the inheritance of Six Sigma and also with the various CMM, CMMI models by the IT industry.

Organizations which have struggled with various process flaws have been able to gain ground with these models and you see a major thrust towards implementation of the same.

Why are the Maturity models important?

I say there are two reasons for it and the second one is tied to first:

1. Business Needs : As the market moulds into a customer oriented architecture, there is a need more than ever to deliver quality products at nominal costs without change infact expecting a major profit margin. These models help in achieveing the business motto.

2. Produce Quality products, there by not only expand their customer base but significantly retain the old customers. There are many instances of vendors losing their customers, Ex :Wallmart has a customer retention metric of 36% which is not good.

Where does Testing fit into these Models?

Testing serves as one of major measuring factor for a org to be assess at various levels of these models.One needs to understand that the quality of product is a measure of the :
1. Number of defects detected in the system by the Customer
2. % Growth increase in sales over a period of time
3. Customer response over the product.
4. Brand Value created for the vendor.

No comments: