In Aerospace, Defense, and Government (ADG) projects, quality is not a luxury—it’s a necessity. Failure is simply not an option in mission-critical ADG applications. However, “quality” is a complex concept: if applied too rigidly, it can lead to costly delays and budget overruns. Achieving the right balance requires a deep understanding of the software engineering process and the careful use of COTS solutions.
As with building a home, some quality measures—like ensuring a level foundation—are “table stakes.” Others, like earthquake-proof joints, should be applied only when appropriate to the environment. The same principle applies in software development: quality must match project requirements and user needs without overengineering.
DMC approaches quality with discipline, balancing cost, compliance, and mission readiness. Our process draws inspiration from NASA standards, notably NASA Procedural Requirement 7150.2 and NASA-STD-8739.8, ensuring our work aligns with the highest industry expectations.
Quality at the Developer Commit Phase
Although quality touches every project phase, a critical checkpoint is when developers prepare to commit their work. At this stage, DMC leverages industry-standard COTS solutions—like Git and GitLab—alongside custom tools for efficient and auditable code reviews.
Feature development happens in isolated branches, with code tightly linked to project requirements and safety-critical designations per NASA SWE-134 guidelines. Before any code is merged into the main branch, it must pass two structured reviews: a Functional Code Review and a Quality Code Review.
Functional Code Review: Structured Self-Verification
The Functional Code Review ensures that code changes meet all design, functionality, and testing requirements. In GitLab, DMC uses a detailed merge request template covering eight key categories:
- Design Verification
- Functionality Check
- Test Plan Review
- UI/U Validation
- Documentation
- VeriStand Considerations
- Rework Requirements
- Completion Checklist
Developers perform a self-review using this checklist before engaging a reviewer. By this point, the developer will have conducted:
- Static code analysis using standard and custom NI VI Analyzer tests.
- Unit and regression testing via the JKI Caraya framework (for LabVIEW) and PyTest (for Python).
- Manual test management through our Monday.com-based Acceptance Test Plan (ATP) links requirements directly to test procedures and results.
This structured process ensures that software quality is verified early and often.
Quality Code Review and Requirements Traceability
Once a Functional Code Review is complete, the code advances to a Quality Code Review—the final gate before merging.
DMC has developed custom tools to perform:
- Static code analysis
- Requirements fulfillment analysis
- Automated report generation (interactive MS Word and PDF formats)
Reviewers and developers collaborate directly within these reports, ensuring actionable feedback and compliance with safety-critical standards.
Requirements management and traceability are handled through DMC’s Requirements Traceability Matrix (RTM), implemented on Monday.com. Automated tools extract traceability data, feeding into a comprehensive Requirements Coverage Table (RCT). This ensures that every mission-critical requirement is accounted for and verifiably fulfilled.

Static Code Analysis with VIA Plus
Our primary static analysis tool, VIA Plus (developed by Shirey Studios and distributed via VIPM), provides:
- Project-specific dictionaries and threshold settings
- Priority classification of findings (High, Normal, Low)
- Automated documentation of UI/UX elements, error handling, call chains, and connector panes

High-priority items require 100% compliance, while others follow configurable project-specific thresholds. This flexibility ensures that our quality processes are both rigorous and appropriately scaled.
Integrated editing tools within VIA Plus allow for rapid documentation updates during the review, further streamlining the software engineering process.

CI/CD, Build Traceability, and Mission Assurance
Following successful reviews, DMC’s Continuous Integration/Continuous Delivery (CI/CD) pipeline finalizes the build process for mission-critical applications. Our pipeline compiles and builds artifacts—including PC executables, DLLs, Packed Project Libraries, and Real-Time targets—with strict versioning based on semantic versioning principles.
We use VMware virtual machines to ensure tightly controlled build environments. Dependencies are managed through VIPM and NI Package Manager (NIPM), providing full traceability for each component version at build time.
Your success is our mission, learn more about DMC’s Test & Measurement Automation Solutions and contact us for your next project.
Explore Additional Blogs in this Series
Read more about other key topics in NPR 7150.2 compliance through the remainder of our ADG Mission-Critical Applications series: