From Architecture to Binary: Ensuring Cross-Domain Consistency in Model-Based Airborne Software Development
Software Engineering
Summary
The authors propose a new way to develop software for both manned and unmanned aircraft that helps reduce mismatches between system design, functional models, and actual embedded software. They focus on making sure different teams can work together smoothly by using a central repository system that automatically keeps everything consistent and up-to-date. Their approach suits small teams and avoids heavy bureaucracy by using automated checks and notifications to catch problems early. They shared early results from using this method in a real project and got positive feedback.
airborne softwaremodel-based developmentembedded softwareARP-4754BDO-178Ccontinuous integrationrepositorysoftware consistencyunmanned aerial vehicles (UAV)software toolchain
Authors
Nils Schlautmann, Viktor Sinitsyn, Benjamin Engelhard, Florian Holzapfel
Abstract
This paper presents an airborne software development approach for manned and unmanned aerial vehicles aimed at reducing inconsistencies across system, model-based functional, and embedded software domains. In environments influenced by standards such as ARP-4754B and DO-178C, these inconsistencies typically stem from insufficient enforcement across domain boundaries rather than missing process definitions. Building on a previously proposed toolchain centered on a relational interface database, we identify recurring failure modes and propose a repository-centered implementation to address them, tailored to small, resource-constrained teams operating without heavyweight process overhead. Each domain is assigned a primary repository with cross-repository references and dedicated CI pipelines that generate, update, and validate the exchanged artifacts. Automated interface updates, differential change notifications, and consistency checks propagate changes with minimal manual effort and surface inconsistencies before the time-consuming code-generation and compilation steps. An initial implementation in an ongoing experimental project is described, with qualitative feedback from its early use.