Miracor省去了运行时错误,并缩短测试时间为III类医疗器械软件

挑战

确保第三类医疗装置的安全性用于改善结果为支架的收件人

使用Polyspace代码证明者证明如果没有在软件运行时错误,引导代码审查的,补充功能测试,并支持验证过程的监管机构批准金宝app

结果

  • 未使用的和错误的代码标识
  • 监管部门的批准验证过程建立
  • 代码审查效率提高

“从开发人员的角度来看,Polyspace代码证明器的主要优点是在代码质量和正确性的一个更高的水平。Polyspace代码证明器帮助Miracor证明这一点质量和正确性的监管界,包括FDA,证明我们的设备是安全的。”

拉尔斯Schiemanck,Miracor医疗系统

Miracor的冲击的pIC 50系统。


支架植入术可以恢复急性冠脉综合征冠状动脉血流量给病人。然而,患者仍然有限制血流量的支架,这可能会导致更大的梗塞,左心功能差,最终心脏衰竭高达40%。

该的pIC 50®动力系统,由Miracor医疗系统开发了一种创新疗法,改善微循环,降低了下面的支架置入梗塞面积。所述的pIC 50(压力控制间歇冠状静脉窦阻塞)系统充气一个小气球插入到冠状窦,以暂时阻止血液流出,提高冠状静脉压力,并迫使血液返回到受影响的组织。的pIC 50控制软件监控压力并同步气囊充气和放气与患者的心电图。

作为第三类医疗器械,该系统的pIC 50必须坚持以患者安全最严格的标准。为了帮助确保其软件的安全性,Miracor使用Polyspace代码证明器™检测C代码,引导代码审查的错误,并补充功能测试的做法。

“Polyspace代码证明方给我们的安全层,增加了我们的信心,我们的代码是从运行时没有错误,并且使我们能够加快我们的代码审查和测试,”拉尔斯Schiemanck,在Miracor首席技术官说。

挑战

该脉冲的pIC 50系统具有管理气球的压力两个独立的微控制器。一个作为气动系统的主控制器,另一个作为安全备用。两个控制器的嵌入式代码由手C.书面

工程团队已经建立了代码审查和单元测试,以验证该代码,但是认识到,单独的单元测试无法覆盖投入,执行路径和变量值所有可能的组合。他们想用流通式的控制和数据流为基础的语义分析来证明软件组件的正确性和检测除数为零,缓冲区溢出和其他运行时错误。

Miracor需要符合III类医疗器械日益严格的监管要求。该公司寻求CE欧洲,标志着这需要由认证机构的认证,以及来自FDA在这些监管机构的美国,以确保批准上市前批准,Miracor需要表现出硬件和软件的安全性。从历史上看,软件已经呈现比硬件更大的认证挑战,因为它往往是比较困难的评审理解。Miracor想用静态分析和形式化方法来简化认证过程。

Miracor工程师使用Polyspace代码证明者证明不存在运行时错误,确定需要进一步审查的代码区,并增加其在软件的总体质量的信心。

参加MathWorks公司培训服务提供了一个为期两天的培训课程后,Miracor工程师分析与Polyspace代码证明器的遗留代码。

Polyspace代码证明器颜色编码每个C运行时显示其状态:绿色代码免费运行时错误的证明,红色为已知的每一个执行操作的时间,灰色无法访问的(死)的代码是错误代码,橙色操作这可能是故障在一定条件下。

研究小组使用这些结果来改进代码。他们取消了无法访问的代码,减少微控制器软件的足迹,并纠正所有操作故障证明,包括在没有标准的操作活跃代码的一部分除以零错误。

在随后的代码审查,团队集中在橙色高亮显示的操作,知道剩下的绿色代码已经被证明是自由运行时错误。

随着多个嵌入式微控制器在系统的pIC 50同时运行时,Miracor团队必须要意识到的竞争条件等并发问题。在配置Polyspace代码证明者,团队确定了可能发生这些情况的代码的几个关键领域。

该小组制定了每个计划的代码审查之前对项目的遗留和新开发的代码的约25000线运行Polyspace代码证明器和使用效果,以帮助指导各审查过程的政策。

Miracor的冲击的pIC 50系统已被用于治疗在英国,爱尔兰和匈牙利。临床研究发现,在心肌梗死面积统计显著的减少,以及改善心脏功能,在与系统处理。该公司正在寻求从美国FDA上市前批准。

结果

  • 未使用的和错误的代码标识。“Polyspace代码证明方结果显示死代码以及除以零和缓冲我们的遗留代码流的错误,”在Miracor软件开发项目经理克里斯托夫·布洛赫说。“虽然这些错误不会影响患者安全,检测他们给了我们在软件的质量更有信心。”
  • 监管部门的批准验证过程建立。“当我们从FDA寻求上市前批准状态,Polyspace代码证明者是中央对我们的努力,证明我们已经做了我们最大的努力来证明代码的正确性,保证代码质量,” Schiemanck说。“对于我们来说,这证明我们的技术得到了验证,并与Polyspace代码证明器和其他国家的最先进的工具是必需的验证。”
  • 代码审查的效率提高。“随着Polyspace代码证明者,我们看到的部分代码已被证明安全,所以我们知道我们不会有任何运行时错误或计算错误,” Schiemanck说。“因此,我们可以回顾更少的代码,因为我们专注于可能出现的问题可能仍然存在的部分。”