Protecting from Bugs, in real life case, its kinda impossible. Bug is inevitable. If someone says, we dont have any bug in our product, then I would say - You must be joking. From functional to atleast cosmetic issue, you cant avoid them. Then why I wrote protecting? Its just a scenario I would like to share that I face most frequently.
Finding too many bugs after a fix is done or feature is implemented and re-fixing those and these goes on and on, dont you find its too costly? It doesnt make you a great tester as you are rich in bug finding on a scenario like this. Then you may ask, where else you can find a bug when its not at your hand to look through!
A while back, a client requirement came up for a very small feature - We need to add "Term of Services" for the end users. Its the same thing as we see while registering for a forum or mail like Yahoo or MSN - some terms of service and "I Accept" or "I Decline". Very simple one indeed. So what a developer could do, is to add this small fix and ask a tester whether this is working or not in registration feature. But -
In our process we maintain specs (Yes, this is time consuming) and we do go several discussions (what we call meetings for the project) over the spec before finalizing it. But it doesnt say it needs to be point to point detailed but fair enough to cover the feature. And spec is also in our client requirements list, they want to see it too. So when in the discussion it was claimed to be the simplest fix with a small modification in spec, there my testers came up
- Have you considered registered users who are already using the system?
- Have you considered the users who use desktop clients or add-ins?
- What about those different types of non-registered users who can use a limited number of features without getting registered?
and more (dont want to mention as those wont be very understandable for all). And came out, this is not the small fix as it was thought to be.
I think you have already got my points, what I wanted to say in my subject (or title). You cant stop it from getting it in the feature while its avialble for test, but you can minimize it.