浅析医疗器械独立软件描述文档编制要点
2019-01-14朱达谭武辉李炳松
朱达 谭武辉 李炳松
1 广州视景医疗软件有限公司 (广东 广州 510000)
2 橙橡医疗咨询(广州)有限公司 (广东 广州 510000)
3 广州市康正经济技术发展有限公司 (广东 广州 510000)
内容提要: 《医疗器械软件注册技术审查指导原则》要求独立软件应提供软件描述文档,文章将对独立软件在软件描述文档编制中的要点进行浅析。
随着IT技术与医学的不断融合发展,含诊断或治疗功能的独立软件在临床应用日益广泛,若发生故障将造成安全风险,因此可靠性至关重要。良好的开发过程才能保证软件的可靠性,软件描述文档则是开发过程的基本体现。《医疗器械软件注册技术审查指导原则》[1](以下简称“《指导原则》”)第三章中对描述文档应含基本信息、实现过程和核心算法三大内容要求,要求申请人进行陈述并提供支持性资料,笔者现结合自身注册申报经验就其要点进行梳理和浅析。
1.基本信息
这部分是软件基本开发过程简述,在实际的软件开发过程中是在需求分析阶段结束后输出的内容,其要点有以下两个。
1.1 安全性级别判定
《指导原则》中较大篇幅阐述判定要求,但未明确指定可操作的判定规则,建议采用YY/T0664[2]的4.3和附录B4.3条款是较好的判定方法,根据严重度与发生概率结合判定,即安全性级别=损害严重程度×发生概率,因软件失效概率目前无定论,若从临床风险角度考量,假定失效概率为100%。在最新版的《医疗器械分类目录》[3]中医用软件最低类别为Ⅱ类,是具备中度风险的医疗器械,其最低安全性级别=100%×中度风险,故软件最低安全性级别不应低于B级,重大疾病诊断治疗或手术导航类软件安全性级别为100%高度风险,其安全性级别应为C级,在明确判定安全性级别后,应依据《指导原则》中表1提供相应文档,不同安全性级别要求的文档数量和复杂程度不同,应据实提供不可避繁就简而造成审评中较多资料发补。
1.2 结构功能与硬件拓扑图
结构功能与硬件拓扑图,体系结构图是指软件各组成模块间如临床功能模块和非临床功能模块间的关系示图,用户界面关系图如登陆与数据处理或诊断界面关系示图,物理拓扑图则如软件的模块,软件的计算机与器械硬件或服务器和云端间的关系示图,《指导原则》要求应依据软件设计规范(SDS)提供,较好的方法是参考《医学图像存储传输软件注册技术审查指导原则》[4]中第二章(三)的示例绘制基本示意图,再结合申报产品的实际情况进行修订。
2.实现过程
该部分要求对软件开发过程的基本情况进行简述,实质是要求建立符合YY/T0664的开发流程,共有四个要点[2]。
2.1 需求规范(SRS)
软件功能的设计和用户需求的实现均是从需求规范(SRS)开始,SRS一般包括产品描述、产品功能要求、用户特点、设计约束、需求分配等内容,应按GB/T9385[5]编制,对软件的功能如处理或诊断功能的要求应在SRS中明确,软件的约束条件如运行环境限制、不同用户控制权限的要求也应明确,SRS内容应与软件设计规范(SDS)的内容保持对应。
2.2 生存周期
生存周期是指软件从需求到开发、交付、使用、升级维护全生命周期的过程,可提交依据YY/T0664附录D中表D.1过程标准核查表替代相应描述,或提交软件的维护计划及配置管理的体系文件,安全性级别为C级的软件要求提供的的设计历史文档集索引表(DHF),可提交从立项到集成测试的全过程文档目录,同时应确保目录中的文件在质量体系文件中可溯源,以备注册体系核查。
2.3 验证与确认
验证与确认是对软件功能问题发现识别过程,软件的验证如黑盒与白盒测试,白盒测试一般指各类软件源代码的检查活动,黑盒测试一般指单元/集成/系统等各阶段的测试活动,可提供各种验证的记录文件,软件中确认通是指在真实或模拟的使用环境中的用户测试,可提交用户测试记录或临床评价报告证实符合此要求。
2.4 可追溯性分析
是追溯软件从需求到实现整个过程间的对应关系,主要是对安全性级别为C的软件的要求,可追溯性分析一般是追踪需求规范、设计规范、源代码、测试、风险管理之间的关系,分析已识别关系的正确性、一致性、完整性和准确性,如需求规范(SRS)中的功能需求应与设计规范(SDS)中列明的功能、设计规范(SDS)中列明功能与软件中实现该功能的源代码应是可一一对应的,需求规范(SRS)中的设计约束与风险管理报告中的控制措施也应是可一一对应,可追溯性分析应输出可明确查看和判定对应关系的列表式记录或报告。
3.核心算法
软件本身是算法+实现的结合,一个软件常含多种功能,每个功能可能会涉及一种或多种算法,核心算法是指软件在预期使用环境中完成其预期用途的必需算法,如医学影像类软件中的成像算法,放射治疗计划中的放射计划的时间算法,治疗类软件的治疗模式匹配算法都属于核心算法,但类似搜索患者姓名的检索算法或病例数据排序算法则不属核心算法。核心算法若是成熟算法应提供相应的文献证实其公开性,而全新算法如近年兴起的人工智能算法,是基于海量数据和高算力可不断自我学习并优化提升的黑盒算法,其存在一定程度的不可控因素,一般需通过临床试验来证实其安全有效性,需提供基于临床试验结果的支持性资料。
4.小结
总结,软件描述文档实质是要求软件开发全过程可控并可溯源,其内容本质上是软件设计开发过程中质量体系各阶段输出的结果,不是为满足审评要求单独编制的文档,申请人应建立符合YY/T0664[2]软件生存周期质量管理体系和软件工程要求的开发流程和模式,以保证软件高质量高水准的开发,以满足法规监管和临床使用中对于软件质量高可靠性和可用性的要求。