SCADE 6: A formal language for embedded critical software development (invited paper)

2017 International Symposium on Theoretical Aspects of Software Engineering (TASE)(2017)

引用 75|浏览32
暂无评分
摘要
SCADE is a high-level language and environment for developing safety-critical embedded control software. It has been used for more than twenty years in various application domains like avionics, nuclear plants, transportation, and automotive. SCADE was founded on the synchronous data-flow language Lustre invented by Caspi and Halbwachs. In the early years, it was mainly seen as a graphical notation for Lustre but with the unique and key addition of a code generator qualified to the highest standards for safety-critical applications. In 2008, a major revision based on the new language `Scade 6' was released. This language is an original combination of the Lustre data-flow style with control structures borrowed from Esterel and SyncCharts, and compilation and static analyses from Lucid Synchrone for ensuring safety properties. This increase in expressiveness together with the qualified code generator have dramatically widened SCADE scope of applications. While previous publications have described some of its language constructs and compiler algorithms, no reference publication on `Scade 6' exists to date. In this paper, we recall the decisions made in its design, illustrate the main language features and static analyses, and describe the compiler organization developed to satisfy the qualification process.
更多
查看译文
关键词
compiler organization,qualification process,static analysis,compilation analysis,safety-critical applications,graphical notation,synchronous data-flow language,Lustre language,safety-critical embedded control software,embedded critical software development,SCADE 6 formal language
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要