医疗器械软件产品经理必读的法规及标准-YY/T0664(一)
医疗器械软件产品经理必读的法规及标准-YY/T0664(一)
医疗器械软件的产品经理,需要熟读医药行业标准,在软件设计开发的整个生存周期过程中,我们需要根据《YY/T 0664 医疗器械软件 软件生存周期过程》的标准来执行。在各个阶段输出相应的文档及记录,申请NMPA认证。接下来我针对软件开发过程写以下几个过程。
软件开发策划
软件需求分析
软件系统结构设计
软件开发过程由若干个活动组成,主要包括软件开发策划、软件需求分析、软件体系结构设计、软件单元实现、软件集成和集成测试、软件系统测试、软件发布。在整个生命周期中需要对软件进行风险管理,医疗器械软件的风险管理可参考YY/T 0316 医疗器械 风险管理对医疗器械的应用。同样,在整个设计开发过程中需要对软件进行配置管理。这些活动如下图所示:

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

1.软件开发策划
1.1软件开发计划
在软件策划阶段,需拟定开发计划,开发计划应说明以下各项
(1) 软件开发过程的相关活动,按照软件开发的各个阶段来划分:开发策划、需求分析、体系结构设计、详细设计、单元实现、集成和集成测试、系统测试、发布。
(2) 软件开发各项活动的交付物。例如,需求分析阶段,需交付需求规格说明书等。
(3) 需要保证每个阶段的可追溯性。例如,在体系结构设计阶段,需要追溯体系结构设计是否完全覆盖了需求分析所要求的各项,剩余风险是否可为接受状态。
(4) 需明确配置和变更管理,需明确用于支持开发的软件,例如,医疗影像软件的显示需用到VTK、ITK等现成软件。这些均需要在开发计划中体现。
1.2 软件风险管理策划
在策划阶段,需明确在软件开发过程中,如何对风险进行管理,需制定风险管理计划,风险管理计划则需要明确衡量风险严重度、风险发生的概率等的风险评价标准,以及风险判定可接受的准则。以下给出YY/T 0316中的附录D3.4 示例。



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(一)的更多相关文章
- 医疗器械软件产品经理必读的法规及标准-YY/T0664(二)
上节主要讲了软件开发策划.软件需求分析.软件系统结构设计三个阶段,这节来分析以下几个阶段. 1.软件单元实现 2.软件集成和集成测试 3.软件系统测试 软件开发过程由若干个活动组成,主要包括软件开发策 ...
- 智软科技医疗器械GSP监管软件通过多省市药监局检查
提供医疗器械GSP监管软件,通过多省市药监局检查,符合2016年最新GSP监管条例的要求. 企业客户列表 温岭市万悦医疗器械有限公司 杭州市上善医疗器械有限公司 武汉明德生物科技股份有限公司 http ...
- 医疗器械c#上位机开发指引教程
此教程面向的读者:对医疗器械上位机编程有兴趣,或者急需了解医疗器械(尿常规.血液分析.生化.心电.B超等医疗下位仪器)的编程流程.编程细节的程序员. 1.得到仪器协议 当我们需要与医疗器械等下位机数据 ...
- 记一次 .NET 某医疗器械 程序崩溃分析
一:背景 1.讲故事 前段时间有位朋友在微信上找到我,说他的程序偶发性崩溃,让我帮忙看下怎么回事,上面给的压力比较大,对于这种偶发性崩溃,比较好的办法就是利用 AEDebug 在程序崩溃的时候自动抽一 ...
- 对XX证券报关于物联网操作系统的几个问题的答复
XX证券报提问了几个关于物联网和物联网操作系统的问题,个人表达了一些粗陋的观点,在这里发表出来,与行业朋友交流和探讨. 物联网行业最需要解决的问题是什么? 虽然物联网这个行业被炒得比较热,但是截至目前 ...
- 推荐一本写给IT项目经理的好书
原文地址:http://www.cnblogs.com/cbook/archive/2011/01/19/1939060.html (防止原文作者删除.只能拷贝一份了) 推荐一本写给IT项目经理的好书 ...
- 医疗行业预测性产品的质量如何把关?MES系统帮大忙
作为行业细分的医疗设备制造正在向工业4.0快速发展.它也可能仍然是世界上受监管最严格的行业之一,产品的个性化发展速度比其他行业更快. 在医疗设备行业中,由于需求或由于市场特定的规定,产品越来越多地定制 ...
- 开发者说 | 云+AI赋能心电医疗领域的应用
以"医工汇聚 智竞心电"为主题的首届中国心电智能大赛自2019年1月1日启动全球招募起,共吸引总计545支来自世界各地的医工结合团队,308支团队近780名选手通过初赛资格审查,经 ...
- 互联网医疗行业PEST分析实践
前言 今年开始逐步切入产品与数据工作,完全脱离了原来的舒适区,确实有一些挑战.开始以为只做数仓建设的事情,就仓促的学习了一些数仓相关的知识,但没搞多久,还要负责公司BI的工作,又开始补习数分相关的知识 ...
随机推荐
- 尚硅谷Java——宋红康笔记【day19-day24】
day19 测试Thread中的常用方法: start():启动当前线程:调用当前线程的run() run(): 通常需要重写Thread类中的此方法,将创建的线程要执行的操作声明在此方法中 curr ...
- 在模仿中精进数据分析与可视化01——颗粒物浓度时空变化趋势(Mann–Kendall Test)
本文是在模仿中精进数据分析与可视化系列的第一期--颗粒物浓度时空变化趋势(Mann–Kendall Test),主要目的是参考其他作品模仿学习进而提高数据分析与可视化的能力,如果有问题和建议,欢迎 ...
- Java8 Lambda表达式、Optional类浅析
1.概念 Lambda是一个匿名函数,可以将其理解为一段可以传递的代码(将代码像数据一样进行传递)可以写出更简洁.更灵活的代码.作为一种更紧凑的代码风格,使得java语言的表达能利得到了提升. 2. ...
- 【Linux进阶】使用grep、find、sed以及awk进行文本操作
目录 一.元字符 二.grep命令 1. 过滤出包含某字符串的行 2. 过滤出以某字符串开头(结尾)的行 3. 过滤出包含某字符串及其相邻的行 4. 过滤出不包含某关键字的行 5. 过滤出包含多个字符 ...
- 「模拟8.23」one递推,约瑟夫
前置芝士约瑟夫问题 这样大概就是板子问题了 考场的树状数组+二分的60分暴力??? 1 #include<bits/stdc++.h> 2 #define int long long 3 ...
- 将Winform和wpf的界面转换为CPF代码用来实现跨平台
CPF的设计器里带界面代码转换功能,将运行中的Winform或者wpf的程序界面转换为cpf代码,主要转换控件类型和布局,默认支持的是常用的原生控件.不支持Netcore,只支持.Netframewo ...
- centos7安装kubernetes1.18.5
一.设置hosts 修改主机名 [root@localhost kubernetes]# hostnamectl set-hostname master69 四台服务器安装kebernetes,一个m ...
- canvas介绍和用途
canvas介绍和用途 canvas(画布)主要是位图 svg(矢量图) canvas标签,必须要写的3个属性 id width height 为什么不在style中设置width和height呢? ...
- 流程自动化RPA,Power Automate Desktop系列 - 不讲武德的Windows10内置应用
简介 Power Automate Desktop 扩展Power Automate中的现有机器人流程自动化(RPA)功能,并使您能够自动化所有重复的桌面流程. 使用预生成的拖放操作或记录您自己的桌面 ...
- Linux中系统时间同步ntpdate简介
Linux服务器运行久时,系统时间就会存在一定的误差,一般情况下可以使用date命令进行时间设置,但在做数据库集群分片等操作时对多台机器的时间差是有要求的,此时就需要使用ntpdate进行时间同步.所 ...