NxtrFil Review
Overview
Summary SheetSource Code - initial review
Source Code -rework review
QAC - initial review
QAC - rework review
Integration Manual
Sheet 1: Summary Sheet
Sheet 2: Source Code - initial review
Rev 6.0 | 28-Oct-14 | |||||||||||||||||||||||
Peer Review Meeting Log (Source Code Review) | ||||||||||||||||||||||||
Source File Name: | Source File Revision: | |||||||||||||||||||||||
Module Design Document Name: | MDD Revision: | |||||||||||||||||||||||
Data Dictionary Revision: | FDD/SER/CMS | |||||||||||||||||||||||
and Revision: | ||||||||||||||||||||||||
Quality Check Items: | ||||||||||||||||||||||||
Yes | No | Rationale is required for all answers of No | ||||||||||||||||||||||
Pre-review checklist for change owners | Software Naming Convention V1.2 followed: | |||||||||||||||||||||||
for variable names | X | Comments: | EA4 naming conventions | |||||||||||||||||||||
for constant names | X | Comments: | EA4 naming conventions | |||||||||||||||||||||
for function names | X | Comments: | add _f32 to functions that return float32 | |||||||||||||||||||||
for other names (component, memory | X | Comments: | memory names need NxtrFil instead of NXTRFIL | |||||||||||||||||||||
mapping handles, typedefs, etc.) | ||||||||||||||||||||||||
All buffered outputs written in every path, i.e. no | X | Comments: | N/A | |||||||||||||||||||||
possibility of an uninitialized value being written | ||||||||||||||||||||||||
Group-review Checklist (review board) | Synergy version matches change history | X | Comments: | |||||||||||||||||||||
and Version Control version in file comment block | ||||||||||||||||||||||||
Change log contains detailed description of changes | X | Comments: | ||||||||||||||||||||||
and CR number | ||||||||||||||||||||||||
Code accurately implements FDD (Document or Model) | X | Comments: | FDD not created yet | |||||||||||||||||||||
implementation matches EA3 macro implementation | ||||||||||||||||||||||||
No Compiler Errors or Warnings verified | X | Comments: | ||||||||||||||||||||||
FDD test points exist as display variables: declared | X | Comments: | N/A | |||||||||||||||||||||
static volatile, written once and never used, names | ||||||||||||||||||||||||
match the FDD | ||||||||||||||||||||||||
Software Design and Coding Standards V2.0 followed: | ||||||||||||||||||||||||
Code comments are clear, correct, and adequate | X | Comments: | ||||||||||||||||||||||
and have been updated for the change: [N40] and | ||||||||||||||||||||||||
all other rules in the same section as rule [N40], | ||||||||||||||||||||||||
plus [N75], [N12], [N23], [N33], [N37], [N38], | ||||||||||||||||||||||||
[N48], [N54], [N77], [N79], [N72] | ||||||||||||||||||||||||
Source file (.c and .h) comment blocks are per | X | Comments: | ||||||||||||||||||||||
standards and contain correct information: [N41], [N42] | ||||||||||||||||||||||||
Function comment blocks are per standards and | X | Comments: | ||||||||||||||||||||||
contain correct information: [N43] | ||||||||||||||||||||||||
Code formatting (indentation, placement of | X | Comments: | ||||||||||||||||||||||
braces, etc.) is per standards: [N5], [N55], [N56], | ||||||||||||||||||||||||
[N57], [N58], [N59] | ||||||||||||||||||||||||
Embedded constants used per standards; no | X | Comments: | ||||||||||||||||||||||
"magic numbers": [N12] | ||||||||||||||||||||||||
All variables and constants defined at module | X | Comments: | N/A | |||||||||||||||||||||
level are included in appropriate MemMap | ||||||||||||||||||||||||
section: [N25] and Naming Conventions | ||||||||||||||||||||||||
All execution-order-dependent code can be | X | Comments: | N/A | |||||||||||||||||||||
recognized by the compiler: [N80] | ||||||||||||||||||||||||
No possibility of a non-terminating loop: [N63] | X | Comments: | N/A | |||||||||||||||||||||
No possibility of divide by zero: [N65] | X | Comments: | logic prevents divide by zero | |||||||||||||||||||||
All integer division and modulus operations | X | Comments: | N/A | |||||||||||||||||||||
handle negative numbers correctly: [N76] | ||||||||||||||||||||||||
All typecasting and fixed point arithmetic, | X | Comments: | N/A | |||||||||||||||||||||
including all use of fixed point macros and | ||||||||||||||||||||||||
timer functions, is correct and has no possibility | ||||||||||||||||||||||||
of unintended overflow or underflow: [N66] | ||||||||||||||||||||||||
No possibility of converting a negative floating | X | Comments: | N/A | |||||||||||||||||||||
point value to an unsigned type: [N67] | ||||||||||||||||||||||||
All conversions between signed and unsigned | X | Comments: | N/A | |||||||||||||||||||||
types handle msb==1 as intended: [N78] | ||||||||||||||||||||||||
No possibility of dereferencing a null | X | Comments: | design limitation - pointer parameters | |||||||||||||||||||||
pointer: [N70] | must have non-null values | |||||||||||||||||||||||
Global outputs (RTE and Non-RTE) Initialized: | X | Comments: | N/A | |||||||||||||||||||||
[N24] | ||||||||||||||||||||||||
Module outputs are limited to the legal range | X | Comments: | N/A | |||||||||||||||||||||
defined in the FDD Data dictionary: [N53] | ||||||||||||||||||||||||
All code is mapped with FDD (all FDD | X | Comments: | to be added in later rev, after FDD and | |||||||||||||||||||||
subfunctions and/or model blocks identified | FRs are created | |||||||||||||||||||||||
with code comments; all code corresponds to | ||||||||||||||||||||||||
some FDD subfunction and/or model block): [N40] | ||||||||||||||||||||||||
Struct types used for NvM have | X | Comments: | N/A | |||||||||||||||||||||
elements declared in decreasing order by size | ||||||||||||||||||||||||
and are not nested or used in arrays: [N84], [N85] | ||||||||||||||||||||||||
No violations of other coding standard rules | X | Comments: | ||||||||||||||||||||||
identified during review | ||||||||||||||||||||||||
General Notes / Comments: | ||||||||||||||||||||||||
Change Owner: | Kathleen Creager | Review Date : | 02/27/15 | |||||||||||||||||||||
Lead Peer Reviewer: | Kevin Smith | Approved by Reviewer(s): | ||||||||||||||||||||||
Other Reviewer(s): | Lucas Wendling | |||||||||||||||||||||||
Sheet 3: Source Code -rework review
Rev 6.0 | 28-Oct-14 | |||||||||||||||||||||||
Peer Review Meeting Log (Source Code Review) | ||||||||||||||||||||||||
Source File Name: | Source File Revision: | |||||||||||||||||||||||
Module Design Document Name: | MDD Revision: | |||||||||||||||||||||||
Data Dictionary Revision: | FDD/SER/CMS | |||||||||||||||||||||||
and Revision: | ||||||||||||||||||||||||
Quality Check Items: | ||||||||||||||||||||||||
Yes | No | Rationale is required for all answers of No | ||||||||||||||||||||||
Pre-review checklist for change owners | Software Naming Convention V1.2 followed: | |||||||||||||||||||||||
for variable names | X | Comments: | EA4 naming conventions | |||||||||||||||||||||
for constant names | X | Comments: | EA4 naming conventions | |||||||||||||||||||||
for function names | X | Comments: | ||||||||||||||||||||||
for other names (component, memory | X | Comments: | ||||||||||||||||||||||
mapping handles, typedefs, etc.) | ||||||||||||||||||||||||
All buffered outputs written in every path, i.e. no | X | Comments: | N/A | |||||||||||||||||||||
possibility of an uninitialized value being written | ||||||||||||||||||||||||
Group-review Checklist (review board) | Synergy version matches change history | X | Comments: | |||||||||||||||||||||
and Version Control version in file comment block | ||||||||||||||||||||||||
Change log contains detailed description of changes | X | Comments: | ||||||||||||||||||||||
and CR number | ||||||||||||||||||||||||
Code accurately implements FDD (Document or Model) | X | Comments: | FDD not created yet | |||||||||||||||||||||
implementation matches EA3 macro implementation | ||||||||||||||||||||||||
No Compiler Errors or Warnings verified | X | Comments: | ||||||||||||||||||||||
FDD test points exist as display variables: declared | X | Comments: | N/A | |||||||||||||||||||||
static volatile, written once and never used, names | ||||||||||||||||||||||||
match the FDD | ||||||||||||||||||||||||
Software Design and Coding Standards V2.0 followed: | ||||||||||||||||||||||||
Code comments are clear, correct, and adequate | X | Comments: | ||||||||||||||||||||||
and have been updated for the change: [N40] and | ||||||||||||||||||||||||
all other rules in the same section as rule [N40], | ||||||||||||||||||||||||
plus [N75], [N12], [N23], [N33], [N37], [N38], | ||||||||||||||||||||||||
[N48], [N54], [N77], [N79], [N72] | ||||||||||||||||||||||||
Source file (.c and .h) comment blocks are per | X | Comments: | ||||||||||||||||||||||
standards and contain correct information: [N41], [N42] | ||||||||||||||||||||||||
Function comment blocks are per standards and | X | Comments: | ||||||||||||||||||||||
contain correct information: [N43] | ||||||||||||||||||||||||
Code formatting (indentation, placement of | X | Comments: | ||||||||||||||||||||||
braces, etc.) is per standards: [N5], [N55], [N56], | ||||||||||||||||||||||||
[N57], [N58], [N59] | ||||||||||||||||||||||||
Embedded constants used per standards; no | X | Comments: | ||||||||||||||||||||||
"magic numbers": [N12] | ||||||||||||||||||||||||
All variables and constants defined at module | X | Comments: | N/A | |||||||||||||||||||||
level are included in appropriate MemMap | ||||||||||||||||||||||||
section: [N25] and Naming Conventions | ||||||||||||||||||||||||
All execution-order-dependent code can be | X | Comments: | N/A | |||||||||||||||||||||
recognized by the compiler: [N80] | ||||||||||||||||||||||||
No possibility of a non-terminating loop: [N63] | X | Comments: | N/A | |||||||||||||||||||||
No possibility of divide by zero: [N65] | X | Comments: | logic prevents divide by zero | |||||||||||||||||||||
All integer division and modulus operations | X | Comments: | N/A | |||||||||||||||||||||
handle negative numbers correctly: [N76] | ||||||||||||||||||||||||
All typecasting and fixed point arithmetic, | X | Comments: | N/A | |||||||||||||||||||||
including all use of fixed point macros and | ||||||||||||||||||||||||
timer functions, is correct and has no possibility | ||||||||||||||||||||||||
of unintended overflow or underflow: [N66] | ||||||||||||||||||||||||
No possibility of converting a negative floating | X | Comments: | N/A | |||||||||||||||||||||
point value to an unsigned type: [N67] | ||||||||||||||||||||||||
All conversions between signed and unsigned | X | Comments: | N/A | |||||||||||||||||||||
types handle msb==1 as intended: [N78] | ||||||||||||||||||||||||
No possibility of dereferencing a null | X | Comments: | documented in usage notes | |||||||||||||||||||||
pointer: [N70] | no run-time check for throughput reasons | |||||||||||||||||||||||
Global outputs (RTE and Non-RTE) Initialized: | X | Comments: | N/A | |||||||||||||||||||||
[N24] | ||||||||||||||||||||||||
Module outputs are limited to the legal range | X | Comments: | N/A | |||||||||||||||||||||
defined in the FDD Data dictionary: [N53] | ||||||||||||||||||||||||
All code is mapped with FDD (all FDD | X | Comments: | to be added in later rev, after FDD and | |||||||||||||||||||||
subfunctions and/or model blocks identified | FRs are created | |||||||||||||||||||||||
with code comments; all code corresponds to | ||||||||||||||||||||||||
some FDD subfunction and/or model block): [N40] | ||||||||||||||||||||||||
Struct types used for NvM have | X | Comments: | N/A | |||||||||||||||||||||
elements declared in decreasing order by size | ||||||||||||||||||||||||
and are not nested or used in arrays: [N84], [N85] | ||||||||||||||||||||||||
No violations of other coding standard rules | X | Comments: | ||||||||||||||||||||||
identified during review | ||||||||||||||||||||||||
General Notes / Comments: | ||||||||||||||||||||||||
reviewed after rework from initial review (rework done: _f32 added to function names of functions that return float32; capitalization corrected on memory mapping | ||||||||||||||||||||||||
names; design limitation regarding no checking for null pointers added as usage note in function comment blocks, to be added to design component when created) | ||||||||||||||||||||||||
Change Owner: | Kathleen Creager | Review Date : | 03/03/15 | |||||||||||||||||||||
Lead Peer Reviewer: | Kevin Smith | Approved by Reviewer(s): | Yes | |||||||||||||||||||||
Other Reviewer(s): | ||||||||||||||||||||||||
Sheet 4: QAC - initial review
Rev 6.0 | 28-Oct-14 | |||||||||||||||||||||||
Peer Review Meeting Log (QAC Review) | ||||||||||||||||||||||||
Module Name: | Source File Revision: | 1 | Module | 1 | of | 1 | ||||||||||||||||||
Compliance Guidelines Version: | EA4 working | |||||||||||||||||||||||
Used NxtrFil_TestHarness.c (in tools folder) for QAC and Polyspace analysis of the NxtrFil.h file. | ||||||||||||||||||||||||
Quality Check Items: | ||||||||||||||||||||||||
Yes | No | Rationale is required for all answers of No | ||||||||||||||||||||||
Pre-review checklist for change owners | QAC version is correct and did not change (List version) | X | Comments: | 1.0.0 | ||||||||||||||||||||
component-specific QAC and Polyspace files needed | ||||||||||||||||||||||||
in order to see warnings on this library header file | ||||||||||||||||||||||||
(see tools folder) | ||||||||||||||||||||||||
Contract Folder's header files are appropriate | X | Comments: | needs rework due to function name changes | |||||||||||||||||||||
Group-review Checklist (review board) | 100% Compliance to the MISRA Compliance Guidelines | X | Comments: | Polyspace gives MISRA warning 21.1 | ||||||||||||||||||||
for possible null pointer dereference; see comments below | ||||||||||||||||||||||||
Cyclomatic complexity and Static path count ok per | X | Comments: | ||||||||||||||||||||||
Design and Coding Standards rule [N47] | ||||||||||||||||||||||||
General Notes / Comments: | ||||||||||||||||||||||||
waiting for Polyspace guidelines before using deviation comments for Polyspace-only MISRA warnings. The null pointer warning should not show up when running | ||||||||||||||||||||||||
Polyspace on an integration project. | ||||||||||||||||||||||||
Change Owner: | Kathleen Creager | Review Date : | 02/27/15 | |||||||||||||||||||||
Lead Peer Reviewer: | Kevin Smith | Approved by Reviewer(s): | ||||||||||||||||||||||
Other Reviewer(s): | Lucas Wendling | |||||||||||||||||||||||
Sheet 5: QAC - rework review
Rev 6.0 | 28-Oct-14 | |||||||||||||||||||||||
Peer Review Meeting Log (QAC Review) | ||||||||||||||||||||||||
Module Name: | Source File Revision: | 1 | Module | 1 | of | 1 | ||||||||||||||||||
Compliance Guidelines Version: | EA4 working | |||||||||||||||||||||||
Used NxtrFil_TestHarness.c (in tools folder) for QAC and Polyspace analysis of the NxtrFil.h file. | ||||||||||||||||||||||||
Quality Check Items: | ||||||||||||||||||||||||
Yes | No | Rationale is required for all answers of No | ||||||||||||||||||||||
Pre-review checklist for change owners | QAC version is correct and did not change (List version) | X | Comments: | 1.0.0 | ||||||||||||||||||||
component-specific QAC and Polyspace files needed | ||||||||||||||||||||||||
in order to see warnings on this library header file | ||||||||||||||||||||||||
(see tools folder) | ||||||||||||||||||||||||
Contract Folder's header files are appropriate | X | Comments: | ||||||||||||||||||||||
Group-review Checklist (review board) | 100% Compliance to the MISRA Compliance Guidelines | X | Comments: | Polyspace gives MISRA warning 21.1 | ||||||||||||||||||||
for possible null pointer dereference; see comments below | ||||||||||||||||||||||||
Cyclomatic complexity and Static path count ok per | X | Comments: | ||||||||||||||||||||||
Design and Coding Standards rule [N47] | ||||||||||||||||||||||||
General Notes / Comments: | ||||||||||||||||||||||||
re-run and re-reviewed after source code and contract folder file rework from initial review | ||||||||||||||||||||||||
waiting for Polyspace guidelines before using deviation comments for Polyspace-only MISRA warnings. The null pointer warning should not show up when running | ||||||||||||||||||||||||
Polyspace on an integration project. Usaage notes in function comment blocks document the design limitation. | ||||||||||||||||||||||||
Change Owner: | Kathleen Creager | Review Date : | 03/03/15 | |||||||||||||||||||||
Lead Peer Reviewer: | Kevin Smith | Approved by Reviewer(s): | Yes | |||||||||||||||||||||
Other Reviewer(s): | ||||||||||||||||||||||||