Overview
ABSTRACT
This article deals with the formal properties of programming languages whose purpose is to verify or even prove that the programs work correctly. Within an MDE process, these properties can be applied to modeling languages in order the quality expected from models and consistency between models and programs be guaranteed. However, can this technical evidence based on predicate logic be applied to modeling languages such as the "Structured Analysis Model “(SAM) developed in order to model applications in the field of aeronautics?
Read this article from a comprehensive knowledge base, updated and supplemented with articles reviewed by scientific committees.
Read the articleAUTHORS
-
Pierre BAZEX: Professor Emeritus, Paul Sabatier University, Toulouse III
-
Agusti CANALS: Business Unit Manager (Technical), CS Communication & Systèmes
INTRODUCTION
Placed at the end of an IDM development process, where the models represent a certain abstraction of the requirements of the applications to be developed, programming is often seen as a simple activity of generating code from the models.
How, in these conditions, can we prove that any program works properly and that the application requirements have been taken into account?
This study deals with the formal properties of programming languages, the aim of which is to reason about programs in order to verify and prove that they work correctly. The addition of axiomatic properties to modeling languages thus enables us to check that models have all the qualities we would expect from them. Axiomatic properties, applied in the context of an IDM process seen as a succession of model transformations, make it possible to check the consistency of all models and programs.
This study follows on from the operational semantics of programming languages, which describe in a precise and rigorous way the behavioral aspects of their syntactic constructs, specified using a grammar. It is therefore of the utmost importance for applications with highly critical requirements, such as those found today in a wide variety of fields, such as aeronautics and space, or for "general public" applications in administration and banking that have to manage masses of personal and private data. Confidence in such software is all the more important as it has to function like a robot, reacting in real time to the different environments it is charged with controlling, managing and supervising, and being available 24 hours a day to respond to user requests via tele-procedures.
After recalling how programs can be reasoned about using logic-based properties (axiomatic properties) to check and prove that they function correctly, we then show how such properties can be defined and applied to check that models located upstream of a development process have the expected qualities. How, then, can such properties be applied when specifying the processing of a system or subsystem described using business modeling languages such as SAM, dedicated to the development of aeronautical applications?
Can we contribute to achieving better continuity between the models and programs of a development process by proposing to apply the same reasoning and proof approaches based on predicate logic? This is the question addressed in this article.
Exclusive to subscribers. 97% yet to be discovered!
You do not have access to this resource.
Click here to request your free trial access!
Already subscribed? Log in!
The Ultimate Scientific and Technical Reference
KEYWORDS
axiomatic properties | proof of programms | UML | | MDE process | programming | modeling
This article is included in
Software technologies and System architectures
This offer includes:
Knowledge Base
Updated and enriched with articles validated by our scientific committees
Services
A set of exclusive tools to complement the resources
Practical Path
Operational and didactic, to guarantee the acquisition of transversal skills
Doc & Quiz
Interactive articles with quizzes, for constructive reading
Algorithm validation in UML and OCL
Bibliography
Software tools
Workshop B https://www.atelierb.eu/
ATL
Kermeta http://www.kermeta.org/
TOPCASED http://www.topcased.org/
USE...
Events
NEPTUNE – Journées Neptune https://neptune.irit.fr/neptune/index.php/fr/
GDR GPL: CNRS GDR Programming and Software Engineering http://www.gdr-gpl.cnrs.fr/
Standards and norms
- Unified Modeling Language http://www.uml.org/ - UML -
Exclusive to subscribers. 97% yet to be discovered!
You do not have access to this resource.
Click here to request your free trial access!
Already subscribed? Log in!
The Ultimate Scientific and Technical Reference