From e-mail from McLeod
Wed 21 Jul 2010:
The plan for this was to produce a unit test suite, consisting of hundreds of small tests each of which exercises one monitor or control point or discrete operation in the ICD. I made a version with about a dozen test cases already. What remains to be done is about three weeks pure software development effort with periodic testing against a front end (both cold and, in the case of the cryogenics modules, warm.) This will get to 80% to 90% coverage of all possible test cases. After that test cases can be added and the suite run frequently to improve coverage. To get closer to 100% coverage will require a lot of thought and scrutiny of the the test cases and results by multiple parties. In my opinion it is better to get close with a strong effort up front and then amortize the last 10-15% of coverage over time as issues arise.
An additional benefit is that the suite may be run to check for regressions anytime a firmware or hardware change is made.