That depends on what you want to achieve. Do you want a test strategy that leaves less room for errors in the product - or do you want a test strategy that permits highly flexible products where you can't really predict all potential problems up front?
Here are two design metaphors to help you on the way:
You can have any colour, as long as it's black - H. FordThe "Black Car" is a powerful design metaphor for state reduction:
Why?All cars weren’t black because Henry Ford was a controlling tightwad. It was simply so that the paint shop either had paint or it didn’t.That made the whole thing easier to manage.
The Model T only came in black because the production line required compromise so that efficiency and improved quality could be achieved.Spraying different colours would have required a break in the production line, meaning increased costs, more staff, more equipment, a more complicated process, and the risk of the wrong colour being applied. (taken from here)
Black Cars minimize tests while maximizing the reliability and robustness of the product.
Uncutting the metal
Uncutting minimizes tests while maximizing the flexibility of the product.In Henry Ford’s factory, once you cut a piece of metal, you couldn’t uncut it. If you make a decision reversible, then you don’t need to test it with the kind of rigor that you’re talking about.
Learn both how to build black cars - and: how you can uncut.
It helps a lot in people designing the most effective tests and better applications.
Both metaphors are taken from the agile testing guru Kent Beck. The original article can be found here.