MISRA 2012合规性

遵循汽车工业软件可靠性协会(MISRA)C之类的标准,是朝着编写更安全,更好和更少错误的代码迈出的重要一步。如果开发团队正在采取步骤来实现符合MISRA C标准的代码,则可以采取额外的步骤来完全符合该标准。这样做的好处是可以声明该项目符合MISRA C的要求。为了证明合规性,需要执行许多步骤。

需要遵循三个先决条件流程。首先,是记录在案的软件开发过程。这样做的目的是确保放置开发和测试软件的一致方法。第二个是存在并遵循的软件样式指南。这样做的原因是,清晰的文档风格使该软件更清晰,更易于其他开发人员理解。最后,需要存在一个规则偏离过程,以证明不遵守合规性矩阵中列出的规则。

前提流程是显示合规性的一个很好的起点,但是合规性的真正要点是合规性矩阵。遵从性矩阵是每个强制性,必需和咨询性指南的列表。除了参考偏差说明之外,还列出了每个规则以及是否遵守,如何遵守和测试了每个规则。表1中提供了MISRA在标准中提供的示例合规性矩阵。可以从Beningo Engineering下载全面的合规性矩阵。

 

MISRA合规性表

 

可以使用自动化工具来检查MISRA C标准中的许多准则。 MISRA要求对使用的每个工具进行记录。所需的文档必须显示工具版本号,运行工具时使用的选项以及运行该工具所需的任何配置数据。这允许第三方或团队中的其他开发人员验证合规性。需要记录的工具甚至包括编译器!重要的是要注意该项目是针对C90还是C99标准进行编译的。

归根结底,MISRA C标准要求这些内容以表明项目软件完全合规。有趣的是,他们还列出了开发人员需要“适当的技能并有足够的经验”。由于如此详细地介绍了如何设置工具以及开发合规性矩阵和偏差过程,因此他们对这种有趣且相对模糊的合规性要求相对沉默。无论哪种方式,显示项目的合规性对于显示软件的质量和健壮性都有很大帮助。

发表评论

您的电子邮件地址不会被公开。 必需的地方已做标记 *

该网站使用Akismet减少垃圾邮件。 了解如何处理您的评论数据.