AN ADAPTABLE ON-BOARD APPLICATION IN C++

2003 
Although C is well-established as a programming language for on-board applications, the use of its successor C++ is still resisted owing to safety concerns and the difficulty of accommodating its object-oriented features within current software qualification processes. While acknowledging these problems, this paper emphasizes the potential advantages of C++ for on-board software deriving from its support for advanced adaptation techniques that are essential to making software reuse possible. The discussion is made in the context of a project jointly done by Alenia Spazio / Rome (I) and P&P Software (D) for the development of the software for the TTC (Telemetry and TeleCommand) Modem of a digital transponder (TTCM-SW project). A prototype for this application has been entirely developed in C++ using software framework technology. The paper is ivided into two parts. The first part (sections 1 to 3) presents the rationale for the use of C++ in on-board applications. It argues in particular that this language is, at least in the short term, the ideal implementation medium for a framework approach which is in turn regarded as the most effective way of increasing the level of software reuse. The second part of the paper (section 4) describes the TTCM-SW project and the experience gained from the use on this project of C++ and of framework technology. The paper closes (section 5) with an overview of how the C++ adaptable components have been organized as a repository of reusable building blocks available on a company-wide basis. 1. Software Adaptability – Why? There are two main reasons why adaptability is an important attribute of software for on-board applications, Firstly, adaptability fosters reusability and reusability is in turn important because it is the single most effective way of reducing software costs. To reuse a piece of software means to use it in an operational context other than that for which it was originally intended. Since different operational contexts inevitably impose different requirements, a piece of software is reusable only to the extent that it can be adapted to meet different sets of requirements. Adaptability is therefore the essential pre-requisite for reusability.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    8
    References
    0
    Citations
    NaN
    KQI
    []