西门子医疗是全球领先的医疗技术公司之一,在70多个国家拥有约66,000位员工。除其他产品以外,他们还为诊断和治疗成像、实验室诊断和分子医学等领域提供产品。公司在全球各地的开发者设计、开发和维护这些产品的软件。为了让这个分布式团队持续保持高质量,西门子医疗的计算机断层扫描(CT)嵌入式软件团队需要工具来自动分析和验证软件架构和源代码,并兼容已在使用的系统。该团队在Axivion Suite中找到了想要的东西:Axivion Suite满足高要求,且没有任何限制。
为何选择Axivion?
1. 即使在分布式团队中,Axivion也能帮助持续保持高质量代码
2. Axivion自动分析和验证源代码和软件架构
3. Axivion确保符合行业标准和要求(如IEC 62304)、编码和设计指南
4. 与现有开发环境的无缝集成,让Axivion从一开始就易于使用
5. Axivion提升了全球开发团队的生产力
6. Axivion Architecture Verification几乎消除了验证违规行为
“得益于在实施过程中的支持以及专业服务团队的出色支持,我们很快就轻松地将Axivion Suite集成到我们的开发环境中。现在软件中几乎不存在架构违例,而且在全球范围内,我们的开发团队都实现了更高标准的架构符合性代码。”
面对挑战
遵守全球标准是重中之重,尤其是在医疗技术领域。西门子医疗的CT嵌入式软件团队用于验证架构和代码的任何工具,不仅需要满足IEC 62304国际标准所涵盖的医疗器械软件开发规范,还必须满足客户的高要求,例如确保遵守美国国防部的要求。除了遵循通用的标准之外,还需将CT嵌入式软件团队的个人编码准则纳入检查。在此方面,任何新工具都应确保自动化分析和检查能无缝地融入全球分布的团队工作流程中,对现有代码与新代码进行系统性检查。
其中一个必不可少的前提条件是,新工具必须与开发者熟悉的专有系统兼容,如IDE、构建环境、编译器和配置管理系统。此外,开发过程是在虚拟机中使用原生Linux构建,然后通过Windows启动,所以任何新工具都需要能够兼容这种配置。在选择工具时,软件架构是一个需要重点考虑的关键因素,因为西门子医疗的CT嵌入式软件团队借助UML工具不断改进这一架构。作为自动化分析和检查流程的一部分,该工具必须能够确保持续符合使用这些工具建模的软件架构以及设计指南。
解决方案
在全面评估市场上现有工具后,西门子医疗的CT设备嵌入式软件团队选择了符合所有规定标准的Axivion Suite。Axivion专业服务团队为将久经考验的架构和代码分析工具完全集成到专有系统环境中的过程提供了支持。在初步配置的过程中,该团队与CT嵌入式软件团队的开发者一起简化和标准化了编码规则,并在开发和分析环境中实施这些规则以进行自动检查。除了确保无缝部署,Axivion还负责员工培训和提供即时支持。这样,员工更容易接受新工具,因为快速集成和实践培训很快在全球开发团队中产生了富有成效的结果,同时提升了他们的积极性。分析在微软Team Foundation Server(TFS)上自动运行。全球各地不断增加新项目,并可利用Axivion Suite以相同方式立即对其进行分析。
成功实践
借助Axivion Suite,西门子医疗的CT嵌入式软件团队可以使用高度集成的工具进行代码分析和架构验证,从而确保其设备软件的高质量。
遍及全球的团队开发者依赖自动分析功能来检查新代码,必要时在提交新代码前对其进行本地修正,或对架构进行后续调整。本地检查代码可防止偏离已定义的全局架构模型。
这几乎杜绝了架构违规,尤其是因为员工能立即收到关于自己创建代码的反馈,使他们能够更好地理解新的架构指南,从长远来看也能更有效地实现需求。
检查单个编码指南也明显提高了软件质量,目前软件质量符合最高要求,也符合美国国防部(DoD)检查源代码的要求。