ABSTRACT

If there is one item on which all software experts agree, it is the necessity to establish the correctness of the software to meet customer requirements. Medical device software may have untold, unknown, and unobservable attributes of quality. It may be efficient, robust, portable, easy to operate, and even easy to modify to suit a changed application request; but if it is incorrect, then its value is nil. Every software program performs some task correctly, but what is of interest to the computer scientist, software engineer, and ultimately the user, is whether the program performs its intended tasks. To determine this, a precise and independent description of the software’s desired behavior is needed. Software specifications provide such a description.