Is this project MISRA-compliant?
There are several MISRA checker tools, each one producing results in a specific format.
To provide a standard MISRA compliance assessment, Squore introduces a generic feature, part of the Software Analytics rating model.
The Squore monitoring solution process is broken down into three steps:
- Aggregate project data
- Perform rating
- Provide monitoring functions
Checking MISRA compliance with Squore
1- Squore retrieves MISRA checking results from various tools
As of today, we have standard plugins for reports generated by tools such as Klocwork, PC-Lint, QA-C, Polyspace, …
This plugin technology is extensible, meaning that results from other tools can be aggregated into Squore when necessary.
2- Each project component is rated with respect to its compliance to the MISRA ruleset
Squore is delivered with a generic rating model called “Software Analytics”.
It is able to check MISRA compliance for the following versions:
- MISRA 2004: 146 rules in the ruleset
- MISRA 2008: 228 rules in the ruleset
- MISRA 2012: 159 rules in the ruleset
The ruleset contents can be adapted to any project rated with Squore.
This means that you could tailor Squore to work with a subset of MISRA rules.
The compliance (and rating) will be based on this configuration.
For example, the following screenshot shows how two specific rules (R_10_1_1 and R_10_2_1) have been excluded from the ruleset, meaning they will not be used in the compliance computation.
3- Once rated, the project dashboard can be navigated, and MISRA-related monitoring functions are provided
Track MISRA findings
The traceability feature allows us to attach each finding to the source code element it was found on.
In this example, MISRA findings found by Polyspace are shown, you can see that rule “R 19.8” was found in file “dimm.c” at line 459.
Track MISRA metrics
The rating model computes MISRA rule violations counts, broken down by their severity.
The compliance ratio depends on the ruleset definition, and the violated rules.
Note that these metrics are computed.
Rule violation derogation
Rule violations can sometimes be false positives, or justified by development teams.
With Squore, it is possible to handle derogations:
– specified as an input to Squore
– specified in the source code as comments with specific patterns
– interactively justified by the user using Squore UI
In the following screenshot, rule R2.3 was derogated, it will be ignored in the compliance computation, although it will still be visible.
Elements featured in Squore UI (metrics, findings, derogations, action plan, charts …) can be included in a report (Word, Powerpoint, PDF).
This configurable report can be generated in seconds each time a new version of the project data is available.
In this example of generated Powerpoint report, Rule Compliance is one of the monitoring axis.
The report can also contain the list of relaxations, where each derogated violation is listed, with the corresponding justification.