Integrating and Applying Architectural Design Patterns in Space Flight Software Product Lines
Julie Street Fant, Hassan E. M. Gomaa, Robert G. Pettit · 2015
The unmanned space flight software (FSW) domain contains a significant amount of variability within its required capabilities. Although all FSW execute commands from the ground station to control the spacecraft, there is significant amount of variability in the volume of commands that must be processed, the amount of control given to the ground station versus onboard autonomy, and the amount and type of hardware that requires controlling. This degree of architectural variability makes it difficult to develop a FSW software product line (SPL) architecture that covers the all possible variations. In order to address this challenge, this paper presents a SPL approach for FSW SPLs that manages variability at a higher level of granularity using software architectural design patterns and requires less modeling during the SPL engineering phase. Specifically it describes how variable design patterns can be interconnected to form FSW SPL software architectures. The design patterns are tailored to individual FSW applications during application engineering. The paper describes in detail the application and validation of this approach.