Sommer, Jan (2022) Commit, Release, Package: Automation in the development process for the ReFEx GNC System. 15th Annual Workshop on Spacecraft Flight Software, 2022-02-07 - 2022-02-10, Online.
![]() |
PDF
1MB |
Official URL: https://drive.google.com/file/d/19oOvgzsaUZJB_36AEqXrs7aPpEU0r2vn
Abstract
The Reusability Flight Experiment (ReFEx) is DLR’s upcoming experimental vehicle for studying the behavior of a reusable upper stage during controlled re-entry in a vertical takeoff, horizontal landing configuration. The Guidance, Navigation and Control (GNC) subsystem of ReFEx is developed in collaboration between small development teams of domain experts which are distributed physically and across different DLR institutes. Therefore, the driving goal for the repository and continuous integration (CI) setup is to have a central place for software related exchange and to enable a review process between more proficient C/C++ developers and GNC domain experts. The reviews are supported by automated checks and metric collection to give immediate feedback on the code quality of proposed changes. Additionally, we try to strive to run the unit tests of software modules on the development machines to reduce the necessary amount testing on the on-board computer hardware as it is usually time consuming or due to limited availability not available for all development teams. This presentation gives first a short introduction to the GNC subsystem. We then present the organization of the development ecosystem starting with the repository organization and management of access rights as well as our policy for contributing back to internal and external upstream projects used in the GNC flight software. The following main part of our presentation covers the setup of the CI system. For supporting the software development and review process, we use pipelines which check compilation of all software items, the adherence to code formatting rules, basic static analysis, memory error detection, execution of unit tests and code coverage analysis for every proposed change. CI is also used for building and publishing releases. The pre-compiled binaries are packaged and published in a package registry in order to support application developers with dependency management for their local development environment. Finally, we discuss the lessons learned during the setup, the benefits for the development process of flight software, open questions and possible solutions for future development.
Item URL in elib: | https://elib.dlr.de/185493/ | ||||||||
---|---|---|---|---|---|---|---|---|---|
Document Type: | Conference or Workshop Item (Speech) | ||||||||
Title: | Commit, Release, Package: Automation in the development process for the ReFEx GNC System | ||||||||
Authors: |
| ||||||||
Date: | 9 February 2022 | ||||||||
Refereed publication: | No | ||||||||
Open Access: | Yes | ||||||||
Gold Open Access: | No | ||||||||
In SCOPUS: | No | ||||||||
In ISI Web of Science: | No | ||||||||
Status: | Published | ||||||||
Keywords: | Flight Software DevOps Pipeline Repository Software Development | ||||||||
Event Title: | 15th Annual Workshop on Spacecraft Flight Software | ||||||||
Event Location: | Online | ||||||||
Event Type: | Workshop | ||||||||
Event Start Date: | 7 February 2022 | ||||||||
Event End Date: | 10 February 2022 | ||||||||
Organizer: | Johns Hopkins University Applied Physics Laboratory | ||||||||
HGF - Research field: | Aeronautics, Space and Transport | ||||||||
HGF - Program: | Space | ||||||||
HGF - Program Themes: | Space Transportation | ||||||||
DLR - Research area: | Raumfahrt | ||||||||
DLR - Program: | R RP - Space Transportation | ||||||||
DLR - Research theme (Project): | R - Project ReFEx - Reusability Flight Experiment | ||||||||
Location: | Braunschweig | ||||||||
Institutes and Institutions: | Institute of Software Technology Institute of Software Technology > Software for Space Systems and Interactive Visualisation | ||||||||
Deposited By: | Sommer, Jan | ||||||||
Deposited On: | 21 Jul 2022 10:45 | ||||||||
Last Modified: | 24 Apr 2024 20:47 |
Repository Staff Only: item control page