医疗器械软件产品经理必读的法规及标准-YY/T0664(一)

医疗器械软件的产品经理,需要熟读医药行业标准,在软件设计开发的整个生存周期过程中,我们需要根据《YY/T 0664 医疗器械软件 软件生存周期过程》的标准来执行。在各个阶段输出相应的文档及记录,申请NMPA认证。接下来我针对软件开发过程写以下几个过程。

  1. 软件开发策划

  2. 软件需求分析

  3. 软件系统结构设计

软件开发过程由若干个活动组成,主要包括软件开发策划、软件需求分析、软件体系结构设计、软件单元实现、软件集成和集成测试、软件系统测试、软件发布。在整个生命周期中需要对软件进行风险管理,医疗器械软件的风险管理可参考YY/T 0316 医疗器械 风险管理对医疗器械的应用。同样,在整个设计开发过程中需要对软件进行配置管理。这些活动如下图所示:

医疗器械软件的安全等级划分为A、B、C三个安全级别。具体如下图所示,主要是根据软件在最不利的情况下促成的危险情况引发的对患者、操作者或其他人员伤害的风险。

1.软件开发策划

1.1软件开发计划

在软件策划阶段,需拟定开发计划,开发计划应说明以下各项

(1) 软件开发过程的相关活动,按照软件开发的各个阶段来划分:开发策划、需求分析、体系结构设计、详细设计、单元实现、集成和集成测试、系统测试、发布。

(2) 软件开发各项活动的交付物。例如,需求分析阶段,需交付需求规格说明书等。

(3) 需要保证每个阶段的可追溯性。例如,在体系结构设计阶段,需要追溯体系结构设计是否完全覆盖了需求分析所要求的各项,剩余风险是否可为接受状态。

(4) 需明确配置和变更管理,需明确用于支持开发的软件,例如,医疗影像软件的显示需用到VTK、ITK等现成软件。这些均需要在开发计划中体现。

1.2 软件风险管理策划

在策划阶段,需明确在软件开发过程中,如何对风险进行管理,需制定风险管理计划,风险管理计划则需要明确衡量风险严重度、风险发生的概率等的风险评价标准,以及风险判定可接受的准则。以下给出YY/T 0316中的附录D3.4 示例。

严重度定性分5级示例

半定量概率分级示例

半定量风险矩阵示例

2.软件需求分析

2.1 需求分析内容

YY/T 0664中规定医疗器械软件的需求分析需包括:功能和性能的需求、软件系统的输入和输出、软件系统和其他系统之间的接口、软件驱动的报警、警告和操作者信息、信息安全需求、由软件实现的用户界面的需求、数据定义和数据库需求、已交付医疗器械软件在一个或多个操作和维护现场的安装和验收需求、与操作和维护方法有关的需求、与IT方面有关的需求、用户维护需求、法规要求。

各位产品策划擅长写用户界面的需求,画原型,设计交互。但是在医疗器械软件中需要考虑多个方面。例如信息安全,患者的健康数据需要保证在传输过程中的安全性和完整性,所以这个时候就需要设计数据匿名化,传输加密等功能。

在《医疗器械网络安全技术审查指导原则(第二版)征求意见稿》中有对网络安全部分相关的规定,该指导原则规定,需提供网络安全需求规范文档。医疗器械网络安全能力包括[3]:

  • 自动注销

  • 审核

  • 授权

  • 网络安全特征配置

  • 网络安全补丁升级

  • 数据去标识化

  • 数据备份与灾难恢复

  • 紧急访问

  • 数据完整性与真实性

  • 恶意软件探测与防护

  • 节点鉴别

  • 人员鉴别

  • 物理防护

  • 现成软件维护

  • 系统固化

  • 网络安全指导

  • 存储保密性与完整性

  • 远程访问与控制

  • 扛拒绝服务攻击

2.2 验证软件需求

需求需要经过评审,从而验证软件的需求。需求分析需满足以下要求

(1)实现了系统需求,包括那些与风险控制有关的需求。例如:用户需求、临床需求等无遗漏,风险分析过程中,如果通过某个需求来控制该风险的发生,则该需求不可遗漏。

(2)需求之间不相互矛盾。

(3)需求文档具有可读性,不会出现含糊不清的术语,引起歧义的用词。

(4)需求可被唯一识别。

(5)需求的可追溯性,每个需求的来源,有些来自于竞品,有些来自于用户需求,保证其可追溯到其来源。

在需求分析阶段可以设计需求跟踪矩阵,将每条需求罗列出来,以保证后续开发的可追溯性。或使用项目管理工具对其进行追溯。

3.软件体系结构设计

3.1 体系结构设计

体系结构设计阶段将需求转化为形成文件的体系结构,需识别所有的软件项。该阶段需输出体系结构设计说明书。可设计体系架构图描述软件的体系结构。以下给出体系结构图示例:

3.2 验证软件体系结构

体系结构设计需要经过评审,验证下列各项:

(1)体系结构是否实现了各项需求;

(2)是否可以支撑软件项之间,软件项与硬件之间的接口;

(3)是否可支持其他未知来源的软件向正常运行。

后记

本文是在实际执行0664标准的过程中的一些总结与体会。后续会更新0664后面章节的总结体会。

参考文献

[1] YY/T 0664-2020 医疗器械软件 软件生存周期过程

[2] YY/T 0316-2016 医疗器械 风险管理对医疗器械的应用

[3] 医疗器械网络安全技术审查指导原则(第二版)征求意见稿

医疗器械软件产品经理必读的法规及标准-YY/T0664(一)的更多相关文章

  1. 医疗器械软件产品经理必读的法规及标准-YY/T0664(二)

    上节主要讲了软件开发策划.软件需求分析.软件系统结构设计三个阶段,这节来分析以下几个阶段. 1.软件单元实现 2.软件集成和集成测试 3.软件系统测试 软件开发过程由若干个活动组成,主要包括软件开发策 ...

  2. 智软科技医疗器械GSP监管软件通过多省市药监局检查

    提供医疗器械GSP监管软件,通过多省市药监局检查,符合2016年最新GSP监管条例的要求. 企业客户列表 温岭市万悦医疗器械有限公司 杭州市上善医疗器械有限公司 武汉明德生物科技股份有限公司 http ...

  3. 医疗器械c#上位机开发指引教程

    此教程面向的读者:对医疗器械上位机编程有兴趣,或者急需了解医疗器械(尿常规.血液分析.生化.心电.B超等医疗下位仪器)的编程流程.编程细节的程序员. 1.得到仪器协议 当我们需要与医疗器械等下位机数据 ...

  4. 记一次 .NET 某医疗器械 程序崩溃分析

    一:背景 1.讲故事 前段时间有位朋友在微信上找到我,说他的程序偶发性崩溃,让我帮忙看下怎么回事,上面给的压力比较大,对于这种偶发性崩溃,比较好的办法就是利用 AEDebug 在程序崩溃的时候自动抽一 ...

  5. 对XX证券报关于物联网操作系统的几个问题的答复

    XX证券报提问了几个关于物联网和物联网操作系统的问题,个人表达了一些粗陋的观点,在这里发表出来,与行业朋友交流和探讨. 物联网行业最需要解决的问题是什么? 虽然物联网这个行业被炒得比较热,但是截至目前 ...

  6. 推荐一本写给IT项目经理的好书

    原文地址:http://www.cnblogs.com/cbook/archive/2011/01/19/1939060.html (防止原文作者删除.只能拷贝一份了) 推荐一本写给IT项目经理的好书 ...

  7. 医疗行业预测性产品的质量如何把关?MES系统帮大忙

    作为行业细分的医疗设备制造正在向工业4.0快速发展.它也可能仍然是世界上受监管最严格的行业之一,产品的个性化发展速度比其他行业更快. 在医疗设备行业中,由于需求或由于市场特定的规定,产品越来越多地定制 ...

  8. 开发者说 | 云+AI赋能心电医疗领域的应用

    以"医工汇聚 智竞心电"为主题的首届中国心电智能大赛自2019年1月1日启动全球招募起,共吸引总计545支来自世界各地的医工结合团队,308支团队近780名选手通过初赛资格审查,经 ...

  9. 互联网医疗行业PEST分析实践

    前言 今年开始逐步切入产品与数据工作,完全脱离了原来的舒适区,确实有一些挑战.开始以为只做数仓建设的事情,就仓促的学习了一些数仓相关的知识,但没搞多久,还要负责公司BI的工作,又开始补习数分相关的知识 ...

随机推荐

  1. 使用adb命令在模拟器安装apk

    1.adb connect 127.0.0.1:7555 连接网易模拟器地址2.adb devices -L 查看有几个连接端口地址3.执行推送配置文件 命令 adb push 文件 路径

  2. 错误:软件包:php-fpm-5.4.16-42.el7.x86_64 需要:php-common(x86-64)

    报错信息:错误:软件包:php-fpm-5.4.16-42.el7.x86_64 (/php-fpm-5.4.16-42.el7.x86_64)需要:php-common(x86-64) = 5.4. ...

  3. WPF 后台代码做 TranslateTransform 的动画

    本文告诉大家,在后台代码,对 TranslateTransform 做动画的方法 今天小伙伴问我一个问题,说为什么相同的代码,如果设置到按钮上,是可以让按钮的某个属性变更,但是如果设置给 Transl ...

  4. 生成树协议(STP)

    一.交换网络环路的产生 1.广播风暴的形成 2.多帧复制 3.MAC地址表紊乱 二.STP简介 STP-Spanning Tree Protocol(生成树协议) 逻辑上断开环路,防止广播风暴的产生 ...

  5. v-for和v-if不能同时使用

    如果使用v-for遍历数据时,想筛选出URL不为空的项并进行渲染 <ul> <li v-for="(item,index) in list" v-if=" ...

  6. 【模拟7.22】visit(卢卡斯定理&&中国剩余定理)

    如此显然的组合数我把它当DP做,我真是.... 因为起点终点已经确定,我们发现如果我们确定了一个方向的步数其他方向也就确定了 组合数做法1: 设向右走了a步,然后向左走了b=a-n步,设向上为c,向下 ...

  7. 【题解】PIZZA 贪心

    题目描述 Michael请N个朋友吃馅饼,但是每个朋友吃且仅吃一个馅饼的1/4.1/2或3/4.请你编程求出Michael至少需要买多少个馅饼. 输入输出格式 输入格式: 输入文件的第一行是整数N:接 ...

  8. NOIP模拟测试16「Drink·blue·weed」

    话说这次考试 Drink 非常棒的一道卡常练习题,适合练习卡常 真的很棒 前置卡常知识 1.char要比int快 char是最快的 输出putchar,输入getchar 在这个题快了7000豪 2. ...

  9. Linux命令大全之基本命令

    命令提示符中:    ~:表示家目录   #:表示超级用户   $:表示普通用户 命令 [选项] [参数] ls(list):查询目录中的内容 ls  [选项]  [文件或目录] -a:显示所有文件, ...

  10. MEMORY_TARGET不够时解决办法

    一.报错原因:设置的memory_max_target超过了系统中设置的share memory(/dev/shm)而已. 二.解决办法:增加tmpfs的大小 三.调整tmpfs的大小(两种方法) 1 ...