Monday 26 March 2007

The discipline of writing software

I've been using C/C++ static analysis tools for almost 20 years now. By 'static analysis' I mean lint. Lint on VAX/VMS; Lint on UNIX; Lint on Win32. By far the best static analysis tool I have ever used is PC-Lint/Flexelint by gimpel.

If you think that your compiler w/ warnings turned to the maximum value will catch your mistakes, you are wrong and are wasting your employer's revenues with your ignorance.

Compilers convert text files into machine instructions. The warnings they generate are merely secondary/tertiary artifacts of this process.

Most recently I presented a three year case study to my employer that clearly shows how the use of PC-Lint reduced software defects from 80%->60%->20% during that three year period.

Not only does lint catch your defects, but by repeatedly seeing the same errors it causes the astute programmer to rethink how he implements software.

No comments:

Post a Comment