Testing is process execution of application in controlled manner with the intent of finding the errors. It is nothing but “Detection”.
The Quality Assurance involves through out the software development process tomonitor and improve the process, making sure that agreed upon standards andprocedures are followed and ensuring that problems are found and dealt with it. Itis oriented for “Prevention”.
Solving problems is a high-visibility process; preventing problems is low-visibility.This is illustrated by an old parable.
In India itself, Software industry growth has been phenomenal.
IT field has enormously grown in the past 50 years.
IT industry in India is expected to touch 10,000 crores of which software share isdramatically increasing.
Software cost/schedules are grossly inaccurate.
Cost overruns of several times, schedule slippage’s by months, or even years arecommon.
Productivity of people has not kept pace with demand
Added to it is the shortage of skilled people.
Quality of software is than desired
Error rates of released software leave customer dissatisfied…Threatening the verybusiness.
Software Management is different.
Why change or approach to development?
We have provided the state-of-the-art hardware.
Problems are technical
If project is late, add more engineers.
We need better people.
We must start with firm requirements
Why bother about Software Engineering techniques, I will go to terminal andcode it.
Once coding is complete, my job is done.
How can you measure the quality..it is so intangible.
A general statement of objective is good enough to produce software.
Anyway software is “Flexware”, it can accommodate my changing needs.
What do we do ?
Use Software Engineering techniques/processes.
Institutionalize them and make them as part of your development culture.
Adopt Quality Assurance Frameworks : ISO, CMM
Choose the one that meets your requirements and adopt where necessary.