{'fraction_non_alphanumeric': 0.027218934911242602, 'fraction_numerical': 0.001183431952662722, 'mean_word_length': 5.266666666666667, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Model-Driven Design of Real-Time Software for an Experimental Satellite

Abstract Model-driven engineering has gained widespread interest as a means to raise the abstraction level in software development, thus lowering cost and increasing efficiency. In this paper, a case study on using this approach to design the real-time software for UPMSat-2, an experimental micro-satellite, is described. The functionality of the software includes attitude determination and control, on-board data handling, platform monitoring and control, and payload management. A mix of modelling and software engineering tools have been used, enabling automatic code generation of most of the application software. The lessons learned from such an approach are analysed in the paper, and the use of model-driven engineering in real-time control systems is discussed.