0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

汽车软件团队必看:基于静态代码分析工具Perforce QAC的ISO 26262合规实践

龙智DevSecOps ? 2025-08-07 17:33 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文节选自Perforce《ISO 26262 功能安全实践指南》电子版;由Perforce中国授权合作伙伴——龙智翻译整理。

ISO 26262是一项适用于汽车行业的功能安全标准,源自IEC 61508,包含了对软件开发和设计的要求。第6部分的合规性表格涵盖了其中的大部分要求。

在本文中,您将了解到编码标准和静态代码分析工具(如Perforce QAC),如何帮助满足所有ASIL等级的ISO 26262要求。

导言

随着车辆中电子设备的日益普及以及系统复杂性的增加,ISO 26262变得至关重要。软件故障可能会危及车辆安全,因此绝不容许发生。

开发团队需要确保系统不会出现任何可能导致故障的情况,但全面的测试往往难以实现。因此,系统设计必须能够预防故障,或在故障发生时确保行为可控。

符合功能安全标准(如ISO 26262)正是汽车系统安全设计的关键所在。

ISO 26262概述

ISO 26262改编自IEC 61508(电子安全相关系统的功能安全标准),侧重于关注车辆系统在整个安全生命周期内的特定需求。

需要符合ISO 26262标准的系统包括:

? 驾驶辅助系统

? 动力与车辆动态控制系统

? 主动与被动安全系统

系统越复杂,发生故障的风险就越大,包括系统性的和随机的硬件故障。

如何通过ISO 26262降低风险

ISO 26262为开发者提供了降低风险的指导,包括以下要求和设计流程。

汽车安全完整性等级 (ASIL)

ISO 26262对风险和安全要求进行了分类,共分为四个汽车安全完整性等级(ASIL A–D)。ASIL A为最低级别,ASIL D为最高级别。

系统的ASIL等级(在功能层面)决定了开发团队需要采用何种方法。

这些要求在ISO 26262第6部分中有明确规定,包括:

? 软件开发的启动

? 软件架构设计

? 软件单元设计与实施

编码标准要求

建议使用编码标准(如MISRA)来满足ISO 26262要求。结合使用编码标准和静态代码分析工具(如Perforce QAC),可以帮助您符合ISO 26262第6部分的要求。

ISO 26262 第6部分合规性表格

ISO 26262第6部分包含定义实现标准合规性方法的表格。

以下将介绍如何通过Perforce QAC(原Helix QAC,一款用于C/C++的静态代码分析工具),来满足其中五个表格的要求。

推荐说明:

++ 强烈推荐用于指定ASIL等级

+ 推荐用于指定ASIL等级

o 对于指定ASIL等级,无明确推荐或反对

表1、建模与编码指南应涵盖的主题

表1包含了推荐用于所有ASIL等级的建模和编码指南。对于C或C++编写的软件,可以使用Perforce QAC来满足大部分的指南要求。

例如,强烈建议在所有ASIL等级中强制执行低代码复杂度。您可以通过使用Perforce QAC的Web控制面板,来监控代码复杂度随时间的变化趋势,以确保代码库在增长过程中不会变得过于复杂。

wKgZO2iUcnOAClMyAAQcU-jwxaU918.png

表3、软件架构设计原则

表3涵盖了推荐用于所有ASIL等级的架构设计原则。Perforce QAC可用于满足其中部分原则。

例如,强烈建议在所有ASIL等级下限制软件组件的大小。Perforce QAC可以测量并报告与代码规模相关的多种不同指标。

wKgZO2iUcnOAFYLDAAOjl6DygjQ043.png

表6、软件单元设计与实施的设计原则

表6涵盖了推荐用于所有ASIL等级的设计原则。Perforce QAC与MISRA合规性模块相结合,可用于遵守这些原则。

例如,强烈建议在子程序和函数中设置单一入口点和单一出口点(所有ASIL等级)。

使用Perforce QAC,您可以强制执行以下MISRA规则以遵守这一设计要求:

  • MISRA C:2004 规则 14.4:禁止使用goto语句。
  • MISRA C:2004 规则 14.7:函数在函数末尾设有单一出口点。

wKgZPGiUcnOAXnt2AAVKGzIV9a4510.png

表7、软件单元验证方法

表7涵盖了软件单元验证方法。Perforce QAC可用于执行其中的几种方法。

例如,除了基本的静态代码分析外,Perforce QAC还可以自动执行复杂的数据流分析,帮助开发者快速发现潜在错误,加速软件设计验证。

wKgZO2iUcqeAS45kAAOjK00P6k4048.png

表10、软件集成验证方法

表10规定了软件集成验证方法。与表7类似,Perforce QAC可用于执行其中的几种方法。

例如,Perforce QAC除了支持检查是否符合编码指南,还能提供复杂的数据流分析功能。

wKgZPGiUcqeAHbehAAIwTZsh1hY614.png

使用Perforce QAC轻松实现ISO 26262合规

Perforce QAC 可检查代码是否符合 MISRA 和 AUTOSAR 等编码规则,帮助满足ISO 26262中包含的所有ASIL等级(A-D)的合规要求。该工具还包含MISRA C/C++和AUTOSAR C++14的合规模块。

此外,Perforce QAC已通过 T?V-S?D 认证,可用于安全相关软件开发,涵盖所有ASIL等级(A-D)的ISO 26262合规性要求。通过使用Perforce QAC,您可以有效降低合规所需的时间和成本。

Perforce中国授权合作伙伴——龙智

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 代码分析
    +关注

    关注

    0

    文章

    13

    浏览量

    5872
  • ISO 26262
    +关注

    关注

    0

    文章

    12

    浏览量

    7404
  • 汽车软件
    +关注

    关注

    1

    文章

    134

    浏览量

    3517
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    拥有ISO26262认证的软件工具清单

    的项目中,外购高质量的软件工具是一定会提高工作效率。而且应用软件工具,在OEM客户端也是加
    发表于 02-07 16:15

    Helix QAC软件静态测试工具介绍

    Helix QAC软件静态测试工具
    发表于 12-29 07:41

    Helix QAC软件静态测试工具的功能

    Helix QAC软件静态测试工具
    发表于 12-30 06:09

    浅谈QAC/QAC++静态软件测试工具

    QAC/QAC++是英国编程研究公司(Programming Research Ltd)专业进行C和C++语言规则的检查工具,在十几年里,QAC/Q
    发表于 10-26 11:02 ?0次下载
    浅谈<b class='flag-5'>QAC</b>/<b class='flag-5'>QAC</b>++<b class='flag-5'>静态</b><b class='flag-5'>软件</b>测试<b class='flag-5'>工具</b>

    QAC/QAC++静态软件测试工具介绍

    QAC/QAC++是英国编程研究公司(Programming Research Ltd)专业进行C和C++语言规则的检查工具,在十几年里,QAC/Q
    发表于 11-30 16:32 ?2385次阅读

    开发人员使用Helix QAC实现静态代码测试性的五大原因

    30多年来,Helix QAC(以前称为PRQA)一直是值得信赖的静态分析工具,可满足严格监管和安全至上行业的严格
    的头像 发表于 11-14 09:59 ?1493次阅读
    开发人员使用Helix <b class='flag-5'>QAC</b>实现<b class='flag-5'>静态</b><b class='flag-5'>代码</b>测试<b class='flag-5'>合</b><b class='flag-5'>规</b>性的五大原因

    什么是静态代码分析静态代码分析概述

    静态分析可帮助面临压力的开发团队。高质量的版本需要按时交付。需要满足编码和合性标准。错误不是一种选择。 这就是开发团队使用
    的头像 发表于 07-19 12:09 ?1944次阅读
    什么是<b class='flag-5'>静态</b><b class='flag-5'>代码</b><b class='flag-5'>分析</b>?<b class='flag-5'>静态</b><b class='flag-5'>代码</b><b class='flag-5'>分析</b>概述

    汽车行业软件代码满足功能安全与信息安全的最佳实践

    北汇首次联合嵌入式静态分析领域公认的行业领导及先驱Perforce公司,并邀请到其总监Jill Britton女士与大家一起讨论当前的
    的头像 发表于 11-23 20:05 ?938次阅读
    <b class='flag-5'>汽车行业软件</b><b class='flag-5'>代码</b>满足功能安全与信息安全的最佳<b class='flag-5'>实践</b>

    Helix QAC软件静态测试工具

    Helix QACPerforce公司(原PRQA公司)产品,主要用于C/C++代码的自动化静态分析工作,可以提供编码规则以及信息安全相关
    的头像 发表于 01-10 17:35 ?1126次阅读
    Helix <b class='flag-5'>QAC</b>—<b class='flag-5'>软件</b><b class='flag-5'>静态</b>测试<b class='flag-5'>工具</b>

    Perforce静态分析工具2024.2新增功能:Helix QAC全新CI/CD集成支持、Klocwork分析引擎改进和安全增强

    实现持续性现代软件开发实践要求开发团队具备适应性,在确保代码质量和可靠性的同时,优先考虑灵活
    的头像 发表于 10-08 16:22 ?743次阅读
    <b class='flag-5'>Perforce</b><b class='flag-5'>静态</b><b class='flag-5'>分析</b><b class='flag-5'>工具</b>2024.2新增功能:Helix <b class='flag-5'>QAC</b>全新CI/CD集成支持、Klocwork<b class='flag-5'>分析</b>引擎改进和安全增强

    DevOps与功能安全:Perforce ALM通过ISO 26262认证,简化安全关键系统开发流程

    Perforce ALM(原Helix ALM)通过了国际权威认证机构 T?V S?D的ISO 26262功能安全流程认证!该认证涵盖Perforce ALM解决方案的所有领域,包括需
    的头像 发表于 04-11 14:11 ?319次阅读
    DevOps与功能安全:<b class='flag-5'>Perforce</b> ALM通过<b class='flag-5'>ISO</b> <b class='flag-5'>26262</b><b class='flag-5'>合</b><b class='flag-5'>规</b>认证,简化安全关键系统开发流程

    代码静态测试工具Perforce QAC 2025.1新特性

    Perforce QAC 2025.1实现了对新发布的MISRA C:2025?标准的100%覆盖,并提供了对应的新规模块。该版本还扩展了对CERT C Level 1建议的覆盖范围,改进了与持续
    的头像 发表于 04-21 15:14 ?430次阅读
    <b class='flag-5'>代码</b><b class='flag-5'>静态</b>测试<b class='flag-5'>工具</b><b class='flag-5'>Perforce</b> <b class='flag-5'>QAC</b> 2025.1新特性

    Perforce QAC产品简介:面向C/C++的静态代码分析工具(已通过SO 26262认证)

    Perforce QAC专为C/C++开发者打造,支持多种编码规范、功能安全标准(ISO 26262)等,广泛用于汽车、医疗、嵌入式开发领域
    的头像 发表于 07-10 15:57 ?438次阅读
    <b class='flag-5'>Perforce</b> <b class='flag-5'>QAC</b>产品简介:面向C/C++的<b class='flag-5'>静态</b><b class='flag-5'>代码</b><b class='flag-5'>分析</b><b class='flag-5'>工具</b>(已通过SO <b class='flag-5'>26262</b>认证)

    汽车软件开发必看Perforce工具链助力高效开发与功能安全的最佳实践

    无论是主机厂还是供应商,ISO 26262都是绕不开的课题。冗长的流程、复杂的标准是否让您的团队疲于应对?
    的头像 发表于 08-01 10:49 ?344次阅读
    <b class='flag-5'>汽车</b><b class='flag-5'>软件</b>开发<b class='flag-5'>必看</b>:<b class='flag-5'>Perforce</b><b class='flag-5'>工具</b>链助力高效开发与功能安全的最佳<b class='flag-5'>实践</b>

    汽车电子开发必备:基于Perforce ALM的ISO 26262认证指南

    功能安全无小事,必须零误差!了解加速ISO 26262的7个步骤,以及如何借助
    的头像 发表于 08-01 10:56 ?388次阅读
    <b class='flag-5'>汽车</b>电子开发必备:基于<b class='flag-5'>Perforce</b> ALM的<b class='flag-5'>ISO</b> <b class='flag-5'>26262</b><b class='flag-5'>合</b><b class='flag-5'>规</b>认证指南