Seven Myths of Formal Methods
Seven myths about formal methods, and their rebuttal, are:
1. Formal methods can guarantee that software is perfect.
Rather: they are very helpful at finding errors early on
and can nearly eliminate some classes of error.
2. They are all about program proving.
Rather: they work largely by making you think very hard
about the system you propose to build.
3. They are useful only for safety-critical systems.
Rather: they are useful for almost any application.
4. They require highly trained mathematicians.
Rather: they are based on mathematical specifications,
which are much easier to understand than programs.
5. They increase the cost of development.
Rather: they can decrease the cost.
6. They are unacceptable to clients.
Rather: they help clients understand what they are buying.
7. They are not used on real, large scale software.
Rather: they are being used successfully on practical projects
in industry.
Quoted from:
J. Anthony Hall,
Seven myths of formal methods,
IEEE Software, 7(5):11-19, September 1990.