HIS + MISRA C Checklist
The Hersteller Initiative Software (HIS) metrics are a collection of 15 metrics that apply to a software project plus three metrics that apply to two revisions
of software projects. Of the project metrics, two are actually summaries of rule violations of a subset of MISRA C.
This checklist contains checks for all 18 metrics representing HIS, along with checks for the underlying MISRA C coding standards that are referenced by HIS. The MISRA C directives and rules are listed by how they are referenced in MISRA-C:2012, rather than the earlier MISRA-C:2004 standard that was in place at the time the HIS standard was issued.
Software being reviewed with this checklist should be loaded into Imagix 4D with the -nosys option disabled and the -nosysbodies option enabled.
"MISRA", "MISRA C" and the triangle logo are registered trademarks owned by HORIBA MIRA Ltd, held on behalf of the MISRA Consortium.
HIS Source Code Metrics
HIS-CALLING | Number of callers more than 5 |
HIS-CALLS | Number of called functions more than 7 |
HIS-COMF | Ratio of comments to statements less or equal than 0.2 |
HIS-CYC | Cyclomatic Complexity Greater than 10 |
HIS-GOTO | Number of Goto |
HIS-LEVEL | Number of nested conditions more than 4 |
HIS-NOMV | Violations of the HIS subset of MISRA C rules |
HIS-NOMVPR | Violations of the HIS subset of MISRA C rules by rule |
HIS-PARAMS | Number of function parameters more than 5 |
HIS-PATH | Number of Paths More than 80 |
HIS-REC | Recursive Functions |
HIS-RETURN | Number of returns in function |
HIS-SCHG | Number of statements changed in project |
HIS-SDEL | Number of statements deleted in project |
HIS-SI | Stability index of project |
HIS-SNEW | Number of statements added in project |
HIS-STMT | Number of statements in function more than 50 |
HIS-VOCF | Vocabulary of function more than 4 |
Underlying MISRA C Directives
Dir 1.1 | Dir 4.4 |
Dir 4.6 | Dir 4.7 |
Dir 4.9 | Dir 4.11 |
Dir 4.12 | |
Dir 1.1 | Dir 4.6 | Dir 4.9 | Dir 4.12 | |
Dir 4.4 | Dir 4.7 | Dir 4.11 | | |
Underlying MISRA C Rules
Rule 1.1 | Rule 1.2 |
Rule 1.3 | Rule 2.1 |
Rule 2.1a | Rule 2.1b |
Rule 2.2 | Rule 3.1 |
Rule 4.1 | Rule 4.2 |
Rule 5.3 | Rule 5.6 |
Rule 5.7 | Rule 6.2 |
Rule 7.1 | Rule 8.1 |
Rule 8.2 | Rule 8.3 |
Rule 8.4 | Rule 8.5 |
Rule 8.6 | Rule 8.7 |
Rule 8.8 | Rule 8.9 |
Rule 8.13 | Rule 9.1 |
Rule 9.2 | Rule 10.1 |
Rule 10.2 | Rule 10.3 |
Rule 10.4 | Rule 10.6 |
Rule 10.7 | Rule 10.8 |
Rule 11.1 | Rule 11.3 |
Rule 11.8 | Rule 12.1 |
Rule 12.2 | Rule 12.3 |
Rule 12.4 | Rule 13.2 |
Rule 13.4 | Rule 13.5 |
Rule 13.6 | Rule 14.1 |
Rule 14.2 | Rule 15.1 |
Rule 15.2 | Rule 15.3 |
Rule 15.6 | Rule 15.7 |
Rule 16.2 | Rule 16.3 |
Rule 16.4 | Rule 16.5 |
Rule 16.6 | Rule 16.7 |
Rule 17.1 | Rule 17.2 |
Rule 17.3 | Rule 17.4 |
Rule 18.1 | Rule 18.2 |
Rule 18.3 | Rule 18.4 |
Rule 18.5 | Rule 18.6 |
Rule 19.1 | Rule 20.2 |
Rule 20.3 | Rule 20.4 |
Rule 20.6 | Rule 20.7 |
Rule 20.9 | Rule 20.10 |
Rule 20.11 | Rule 21.1 |
Rule 21.1a | Rule 21.1b |
Rule 21.1c | Rule 21.2 |
Rule 21.3 | Rule 21.4 |
Rule 21.5 | Rule 21.6 |
Rule 21.7 | Rule 21.8 |
Rule 21.10 | |
Rule 1.1 | Rule 8.4 | Rule 11.8 | Rule 16.4 | Rule 20.6 |
Rule 1.2 | Rule 8.5 | Rule 12.1 | Rule 16.5 | Rule 20.7 |
Rule 1.3 | Rule 8.6 | Rule 12.2 | Rule 16.6 | Rule 20.9 |
Rule 2.1 | Rule 8.7 | Rule 12.3 | Rule 16.7 | Rule 20.10 |
Rule 2.1a | Rule 8.8 | Rule 12.4 | Rule 17.1 | Rule 20.11 |
Rule 2.1b | Rule 8.9 | Rule 13.2 | Rule 17.2 | Rule 21.1 |
Rule 2.2 | Rule 8.13 | Rule 13.4 | Rule 17.3 | Rule 21.1a |
Rule 3.1 | Rule 9.1 | Rule 13.5 | Rule 17.4 | Rule 21.1b |
Rule 4.1 | Rule 9.2 | Rule 13.6 | Rule 18.1 | Rule 21.1c |
Rule 4.2 | Rule 10.1 | Rule 14.1 | Rule 18.2 | Rule 21.2 |
Rule 5.3 | Rule 10.2 | Rule 14.2 | Rule 18.3 | Rule 21.3 |
Rule 5.6 | Rule 10.3 | Rule 15.1 | Rule 18.4 | Rule 21.4 |
Rule 5.7 | Rule 10.4 | Rule 15.2 | Rule 18.5 | Rule 21.5 |
Rule 6.2 | Rule 10.6 | Rule 15.3 | Rule 18.6 | Rule 21.6 |
Rule 7.1 | Rule 10.7 | Rule 15.6 | Rule 19.1 | Rule 21.7 |
Rule 8.1 | Rule 10.8 | Rule 15.7 | Rule 20.2 | Rule 21.8 |
Rule 8.2 | Rule 11.1 | Rule 16.2 | Rule 20.3 | Rule 21.10 |
Rule 8.3 | Rule 11.3 | Rule 16.3 | Rule 20.4 | |
|