• AUTOSAR C++14 编码指南(下)


    1 如何实现合规性?

    2016年,MISRA联盟发布了一份题为“MISRA合规:2016”的文档来实现MISRA 编码指南合规。(本文档已更新,并由“MISRA合规:2020”取代)。

    合规文件在业界受到了广泛的欢迎,因为它们解决了实现法规遵从性流程的重要需求,并明确了合规的确切含义。

    AUTOSAR C++14没有就实现合规的过程提供任何类似的指导,至少没有直接提供。但是鉴于AUTOSAR C++指南基于MISRA 2008 C++的,因此可以参考MISRA标准,寻找有关实现合规性过程的指导是合理的。

    • 生成一个合规性矩阵,说明如何执行每个规则。

    • 生成偏差程序。

    • 在质量管理体系内形成工作规范。

    满足这些要求意味着一些额外的文书工作。迎面而来的第一件事就是合规性矩阵的定义,它有效地声明了我们将如何执行每一条准则。请参阅下面的示例。

    理想的情况是拥有一个涵盖尽可能多的指南的静态分析工具。无法通过静态分析强制执行的规则很可能需要昂贵的人工审核。

    除了合规矩阵之外,还需要建立偏差处理程序。当开发需要偏离特定的指导方针时,偏离程序正式规定了需要采取的步骤。正如 MISRA 规定的那样,预计

    “......该程序将基于获得每个偏差或偏差类别的签字。”

    —MISRA

    这是整个流程中的一个重要部分。它可以防止开发人员随意偏离偏差概念。实际上,我们需要在系统中存储某种正式的证据,来记录源代码中的每个偏差。这同样适用于合规性矩阵以及为实施合规性而创建的任何其他配置和流程描述。MISRA C++2008在这点上非常明确,并要求“在质量体系中进行形式化”。

    最后,如果MISRA 2008 C++第4.3描述的所有要求都已经满足,我们可以通过展示以下内容来声明合规性:

    • 已完成合规矩阵,显示如何执行合规。

    • 产品中的所有 C++ 代码均符合 MISRA C++2008 文档的规则或存在记录偏差。

    • 正在维护未遵循规则的所有实例的列表,并且对于每个实例,都存在适当签署的偏差。

    在声明MISRA合规时,“MISRA合规:2020”文件现在被要求与MISRA指南的所有未来版本一起使用。“MISRA 合规:2020”更新了 MISRA C++2008 中给出的建立合规流程的说明。一些团队可能更愿意将其用作 AUTOSAR C++14 合规性流程的基础,因为它更新并且更详细。

    与MISRA 2008 C++一样,“MISRA合规:2020”需要一个正式的流程来处理偏差,并且我们必须记录每个适用准则的执行方法。该文档称为准则执行计划 (GEP)。

    “MISRA合规:2020”扩展了合规流程的要求,并引入了一些新概念,例如以正式方式记录引入规则类别的任何更改的指南重新分类计划 (GRP) 和指南合规摘要 (GCS ),这基本上是合规过程的最终产物,它显示了每个指南所达到的合规水平。

    “MISRA合规:2020”还使用了MISRA C 2012中引入的规则分类,与MISRA C++ 2008和AUTOSAR C++14标准中的规则分类不同。

    2 Parasoft C/C++test对AUTOSAR C++14的支持

    强制遵守AUTOSAR C++14等编码标准的唯一实用方法是使用静态分析工具,如Parasoft C / C++test,这是一种支持多种测试技术的代码质量工具。而Parasoft C/C++test比任何其他代码质量工具都更加完美支持 AUTOSAR C++。

    AUTOSAR C++14 规则是 Parasoft 汽车行业合规包的一部分,它专门为汽车开发人员扩展了 Parasoft C/C++test 的功能。除了行业特定的静态分析规则(如 AUTOSAR C++14、HIC++ 和 MISRA)之外,Parasoft的汽车合规包还提供一个复杂的交互式报告系统,该系统根据 AUTOSAR、HIC++ 和 MISRA 的要求进行定制,并支持团队高效的日常工作流程。

    Parasoft C/C++test使开发人员能够在IDE中检查其代码的合规性,并将扫描过程集成到服务器上的CI构建中。借助Parasoft的汽车行业专用报告系统,团队成员可以轻松持续监控他们的合规流程。

    3 我们将何去何从?

     汽车行业正在不断发展。在如此迅速的发展大势下,我们正在见证汽车向类似于使用智能手机的体验而进行转变。以应用程序的形式购买汽车特定功能的概念已成为现实。

    为了应对这些挑战并可能地缩短开发时间,汽车行业需要在现代汽车中使用的硬件和软件平台领域不断创新。这些创新需要在各个层面得到适当标准的支持,以确保功能安全、质量和安全。

    但是标准本身只能体现于一张白纸之上,如果没有工具将自动化带入实践和过程,并使汽车软件开发团队专注于交付更好,更高级的功能,那就根本无法落地实施它们。Parasoft C/C++test 是安全关键型 C/C++ 开发最完整的解决方案,比任何其他工具供应商更支持汽车编码标准(AUTOSAR C++、CERT C/C++、MISRA),以及Parasoft独特的动态灵活且极具效益的报告系统,可以使整个团队能够成功实现合规性。

    如果想要了解更多,欢迎访问我们的官网www.parasoftchina.cn进行详情了解。

    “MISRA”、“MISRA C”及MISRA Consortium Limited的注册商标。©The MISRA Consortium Limited, 2021。保留所有权。

  • 相关阅读:
    基于Yolov8的中国交通标志(CCTSDB)识别检测系统
    记一次针对excel导出的优化(实际开发遇到的情况)
    激光驱动电路中的充电边沿导致激光误点亮问题总结
    【译】了解17.10 GA 中最新的 Git 工具特性
    VMware Workstation Player虚拟机Ubuntu启用Windows共享目录
    推荐算法详解
    网站降权的康复办法(详解百度SEO数据分析)
    Qt学习之旅 -信号与槽
    postgres源码解析38 表创建执行全流程梳理--3
    MMDetection训练自己的数据集
  • 原文地址:https://blog.csdn.net/u012254369/article/details/126875229