上节主要讲了软件开发策划、软件需求分析、软件系统结构设计三个阶段,这节来分析以下几个阶段。

1.软件单元实现

2.软件集成和集成测试

3.软件系统测试

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

1.软件单元实现

软件单元实现过程中伴随有单元测试,单元测试一般是代码层面的测试,所以使用白盒测试。开发人员在这个阶段都会测试,但是很容易忽略掉记录该过程。

1.1实现每个软件单元

这里应该与需求分析中相对应,确保每个单元实现。

1.2 建立软件单元的验证过程

如何进行单元的验证,这部分应该在测试计划中体现。可以划分到总体测试计划中,也可以单独写单元测试计划。

1.3 软件单元的验收准则

这部分可以在测试用例中体现,根据需求制定预期输出或实现结果。

1.4 附加的软件单元验收准则

这部分只有安全等级为C的软件需要体现,A、B级不需体现。

1.5 软件单元的验证

单元验证的结果需要形成报告,可以输出单元测试报告,并且验证过程需要保留记录,可输出单元测试记录表。

2.软件集成和集成测试

2.1 集成软件单元

开发人员集成各个单元模块。

2.2 验证软件集成

该部分验证软件集成,目的是验证各个单元已经集成到软件中。和需求说明书对比,确保无需求遗漏。

2.3 软件集成测试

制定集成测试计划,并按照计划进行集成测试,最终形成集成测试报告,并且保存集成测试记录。

2.4 软件集成测试的内容

软件集成测试的内容需要体现需求分析中的各项需求是否实现并可按照预期运行。需要考虑的示例如下:

--所要求的软件的功能性;

--风险控制措施的实施;

--特定的时序和其他性能;

--内部和外部接口特定的功能;

--非正常条件下(包括可预见的误使用)的测试;

2.5 评价软件集成测试规程

评价集成测试规程的充分性,对集成测试过程进行评审。

2.6 进行回归测试

软件集成后,应进行回归测试。在验证已修改缺陷(bug)的同时,也需要验证是否因为修改缺陷(bug)引入了新的缺陷(bug)。

2.7 集成测试记录的内容

集成测试需记录如下内容:

  • 将测试结果(通过/未通过和反常清单)形成文件,即输出测试报告。

  • 保留充分的记录,已使测试可重复,即保留测试记录,根据测试步骤可以复现测试过程。

  • 标明测试者的身份。

2.8 使用软件问题解决过程

写软件问题解决报告,应将软件集成测试过程中的缺陷记录下来,并评估其严重程度。具体可以看YY/T 0664的第9章。

3 软件系统测试

3.1 为软件需求建立测试项

系统测试需要根据软件需求建立测试用例(其实在每个测试阶段都需要写测试用例),表达为输入触发、预期输出、通过/未通过准则和规程,覆盖全部的软件需求。测试用例设计的表单可参考如下:

3.2 使用软件问题解决过程

写软件问题解决报告,应将软件系统测试过程中的缺陷记录下来,并评估其严重程度。具体可以看YY/T 0664的第9章。

3.3 变更后再测试

在系统测试期间如果软件做出变更,应

  • 适当时,重复测试、实施经修改的测试或附加的测试,以验证纠正问题时所做变更的有效性;

  • 进行适当的测试,以证实没有引入非预期的副作用;

  • 实施YY/T 0664第7章中的有关风险管理活动;

    总之软件变更,需要走变更流程,同时对变更内容进行测试,并且评估其变更的风险。

3.4 评价软件系统测试

对系统测试阶段进行评审,需要验证:

a)所有的软件需求均经测试或以其他方式验证,即确保需求都被实现,无遗漏需求;

b)软件需求与测试或其他验证之间的可追溯性均已记录,即每个测试用例记录都可对应到相应的需求(软件可追溯性下次我细讲);

c)测试结果满足所要求的通过/未通过准则。

3.5 软件系统测试记录内容

软件系统测试记录需体现以下内容:

a)引用的测试用例规程,该规程体现所要求的行动和预期结果,可参考上面写的测试用例;

b)测试结果;

c)被测试软件的版本;

d)相关硬件和软件测试配置;

e)相关测试工具;

f)测试日期;

g)负责执行测试和记录测试结果人员的身份。

后记

本文是在实际执行0664标准的过程中的一些总结与体会。后续会更新医疗器械风险管理及配置管理的内容。

参考文献

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

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

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

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

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

    医疗器械软件产品经理必读的法规及标准-YY/T0664(一) 医疗器械软件的产品经理,需要熟读医药行业标准,在软件设计开发的整个生存周期过程中,我们需要根据<YY/T 0664 医疗器械软件 软 ...

  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. centos7 安装卸载程序rpm使用方法

    1.安装 rpm 包: ➢ 基本语法 rpm -ivh RPM 包全路径名称 2.卸载 rpm 包: ➢ 基本语法 rpm -e RPM 包的名称 ➢ 应用案例 删除 firefox 软件包 rpm ...

  2. 【题解】coin HDU2884 多重背包

    题目 Coins Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  3. Go语言十六进制转十进制

    Go语言十六进制转十进制 代码Demo import ( "fmt" "strconv" "testing" ) func Test_1(t ...

  4. Unity 不能添加脚本组件,脚本类可能丢失

    报错: 把脚本拖到游戏对象,显示如下 原因: 你可能修改了脚本名称,但此时Unity没有找到那个对应脚本名称的类

  5. idea debug无法启动 Error running 'Tomcat8': Unable to open debugger port (127.0.0.1:50168): java.net.SocketException "socket closed

    在日志里显示在 event log 里的 Error running 'server_web': Address localhost:1099 is already in use 显示1099单口已被 ...

  6. Blazor 组件入门指南

    翻译自 Waqas Anwar 2021年3月19日的文章 <A Beginner's Guide to Blazor Components> [1] Blazor 应用程序是组件的组合, ...

  7. 如何快速实现一个虚拟 DOM 系统

    虚拟 DOM 是目前主流前端框架的技术核心之一,本文阐述如何实现一个简单的虚拟 DOM 系统. 为什么需要虚拟 DOM? 虚拟 DOM 就是一棵由虚拟节点组成的树,这棵树展现了真实 DOM 的结构.这 ...

  8. Springboot:SpringBoot2.0整合WebSocket,实现后端数据实时推送!

    一.什么是WebSocket? B/S结构的软件项目中有时客户端需要实时的获得服务器消息,但默认HTTP协议只支持请求响应模式,这样做可以简化Web服务器,减少服务器的负担,加快响应速度,因为服务器不 ...

  9. Springboot:Springboot+mysql5.7搭建服务,超过8小时连接mysql失败

    报错信息 2017-03-12 03:00:02.539 ERROR 9311 --- [nio-9000-exec-4] o.a.c.c.C.[.[.[/].[dispatcherServlet] ...

  10. linux 之sed用法

    sed:Stream Editor文本流编辑,sed是一个"非交互式的"面向字符流的编辑器.在使用sed处理时,它把当前处理的行存储在临时缓冲区中,称为"模式空间&quo ...