概述
haldex是一家瑞典上市公司,在全球范围内经营商用车业务,如重型卡车,拖车及客车,年营业额约6亿美元,在全球设有23家分公司,拥有超过2200名员工。
haldex致力于车辆动力及安全性的研究,其制动及悬挂系统获得业内的广泛认可。haldex商用车系统部使用prqa静态分析凯发娱乐登录的解决方案已有超过十年的历史。从2002年开始,qac及misra c已经成为其开发过程中不可或缺的一部分。另外,在其商业拖车制动系统的安全关键嵌入式软件开发过程当中也已经开始使用这一凯发娱乐登录的解决方案。haldex开始在其fleet 凯发娱乐登录的解决方案中使用qac 。fleet 应用程序从haldex嵌入式设备中提取原始数据,并向运营商提供这些信息,使得他们能够更为有效地管理他们的车队。
关键安全制动系统嵌入式软件的发展
haldex的嵌入式软件将部署在关键安全应用程序当中。haldex商用车系统部所采用的质量管理体系通过了iso / ts 16949认证,该标准依托于iso 9001,适用于汽车相关产品的设计、开发、生产、安装和服务,强调持续改进、缺陷预防并减少在供应链中产生的偏差和浪费。但iso 26262功能安全标准仅适用于小于3500千克的乘用车,这一标准并不直接适用于haldex的产品。在软件开发的相关部分,ts16949给haldex提出了更高的要求,如“验证符合所有规定的要求”。但ts16949并没有给出如何实现该规定的方法。
haldex追求工业应用案例,采用了misra c编码标准。起初,他们的客户对其并不认可,但haldex很早就已意识到:提高安全关键应用程序代码质量的先决条件就是遵从misra c编码准则。与编码规则同样重要的是识别违反misra c编码规则的代码自动分析工具,对于该工具的选择,核心指标之一就是精度,工具需要具备识别真正违规的能力。与此同时,工具也要减少误报。从2002年起,位于英国雷迪奇的haldex嵌入式软件工程团队开始使用qac及misra合规性模块来实现misra c 的合规性检查。拖车系统总工程师dudley harrison指出:“qac已经成为我们软件开发过程中不可或缺的一部分。很难想象,将未经qac检查的代码部署至安全关键部分时会发生什么状况。”

目前,haldex打算将其嵌入式产品转移到新的平台上。他们的目标是尽可能地复用成熟的遗留代码。haldex非常清楚,一款软件在某个特定平台上可能是稳定的;但在新的平台上,其稳定性就难以得到保证。当进行平台转移工作的时候,haldex会仔细查看qac“可移植性”的相关消息。通过这些消息,可以确定哪些源代码可执行文件的性能会因为编译器/平台的选择而受到影响。高级软件工程师robin sayce-jones确定了另一个将与prqa进行紧密合作的领域。“多年以来,我们意识到需要一个有效的偏离管理流程,据此可以授权并记录那些未能遵循编码规范的行为。misra规定合法的偏差是允许的,而prqa编码专家将针对如何运用实施这些偏差提供很好的指导。”
将prqa工具从安全关键应用延伸至非安全关键应用:fleet
haldex非常清楚,其核心制动原件的传感器产生的数据量非常庞大,这些包含关键参数的数据对于车队运营商来说非常有用。如:制动性能、车辆速度、轴重、稳定性、拖车里程、贮存箱压力、道路条件。因此,haldex制作了fleet 应用程序来收集并呈现这些数据。拖车运营商通过分析这些底盘、车轴和轮胎反馈的数据,使得车队的运营实现高安全,低费用。显然,在制动组件中使用的嵌入式软件的报告工具要比在fleet 中使用的更为严格。前者显然是安全关键应用,abs或牵引力控制系统等功能如果发生任何意外,都将引发严重的后果。而fleet 则不需要同等严格的标准,因为其不会产生直接影响安全的缺陷。然而,fleet 的界面会明确标示出存在的缺陷,用户也有可能看到这些存在的缺陷。

fleet 是在visual studio ide下用c 语言实现的。haldex早已经体会到了qac带来的效益,所以他们直接选择了qac 。高级软件工程师robin sayce-jones说:“购买qac 之后,我们分析了过去12个月内编写的所有c 代码。我们发现,25%的缺陷在编码阶段就被qac 识别了出来,没有带入单元测试或系统测试。如果某个缺陷在单元测试或系统测试时才被发现,需要一名工程师耗费两天的时间去处理这个缺陷。因此,qac 节省了我们很多的时间,qac 的投资回报率不到18个月。”
总结
经过10余年的使用,haldex认为使用qac(misra c编码标准)是其安全关键嵌入式软件开发过程中不可或缺的一部分。prqa工具针对某些非安全相关的项目(如fleet ),其提高软件质量的作用也是非常巨大的。haldex认为:qac和qac 不仅帮助他们提高了代码的质量,同样节省了费用的支出,prqa工具的投资回报率不到18个月。
prqa公司
qac和qac 都是行业先进的针对c和c 语言静态分析工具。它们提供了一套全面的功能帮助实施多种编码规则并且协助寻找新代码或遗留代码中隐含的缺陷。他们提供一种自动并且非常有效的手段,针对所选择的编码标准分析代码,给复杂的项目提供清晰的度量和可视化代码结构。在产品开发初期使用这些工具可以尽早识别代码中存在的编码问题,高质量的代码可节省开发过程后期的时间成本和费用成本。我们可以使用qa.verify建立质量保证体系。它扩展了语言分析功能以及数据管理。将数据依据利益相关者(如开发组长、架构师、项目经理、高级管理人员甚至外部客户和供应商)关心的部分不同,呈现出不同内容的报告内容。
prqa公司致力于编码标准25余年,是行业中的佼佼者。该公司是备受推崇的高度集成c 编程标准的发起者,iso工作组的投票代表。prqa公司的高级技术人员同时也是misra工作组的主要核心成员,并且是这些标准的合著者。同时,prqa公司还提供qac和qac 工具的misra合规性模块。