登录 | 注册 退出 我要上传 我要投稿

质量量化在汽车嵌入式系统和软件中的应用

专栏作者 2023-07-17

内容提要:本文回顾了质量量化的重要性、当前方法的主要困难是什么,并强调了质量评测方法作为解决方案。在通过多态性强化了最先进的质量测量和质量模型概念之后,展示了它们在雷诺汽车嵌入式系统和软件中应用的第一步。结果不仅是复杂系统质量量化的好处,例如同质性、一致性和兼容性,而且还突出了ASPICE中质量模型版本变化的风险,以及如何定义电子控制单元和车辆的可推导质量模型。


摘要

质量量化是当今公司日常生活中不可避免的话题。本文回顾了质量量化的重要性、当前方法的主要困难是什么,并强调了质量评测方法作为解决方案。在通过多态性强化了最先进的质量测量和质量模型概念之后,展示了它们在雷诺汽车嵌入式系统和软件中应用的第一步。结果不仅是复杂系统质量量化的好处,例如同质性、一致性和兼容性,而且还突出了ASPICE中质量模型版本变化的风险,以及如何定义电子控制单元和车辆的可推导质量模型。

1.背景和研究目标

A.评估和量化质量的需要

如今,人们正在以高节奏生产汽车系统。这些汽车系统非常复杂,嵌入了许多子系统。出于以下不同的原因,评估和量化系统和每个子系统的质量水平非常重要。

首先,像雷诺这样的公司必须遵守许多标准和法规。当我们考虑汽车或飞机等运输系统时,这一点很明显,我们必须遵循ISO26262、ARP4754A5和DO-178C等功能安全标准。因此,正确量化质量将告诉我们是否满足这些标准。

此外,“质量量化”涵盖质量方面(支持系统主要特征的识别)和质量模型(支持这些特征的组织)。量化有助于优化和控制大量的指标和测量,并提取对雷诺最有意义的子集(或者对雷诺最有用的子集)。

我们当然可以找到许多其他充分的理由来说明质量量化的重要性。然而,在质量量化中遗漏某些步骤有时可能会导致灾难性的后果。我们可以快速举出一些众所周知的例子:1985-1987年间Therac-25的软件更新问题导致6名患者受到辐射并死亡;阿丽亚娜5号在1996年6月4日首次发射时发生爆炸,是由于重复使用了与新火箭版本速度不符的旧导航系统,导致损失了3.7亿美元;2017年6月26日,高田公司因安全气囊中存在未解决的已知缺陷而破产;2018年,丰田召回了240万辆混合动力汽车,原因是与未发现的软件问题相关的“故障安全”驾驶模式出现故障。通过这四个例子,我们有四个不同的系统,具有四个不同的质量量化背景,并且明显表明,以人员损失和/或预算来衡量,它们的后果是灾难性的,从而强调不仅需要一个可靠的、准确的质量量化方法,而且还适应系统使用环境。

本文所说的质量是指产品整个生命周期的质量,包括开发(需求分析、设计、实施)、维护和运营。

B.可能性很多,但找到最佳方法很困难

从上面我们了解到,质量量化至关重要;但根据使用哪种质量量化方法,我们可能会面临不同类型的挑战。我们可能面临的第一种情况是,我们正在考虑量化质量的解决方案过于笼统,然后需要一定程度的重构或剪裁,而无法保证获得正确的解决方案。CMMI、ISO/IEC9126或ISO/IEC25010等参考或标准通常就是这种情况,它们的目标是覆盖尽可能多类型的系统/应用领域。研究人员进行的一项研究表明79%使用标准的公司对其进行了定制。相反,解决方案可能过于具体,然后很难针对另一个或多或少接近的系统进行重用;例如,研究人员提出的因素/标准/度量以及目标/问题/方法就是这样。第三种可能是我们的解集太大,导致没有明显的正确解;以软件产品为例,在文献中可以轻松识别出40多种不同的质量模型。最后一种情况是当我们同时具有质量量化的理论和应用方面时,例如研究人员提出的关于软件产品质量控制或关于一般质量评估;这些方法可能使用起来有点繁琐,但它们提供了巨大的潜力:它们是质量测定的一部分。

在接下来的部分中,我们将完成对质量测定和质量模型概念的最新技术的概述,并通过创新性地引入多态性来加强最后一个概念。然后,我们将这些概念应用到汽车领域,包括嵌入式系统和嵌入式软件,然后得出结果、好处和后续步骤。

2.最先进的质量测定和质量模型概念

A.质量测定

质量测定学是质量量化的科学,因此涵盖“包含系统研究的智力和实践活动”质量量化。这两项活动通过理论和应用质量测定法得以体现。此外,即使这个概念不是最近才出现的,这门科学也相对年轻,因为它于1968年诞生于前苏联,随后成立了一个由来自不同领域的科学家(例如经济学家、建筑师、土木工程师、工程师、汽车制造商)组成的工作组。他们拥有相同的目标:推广质量量化方法。为了促进其理解并支持其在质量量化范围内利用知识,我们提出了一种综合表示法,即质量测定之家(见图 1)。

图1.png

图1-质量测定之家及其支柱

根据定义,质量测定是一门科学,因此它既涉及理论又涉及应用维度。这两个维度本身依赖于两个领域:质量模型-关注质量特征和测量-解决量化部分。质量模型基于三个支柱。第一个与识别质量特征的分析有关,而第二个则支持其组织并添加一些规则来控制分析深度。这里的最后一个支柱涵盖了其他特征中的特征重要性。在测量方面,我们检索相同的拓扑。第一个测量支柱是关键,因为它涉及不同的测量理论,因此带来了所有数学和统计工具。第二个支柱是根据其目的反映测量组合或数据聚合。第三个也是最后一个支柱支持在评估、控制和预测期间使用测量:这是阈值支柱。完成描述后,房屋的地下室是感兴趣的对象,也就是说,质量量化的候选对象。两个ISO/IEC25010:2011质量模型(即“系统/软件产品质量”和“使用质量”)说明了通过将两个质量模型第一支柱应用于汽车嵌入式软件产品可以实现的结果。

B.质量模型

为了更准确地理解质量模型概念,我们可以参考ISO/IEC IS 9126-1,其中质量模型被定义为“一组特征以及它们之间的关系,为规定质量要求和评估提供了基础”。这一定义可以由ISO/IEC 25010来完善,它强调质量模型是“产品质量的方便分解”、“作为一个框架,确保质量的所有特征都得到考虑”,并“提供一套与广泛的利益相关者相关的质量特征,如:软件开发人员、系统集成商、收购方、所有者、维护者、承包商、质量保证和控制专业人员以及用户”。

为了进一步了解质量模型知识,我们进行了一项研究,以便能够隔离与质量模型相关的模式及其设计、概念或适应性。我们已经确定了一组八个属性(参见表1):所有方法之间共有六个属性(评估背景和计划、目的、评估质量的质量评估方法(EQM)、作为价值信息来源的QEM、数据组织类型和权重因子),一种独特的推导规则来自质量测量领域,还有一种新的,以前任何相关工作流中都没有的:多态性。此外,这些属性的一个值得注意的事实是,如果我们按顺序处理或考虑它们,我们就会有一个统一的概念过程来创建或调整质量模型,从“评估背景和计划”到“多态性”。

表1.jpg

表1–针对相同标准演进的8个质量模型属性:ISO/IEC 9126:2001和ISO/IEC 25010:2011

C.多态性

关于最后一个属性,我们考虑应用于质量模型的多态性概念的两个方面:临时的和时间的。为了解释这些方面背后的原因,我们可以用生物学进行类比:让我们将质量模型与蝴蝶进行比较。对于第一个方面,我们从一只具有一组特征的通用蝴蝶开始(两个翅膀、一个躯干、三对胸腿、两个天线……)。在现实世界中,我们有这种通用蝴蝶的许多变体,它们或多或少彼此接近(翅膀颜色、图案和形状、大小、生活方式……)。每个变体都继承了普通蝴蝶的特征。因此,我们可以有从通用质量模型继承的质量模型的变体。第二个方面与时间考虑有关。就像蝴蝶一样,从卵开始,然后变成毛毛虫、蛹,然后是新生的蝴蝶,最后变成飞翔的蝴蝶,质量模型可以根据系统或软件产品生命周期而改变、发展。

继续生物学,特别是遗传学,我们借用研究人员在1979年提出的公式(1),用于计算DNA序列之间的多态性程度,并将其应用于质量模型。借助这种机制,我们能够从多态性或多样性的角度计算质量模型之间的距离。

公式.png

πij系数是通过考虑具有特定质量特性/子特性的概率来计算的。该演算基于一系列质量模型。例如,如果某个特征在这些特定质量模型中反复出现,则其概率为1。如果一半的时间存在该特征,而另一半是另一个接近(即不相交)的特征,则它们各自的概率为0.5。当将此方法应用于ISO/IEC 9126和ISO/IEC 25010时,我们确定了:53个叶子特征,32个独特的,8个相似的(即接近但不相同:例如,“可修改性”与“可更改性”),以及13个相同。这使我们发现 (1)67.92%的差异。

在测量方面,我们必须增强当前的测量流程,以考虑质量模型和测量的支柱。此外,像处理器一样,我们正在将测量过程与系统或软件开发生命周期结合起来,以集成我们之前指出的多态性的时间方面。

总而言之,多态性在系统工程中很有帮助,在系统工程中,我们拥有定义系统的系统和/或子系统的上下文。由于背景和利益相关者的多样性,多态性为适应带来了一致性和支持。

D.质量模型距离影响

多态性品种公式的使用是一个很好的工具,可以帮助我们估计和解释改变、更新或适应当前质量模型或应用一种质量模型而不是另一种质量模型的影响和后果。

事实上,其后果与我们对质量模型的目标直接相关。例如,假设一家公司当前正在使用ISO/IEC 9126,并希望遵守最新的可用标准,即ISO/IEC 25010,那么这个距离将有助于理解和估计:

- 与此类变化相关的风险是什么(低距离=低风险,高距离=高风险),

- 受影响最大的领域是什么(我们有更多的变化,减少每个质量特征的距离),

- 需要花费多少工作量,

- 质量量化、评估和控制的哪里发生了变化,

- 发现多少验证路径发生了变化,允许捕获以前可能从未发现的不同类型的错误并丢弃其他区域和路径,

由于目标产品或其生命周期阶段的变化或演变,质量模型可能会发生变化。因此,这可能会导致不同的结果,并且距离可以预测我们可能会得到不同的结果。

此外,该公式还可用于支持决策以及控制变更或更新质量模型,包括多态性的情况:当距离较低时,可以忽略更改,而较高的距离则告诉我们需要应用此更改。最后,从工作负载和风险的角度来看,距离公式可以帮助将质量模型变更拆分为合理的变更增量。

3.汽车应用

A.关于嵌入式系统

由于从质量测量的角度对质量量化进行了概述,我们可以将这些概念应用到汽车领域,从而满足雷诺的需求:拥有强大、高效、均匀、兼容和一致的质量量化,以及为车辆的整个复杂系统指定一个联合“词汇”。

事实上,汽车是车辆平台的实例,该平台解决了一系列汽车变体的问题,例如迷你紧凑型车、敞篷车、超级跑车、跨界车、商用车、货车……。因此,汽车是一个复杂的系统,由40多个系统组成,这些系统本身分布在60多个电子控制单元(ECU)上,具体取决于汽车是低端、中型还是高档汽车。

此外,除了每个ECU本身由硬件和嵌入式软件组成之外,ECU还具有与其他ECU共享的一些共同特性(例如诊断、连接接口、电源)、一组特定特性(例如HMI、通信、安全)及其自身环境(例如门控制、发动机控制、远程信息处理控制、座椅控制)。事实上,每个这样的子系统都有或多或少具体的词汇和质量量化,它们或多或少与其他子系统不同。该系统复杂性描述了雷诺公司的复杂性,并与之相对应。

B.关于嵌入式软件

关于汽车嵌入式软件的质量模型,ASPICE7建议在其测量过程中依赖ISO/IEC 25010:2011嵌入式软件产品质量模型,称为MAN.6。然而,我们注意到在ASPICE的早期版本中,例如v2.5,嵌入式软件质量模型引用的标准是ISO/IEC 9126:2001。此外,ISO/IEC 25010:2011标准是ISO/IEC 9126:2001标准的扩展或演变。因此,为了了解这两个标准的质量模型有多接近或不同,我们从上一段中看到的高度质量模型属性中提取相应的模式实例。表1总结了比较结果。我们注意到,除了第一个涉及“评估背景和计划”的属性之外,大多数属性都是相同的,但这是我们可以预料到的,因为ISO/IEC 25010:2011是另一个范围更广的属性的演变。

现在,如果我们计算这两个质量模型之间的多态性程度(如2.C中所示),我们得到的结果表明多样性几乎为68%,这意味着最终这些质量模型有很大不同。因此,尽管ISO/IEC 25010:2011文档声称这是一个扩展,但这是一个巨大的演变或变化。此外,将质量模型从以前的标准升级到新的标准可能会带来风险,特别是如果您当前的质量模型运行良好的话。图2突出显示了这两个标准之间的一些质量模型差异。

图2.png

图2-ISO/IEC 9126:2001和ISO/IEC 25010:2011之间的一些差异示例

C.关于多态性

例如,在上面的A和B小节中,我们已经掌握了足够的知识,可以开始将多态性应用于汽车嵌入式软件。在下面的段落中,我们将多态性应用限制在质量特征枚举的一个级别。

首先,我们使用A-SPICE3.1指南开始详细阐述通用ECU质量模型。我们注意到这些指南还参考了ISO/IEC 25010的一个子集。结果是一个由6个质量特性组成的质量模型:功能适用性、可靠性、可用性、性能效率、可维护性和可移植性。所有这些质量特征都与嵌入式软件的范围一致。然后,为了将多态性应用于这种常见的ECU质量模型,我们在我们的研究案例中考虑了这种常见ECU的两种不同变体:车辆信息娱乐(即IVI)ECU和车身控制模块(即BCM)ECU。IVI ECU负责信息娱乐,是控制车辆不同选项的主要人机界面。从这个意义上说,性能效率并不像使用质量那么重要,使用质量必须包括效率、有效性和满意度。事实上,由于人机界面是该ECU的关键,因此正确的性能标准必须依赖于用户对性能的感知,而不是纯粹的处理时间。对于BCM,该ECU可以被视为主要的车辆网关,处理各种通信协议,但与用户没有直接交互(即有人机界面)。然后,防护性和安全性方面(包括无风险特性)是该ECU所涵盖的主要质量特性。

下面的图3说明了如何应用多态性与质量特性子集的示例,从通用ECU质量模型到IVI ECU质量模型和BCM ECU质量模型,使用ISO/IEC 25010作为补充指南。通用ECU质量模型中定义的黑色特性、可能被丢弃/不使用的红色特性、绿色互补特性。

图3.png

图3-应用于两个ECU的质量模型多态性示例

雷诺这些概念应用的早期结果通过几个仪表板进行了描述:ISO/IEC 25010:2011中非功能特性子集的代码(见图4),以及应用于相关领域的ECU通用质量模型(见图5)。

图4.png

图4-AD ECU代码度量结果与ISO/IEC 25010:2011特性子集的演变示例

图5.png

图5-每个ECU域通用质量模型结果的演变示例

4.结论

总之,我们已经了解了什么是质量测定,巩固了它的一些方面,以及它如何支持质量量化活动中的泛化、适应和重复。它也可以应用于系统和软件工程中的其他活动,甚至在早期阶段,支持例如概念、需求获取和架构设计。此外,我们基于质量测量的方法为复杂的汽车环境中的质量量化带来了同质性、一致性和兼容性。它有助于指定每个领域都有自己的联合词汇表。借助多态性,我们还可以为ECU和车辆平台定义可导出的质量模型。最后,在敏捷开发方法的背景下,我们的方法允许平滑的增量变更管理。

下一步的工作重点是整合和部署我们当前的通用质量模型以及与ECU变体相关的各种特定质量模型。



作者:牛喀网专栏作者
牛喀网文章,未经授权不得转载!


下一篇: 汽车电子软件设计和测试的知识和技能要求
上一篇: 敏捷软件开发过程中的ASPICE合规性(下):问题的结果与结论
相关文章
返回顶部小火箭