使用VectorCAST确保软件满足FDA认证需求
FDA|医疗器械开发中的机器学习规范:指导原则

FDA|医疗器械开发中的机器学习规范:指导原则2021年10月27日,FDA、加拿大卫生部和英国药品和保健品管理局(MHRA)联合发布了10项指导原则,可以为机器学习规范(Good Machine Learning Practice, GMLP)的发展提供参考。
这些指导原则将有助于促进安全、有效和高质量的使用人工智能和机器学习(AI/ML)的医疗设备的开发。
人工智能和机器学习技术有可能通过从每天提供医疗服务的过程中产生的大量数据中获得新的和重要的见解,来改变医疗服务。
它们使用软件算法从现实世界的使用中学习,在某些情况下可能使用这些信息来改善产品的性能。
但是,由于它们的复杂性以及开发的迭代和数据驱动的性质,它们也有独特的考虑。
这10条指导原则旨在为开发机器学习规范奠定基础,针对这些产品的独特性质。
它们还将有助于培养这一快速发展领域的未来增长。
这10条指导原则确定了国际医疗器械监管机构论坛(IMDRF)、国际标准组织和其他合作机构可以努力推进GMLP的领域。
合作的领域包括研究、创建教育工具和资源、国际协调和共识标准,这可能有助于为监管政策和监管指南提供信息。
我们设想这些指导原则可用于:采用在其他部门已被证实的做法;对其他部门的做法进行调整,使其适用于医疗技术和卫生保健部门;为医疗技术和卫生保健部门创造新的具体做法。
随着基于AI/ML的医疗设备的发展,GMLP的规范和共识标准也必须随之发展。
如果我们要赋予利益相关者权力,以推进这一领域负责任的创新,与我们的国际公共卫生伙伴建立强有力的伙伴关系将是至关重要的。
因此,我们希望这项初步的合作工作能够为我们更广泛的国际参与提供信息,包括与IMDRF的合作。
我们欢迎你继续通过的公共目录(FDA-2019-N-1185)提供反馈,我们期待着与你一起参与这些工作。
数字健康卓越中心正在为FDA带头开展这项工作。
请直接与我们联系:*********************.gov,*****************.uk,和********************************.ca。
VectorCAST的基本操作步骤

VectorCAST的基本操作步骤本⽂⽬录1. 软件简介2. 基本操作步骤1. 新建⼯作⽂件夹2. 创建⼯程3. 创建环境4. ⽣成测试⽤例3. 常见问题4. 额外笔记_汽车安全完整性等级(ASIL,Automotive Safety Integrity Level)⼀、⼯具(软件)简介VectorCAST / C++™ 是单元测试⼯具,能够对基于 C 或 C++代码的项⽬进⾏单元测试或集成测试, 能够轻松地独⽴测试整个项⽬中任何⼦⽂件或⼦⽂件集。
VectorCAST / QA™是系统测试⼯具,能够对基于 C 和 C++代码的应⽤程序进⾏代码覆盖率分析。
VectorCAST / Analytics ⼯具⽤基于⽹页的仪表板⽅式来展⽰源代码的测试结果,使您能够⽅便的查看每个⼦⽂件的测试数据及趋势,或者在多个⼦⽂件之间进⾏测试数据⽐较。
VectorCAST / Lint 是静态测试⼯具,基于 MISRA C(2012)/C++(2008)规范进⾏⼯程级别的代码静态检测,可⾃主删减规则。
------VectorCAST™解决⽅案主要由以下⼏个模块组成:VectorCAST/C++ & Ada,对C/C++/Ada 程序的单元测试和集成测试环境的⽣成、编辑、构建、执⾏、覆盖率分析、复杂度分析和测试结果统计等等。
VectorCAST/Cover, 统计⽆论是单元测试、集成测试还是系统测试的覆盖率,并可以将不同次测试的结果综合到统⼀的报告中。
VectorCAST/MCDC, 统计MC/DC 覆盖率。
VectorCAST/Manage, ⾃动化的回归测试功能及项⽬的整体质量集中管理中⼼。
VectorCAST/Lint, ⾃动化代码静态分析模块。
VectorCAST/RSP, ⽤户宿主机和⽬标机的通讯,收集测试⽤例在⽬标机执⾏之后的测试结果和数据。
嵌⼊式的测试必备模块。
VectorCAST/RGW, ⽤于集成需求管理系统,使⽤测试⽤例跟踪测试需求并导出数据。
FDA Software Validation软件验证指南

U.S. Department Of Health and Human Services Food and Drug Administration Center for Devices and Radiological Health Center for Biologics Evaluation and Research
Additional Copies 额外话题
CDRH Additional copies are available from the Internet at: /MedicalDevices/DeviceRegulationandGuidance/GuidanceDocuments/UCM085281.htm. You may also send an e-mail request to dsmica@ to receive an electronic copy of the guidance or send a fax request to 301-847-8149 to receive a hard copy. Please use the document number (938) to identify the guidance you are requesting. CBER Additional copies are available from the Internet at: /cber/guidelines.htm, bywriting to CBER, Office of Communication, Training, and Manufacturers' Assistance (HFM40), 1401 Rockville Pike, Rockville, Maryland 20852-1448, or by telephone request at 1800-835-5709 or 301-827-1800. (略)
VectorCAST功能方案

VectorCAST自动化测试软件方案一、功能和性能指标VectorCAST™是主要用于C/C++/Ada程序的自动化测试软件,能够运行在Windows和Linux等多种开发环境。
其主要功能包含自动化的单元测试、集成测试、覆盖率分析、回归测试、代码静态分析和测试需求跟踪,其最大特点或相比于其它相关同类工具最大的优势,就在于最大程度的自动化和更适用于嵌入式环境。
以下予以分别阐述:单元测试VectorCAST 会根据被测代码和开发环境自动构建测试架构(Test Harness),在此基础上用户可以根据需要自动地生成或添加测试用例,并灵活地配置以实现不同的测试需求。
自动生成的架构中包括:被测对象、测试驱动、桩函数和依赖条件。
如下图1所示。
图1. VectorCAST自动构建的测试架构自动生成测试用例VectorCAST 支持用户以多种形式的输入输出参数自动地生成测试用例,不需要用户编写测试代码,完全通过鼠标和输入窗口自动完成:o最大值、最小值和中间值o二进制、十进制、八进制和十六进制数值o输入参数范围o多个参数自动排列组合及配对o等价类划分o输入值列表o期望输出值列表o期望值容错误差范围o从外部数据源,如xlc, csv 等,中导入测试用例参数图2:测试用例输入输出值编辑窗口VectorCAST 可以根据不同的覆盖率的算法分析测程序逻辑,自动地生成满足不同要求覆盖率要求的测试用例,以尽可能地达到覆盖率要求。
对于未能覆盖的部分,用户可以根据工具提供的逻辑分析报告,如基本路基逻辑和MC/DC 等价类矩阵,用户按照分析结果提示的参数条件额外添加少量测试用例即可达到100%的覆盖率(参见下图3)。
o基本路径覆盖—自动生成用例通常可以自动达到90%~100%的覆盖率o MC/DC覆盖—自动生成用例覆盖率视测代码实际情况而定图3:MC/DC等价类分析矩阵桩函数被测函数所调用的其它函数可以通过形式被执行,被调函数本身或桩函数。
FDA:关于数据完整性指南十八问和实验室审计缺陷案例分析

FDA:关于数据完整性指南十八问和实验室审计缺陷案例分析2018年年底,FDA关于《数据完整性及CGMP合规指南》完成了定稿发布。
本指南澄清了数据完整性在21CFR210,211和212中所要求的现行药品生产质量管理规范中的作用,它提供了关于按照CGMP要求创建和处理数据的机构看法。
一般情况下,FDA指南文件不具有规定依法强制执行责任,它充许企业使用灵活和基于风险的策略预防和检测数据完整性问题。
本指南是实验室数据完整性的一个重要参考文献。
无论是官方认证、检查,还是客户审计,用它来指导实验室的准备工作可以更深入、更全面。
作为实验室人员,对于这份指南的理解也决定了技术人员掌握数据完整性和CGMP合规的程度。
本文摘录了这份指南的18个问题,具体的回答在原指南中可以查阅。
同时我们根据这份定稿的指南分析了FDA近两年检查的8个案例中关于实验室部分的缺陷,以飨读者,限于笔者水平有限,意见仅供参考。
FDA关于行业指南:数据完整性与药品CGMP合规的18个问题:1请澄清以下术语在用于CGMP记录时的含义。
2.什么时候允许宣布一个CGMP结果无效并在判定批合格时排除该结果?3.是否需要对计算机系统中的每个CGMP工作流均进行验证?4.应如何限制对CGMP计算机系统的访问?5.为什么FDA会关切使用共用计算机系统登录账号?6.空白表格要如何受控?7.审计追踪应由谁审核?8.审计追踪应多久审核一次?9.电子副本是否可用作电子或纸质记录的准确复制本?10.是否可以将单机版计算机化实验室仪器,如FT/R仪器中的原始电子记录保存为纸质打印件或静态记录?11.主生产和检验记录中是否可使用电子签名替代手动签名?12.电子数据何时成为一份CGMP记录?13.为什么FDA在警告信中将“系统适用性”或检测、准备或系统平衡运行中使用实际样品作为缺陷?14.是否可以只保存重新处理后的实验室色谱图得到的最终结果?15.是否可以在书面CGMP质量体系以外以非正式方式处理内部提醒或关于质量问题的信息,如潜在数据造假问题?16.是否要将防止和发现数据完整性问题培训作为常规CGMP培训计划的一部分?17.是否应允许FDA查看电子记录?18.FDA建议如何解决数据完整性问题?案例1公司:BayerPharmaAG地点:德国检查官:JustinA.BoydQC缺陷一:没有保存和复核所有的检测记录。
VectorCAST功能和特点(simple)

VectorCAST功能和特点VectorCAST软件测试解决方案,专门为用户提供自动化的测试和质量保障体系,尤其适用对自身有高安全性和高可靠性要求的嵌入式应用。
其功能覆盖了“单元测试”、“集成测试”、“覆盖率分析”、“回归测试”和“静态分析”等项目前期测试所涉及的各个环节,以及部分的系统测试功能,能够应用于C/C++和Ada语言所开发的项目,广泛支持各类主机环境和嵌入式平台。
由于其对嵌入式领域的长期专注,以及在自动化程度高,支持最多的嵌入式编译器和更方便地跟嵌入式环境集成等方面的显著技术优势,VectorCAST已成功应用于欧美的航空航天、国防军工、汽车电子、轨道交通、工业控制、医疗器械和电力电子等行业内的5000多家客户,并获得广泛的好评。
在提高用户测试效率和质量的同时,也可以协助用户符合相关行业认证标准,如ISO26262, IEC 61508, En50128, IEC 62304和Do178B等,并获得了NASA和TUV的认可和认证。
VectorCAST的技术特点主要包括:∙针对模块单元和接口集成的嵌入式软件测试∙根据不同行业的认证标准自动智能地生成测试用例∙集合系统测试和代码测试的覆盖率分析∙最精简的测试套件和数据驱动机制更适用于嵌入式软件测试∙广泛地支持主流的嵌入式环境∙强大的回归测试系统持续地保证项目质量的稳定∙集成需求管理系统让测试用例对项目需求进行跟踪∙简单易用无需编写测试代码最大程度地实现自动化∙与常用的代码静态分析工具集成∙提供行业认证所需工具认证证书和验证包∙同时支持C/C++/Ada等嵌入式开发语言VectorCAST功能模块包括:VectorCAST/C++:用于C/C++语言程序的单元测试和覆盖率分析VectorCAST/Cover:统计系统测试的覆盖率,提供图形化界面和命令行两种使用模式VectorCAST/RSP:支持在嵌入式环境的模拟器和目标机上执行测试并获取测试结果VectorCAST/MCDC:支持MC/DC覆盖率分析VectorCAST/Manage:管理自动化的回归测试VectorCAST/RGW:集成DOORS等需求管理系统,将需求导入到VectorCAST,并将关联的测试用例的执行结果导出达到需求管理系统VectorCAST/Lint: C/C++程序的静态编码规范检查VectorCAST License:VectorCAST软件按照不同的版本和多个补充模块进行销售,每个版本包含不同的模块,分别适用于主机平台、嵌入式仿真环境和嵌入式硬件环境,详细的配置请参考报价单。
at方案比tc方案

at方案比tc方案在软件开发中,AT方案(Acceptance Test,验收测试)和TC方案(Test Case,测试用例)是常见的两种测试方案。
对于一个软件产品而言,验收测试和测试用例都是重要的测试环节,在保障软件质量、功能稳定性以及用户满意度上起着至关重要的作用。
然而,在AT方案与TC方案之间,哪一个更为有效、更能满足需求,这是一个有争议的话题。
AT方案是一种以用户需求为导向的测试方案,它强调的是从用户的角度出发,测试软件是否符合用户需求和期望。
AT方案的设计思路是基于软件的最终目标用户,即客户。
在这种方案下,测试人员会模拟真实的用户场景,使用软件,进行各项功能的测试,并通过用户体验来评估软件的好坏。
这种测试方案的目的是确保软件能够满足用户的实际需求,提供用户期望的功能和体验。
与之相对应的是TC方案,它是一种基于具体测试用例的测试方案。
测试用例是根据软件功能的不同,设计的一组测试步骤和数据,旨在验证软件的正确性和稳定性。
TC方案将测试重点放在了对软件的功能、性能和异常情况的覆盖上,通过编写和执行测试用例来检测和修复软件中的问题。
这种测试方案更注重细节和全面性,通过编排不同的测试用例来检查软件是否按照预期进行工作。
要说AT方案和TC方案哪个更好,其实并无绝对的答案。
因为这两种方案在不同的场景下发挥着不同的作用。
如果一个软件更加关注用户的体验和使用感受,较为追求用户的友好性,那么AT方案更为适合。
AT方案能够帮助发现软件的交互是否符合用户预期,是否便利易用。
而TC方案则更适合在软件开发的早期,通过全面的测试用例来发现和解决潜在的技术问题。
TC方案可以有效地检测各种异常情况和边界条件,确保软件的鲁棒性和稳定性。
为了更好地测试软件,也有很多团队采取了AT和TC方案的结合使用。
他们认为两者相辅相成,各有优势。
通过结合AT方案和TC方案,可以在保证用户体验的前提下,对软件进行全面的功能和稳定性测试。
这种方法能够有效地满足用户的需求,同时也保证了软件的质量和可靠性。
基于VectorCAST软件的白盒测试技术研究

基于VectorCAST软件的白盒测试技术研究作者:王夏辉来源:《科技视界》2018年第11期【摘要】作为软件质量保证的重要手段之一,软件测试逐渐得到重视。
白盒测试技术是单元级与部件级软件测试最常使用的技术之一,其在嵌入式软件测试领域的作用无可替代。
本文介绍了VectorCAST软件,以及基于该软件的白盒测试过程。
【关键词】软件测试;白盒测试;VectorCAST中图分类号: TP311.52 文献标识码: A 文章编号: 2095-2457(2018)11-0022-002DOI:10.19694/ki.issn2095-2457.2018.11.008【Abstract】as one of the important means of software quality assurance, software testing has been paid more and more attention. White box testing technology is one of the most commonly used techniques in unit and component-level software testing, and its role in the field of embedded software testing is irreplaceable. This paper introduces VectorCAST software and the white box testing process based on the software.【Key words】Software testing; White box testing; VectorCAST0 前言随着软件技术的发展,软件规模及软件逻辑复杂度获得了巨大的增长,而同时伴随的是不可避免的软件缺陷。
近些年由于软件缺陷导致的事故案例不时见诸媒体,这不仅对软件开发方与管理方的声誉及经济造成了打击,更有可能对软件使用者的财产或生命安全造成危害。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
使用VectorCAST 确保软件满足FDA 认证需求简介VectorCAST 系列产品旨在协助开发团队实现整个软件生命周期中的自动化测试。
本白皮书将以专业的视角解析VectorCAST 针对FDA 测试需求提出的自动化测试方案,该方案能够完美 满足FDA 认证指南 “General Principles of Software Validation Guidance for Industry and FDA S- -taff ”,尤其对该指南中5.2.5章节“Testing by the Software Developer ”中的测试需求提供了 最优的解决方案。
FDA 指南中关于软件测试的明确要求:> > >单元测试。
集成测试。
系统测试。
FDA 指南第5.2.5章节中对软件测试的需求描述:© 2010 - All rights reserved - Vector SoftwareVectorCAST 支持以上两节中的所有测试需求,包括生成FDA 审计过程中所需的所有测试 报告。
VectorCAST 产品线包含以下四种完整的产品系列:面向单元测试与集成测试的自动化回归与管理工具。
图1 - VectorCAST 在软件生命周期中的应用© 2010 - All rights reserved - Vector SoftwarePage2VectorCAST/C++VectorCAST/C++提供了自动化的软件测试关键步骤,包括:如图2所示,VectorCAST/C++生成的可执行测试套件包括以下内容:测试驱动,待测试源代码文件,用户针对单独函数自定义的桩(Stubs),以及所有未产生桩函数的调用。
基于数据驱动的测试套件测试可以在测试执行过程中自动读取测试数据,对于同一个测试套件,即使在不同测试用例中被调用,也不需要重复编译与执行图2 –测试套件自动生成在测试过程生成中促进源代码调优的测试用例VectorCAST/C++将测试用例生成完全自动化,同时允许用户指定输入数据与输出结果。
测试用例(包含输入与期望输出)将被自动保存以供后续的回归测试使用。
© 2010 - All rights reserved - Vector SoftwarePage 3测试执行VectorCAST/C++提供三种测试用例执行方式:1.在主机(PC或UNIX服务器)本地执行。
2.与VectorCAST/RSP结合,使用模拟器(Simulator或Emulator)在主机上本地执行。
3.与VectorCAST/RSP结合,在嵌入式目标板上直接执行。
用户可以使用图形化执行模式(GUI)或命令行模式(CLI)执行。
报告测试过程中的通过/失败结果以及代码覆盖率VectorCAST/C++能够自动生成包含代码覆盖率与测试用例通过或失败情况详细测试报告,支持语句覆盖率、分支覆盖率以及MC/DC覆盖率标准。
高效的回归测试功能在软件开发的整个生命周期中,VectorCAST/C++能够高效的维护自动化回归测试过程中所需的代码与数据。
在与VectorCAST/Manage结合后,VectorCAST/C++可以有效的实现回归测试流程整体自动化。
© 2010 - All rights reserved - Vector SoftwarePage 4VectorCAST/CoverVectorCAST/Cover基于已测试(也称之为覆盖)的代码对测试的有效性范围进行计算。
用户可以对方便快捷地对部分代码或整体代码的测试覆盖率进行分析。
Array VectorCAST/Cover 基于功能测试或系统测试阶段的数据生成相应的覆盖率,主要分析面向特定程序以及满足高层系统需求而构建的测试用例。
使用此种方式生成的测试覆盖率可以VectorCAST/C++实现互补。
根据单元测试或集成测试阶段的信息,VectorCAST/C++ 同样能够生成相应的测试覆盖率,主要分析程序算法是否按照预期正确运行、异常状况是否已经被测试,以及所有语句是否已被覆盖。
由于在系统测试阶段基本上不能实现测试的完全覆盖,VectorCAST建议单元测试、集成测试以及系统测试相结合以达到100%的覆盖率.实现全面覆盖图3对使用VectorCAST/Cover 和VectorCAST/C++实现全面覆盖的两种方法进行了详细说明:图3 –达到100%覆盖率的两种方案© 2010 - All rights reserved - Vector SoftwarePage 5方案1适用于传统的测试方法,测试流程由独立的模块开始,最终集成至整个系统。
方案2 适用于基于需求的测试,首先对高级别的系统需求进行测试,之后进行较低级别的单元测试或集成测试需求。
针对方案1,VectorCAST/C++有效实现了单元测试和集成测试,用户可以使用内建的覆盖率 功能对代码进行覆盖率分析并生成报告。
对于功能测试和系统测试,VectorCAST / Cover 在 与VectorCAST/C++ 整合数据后可以有效确保覆盖率达到100%。
针对方案2(与系统测试结合),用户可以使用VectorCAST/Cover 分析代码覆盖率中的“漏 洞”,VectorCAST/C++支持用户手动执行测试用例以提高整体覆盖率,同样的,VectorCAST/ Cover 在与VectorCAST/C++整合数据后可以有效确保覆盖率达到100%。
VectorCAST/ManageVectorCAST/Manage 是VectorCAST 单元测试与集成测试工具的扩展,用户可以将前期开发的 VectorCAST 测试环境导入VectorCAST/Manage 中的回归测试套件,对所有单元测试与集成测 试活动的方便的进行单点管控,在回归测试套件中进行日志概览、报告汇总,以及查看使用 不同颜色标注的测试动作详细信息。
图3 - VectorCAST/Manage Report 报告示例© 2010 - All rights reserved - Vector SoftwarePage6VectorCAST 嵌入式测试VectorCAST/Manage 是VectorCAST 单元测试与集成测试工具的扩展,用户可以将前期开发的 通过与VectorCAST 运行时支持包(RSP)结合,VectorCAST/C++可以在嵌入式目标板或模拟器上 实现实时程序无缝单元测试与集成测试。
VectorCAST/RSP 同时集成了命令行,能够调用交叉 编译器在目标环境与VectorCAST/C++之间建立I/O 连接。
整个测试动作对用户是透明的。
参考图4,在集成RSP 后,VectorCAST/C++ 可在主机平台上针对一个或多个程序代码单元方便 快捷的构建测试套件,RSP 可以确保每个测试套件都被正确编译并自动下载到目标环境上执 行。
简而言之,VectorCAST/C++可以在主机平台运行用例以测试目标板上的应用程序。
图4 – VectorCAST 的嵌入式测试架构© 2010 - All rights reserved - Vector SoftwarePage7商业测试工具认证FDA认证指南“General Principles of Software Validation Guidance for Industry and FDA Staff”5.2.5章节“Testing by the Software Developer”对软件测试工具的描述为:“软件测试工具是能够可靠、全面、高效的满足预期测试需求的软件产品,这些商业测试软件可能包括内建的支持软件以方便单元(模块)测试以及之后的集成测试(如驱动和桩等)。
软件测试工具的质量等级不应少于它们应用的软件产品。
同样地,测试工具应提供相应的验证文档证据对其指定功能进行验证与说明”VectorCAST以资格证明文档的形式提供软件认证功能。
资格证明文件包括工具操作要求和工具认证资料.工具操作要求文档包括:> > > > VectorCAST功能核查要求项目操作环境配置管理流程VectorCAST满足认证需求的测试方案工具认证资料文档包括:> 工具针对每个特定需求的测试数据以及测试结果测试工具认证流程一般包括与资格认证人员的交流以及相应的认证授权。
文档的样本可按需提供。
© 2010 - All rights reserved - Vector SoftwarePage 8结论根据FDA认证指南“General Principles of Software Validation Guidance for Industry and FDA Staff”中的测试需求,为保证全面严格的产品检测,软件的开发和测试工作一般基于测试Array以及相关的测试用例分为几个相应的等级,如图5所示。
VectorCast已经帮助非常多的医疗器械制造厂商使用达到了相应的测试级别.Page 9附加资料此白皮书旨在介绍 下的产品文献资源。
关于Vector SoftwareVector Software, Inc.是国际领先的自动化软件测试工具独立供应商,主要面向对安全关键嵌入式应用的开发 团队。
Vector Software,的VectorCAST 致力于单元测试,集成测试和系统测试阶段相关复杂工作的自动化和配 置管理工作,VectorCAST 支持C 、C++和Ada 编程语言。
© 2010 - All rights reserved - Vector SoftwarePage10。