Verification Across the Development Lifecycle

Vector Tools at Every Stage, from Static Analysis to Certification

Embedded software teams working under ISO 26262, DO-178C, IEC 61508, and IEC 62304 verify at every stage of development. The economics are straightforward: defects caught during static analysis cost a fraction of defects caught during integration, and defects caught during integration cost a fraction of defects caught in the field. Static analysis, unit testing, integration testing, coverage measurement, and traceability records each serve a specific stage. By the time a project reaches audit, the evidence should already exist.

Verification Starts at the Source

The most cost-effective place to find a defect is before testing begins. Static code analysis examines source code without executing it, catching coding standard violations, type errors, null-pointer dereferences, and security weaknesses the moment code is written. Integrated into the build pipeline, it gives developers immediate feedback and prevents defects from accumulating through the project.

Unit Testing: Verify Every Component

Once code is written, unit testing verifies that each function, module, class, or component behaves correctly in isolation. Each test case is written against a specific requirement, executed automatically, and measured for structural coverage, establishing the bidirectional traceability that safety standards require.

VectorCAST automates the creation and management of unit test environments for C, C++, and Ada, supports both host and target execution, and generates the coverage data and traceability records that safety standards require.

Integration Testing: Verify the Interfaces

When individual units are verified, integration testing confirms that the interfaces between them behave correctly. This is where assumptions about module boundaries are tested, coupling between components is exercised, and system-level behavior begins to emerge. Coverage measurement continues at this stage, often using VectorCAST/QA to instrument the integrated software independently of the compiler.

Coverage, Traceability, and Evidence

Vector tools measure structural coverage to the levels each standard prescribes, from statement and branch coverage at lower integrity levels through to MC/DC at ASIL D and DO-178C Level A. Every test result is linked to the requirement it proves, and every coverage report is generated in the format that certification authorities review.

Continuous Verification

Continuous verification means every commit is checked, not just builds that are flagged for review. PC-lint Plus runs static analysis at the point code is written. VectorCAST re-executes the tests affected by each change rather than running the full suite every time. Squore monitors the cumulative effect of those runs, enforcing quality gates and surfacing trends before they become release risks.

Tools Built for This Environment

Vector's verification tools are designed for safety-critical embedded development. They are certified to the standards they support, integrate into virtually any build and CI environment, and produce evidence in the formats auditors require.