首页 解决方案 创建最高质量的嵌入式软件

创建最高质量的嵌入式软件

软件质量规范、丰富的架构规范和使用 Capital Software Designer 和 Sigrid 的质量监控 ➤ 高层摘要 Siemens 与 Software Improvement Group (SIG) 合作提供一流的软件和指南,以控制和改善汽车行业嵌入式软件的架构和技术质量。

创建最高质量的嵌入式软件

创建最高质量的嵌入式软件

软件质量规范、丰富的架构规范和使用 Capital Software Designer 和 Sigrid 的质量监控

 


高层摘要

 

Siemens 与 Software Improvement Group (SIG) 合作提供一流的软件和指南,以控制和改善汽车行业嵌入式软件的架构和技术质量。Siemens Capital.Software Designer 提供了独特、丰富的前端装载软件架构建模和分析,而 Software Improvement Group 则在通过自动监控和咨询服务测量和提高软件质量方面拥有 20 年的经验。本白皮书将概括介绍联合解决方案如何帮助您创建高质量的汽车软件成果。 

 

 


汽车软件工程:A-SPICE 和软件质量挑战

 

汽车行业正朝着互联、日益自动化、高度定制化、电动和联网的市场趋势发展,新一代车辆给大众的印象是“有轮子的平板电脑”,而非传统汽车。在使用寿命期间,这些车辆需要能够通过购买和安装应用来进行扩展,并为乘客提供基于网络的增值服务。此外,汽车制造商的上市时间压力不断加大,产品复杂性经常导致缺陷直到后期才被发现,从而造成修复成本增加和公司利润降低。

过去,汽车软件一直负责运行从属性的低级嵌入式控制和娱乐功能。如今,软件能够感知环境并进行分类,在先进驾驶辅助功能中协调驾驶过程,向其制造商提供遥测数据,接收无线更新,并获得对路线规划、发动机、传动装置、制动器和转向系统的高级权限。换言之,软件在驾驶过程中承担的责任越来越多。信息娱乐软件和车辆运行软件之间在传统上泾渭分明的界限变得模糊。

因此,一系列全新功能使得车载软件的数量增加了几个数量级。在很大程度上,此类软件对于安全至关重要。车辆连接到互联网会使其面临安全威胁,损害车辆的完整性以及乘客的隐私和安全。受重量、功耗、热传递、车厢空间等方面的限制,已经无法继续通过添加更多电子控制单元 (ECU)来增加功能。因此,行业趋势是在大型多核心 ECU 上整合软件功能;动态更新和扩展要求摆脱由汽车开放系统架构 (AUTOSAR)合作伙伴关系指定的静态 ECU 映像,转而打造由 AUTOSAR 自适应平台指定的更类似于通用 IT 系统的动态架构。

其结果是,软件质量比以往任何时候都更加重要,但由于代码复杂性的爆炸性增长,保证软件质量也更具挑战性。什么是软件质量?国际标准 ISO/IEC 25010 对软件质量进行了清晰地界定,该标准将其分为可维护性、可靠性、安全性、可用性、性能效率、可移植性、功能适用性和兼容性。

功能异常的软件会对最终客户的体验产生重大影响。鉴于这种影响,在产品开发过程中应当优先考虑软件的质量和安全性。

创建最高质量的嵌入式软件

Siemens 的 Capital Software Designer 和 Software ImprovementGroup 的 Sigrid平台相结合涵盖了 ISO 25010 所规定的整个软件质量范围。

从代码审查到漫长的质量控制周期,再到定性质量观念,这种确保软件质量的传统方法不能适应现代的敏捷开发方法,无法提供所需的质量。在软件需求分析和设计阶段必须及早定义各种软件所需的质量级别,以连续地测量和监控实际实现的软件质量,并将出现的问题立即反馈给设计环节。这种方法受益于以下方面: 

● 与丰富的嵌入式软件架构规范和分析紧密集成 

● 及早定义和规范软件组件所需的质量级别 

● 持续的定量软件质量评估和指标监控 

● 反馈软件质量问题以帮助架构重构

Siemens 的 Capital Software Designer 与 Software Improvement Group 的 Sigrid. for Capital SoftwareDesigner 相结合可涵盖整个软件质量范围。CapitalSoftware Designer 的主要功能在于通过捕获和分析软件组件、其接口、可运行的功能、预期时序属性、软件组件内部行为和可变性,建立一步到位的软件架构和软件组件规范。Capital Software Designer 还能通过测试用例设计和执行软件单元测试、基于虚拟仿真的集成测试以及已实现软件的形式验证,在实现前阶段以及实现后阶段解决功能正确性问题。

Sigrid for Capital Software Designer 集成持续检查已实现软件组件代码中是否存在相关的可维护性问题,并提出改进软件质量的措施。

凭借 CapitalSoftwareDesigner 和Sigrid 之间的集成,用户可轻松获得集成的质量视图,并将 Sigrid的见解转化为对架构的增强。

从流程的角度来看,汽车软件过程改进和能力测定 (A-SPICE)过程模型包括一个软件工程流程组,由该组指定软件开发的 V 周期。必须将软件质量管理划分到所有过程步骤中,以确保管理有效而且高效。通过与 Polarion ALM. 软件集成,Capital Software Designer可以在从软件需求捕获到功能软件验证的所有流程步骤中保证软件质量。SoftwareImprovement Group 通过在实现后测量软件质量并为嵌入式软件架构设计提供反馈来对流程进行补充。

创建最高质量的嵌入式软件


通过丰富的规范和分析确保架构正确

使用 Capital Software Designer 进行架构规范和分析

Capital Software Designer 从 AUTOSAR 或系统建模语言(SysML) 格式的上游工程输入开始为嵌入式软件设计流程提供支持,并让您能够捕获遗留代码和架构资产。

数据流程图是嵌入式应用程序软件架构的核心。它们捕获精确的接口规范,并将物理单元系统添加到数据类型系统。数据字典有助于确保整个项目中数据范围和参数的一致性。软件产品线反映了嵌入式软件级别的产品可变性。时序要求捕获有关执行的时序规范,而测试用例则捕获属于嵌入式软件规范范畴的验收条件。以前置条件和后置条件形式表示的行为契约定义了软件组件行为的可接受边界。

所有这些模型方面都成为嵌入式软件规范的一部分,需要在编写第一行代码之前进行分析,以确保一致性。

该规范由 Capital Software Designer 生成的代码外壳模板完成,该模板也称为代码框架。然后封装软件组件规格并准备好将其发送给供应商,无论他们是内部的开发部门还是外部的承包商公司。

实现后代码资产检查

Capital Software Designer 支持三种在实现后验证嵌入式软件的范式,其关注重点是正确集成和功能正确性:

接口集成确保不同的软件组件确实彼此匹配,并重点验证软件接口。

创建最高质量的嵌入式软件

单元测试使用表格方便地对单个控制单元内的软件组件以及软件组件组进行测试。每个单元测试用例均包含激励和预期结果,占表格的一行。软件单元测试的批次可以通过测试套件进行分组并分批执行。

仿真将嵌入式软件置于其物理环境的虚拟版本中,在该环境中,Capital Software Designer 与 Simcenter.Amesim.软件和 MathWorks的 Simulink. 集成作为仿真引擎。Capital Software Designer 拥有来自模型在环(MiL)和软件在环 (SiL)范式的测试装置,可设置仿真、执行仿真以及收集和显示测试结果。XiL 装置由激励模型、被测系统、工厂模型和代表通过/失败标准的监视器组成。

形式验证可帮助您规避有限测试范围的局限性。您可以将一流的 C 语言模型检查方法应用于源代码,以便检测契约违规之类的功能错误以及数组索引错误之类的常规软件缺陷。此外,形式化方法使您能够生成巧妙的测试用例,以保证分支、位置、条件和修正条件/判定条件覆盖率 (MC/DC)。

如引言中所述,软件质量包含许多方面:可维护性及相关方面、可靠性、安全性、可用性、性能效率和可移植性。

集成软件质量规范和分析

正确定义软件质量和遵守此质量标准是成功开发软件项目的关键。Software Improvement Group 的软件保证平台 Sigrid 旨在根据国际 ISO/IEC 25010 软件质量标准提供一流的软件质量分析。Sigrid 可根据标准分析源代码,并将其与 SoftwareImprovement Group 的软件质量基准进行比较。因此能够立即了解软件的相对质量。Sigrid随后会提供有关改进源代码以达到预期质量的指南。

通过集成 Sigrid for Capital SoftwareDeveloper,SoftwareImprovement Group 可以利用 Sigrid 的固有功能将软件质量分析引入嵌入式软件的开发中。利用该集成,架构师和测试人员可以深入了解开发的质量并跟踪质量改进,直到达到期望的水平。

此模型中的分数是基于与广泛 SIG 软件分析数据库中其他系统的比较得出的,该数据库包含 20 年来收集的软件质量测量结果。SIG 的质量测量结果不仅可以对系统的软件质量进行评分,还可以告诉您该软件与市场上其他系统相比的表现情况,这是一种竞争优势。IT 行业在不断地发展和提升,这正是 SIG 每年都要对模型进行重新校准的原因。质量阈值会根据实际行业平均值来定义,因此具有更高的相关性,也更客观。

创建最高质量的嵌入式软件

专注于产品功能和产品质量

客户和供应商经常从纯粹的功能角度评估嵌入式软件。这意味着他们关注的是该软件能否按照预期工作。但是,这种方法仅涵盖成功项目的诸多方面之一。软件的设计和构建方式同样重要。相比之下,硬件组件在投入使用之前会经过检查和认证。嵌入式软件为何要被差别对待?通过衡量嵌入式软件的技术质量,您可以及早识别风险并设法缓解。这些风险包括但不限于安全漏洞、项目延期以及长期维护问题。

测量软件质量始于 ISO/IEC 25010 标准及其实现。此软件质量国际标准也适用于嵌入式软件。该标准定义了软件质量中影响软件长期可维护性的核心方面。使用国际标准的优点是可根据明确定义的标准化框架评估任何编程语言。该标准还能确保以客观且可重复的方式分析技术代码质量。因此,ISO/IEC 25010 标准远远超出了其他标准,后者要么关注文档和流程而非技术质量,要么不会评估架构性的质量指标。

在通过 Sigrid for Capital Software Designer 使用 ISO/IEC 25010标准来衡量软件代码质量之后,需要提高所分析系统的质量。系统提供了快速的迭代过程,让您能够从一开始就构建高质量的软件。它仅就真正需要关注的领域提供有关在哪里改进代码的非常具体的建议。这意味着无需查看一长串的非优先违规事件。

Sigrid for Capital Software Designer 的集成将通过以下方式帮助开发人员和架构师实现高质量的代码:

降低代码复杂性

如果能减少代码的复杂性,您的代码将更易于分析、修改和测试。您可以通过保持基本单元(函数)尽量简短,并限制每个函数包含的逻辑量来降低其复杂性。

避免代码重复

复制粘贴代码的效率低下且容易出错,并且经常导致需要进行后期调整。此外,复制还会增加源代码的总量,这对系统的可维护性产生了进一步的负面影响。通过编写可重复使用的通用代码可以避免重复。

指导 

Siemens和 Software ImprovementGroup提供业内更佳的软件和指南,帮助控制和改善 Capital SoftwareDesigner 所开发软件的架构质量、可维护性和安全性。

在 SIG 的《构建可维护的软件》一书中,SoftwareImprovement Group 的顾问讨论了开发人员可直接应用的有关提高软件质量的 10条规则。在《组建软件团队》中,SIG 顾问为高效团队的创建提供了指导:

“有关正确制定开发流程的十条更佳实践,以便开发出始终如一的高质量软件。我们的更佳实践不只是为开发团队指明正确的方向。这些更佳实践还附带一系列指标,可帮助团队一致地执行和监视。”

 

 


由 Capital Software Designer 驱动的软件质量分析

 

Siemens 和 Software Improvement Group 已经开发出Capital Software Designer 与 Sigrid 之间的集成。凭借这种集成,验证和测试工程师可以非常轻松地从 CapitalSoftware Designer 触发代码质量分析,导航和检查监视结果,然后将这些结果反馈给软件架构。

集成将应用程序源与 SIG系统相关联,在客户的 IT 环境中执行本地分析,将结果报告给 Sigrid 门户,并提供监视摘要的链接。

下面的监视摘要页面总结了嵌入式应用程序的总体软件质量状态。它为了解细节和违规提供了切入点,从而就在架构和实现级别提高软件质量提供了明确的建议。

创建最高质量的嵌入式软件

创建最高质量的嵌入式软件


结语

总而言之,Capital Software Designer 和 Sigrid forCapital Software Designer 之间的集成为嵌入式软件应用程序的所有软件质量方面提供了一流的见解和指导。Capital Software Designer 解决了实现前和实现后阶段的功能正确性和接口一致性问题,而 Sigrid 则解决了架构和实现中的应用程序可维护性问题。

除了我们解决方案中的现成功能外,Siemens Digital Industries Software 和 Software Improvement Group 还提供补充服务,以防止软件腐朽、改进软件质量及其架构,并将遗留代码移至模型级别。

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。

作者: suifengmianlai

为您推荐

生产制造 | 数控仿真保证“安全” 之 NCSIMUL四轴机床搭建

NCSIMUL 通过上一期对三轴机床搭建的讲解和演示,想必大家已经能够搭建自己专属的三轴机床。

质量管理 | 海克斯康 Q-DAS®与SAP QM的交互应用方案

SAP(System Applications and Product) 软件在企业的部署着眼于中央业务流程的优化。

新能源汽车供应链强力转型,数字化供应链系统订单管理数字化助力企业降本增效

当前,全球新能源汽车产业发展驶入快车道,新产品新技术加快研发运用,技术创新带动产业持续升级。

进度猫甘特图:项目管理中的任务分解工具

项目管理中是将大的项目目标划分为各个小阶段任务,WBS就是化繁为简,将负责非项目拆分为简单的任务,它可让事情依照一定规则或关系,通过一层一层来分解,这样要做的任务可以变为小目标。

查看流程审批历史记录解决方案

作者:黄鹏 审校:李达 适用版本:TC11 用户可以在TC中看到整个流程的历史记录,包括驳回,审批,编制的操作,这样可以方便我们查看哪些人参与了这个流程。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

返回顶部