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

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. SQL进阶总结(一)

    学而不思则罔,趁着假期好好总结下SQL的编程知识. 掌握SQL,首先有两个知识点要明确,要贯穿在我们整个学习SQL的过程中. SQL 不同于之前学习的面向过程.面向编程语言,SQL是一门面向集合的编程 ...

  2. 正则表达式re模块的基础及简单应用

    一.re的简介 re模块是python独有的匹配字符串的模块 该模块中的很多功能是基于正则表达式实现 二.正则表达式的基础语法 元字符 匹配内容说明 . 匹配除换行符以外的任意字符 \w 匹配字母或数 ...

  3. MySQL:count()用法

    语法 COUNT() 函数返回匹配指定条件的行数. COUNT(column_name) 语法 COUNT(column_name) 函数返回指定列的值的数目(NULL 不计入): SELECT CO ...

  4. P4779 【模板】单源最短路径(标准版)单源最短路Dijkstra

    题目描述 给定一个$n$个点,$m$条有向边的带非负权图,请你计算从$s$出发,到每个点的距离. 数据保证你能从$s$出发到任意点. 输入格式 第一行为三个正整数$n,m,s$. 第二行起$m$行,每 ...

  5. GD32F330 | ADC实例 基于DMA方式

    GD32F330 | ADC实例 基于DMA方式 简单记录一下 ADC多通道转换 DMA搬运 的使用,以 GD32F330G8U6 为例: 一.ADC 基础知识 12位ADC是一种采用逐次逼近方式的模 ...

  6. 「10.28」Dove 打扑克(链表)·Cicada 与排序(概率)·Cicada 拿衣服(各种数据结构)

    A. Dove 打扑克 考场思考半天线段树树状数组,没有什么想法 打完暴力后突然想到此题用链表实现会很快. 因为只有$n$堆,所以设最多有$x$个不同的堆数,那么$x\times (x-1)/2==n ...

  7. NOIP模拟测试30「return·one·magic」

    magic 题解 首先原式指数肯定会爆$long$ $long$ 首先根据欧拉定理我们可以将原式换成$N^{\sum\limits_{i=1}^{i<=N} [gcd(i,N)==1] C_{G ...

  8. Redis并发竞争key的解决方案详解

    1. 需求由来 1.Redis高并发的问题 Redis缓存的高性能有目共睹,应用的场景也是非常广泛,但是在高并发的场景下,也会出现问题:缓存击穿.缓存雪崩.缓存和数据一致性,以及今天要谈到的缓存并发竞 ...

  9. 第1章:Kubernetes 系统基础

    51.1.kubernetes介绍: 1.什么是kubernetes: (1)Kubernetes是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署.自动扩缩容.维护等功能. (2)使 ...

  10. [源码解析] 深度学习分布式训练框架 horovod (13) --- 弹性训练之 Driver

    [源码解析] 深度学习分布式训练框架 horovod (13) --- 弹性训练之 Driver 目录 [源码解析] 深度学习分布式训练框架 horovod (13) --- 弹性训练之 Driver ...