IEC 62304 | SOUP与经维护软件、受支持软件和所需软件之间的差异分析

发布时间:2023-07-11  浏览次数:464

重点导读

SOUP与经维护软件、受支持软件和所需软件之间的差异是什么?


定义

· SOUP:医疗器械中集成的某种未根据IEC 62304开发的第三方软件。

· 经维护软件:由制造商承担信息安全相关风险的软件项。

· 受支持软件:制造商将告知客户与信息安全相关已知风险的软件项。

· 所需软件:制造商将考虑健康软件发布之前已知安全相关风险的软件项。


  1. 经维护软件

    通过经维护软件,制造商[承担]与信息安全相关的风险。当某些软件集成到医疗器械中时,这是管理风险的唯一方法。我们在这里检索到我们普通旧SOUP和经维护软件之间的相似性!当SOUP集成到我们的医疗器械软件中,我们必须在设计过程(IEC 62304条款7.1)和维护过程(IEC 62304条款6.1)中承担风险。实际上,当在SOUP设计中发现一些问题(缺陷或漏洞)时,我们对其进行修复。在维护过程中发现问题时,我们会修复它(通常是升级SOUP版本和重建软件),然后发布软件的新版本。经维护软件可扩展至未集成到医疗器械的软件,因此不是SOUP。这是一种可能性。我们可以通过SOUP≤经维护软件进行总结。但是,如果我们想要保持简单,我们可以认为这两个概念适用于同一集合。我们可以通过SOUP = 经维护软件进行总结。

  2. 受支持软件

    在有受支持软件情况下,制造商应[告知]客户与信息安全相关的已知风险。这是管理风险的一种方式,因此,可根据ISO14971和医疗器械法规实现。只要风险是可接受的,那就这样做。实际上,如果我们只告知风险,则这意味着受支持软件未被集成到医疗器械中。如果它集成在医疗器械中,我们不仅会告知客户风险,还会向客户提供我们的新软件版本。

  3. 所需软件

    所需软件的用例易于用医疗器械软件进行管理。其定义告诉我们,制造商将考虑健康软件发布之前的已知安全相关风险。因此,不是在健康软件发布之后这与ISO14971对生产后活动的要求和更普遍的上市后监管法规要求相矛盾。因此,在医疗器械中不可能有所需软件。不具备医疗器械资格的健康软件中可能具备所需软件。


示例

移动应用程序或PC应用程序

构建时链接至此类应用程序(未按照IEC 62304开发和维护)的所有第三方库均为SOUP和经维护软件。
其操作系统(PC平台或移动平台)是受支持软件。
我们无法将其操作系统归入所需软件。如果我们意识到该操作系统存在一些不可接受风险,我们将通知客户。 

相反,其操作系统不是经维护软件。我们不对其进行更新,仅通知客户更新其操作系统。



医疗器械硬件中嵌入的软件

同样,在构建时链接到我们嵌入式二进制文件(未根据IEC 62304开发和维护)的所有第三方库都是SOUP和经维护软件。

其操作系统(PC平台或移动平台)也是经维护软件。如果我们意识到该操作系统的一些不可接受风险,我们将为客户提供新版嵌入式软件(物流工作可能很棘手,但这并不影响此概念)和新版操作系统。


网络应用程序-前端

通过代码提取(未根据IEC 62304开发和维护)的所有第三方依赖均为SOUP。

其操作系统(PC平台或移动平台)和浏览器是受支持软件。我们无法将其归入所需软件。如果我们意识到该操作系统或浏览器的一些不可接受风险,我们将通知客户。


网络应用程序-后端和云软件

通过代码提取(未根据IEC 62304开发和维护)的所有第三方依赖均为SOUP。

在这里,我们有一个关于区分SOUP和非SOUP的问题。关于SOUP、OTSS(非SOUP)和基础设施的可能答案,请参见《web何时满足SOUP》( When web meets SOUP)的文章。

我们必须将OTSS和底层基础设施(无论是容器化还是虚拟化)归入经维护软件。我们无法将其归入所需软件或受支持软件。如果我们意识到其中一个带来的一些不可接受的风险,我们将升级基础设施版本。


网络应用程序-前端

通过代码提取(未根据IEC 62304开发和维护)的所有第三方依赖均为SOUP。

其操作系统(PC平台或移动平台)和浏览器是受支持软件。我们无法将其归入所需软件。如果我们意识到该操作系统或浏览器的一些不可接受风险,我们将通知客户。


网络应用程序-后端和云软件

通过代码提取(未根据IEC 62304开发和维护)的所有第三方依赖均为SOUP。

在这里,我们有一个关于区分SOUP和非SOUP的问题。关于SOUP、OTSS(非SOUP)和基础设施的可能答案,请参见《web何时满足SOUP》( When web meets SOUP)的文章。

我们必须将OTSS和底层基础设施(无论是容器化还是虚拟化)归入经维护软件。我们无法将其归入所需软件或受支持软件。如果我们意识到其中一个带来的一些不可接受的风险,我们将升级基础设施版本。


由两家不同制造商生产的两种软件器械

假设我们开发并维护一个医疗器械软件,它集成了另一个制造商开发的另一个医疗器械软件。
在此,第三方软件是医疗器械(我们假设制造商满足了IEC 62304的相应要求),而非SOUP。如果其他制造商意识到某些问题,他们会告知我们并向我们提供软件更新(按照IEC 62304第6.1条)。同样,我们将采用此依赖更新来更新软件。因此,对我们而言,其它医疗器械软件是经维护软件。

这是经维护软件≠SOUP的特殊情况。


本文力图证明经维护软件和SOUP是不同的概念。但是,为了保持简单,在绝大多数情况下,经维护软件 = SOUP。



总结

IEC 81001-5-1中新定义带来的一个有趣结果是帮助我们理解是否将第三方软件归入或不归入SOUP。

设计团队经常犹豫是否将操作系统归入SOUP。经维护软件和受支持软件的概念不等同于SOUP(“纳入”一词出现在SOUP定义中,而未在所需/受支持/经维护软件的定义中)。

但是,如果我们通过假设“经维护软件 = SOUP”来简化,那么我们就具有把操作系统和一些其他边界情况归入或者不归入SOUP的标准。