Anyone who has been tasked with bringing a product through the DO-178 certification process knows the level of effort required to make sure all of the “i’s are dotted and t’s are crossed” prior to an audit. In this month’s blog, Omnicon offers some advice on tasks that many companies tend to wait until late, or even the end of the program, to review.
Specific questions to consider:
- Are all of the deliverables available?
- Have they been reviewed and pending actions closed?
- Has Configuration Management weighed in?
- Has Quality Assurance verified all processes to date?
- Are there sufficient records providing evidence to such?
Those are questions we typically ask initially. The following section, however, tends to be left until later in the project. With greater attention given to these issues, and giving consideration early and throughout the DO-178 process, you will not be left scrambling at the last moment to address them.
Data Coupling: Data Coupling is defined by the degree of data interdependence of components between software modules. Engineers should be including checks for unused data and uninitialized data during data coupling analysis. To help accomplish this task, we urge limited use of global data, generating and analyzing set/use tables to ensure all data items declared are initialized and used as intended. Data flow diagrams are also an excellent way to provide the information needed for analysis.
Control Coupling: Control Coupling is when a module of software influences the execution of another. Engineers should generate and analyze call trees, flow charts and sequence diagrams and match these against the design to ensure you’re getting the right influences throughout the process.
Structural Coverage: Structural Coverage helps to eliminate gaps in requirements and test. We aren’t suggesting putting unnecessary constraints on the development team, however there are certain coding techniques that can be used to help attain better code and branch coverage.
For example, using switch/cases, if/else, for loops and do/whiles in different ways can yield better coverage without negative impacts on performance or maintainability. What works best may be differences driven by DAL (Design Assurane Level) and whether MCDC (Modified Condition/Decision Coverage) coverage is required.
Tool Qualification: It is important to know when a third-party or in-house tool requires qualification. The key point is to know how the tool is being used and whether tool-qual is required. Perhaps the only thing worse than using a software tool that has not been qualified is to go through the expense of having a tool qualified when it was not required.
To make sure all points are addressed, Omnicon has developed numerous checklists based on our years of experience. These checklists help our customers with bringing a product through the DO-178 certification process with confidence and relieve the associated stress.
Contact us today to receive guidance based on our accumulated expertise and discipline to help you address your certification needs and requirements throughout the development and verification process.
Morgan Abrams October 12, 2017
Posted In: Blog Series