医疗器械软件标准及测试

发表于:2012-3-09 11:07

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:任海萍    来源:51Testing软件测试网采编

分享:

  一、概述

  随着计算机技术的发展,越来越多的医用电气设备中使用了计算机软件技术,其安全性是非常重要的,而它的复杂性超过了那些单纯的治疗和/或诊断医用电气设备。同时,越来越多的软件被用于在医疗监视下对患者进行诊断、治疗或监护。医疗器械的许多重要功能,越来越多地依靠软件进行控制,因此,医疗器械中软件错误导致的后果可能非常严重。而软件产品可能在六个月内就已经过时了。从而,在医疗器械生产企业和管理部门之间存在着矛盾: 生产企业必须尽快使新的含软件器械上市,但同时,管理部门必须保护公众免受与软件相关的器械故障造成的危害。

  2003年开始,我国国家食品药品监督管理局将相关软件纳入了医疗器械管理。软件质量已成为大家共同关注的焦点。由于我国目前医疗器械管理的技术基础主要是产品的第三方测试,因此,软件测试是否充分、有效,直接影响到软件产品的质量,也影响着是否能够对医疗器械软件进行有效管理。但是,由于软件产品的特殊性,我国至今尚未形成医疗器械软件产品测试的国家标准和行业标准。本文通过对美国FDA的医疗器械软件管理、软件工程以及软件测试情况的介绍,希望能为我国加强医疗器械软件的管理、尽快制定技术标准提供参考。

  二、软件的特殊性

  美国FDA对于作为医疗器械组件、部件或附件的软件、本身就是医疗器械的软件(例如模拟重建血管系统软件)、加工制造医疗器械时使用的软件(例如加工器械时使用的逻辑控制程序)以及器械制造商在质控系统中所使用的软件(例如记录和保存器械历史记录的软件)都根据其特定的使用要求进行验证。

  软件与硬件的特性非常不同。其中的一个不同点就是几乎所有的软件问题都是在软件开发过程中的错误造成的。软件错误在本质上是系统性的,而不是随机的。软件本身不会因为磨损而导致运行失败,从安装开始,就包含了那些导致失败的所有错误。软件的质量问题事实上是设计问题,一般来说不是生产问题。

  软件与硬件的第二个不同点就是软件的复杂性。由于软件对于不同的输入执行不同的语句(路径),因此,即使对一个简单程序,测试其全部可能的执行路径都是不切合实际的。所以,几乎不可能确定该软件是否完全没有错误。故此,软件的质量不能够单单通过测试衡量。

  软件和硬件的第三个不同之处在于软件的灵活性。在开发周期的后继阶段,软件的改变会更容易一些。这提供了更多的灵活性,使得人们可以更好地根据硬件的要求以及开发中出现的其他问题的要求进行工作。由于软件可以比较容易地进行更改,可能造成人们误认为软件的错误也非常容易改正。事实上,对软件的某个部分进行改动,即使是对那些看起来很不合理的部分进行改动,都可能导致其他部分的意外错误。美国FDA对1992至1998年之间认证的3140个医疗器械软件系统进行了回顾性分析,在这3140例中,有242例(7.7%)软件系统失效,而其中192例(79%)是由于对软件最初版本进行修改后导致软件系统出现缺陷并造成软件系统失效的。

  软件组成虽然不象硬件组成那样有一定的标准和可替代品,但在其开发中,开发者常常使用某些单元开发工具和技术。目标定项方法和现有软件单元的使用将会加快软件开发速度,降低软件开发费用。然而,基本单元需要在集成过程中更加小心谨慎,在集成之前,要全面定义、扩展可重复应用软件代码,全面理解现有单元的作用。

  因此,设计合理有效的软件、编程实现它,并确保进行的改动是完全且正确的,这需要一个系统性的方法。这就是软件工程。软件的测试已经超越了对最终产品的传统测试和评价,还包括了对其生产过程的要求,在风险管理、风险防范和开发生命周期的基础上,从软件工程角度对软件进行管理、测试和评价。美国FDA“General Principles of Software Validation; Final Guidance for Industry and FDA Staff”和IEC 60601-1-4“Medical electrical equipment-Part 1-4: General requirements for safety-collateral standard: Programmable electrical medical systems”都是从这个角度来讨论对于医疗器械软件的管理的。

  三、软件管理和标准

  FDA使用“测试水平”来评价设备出现潜在危险、设计失误,或者使用该医疗器械软件可能对病人或操作者产生直接或间接伤害的程度。如果软件对设备的操作可能直接使病人和/或操作者致死或重伤,或由软件的错误或信息的滞后而间接引起的死亡或重伤,该软件的测试水平为高。如果软件对设备的操作可能直接使病人和/或操作者非严重伤害,或由软件的错误或信息的滞后而间接引起的非严重伤害,该软件测试水平为中。如果软件的运行错误或设计问题并不引起任何对病人和操作人员的伤害,该软件测试水平为低。软件上市前测试过程的范围和危险管理都是与其测试水平相对应的。

  如果生产上可以证明某个医疗器械的软件是使用很好的软件工程过程实现的,那么,对此器械的上市前审查就可以集中于与器械相关的风险以及如何最好地管理这些风险。FDA不对软件开发过程进行审查,这使得上市前审查更加快捷,一致性更强。

  软件标准要求对构成软件工程工作的各部分进行详细的文件描述和定义。

21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号