In model-based systems engineering projects, engineers from multiple domains collaborate by establishing a common system model. Multi-level modeling is a technique that can be used to model the development from abstract ideas to concrete implementations. However, current multi-level modeling approaches are not adequate for processes with multiple modeling phases that might have to be rearranged later. In this paper, we introduce multi-phase modeling that utilizes concepts of multi- level modeling by considering a description of the expected phase ordering per domain. Constraints aware of this context can express that certain elements are only valid in specific phases without having to determine a concrete phase ordering for a particular model. This enables using multi-phase modeling in flexible workflows, adapting to changing requirements and the definition of access rules in domain notation. We show feasibility of this multi-phase modeling by applying it to multiple real-life systems engineering projects of the aerospace domain.
The article is published as an Open Access work and can be downloaded free of any charge from the SpringerLink library.
In model-based systems engineering, engineers from different domains collaborate on central system models. They develop abstract ideas to concrete implementations. To organize information exchange and to prevent misconceptions and conflicts, strict rules for model manipulations are required.
Multilevel modeling is a technique that can map systems development from abstract to concrete. It enables to iteratively use existing model elements to describe new ones, which are added to more concrete model levels. Editing constraints for such system models require foreseeing the following model levels. However, in systems engineering models have to be adjustable to changing requirements and projects of different complexities. As a result, depending on the application context, system models contain different abstraction levels.
This thesis presents context-sensitive multilevel modeling, which introduces a separate context model. This context can be utilized to specify context-based constraints. With, e.g., a process model as context, it is possible to specify that elements are only editable in a specific process phase. Changing requirements can be handled by updating the context model. Furthermore, context-based constraints are understandable for non-experts in modeling.
This thesis shows feasibility of context-sensitive multilevel modeling by applying it to systems engineer- ing projects of the space domain. Besides editing constraints, these projects demand domain-specific editors and artifact generation.
The project ATON (Autonomous Terrain-based Optical Navigation) at the German Aerospace Center (DLR) is developing an optical navigation system for future landing missions on celestial bodies such as the Moon or asteroids. Image data obtained by optical sensors can be used for autonomous determination of the spacecraft’s position and attitude. Camera-in-the-loop experiments in the TRON (Testbed for Robotic Optical Navigation) laboratory and flight campaigns with unmanned aerial vehicle (UAV) are performed to gather flight data for further development and to test the system in a closed-loop scenario. The software modules are executed in the C++ Tasking Framework that provides the means to concurrently run the modules in separated tasks, send messages between tasks, and schedule task execution based on events. Since the project is developed in collaboration with several institutes in different domains at DLR, clearly defined and well-documented interfaces are necessary. Preventing misconceptions caused by differences between various development philosophies and standards turned out to be challenging. After the first development cycles with manual Interface Control Documents (ICD) and manual implementation of the complex interactions between modules, we switched to a model-based approach. The ATON model covers a graphical description of the modules, their parameters and communication patterns. Type and consistency checks on this formal level help to reduce errors in the system. The model enables the generation of interfaces and unified data types as well as their documentation. Furthermore, the C++ code for the exchange of data between the modules and the scheduling of the software tasks is created automatically. With this approach, changing the data flow in the system or adding additional components (e.g. a second camera) have become trivial.
This work has been presented at DLRK 2016 and the paper was first published by DGLR. In 2017 Springer then published an extension of the conference paper in CEAS Space Journal: