What is your policy on software bugs?

All substantial computer programs contain bugs (programming errors). Software testing can help to detect bugs, but the programming community has yet to find a way to eliminate them completely. For example, Dijkstra [1972] stated that “testing can only show the presence of errors, not their absence”, and Myers [2004] stated that "you cannot test a program to guarantee that it is error free". 

The CanRisk Tool is a substantial computer program that uses several third party software packages. The software is implemented using established software engineering techniques (e.g. defensive programming) which can help to identify bugs at an early stage of development. And each version of the program made available for general use is thoroughly tested. However, there is always a possibility that some bugs may remain undetected. The detection and elimination of bugs is of the upmost importance. Therefore, we always encourage users to contact us via the CanRisk Helpdesk (E-mail: canrisk@medschl.cam.ac.uk) if they suspect that results generated by the program are in error. Under these circumstances, we will try to verify the results to ensure that the program is functioning correctly. Similarly, we will inform users via the CanRisk mailing list whenever a bug is detected that could significantly affect the risks predicted by the program. 


Dijkstra, EW. 1972. The Humble Programmer, Communications of the ACM, 15 (10), 859‒866.

Myers GJ: The Art of Software Testing. 2004, Hoboken: John Wiley and Sons, Inc.