Article ID | Journal | Published Year | Pages | File Type |
---|---|---|---|---|
6885787 | Microprocessors and Microsystems | 2018 | 13 Pages |
Abstract
It is largely recognized that the architectures of embedded systems are becoming more and more complex both at hardware and software levels. Despite the significant advances in the development tools, developing the software of such systems while ensuring their safety is still a difficult task. In this paper, we propose an end-to-end programming framework to ease the development of safe software systems. The programming framework, supported by a proper methodology and workflow, make it possible to design safe/secure software that implements functional requirements while respecting multiple non-functional requirements and mastering architectural complexity, time-to-market and cost. The programming framework is based on five concepts: (1) model-based system engineering: MBSE, (2) design-by-contract approach, (3) formal analysis of models based on symbolic execution, (4) code generation, and (5) static and dynamic code analysis. The effectiveness of the methodology has been demonstrated through multiple use-cases. The framework is realized using CEA LIST (http://www-list.cea.fr/en/) open-source development platforms: Papyrus, Frama-C, and UNISIM-VP. These platforms are results of many research and industrial projects such as FP7-SafeAdapt1, FUI-EQUITAS2, FP7-STANCE3, CATRENE-OpenES4, FSN-SESAM Grids5, and H2020-VESSEDIA6.
Related Topics
Physical Sciences and Engineering
Computer Science
Computer Networks and Communications
Authors
Mahmoud Hussein, Reda Nouacer, Ansgar Radermacher, Armand Puccetti, Christophe Gaston, Nicolas Rapin,