Blog

ADG Mission Critical Applications: Quality Matters

ADG Mission Critical Applications: Quality Matters

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 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.

Requirements Traceability Matrix (RTM)

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

VIA Plus Configurations

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.

VIA Plus

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 our other key topics in NPR 7150.2 compliance through the remainder of our ADG Mission-Critical Applications series:

  • Building the Right Way with ARTful Design Understand NASA NPR 7150.2 standards and their use for mission-critical ADG systems. We demonstrate how using A.R.T.ful design, COTS tools, and robust documentation strategies helps to meet and exceed those requirements.
  • It All Starts with Documentation Learn about the tools and digital ecosystems that form the baseline for persistent, searchable, and traceable project knowledge and planning. We’ll show how our use of platforms like Confluence, Monday.com, and SharePoint lays the groundwork for compliance with SWE-013 and other documentation-related requirements.
  • Entrusting Your Mission's Objectives to a PartnerCommunication is the first step in traceability. Learn how DMC captures client intent from day one, linking early conversations and contract documents into Requirement Traceability Matrices using Monday.com. This aligns directly with SWE-050 and SWE-052.
  • Seeing Your Vision Take Shape Through DesignsYour vision must translate into tangible designs. Learn about how DMC maps requirements to designs using Confluence and custom integrations, generating a live Requirements Coverage Table and validating coverage bidirectionally per 7150.2.
  • The Plan Is the Plan...Until the Plan ChangesChange happens. Learn how DMC's configuration and change management systems allow us to adapt while preserving traceability and alignment with SWE-079.
  • Turning Your Vision into RealityDesign becomes code. Learn how DMC's traceability extends into source code across multiple platforms (NI LabVIEW, Python, NI VeriStand), and how we maintain this alignment without overburdening developers.

Comments

There are currently no comments, be the first to post one.

Post a comment

Name (required)

Email (required)

CAPTCHA image
Enter the code shown above: