Skip to main navigation Skip to search Skip to main content

Formal methods integration in software engineering

  • Telecom Paris

Research output: Contribution to journalArticlepeer-review

Abstract

This paper presents an extract from our works on a software engineering method for avionic real-time systems [3], the C-Method, which covers the whole software lifecycle thanks to a seamless process, and integrates formal methods in its process. Because distributed, real-time and embedded (DRE) systems have safety critical concerns, they require the use of formal languages (that allow non-ambiguous and rigorous specifications) in order to be able to prove their non-functional properties. Therefore, the "C-Method" relies on the use of formal languages in the earliest steps of the system specification and on the use of semi-formal languages in the analysis, design and programming steps. The fundamental question is how to integrate several languages with different levels of formalization and abstraction. The previous software engineering methods were based on a single language or notation, so they did not address this issue. In order to make the transitions more continuous between semi-formal and formal specifications, we have introduced in the development process what we call "intermediate" languages (+CAL and Why), that are easy to manipulate but directly linked to a formal language (TLA+ for +CAL, Why for PVS).

Original languageEnglish
Pages (from-to)5-11
Number of pages7
JournalInnovations in Systems and Software Engineering
Volume6
Issue number1
DOIs
Publication statusPublished - 1 Mar 2010

Keywords

  • +CAL
  • AADL
  • MARTE
  • MDA
  • MDE
  • PVS
  • Real-time
  • Software engineering method
  • UML

Fingerprint

Dive into the research topics of 'Formal methods integration in software engineering'. Together they form a unique fingerprint.

Cite this