ABSTRACT

Software development consists of a series of activities that each transform a definition of the software into a less abstract definition. Verification and validation comprise a large part of the activities of software development for safety-critical medical device systems. Planning for them is as important as planning for the software design activities. Software system verification and validation are associated with user requirements. The degree of independence should be higher for software with higher potential impact on user or patient safety. An important characteristic of static verification techniques is that they can be used to determine how the software will perform under all conditions. This contrasts with dynamic verification, which can only describe how the software performs for the actual tests that have been executed. Dynamic testing executes the software and observes the results of the execution. Functional tests are those where an input is supplied and the behavior of the software is compared to the expected results.