Ten Commandments of Formal Methods


Taken from the paper by J.P. Bowen and M.G. Hinchey, Oxford (Cambridge) Computing Lab tech report.

These are guidelines for making a project that will use formal methods successful, based on the authors' observations from their own work and work they have studied in industry.


  1. Choose an appropriate notation

  2. Formalize, but do not over-formalize

  3. Estimate costs

  4. Have a formal methods guru on call

  5. Do not abandon your traditional development methods

  6. Document sufficiently

  7. Do not compromise your quality standards

  8. Do not be dogmatic

  9. Test, test, and test again

  10. You must reuse