关于费森尤斯医疗
费森尤斯医疗是全球为肾病患者提供产品和服务的最大供应商,全球有260多万患者定期接受透析治疗。通过其3,402家透析诊所组成的网络,费森尤斯医疗为全球290,250位患者提供透析治疗服务。费森尤斯医疗还是透析产品(如透析机或透析器)的主要供应商。除核心业务外,公司还致力于拓展护理协调领域的其他医疗服务范围。
费森尤斯医疗的产品拥有极长的生命周期。为了确保这些产品的持续开发和可维护性,公司使用Axivion Suite实现自动化代码和架构分析。
为什么选择 Axivion?
根据IEC 62304认证,适用于安全关键系统,最高可达C级
Axivion确保代码与CASE工具的架构相匹配
MISRA C:2004、MISRA C:2012、MISRA C++:2008和MISRA C/C++:2023仅是Axivion Suite检查的部分编码指南
Axivion在日常自动分析过程中识别任何新的偏差,并可配置如何处理遗留代码中的发现
使用Axivion Suite可显著减少测试时间和成本
开发者可通过接收对新创建代码的直接反馈,更好地理解架构模型
借助 Axivion Suite,我们可以控制软件的可维护性,从而保障我们的长期创新能力。
费森尤斯医疗集团软件工程总监 Thomas Stahl
挑战
费森尤斯医疗(FMC)的透析机用于过滤全球约30万名患者的血液。在急性透析领域,最新的产品是 multiFiltratePRO。该设备的软件采用C/C++编程,并将在未来多年内不断更新和开发。正是考虑到产品的生命周期较长,FMC对软件的质量和可维护性提出了极高要求。在产品漫长的使用周期中,各种硬件组件必然会停产,因此软件必须不断调整以适应新的硬件。这种经过严格维护的软件使公司能够自信地应对过时组件带来的挑战。在软件的开发和维护过程中,还必须遵守IEC 62304对医疗设备软件的要求。该标准规定,必须使用静态代码分析工具和编码指南来开发符合最新技术的系统,但在如何实施方面允许一定程度的自由。
然而,在软件质量方面不能做出任何让步,在医疗产品领域尤其如此。因此,FMC投入了大量的时间和精力来确保整个产品的质量。手动测试、代码审查和架构验证等测试阶段都需要投入大量精力,在软件漫长的生命周期中,这些成本会随着一次又一次的测试而逐渐增加。
解决方案
CASE工具用于为multiFiltratePRO系列设备的软件架构建模。当为产品引入新功能时,团队会首先检查是否需要修改架构,然后实施所需的任何更改。与所有开发结果一样,架构模型在版本控制系统中维护,并用于测试架构。
这就是Axivion Suite的用武之地。在持续集成的背景下,它通过执行静态代码分析来检查源代码,并将代码与CASE工具中的架构进行核对。Axivion Suite还能识别并定位克隆代码、死代码、度量违规和循环依赖关系。医疗技术软件必须符合标准,因此样式违规监控极为重要。
为确保合规性,在进行修改后的MISRA检查的同时,还要测试是否符合其他FMC特定规则,例如借助特定字典的命名约定。这提高了软件开发过程中的质量,避免了早期阶段的错误。Axivion Suite可在每日自动分析过程中识别任何新偏差。这种时间上的区分还允许使用"冻结"的遗留代码,可以理解的是,这些代码包含了更多的偏差,但由于回归原因,并没有主动处理这些偏差。在FMC,工作重点主要是防止出现新的违规行为,以抵御软件侵蚀。Axivion Suite会通过电子邮件和仪表板上的交互式报告及时将分析结果通知开发者。这种直接反馈使开发者有机会修正代码或对架构进行后续调整。
FMC认为,开发者的学习效果也是一个重要因素,因为他们通过接收对其新创建代码的直接反馈,可以更好地理解架构模型和其余有效规则。反过来,这意味着他们能够更好地实现长期需求。
成功
借助Axivion Suite,FMC现在可以应对其透析机软件所面临的众多挑战——对新创建的代码进行持续、全面的测试,以防止与架构模型的任何偏差,并排除代码中的错误和有问题的依赖关系,所有这些都可能影响产品质量。Axivion Suite还使用相关的代码检查来确保FMC符合IEC 62304标准。
得益于Axivion Suite自动分析功能的引入,FMC显著减少了测试时间和成本,而无需在软件质量保证方面做出任何让步。从长远来看,节省下来的成本可用于进一步开发产品和促进长期创新。由于定期反馈,这种分析有助于及时处理代码中的问题行或对架构模型进行战略性修改。同时,项目和开发者都能从对架构的深入理解和对C/C++编程的正向学习曲线中获益。
借助自动化代码分析实现的高质量代码也提高了长生命周期产品的可维护性,如 FMC multiFiltratePRO系列透析机。对硬件的依赖程度也降低了,因为当硬件停产时,代码的迁移和重用会更容易、更快,成本也更低。