Seeking Input for Software Verification Policies?
e8johan asks: "I currently work at a company in the automotive industry. It is importat to ensure quality and for our products we use extensive testing before, during and after the assembly. Now I have been asked to help in the creation of a company instuction for ensuring that all 'in-house' developed software works properly. I have written a short summary describing the essentials such as: "do not ignore compiler warnings", "always describe what the code is intended to do in your comments", "do not assume that all users run in the same environment", etc. I now feel that I need more input, has anyone done anything like this before? How do you test your software?"
But if you haven't already, read the Practice of Programming. It has some good thoughts about testing applications that should help you out. And it's a pretty decent book, anyway.
Here's a few random things that occur to me (most are probably repeats of other posts, though):
Automate as much as you can (testing, code generation, anything that's possible to automate - do it).
Use strongly typed languages, and strongly typed interfaces.
Use any and all warning flags, if available
Whenver you find a bug, add a test that detects that bug to your test suite. Then, and only then, fix the bug.