国内外医疗器械软件安全性评价方法比较研究
2010-02-13俞思聪潘鹰俞西萍朱颖峰上海市食品药品监督管理局医疗器械注册处上海200010
俞思聪,潘鹰, 俞西萍, 朱颖峰上海市食品药品监督管理局 医疗器械注册处,上海,200010
国内外医疗器械软件安全性评价方法比较研究
【作 者】俞思聪,潘鹰, 俞西萍, 朱颖峰上海市食品药品监督管理局 医疗器械注册处,上海,200010
采用比较研究与调研分析相结合的方法,通过对比欧美国家对医疗器械软件上市前评价与上市方法,并实地调研分析上海市医疗器械生产企业对软件研发质量控制程序,分析医疗器械软件安全存在的问题,并对高风险医疗器械软件的上市前安全性评价进行了有益的探索。
医疗器械;软件;高风险;安全性评价;内外比较;借鉴
随着计算机科学与技术的迅猛发展,数字电路、DSP、嵌入式系统、信息处理系统的大规模应用,越来越多有源医疗器械中都包括了软件系统。从大型的影像诊断设备CT、MRI到小型的监护仪、注射泵等都出现了软件系统的身影。如:监护仪中分析报警软件、呼吸机控制类软件、输液泵中自动控制软件、高频手术电刀中嵌入式软件、CT中后期重建软件等等。除此以外,单独软件产品作医疗器械管理也不断涌现,如动态心电分析系统、远程诊断中使用的影像档案传输、处理系统软件、辅助诊断疾病软件、唐氏综合症筛查分析类软件、手术导航软件等。软件系统已经是医疗器械中重要组成部分。但与此同时,由于软件系统缺陷而发生的医疗危害事件不断升级,那么,软件系统上市前究竟该如何进行安全性评价?政府该如何确保产品安全上市?这些问题应当引起我们的重视。
1 医疗器械软件产品安全性评价的重要性
医疗器械软件产品,从外部特征来看,它是一种非实物型信息产品;从内部特性来说,它是一个具有高度抽象性和严密逻辑性的逻辑系统。医疗器械软件的运行必须与现有硬件系统接口保持一致,其复杂性远远超过医疗器械产品硬件本身。
现代医疗器械技术中,数字芯片使用率越来越多,这些芯片都可以进行编程运行。而随着人工智能,信号处理和图像后处理技术等新技术发展,软件研发在医疗器械设计开发过程中已占据越来越重要地位。医疗器械的许多重要功能,越来越多地依靠软件进行控制。其管理部门必须保护公众免受与软件相关的器械故障造成的危害。
根据美国FDA统计报告,1992-1998年间共召回医疗器械3140起,其中,242起是由于医疗器械产品中软件失效而引起的。而另一份调查报告指出,1968—1997年,美国FDA提交了450多份报告,详述了医学设备中的软件缺陷,其中24个导致了死亡或者伤害。从上所述,软件的安全性至关重要,已直接关系到人类的生命安全。
2 本市高风险的医疗器械软件产品研发现状及分析
为了评价本市医疗器械软件产品的安全性,本课题组对本市部分高风险的医疗器械软件产品生产企业进行了问卷调查。从医疗器械生产企业数据库选择了20家企业(近百种产品),其中有纯软件生产企业,也有嵌入式软件开发企业;有国有企业、外资企业、私营企业等。现将调查情况汇总如下。
2.1软件企业研发外包情况
2家企业将软件研发外包,占10%;1家企业将部分软件模块研发外包,占5%;17家企业自行开发,占85%。对于研发外包企业,采用质量体系管理办法对外包企业进行控制。
2.2软件按模块进行风险分析
在20家企业中,仅有3家企业对产品按模块进行风险分析,占15%。
2.3软件验证计划方法
由于各企业软件开发计划不同,验证计划方法:有单元测试、模块测试、集成测试、系统集成测试、用户功能测试。仅有5家企业全部按上述测试完成,另有15家企业仅作其中部分测试项目。从测试项目来看,10企业家进行单元测试,8家企业进行模块测试,9家企业进行集成测试,14家企业进行系统测试,18家企业进行用户功能测试,4家企业用其他测试。
2.4软件开发过程中,研发和测试投入比重
20家企业中,在研发中平均投入和测试时间比为4.8:1,研发和测试投入费用比为3.8:1
2.5软件执行标准
20家企业中,全部执行了GB/T17544标准,同时执行IEC62304或YY/T0664软件安全标准仅有3家。
调查结果分析显示,本市目前高风险的医疗器械软件产品研发企业现状呈现以下特点.
(1)17家企业企业还是采用自行研发软件方式;2家企业采用外包研发方式;1 家企业软件模块外包。也就是说大部分企业可以对软件进行全生命周期管理。
(2)只有3 家企业对产品按模块进行风险分析。大部分企业未按产品风险等级,对产品模块提出控制要求。
(3)企业重视研发投入,忽视测试。从研发与测试投入费用比为3.8:1,时间比为4.8:1。在研发软件上投入时间大大超过测试的投入,而一般国外优秀企业产品研发和测试投入上接近1:1,说明本市企业仍不重视测试投入。
(4)测试和验证方法中重视最终产品功能测试,对于其他过程测试重视不足。从验证结果百分比来看,企业对研发过程中较忽视测试,仅看重最终产品能否满足功能要求。
(5)对软件安全标准研究不足。本次调研结果显示大部分企业仍未研究执行YY/T0664软件安全标准,对软件生命周期安全评价,仍不重视。
3 美国、欧盟、中国医疗器械软件产品安全性评价方法比较
本课题组系统研究了美国和欧盟对医疗器械软件产品调整的法律法规和对安全性评价、风险控制的方法,并与中国的实际的方法进行比较分析。
3.1法规文件与标准
美国对软件上市有明确上市指南,欧盟也有建议文件,生产商或制造商可以在官方网站上找到相应文件,明确产品上市前所需要准备资料。但我国尚未建立全面性的可供企业参照的指南性文件。
3.1.1 美国
用以下三份审评指南规范医疗器械软件上市要求。
① Guidance for the Content of Premarket Submissions for Software Contained in Medical Devices;
② General Principles of Software Validation ;Final Guidance for Industry and FDA Staff;
③ Off-The-Shelf Software Use in Medical Devices。
3.1.2 欧盟
对医疗器械的管理有三个指令:有源植入医疗器械指令(AIMD)、医疗器械指令(MDD)、体外诊断医疗器械指令(IVDD)。这三个指令均涉及到软件。欧盟通过指定机构协调小组(NB-MED)专门发布的建议文件(NB-MED/2.2/REC4《软件和医疗器械》),指导公告机构和制造商执行软件按医疗器械管理指令上市时应满足的基本要求。
欧盟对于器械软件管理主要按标准管理,根据法令任何器械,只要符合依据协调标准转换的国家标准,成员国应推定其符合本指令条款所述的基本要求。主要软件相关的标准有:①IEC 62304:2006 - medical device software -software life cycle processes②IEC 60601-1-4 - programmable electrical medical systems③IEC61508-3-1998 functional safety of electrical/electronic/programmable safety related systems
3.1.3 中国
国家食药监局尚未对医疗器械软件产品有具体审评指南、北京市食药监局编写的“北京市医疗器械软件产品监督管理规定(暂行)”,目前对于软件产品上市方法还缺少法规支持。
目前,普通软件标准有GB/T16260系列软件工程产品质量、GB/T17544 信息技术软件包质量要求和测试、医疗器械软件标准有YY/T0664-2008 医疗器械软件生存周期过程。而针对纯软件产品上市基本按GB/T17544进行标准编写,而该份标准偏重于对软件功能覆盖测试,对软件安全性并未提出具体要求。
3.2医疗器械软件范围
美国和欧盟对于医疗器械软件定义已趋于一致,对于医疗器械软件已包括传统意义上的纯软件与嵌入式软件。我国对医疗器械软件定义在推荐标准中与欧盟和美国的定义基本相一致。
美国和欧盟都对纯软件和嵌入式软件视为医疗器械软件,对软件研发、测试过程提出具体安全要求,我国对仅纯软件有安全要求,对嵌入式软件未明确要求,仅随成品器械做功能测试。
3.2.1 美国
美国FDA明确规定了医疗器械软件产品是指包含一个或多个的软件组件、部件、附件或仅由软件组成的器械,包括固定或其他方式基于软件控制的医疗器械,专业用的硬/软件医疗器械。
3.2.2 欧盟
在医疗器械指令中将明确用途,或用于控制或影响医疗器械,或预期用于分析由医疗器械生成的患者数据来诊断和监护的软件,或用于诊断或治疗身体或精神疾病时用的软件都应视为医疗器械软件。但将用于保健设施的一般目的时软件排除在医疗器械软件产品之外。
另外,根据欧盟EN 62304标准的定义,医疗器械软件产品旨在包括在被开发的医疗器械内的已开发的软件系统,或者预期本身用作医疗器械而开发的软件系统。3.2.3 中国
根据我国现有法规文件,未对医疗器械软件做具体定义,但IEC62304已等同转换为YY/T0664-2008于09年6月正式施行。该标准定义医疗器械软件旨在包括在被开发的医疗器械内的已开发的软件系统,或者预期本身用作医疗器械而开发的软件系统。
3.3风险分级管理
美国对软件安全性采用表格式问答法,企业根据表格中问题进行回答,然后从中能够对风险分级较为明确;欧盟风险分级方法用定义法,由企业根据定义来自定,并需对具体模块风险定义,对企业风险分析能力和自律性要求较高。而我国目前对纯软件安全性分级,分为II类和III类管理,对嵌入式软件分级尚未真正进行。3.3.1 美国
指南中采用“关注级别”的概念对软件风险进行分级。FDA采用问答表格的方式使制造者明确软件风险的关注级别。关注级别分为严重关注、中等关注、较低关注。
严重关注,软件中故障或潜在缺点可能对病人或医务人员直接导致死亡或严重伤害;如果软件中故障或潜在缺点通过错误或延迟信息传递或通过监护人员错误行为而间接对病人或医务人员导致死亡或严重伤害,也认为是严重关注。下列情况被认为属于严重关注:
(1)软件用于血液分析;
(2)软件系统用于辅助药物或生物制品使用;
(3)软件是包含在定位严重关注等级的医疗器械中一部分;
(4)在减轻危害之前,软件失败可能会对病人或操作者导致死亡或严重伤害。如① 含有软件设备有控制生命支持或维持生命功能;② 软件控制那种可能导致死亡或严重伤害的危害能量(放射治疗系统,除颤器,消融发生器等);③ 软件装置控制因为错误或故障而导致的严重死亡伤害的治疗方法的传递;④ 软件直接提供诊断信息,这种信息直接对治疗方案起决定作用,如当被误诊后,会导致死亡或严重伤害;⑤ 软件会对潜在生命危险状况(医疗救治必须介入)提供生命体征监护和报警。
中等关注,指软件中故障或潜在缺点可能对病人或医务人员直接导致较低伤害。如果软件中故障或潜在缺点通过错误或延迟信息传递或通过监护人员错误行为而间接对病人或医务人员导致较低的伤害,也认为是中等关注。下列情况被认为中等关注
(1) 软件是属于中等关注级别医疗设备
(2)在减轻危害之前,软件失败可能会对病人或操作者导致死亡或较低伤害
(3) 如果软件存在错误或潜在设计错误导致误诊或延误合适的医疗救治会导致较低伤害。
较低关注,软件中故障或潜在缺点不会导致任何对医务人员或病人的伤害。如果软件未列入严重关注或中等关注,那么它就被定为较低关注。
美国FDA认为,由于不同风险分级,企业为上市准备提交文档应该是有所区别的,但应该至少包括软件设备的预期用途、风险关注级别、提交类型。具体提交资料可以参见表3。通常来说,提交资料需要包括:①描述设备设计想法;②书面验证设计如何实现;④论证产品设计是如何测试的;④展示如何有效进行风险识别和风险管理;⑤提供 设计、执行、测试和风险管理的可追溯性联系。
对于严重关注产品要求提供资料最多包括关注级别阐述、软件描述、器械危害分析、软件规格需求说明书(SRS)、软件设计结构图、可追溯性分析、软件开发环境的描述、验证和确认文档、版本历史、未解决异常(Bug或缺陷)。软件开发环境需要概述软件生命周期开发计划。注释在开发过程中控制文档中控制点。包括配置管理和测试活动。验证和测试文档需对单元、综合和系统水平验证和测试活动的描述。单元、综合和系统测试协议,包括 通过/失败标准,测试报告,概要和测试结果。而对于中等和一般关注级别的产品,需提交资料复杂程度依次降低。
3.3.2 欧盟
欧盟标准对于医疗软件也采用风险分级管理概念——“软件安全级别”。制造商应按照软件系统引起的危害对于患者、操作者或其他人员的可能影响的严重度,赋予每个软件系统一个“软件安全性级别”:
A级:不可能对健康有伤害或损坏;
B级:可能有不严重的伤害;
C级:可能死亡或严重伤害。
其中,欧盟将医疗器械软件产品的严重伤害定义为直接或间接导致危及生命、造成人体功能的永久性损害或人体结构的永久性损坏,或需要内科或外科介人以防止人体功能的永久性损害或人体结构的永久性损伤。
值得注意的是,欧盟也特别强调了,如果由于软件失效引起死亡或严重伤害的风险,随后由硬件风险控制措施降低到可接受水平,那么它的安全级别可逐级降低。也就是说更相信硬件设计可靠性。
欧盟对软件生存周期,根据风险程度不同,提出相应要求,总的来说软件生命周期包含软件开发过程、软件维护过程、软件风险管理过程、软件配置管理过程、软件问题解决过程。对于C级软件,特别对软件开发标准、方法和工具策划、风险隔离、软件单元开发详细设计、为接口开发详细设计、验证详细设计、补充的软件单元验收准则提出要求。A、B级软件要求亦在IEC62304中有明确要求。
3.3.3 中国
对于单独安装的医疗软件,2002年8月国家食品药品监督管理局发布了《医疗器械分类目录》,增加了“软件”产品的管理分类,并且按照医疗软件的特点和临床用途的不同,将医疗软件分为诊断图像处理软件、诊断数据处理软件、功能程序化软件、影象档案传输处理软件和人体解剖学测量软件五类。以上基本对纯软件分类管理,同时按风险级别不同,分为II类和III类管理。
3.4上市需提交资料
(1)单独安装的医疗软件 标准按GB/T17544编写,并送有资质的检测机构进行功能测试,但对于软件安全性上未提出具体要求,提交资料验证也较为简单。
(2)包括在被开发的医疗器械内的已开发的软件系统 对软件未作具体安全性要求,仅随产品提交整机测试报告。
3.4安全性评价方法
美国重视企业对软件研发过程控制,强调危害分析,要求企业在开发过程中充分考虑风险级别不同软件,采取不同安全控制措施,并由企业进行自我验证测试,提交自我验证报告,但对于产品上市前的第三方机构测试并不强调。欧盟则对更关注企业对产品生命周期全过程控制,从研发到上市后维护,也更注重在产品研发过程中,企业自身如何确保软件安全,对于风险如何分析隔离,同样不强调上市前的第三方机构测试。我国对软件产品,更注重结果验证,对产品进行上市前“黑盒测试”,对设计开发过程并未提出具体要求。
3.5上市需递交资料
美国通过技术审评指南,对产品全部上市资料有详细规定,企业可以了解FDA所关心内容,并按要求递交资料,包括对产品风险分析、开发环境、设计流程、对单元、综合和系统水平验证以及测试活动的描述等。对于风险等级从低至高产品,所需递交的资料也越来越多。欧盟则在合格评定程序过程中,由公告机构确认产品是否合乎上市要求。我国,强调第三方测试机构测试报告,对企业研发阶段如何控制风险,如何确保软件安全还未关注。
4 建立和改善我国医疗器械软件产品安全性评价方法的探讨
从上所述可以看出,欧美发达国家对软件安全性评价已形成完整的体系,建立了科学有效的评价方法,而我国医疗器械生产企业对软件研发过程中风险管理意识还比较薄弱,那么在我国如何建立和改善对医疗器械软件产品产品安全性性评价的方法,本课题组提出如下几点建议:
(1)参照FDA分级方法,对软件进行风险分级
根据分类目录,我国仅把医疗器械纯软件分为II类、III类管理,但根据美国FDA上市后数据收集和安全分析分级方法,发现我国部分II类医疗器械中的嵌入式软件也属严重关注类别中,如 监护仪中嵌入软件、输液泵中的控制软件、辅助诊断软件等。对该类软件安全性应有较高要求。我们是否可以按美国风险评级方法,参照问答表格,对医疗器械中的软件产品安全风险进行分级管理。
(2)循序渐进,加强对高风险医疗器械软件的安全性评价
从现代产品设计理念来讲,医疗器械核心设计已由原来的硬件设计慢慢转变为软件设计更新,现代医疗器械可以通过软件升级实现更新功能,而从软件缺点危害案例和FDA对不良反应数据统计中可以看看出,软件安全性评价已成为一项重要课题。欧美都在法规文件中,加强了对软件安全性评价要求。而从本市所调研数据来看,大部分企业对软件研发质量控制观念还比较淡薄,也很有可能发生安全性问题。从风险分析角度考虑应首先考虑对高风险医疗器械进行软件的安全性评价,以从中摸索经验。
从现行管理办法中,我国仅对纯软件提出安全评价要求,对于嵌入式软件并未有具体法规要求,而欧美等国的经验告诉我们,嵌入式软件一样存在安全风险,因而,在产品上市前就应单独对软件部分进行安全评价。
(3)明确要求,对高风险的医疗器械软件产品提出具体上市资料
根据对软件安全性定级,那么对于高风险医疗器械软件,应提出具体质量要求,如:器械危害分析、软件设计结构图、软件设计规格说明书(SDS)、可追溯性分析软件开发环境的描述、验证和确认文档、版本历史、未解决异常(Bug或缺陷)等。
由于软件产品特殊性,故软件安全性保证无法单独依靠第三方检测机构,必须由企业完成高风险模块测试,内部质量评审。可根据企业所提供材料,对企业自测行为进行评估。从FDA不良反应数据和我国不良反应数据中,对企业软件安全性提出评价意见。
(4)加强对软件研发企业质量体系控制
软件安全性风险,本质源于设计开发时风险分析全面性与测试严密性,这两点都需要企业在研发时对产品质量控制,而根据国际标准IEC62304要求,更强调企业在产品研发时风险分析,和对软件模块风险分析要求。虽然该标准已被等同转换为国内推荐性行标,但从调研数据来看,本市企业参照执行的很少,因此对该类企业应对其设计开发过程进行质量体系考核,以符合安全性要求。
5 对于软件安全性评价一点其它思考
(1)对于软件开发分包企业,是否需对分包软件开发过程提出控制要求。
从本市调研中可以看出,有部分生产企业将软件研发外包,而外包开发后,安全性控制将由分包企业完成,那么制造商选择分包软件的开发过程,应证明在软件的生存周期内对此过程控制。并由制造商要求承包商满足标准及定期评估对承包商对标准要求的符合性。
(2)对软件的升级如何控制安全风险
由于软件升级较为简单,也可以实现新功能,一般而言软件升级总是为了修复之前错误,或实现新功能,由上文分析可知,软件升级是比较容易引起产品不稳定的,而且也可能会实现新功能。那么如果软件与早期版本相比有变新,或预期用途的发生变化,及预定运行的平台的变更,制造商应确定以下内容:产品在变更后仍然满足基本要求;变化应有通过配置管理过程的文档记录;变更已经被确认和批准;应确认与(新)硬件、已有软件的兼容性;如涉及变更的重大变化,需进行重新注册申报。
(3)第三方测试机构,是否应建立软件bug报告制度
在第三方机构产品测试中,常常会遇到软件错误、崩溃情况,但在检测报告中一般无法体现这类情况,而可能导致产品虽通过测试,但质量很不稳定,而这些技术审评人员无法观察到的。那么,是否可以建立一份软件bug报告制度,如果检测过程中出现出错,可填写表格,包括错误类型、后果、发生频率等并随报告上报,供审评人员参考分析。
(4) 从不良反应案例中,收集风险分析经验
从美国FDA数据库可以得知,美国之所以可以制定出大量风险分级原则,就是因为他们行之有效的不良反应收集制度,从中可以总结出大量安全性分析点。我们也因从不良反应案例中,收集风险分析经验,编制成册,为今后审评提供参考。
[1] Ian Sommerville. 软件工程[M]. 北京: 机械工业出社, 2003.
[2] 朱少云. 软件质量保障和管理[M]. 北京: 清华大学出版社, 2004.
[3] 孙志安. 软件可靠性工程. 北京: 北京航空航天大学出版社, 2009.
[4] Timothy C.Lethbridge Robert Laganiere. 面向对象软件工程[M].北京: 机械工业出版社, 2003.
[5] Dirk Huberty. 软件质量和软件测试[M]. 北京: 清华大学出版社, 2003.
[6] Gerard O’Regan. 软件质量实用方法论[M]. 北京: 清华大学出版社, 2004.
[7] 武俊华. 医疗器械软件生存周期过程[J]. 中国医疗器械信息, 2006, 12(9): 32-38.
[8] GBT16260. 1-2006 软件工程 产品质量 第1部分: 质量模型.
[9] YY/T0664-2008 医疗器械软件 软件生存周期过程.
[10] 杜堃, 何建, 马莉, 等. 医疗器械软件安全性评价[J]. 中国医疗器械信息. 2009, 15(1): 30-33.
Comparison of the Software Safety Evaluation Methods in Medical Devices
【Writers】Yu Sicong, Pan Ying, Yu Xiping, Zhu Yinfeng Medical Device Registration Department Shanghai Municipal Food and Drug Administration, Shanghai, 200010
Medical Device, Software, High-risk, Safety Evaluation, Comparison, Illumination
】The article intends to analyze the software safety problems in high-risk medical devices based on the investigation of software R & D Quality control procedures in Shanghai medical device manufacturing enterprises. The idea of improving the software pre-market safety evaluation method in China is also explored through the way of comparing those in US and Europe.
1671-7104(2010)05-0360-05
2010-03-22
俞思聪,E-mail:yusicong@smda.gov.cn
TH77
A
10.3969/j.isnn.1671-7104.2100.05.012
【