In the first part of this blog series Blog Part 1 on the forthcoming version of IEC/DIS 62304 we focused on the move to support Software as a Medical Device (SaMD) in the standard. In this part we look at the biggest enhancement in the new version, the class reduction activities.
In IEC/DIS 62304 the classification section moves down to 4.4 following the inclusion of usability in section 4.3. Really not much has changed in this software safety classification section. There is a clearer definition of the occurrence probability of software failure being 100% and some enhanced guidance on the types software failure analysis (e.g. failure modes and effects analysis, fault trees and event trees). The text in the flowchart has also brought more clarity
Where there has been a significant addition is in Annex B and the guidance on assigning the software safety classification. Figure 1 is then split up into 4 different steps and a worked example is used to guide you through the hazardous situations, the risk control mechanisms and ultimately how the software safety classification can be reduced.
Figure 1 Assigning a safety classification
Where however there is still a lack of guidance in 62304 is on the topic of segregation between classes. Figure 2 depicts the graphic in Annex B which has not changed in the latest version.
Figure 2 Software Class Partitioning
Partitioning or segregation could really benefit from examples. In many other safety standards such as ISO 26262 topics such as coexistence of elements and freedom from interference give good guidance on how segregation could be achieved, considerations around deadlocks, livelocks and starvation could have been introduced in Annex B. The ISO 26262 approach also handles the topic of dependent failures analysis, where different potential causes of both cascading and common cause failures are considered, e.g. common compilers, global variables and shared memory space. It would be helpful if more practical examples were given in 62304 and this is feedback, we constantly hear in our 62304 training courses.
In the third part of this blog we will take a look at agile software development and its relation to IEC 62304.
By Alastair Walker, Consultant