35
Page : 1 Référence : DIG 95/ AFADL’ 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années Regard sur 10 années d’introduction d’introduction des méthodes formelles des méthodes formelles Emmanuel Ledinot Direction de la Prospective

Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Embed Size (px)

Citation preview

Page 1: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 1 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Regard sur 10 années Regard sur 10 années d’introduction d’introduction

des méthodes formellesdes méthodes formelles

Regard sur 10 années Regard sur 10 années d’introduction d’introduction

des méthodes formellesdes méthodes formelles

Emmanuel Ledinot

Direction de la Prospective

Page 2: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 2 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

PlanPlanPlanPlan

Contexte industriel: quel besoins ?

Démarche: quelles méthodes dans quel ordre ?

Résultats: quelles expériences ?

Satisfactions

Désillusions

« Conclusion »

Page 3: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 3 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Contexte industrielContexte industrielContexte industrielContexte industriel

Quels systèmes ?

Quelle organisation industrielle ?

Quels processus de développement ?

Pourquoi vouloir introduire des méthodes formelles ?

Page 4: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 4 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Intégration entre ...Intégration entre ... Le Système de Contrôle du Vol

5 calculateurs numériques + 2 calculateurs analogiques logiciel unique et critique pas de sous-traitance

Les Systèmes ‘ Avion ’ ~ 10 calculateurs spécification et intégration / validation sous-traitance

Le Système Mission ou ‘ Cœur Avionique ’ 2 calculateurs spécification et intégration / validation

Page 5: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 5 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Systèmes à logiciel prépondérantSystèmes à logiciel prépondérant

Logiciel du calculateur de mission Rafale F1: ~ 650 000 lignes d’Ada ~ 7500 pages de spécification détaillée

Ordres de grandeur des coûts et délais aujourd’hui: pour une étape de développement de 60.000 lignes 24 mois (spécification détaillée -> livraison calculateur) 30 à 40 personnes 260 fiches de modification

Page 6: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 6 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Pourquoi introduire Pourquoi introduire des méthodes formelles ?des méthodes formelles ?Pourquoi introduire Pourquoi introduire des méthodes formelles ?des méthodes formelles ?

Sortir d’une approche artisanale

CAO du logiciel (et du système ?)

Spécifications exécutables et validables augmenter la productivité en avionique mission

Preuve de logiciel embarqué augmenter la sécurité de la couche exécutive SCV

Page 7: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 7 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Positionnement dans le processus SNA Positionnement dans le processus SNA

Exigences Opérationnelles Armées de l’Air

Specifications Globales

(Point de vue pilote - Scénarios)

~ 20 x 100 pages

Prototypage rapide IHS

Simulation TR pilotée

Décomposition Fonctionnelle

Equipements

Page 8: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 8 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Positionnement processus SNA Positionnement processus SNA

~ 150 + 50 modules fonctionnels

Spécifications Réseaux et dimensionnement

(~40.000 infos)

Spécification Logiciel

Fonctionnelle

Spécification Logiciel

Orienté Objet

Méthodes FormellesMéthodes Formelles

50 x 150 pages

codage manuel ou génération automatique de code

Intégrationet Validation

Page 9: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 9 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

PlanPlanPlanPlan

Contexte industriel

Démarche

Résultats

Satisfactions

Déceptions

« Conclusion »

Page 10: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 10 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

20%

30%

50%

Décomposition du coût du logicielDécomposition du coût du logiciel

Spécification

Réalisation

Tests & Validation

Page 11: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 11 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

AutomatesAlgorithmes

40% en lignes de code 70% en fiches de modification

Mais

Le logiciel contient automates & algorithmes Le logiciel contient automates & algorithmes

Page 12: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 12 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Que font les automates ?Que font les automates ?

Les conditions d’activation / désactivation

Les modes

Les commandes

Les reconfigurations

Page 13: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 13 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Que font les algorithmes ?Que font les algorithmes ?

localisation, navigation, itinéraires, trajectoires

situation tactique (entretien/affichage des pistes)

domaines de tir, balistiques

calcul de réticules de guidage

Page 14: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 14 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

DémarcheDémarche

1. Logiciel séquentiel d’application

automates

algorithmes

Logiciel distribué d’exécution (middleware)

transactions sérialisées

consensus, ordonnancement TR, tolérance aux fautes

Esterel, Statemate, Lustre

Coq / ML, B, VDM++

Page 15: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 15 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

PlanPlanPlanPlan

Contexte industriel

Démarche

Résultats

Satisfactions

Déceptions

« Conclusion »

Page 16: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 16 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

10 ans d’effort pour passer à l’échelle10 ans d’effort pour passer à l’échelle

Simplicité

Graphique

Passage à l’échelle

Robustesse

Support

Code sûr

Code efficace

Fondements

89 99

Debugger symbolique

Causalité Constructive

Interpreteur

Interpréteur

SyncCharts Rose RT

Simulog

TiGer BDD Package

ModularitéEsterel ++

91 93 95 97

Synthèse de circuit

Simulation Exhaustive

Suite d’équations

Hardware Optimizers

Optimiseurs HardAutomate Explicite

Page 17: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 17 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Quelques statistiques Esterel Quelques statistiques Esterel

FCS MC Scheduler

FCS MC Panel

Landing System

Side Displays

FuelManagement

Inputs

Outputs

Modules

Instances

Esterel Lines

Size Kb

Time ms

35 20 36

65

35

1100 160

110

80

3200

17

0.9

30

30

40

2000

124

1.6

1400

500

700

42240

195

n.r

300

65

280

6500

80

2.6

190

105

425

15000

80

2.6

4600

nr

1.55

127

28

69

Alarms

Page 18: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 18 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Résultats en preuves de propriétés Résultats en preuves de propriétés

Fonction atterrisseur 17 propriétés ~ 1014 états accessibles (beaucoup de temporisations) ~ 4 jours de temps CPU (Sparc 20 192 Meg de RAM)

Calculateur Test Maintenance SCV 3 propriétés de sûreté ~ 106 états accessibles (ordonnanceur de tâches) ~ 10 heures de temps CPU

Fonction mise en œuvre cabine

5 propriétés ~ 108 états accessibles

Page 19: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 19 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Retour sur l’évaluation de Retour sur l’évaluation de SCADESCADE

Expérimentation de l’éditeur en 99 documentation de soutien logiciels de calculateurs systèmes avions essai du générateur de code / simulateur en 2000

Etude des aspects certification du générateur lustre2C en collaboration avec Verilog (98-99 contrat R&D Genie)

Evaluation pour les applicatifs SCV prévue en 2000

Trop tôt pour conclure mais,... Accueil favorable et engagement progressif approche multi-formalisme

Page 20: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 20 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Retour sur les outils pour l’algorithmique (1/2)Retour sur les outils pour l’algorithmique (1/2)

« Impossibilité » de la génération automatique de code et de la preuve automatique

Evaluations privilégiant le pouvoir d’expression et la solidité scientifique

Langage Objective Caml de l’INRIA outil de développement puissant pour des prototypes sérieux pas chers mais utilisation de Java dans les autres cas ...

Prouveur Coq de l’INRIA évaluation de 92 à 99: algorithmes BDD, trajectoires, lustre2C une référence, mais ....

Page 21: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 21 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Retour sur les outils pour l’algorithmique (2/2)Retour sur les outils pour l’algorithmique (2/2)

Evaluation de la boîte à outils VDM++ de l’IFAD des fonctions intéressantes (assertions riches, couverture de test) des difficultés (efficacité, environnement, sémantique objet)

Pas de solution « descendante » en vue s ’intègrent mal dans les processus actuels

Recherche d’une solution « ascendante » pour les logiciels critiques

C enrichi d’annotations logiques en fonction du besoin Analyseurs statiques automatiques ou interactifs pour les preuves

Page 22: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 22 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

PlanPlanPlanPlan

Contexte industriel

Démarche

Résultats

Satisfactions

Déceptions

« Conclusion »

Page 23: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 23 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Satisfactions scientifiques et techniquesSatisfactions scientifiques et techniques

Maîtrise de la causalité et de l’explosion combinatoire dans la chaîne de développement Esterel

G. Berry, O. Coudert, J.C. Madre, H. Touati

Preuve d’algorithmes complexes en Coq

Développement d’une extension objet-UML d’Esterel E. Nassor, Y. Le Biannic

Développement d’une syntaxe graphique StateCharts pour Esterel

Quelques pistes pour l’asynchrone distribué

Page 24: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 24 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Autres satisfactions ...Autres satisfactions ...

En avoir convaincu d’autres ... Base et Direction Technique Dassault Aviation Ilog, Simulog, Cadence, ...

10 ans de travail sur et avec des sujets intéressants ...

Avoir fait passer Esterel + Objets + StateCharts dans les programmes en 98-99

Un sujet qui a encore de l’avenir

Page 25: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 25 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Une spécification graphique exécutableUne spécification graphique exécutable

Page 26: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 26 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Page 27: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 27 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Génération d’un code Génération d’un code conformeconforme

/* scc : C CODE OF EQUATIONS MAIN - SIMULATION MODE */

/* AUXILIARY DECLARATIONS */

#ifndef STRLEN#define STRLEN 81#endif#define _COND(A,B,C) ((A)?(B):(C))#ifdef TRACE_ACTION#include <stdio.h>#endif#ifndef NULL#define NULL ((char*)0)#endif

#ifndef __EXEC_STATUS_H_LOADED#define __EXEC_STATUS_H_LOADED

__SourcePoint source_point;};struct __VariableEntry {char *full_name;char *short_name;char *type_name;int type_code;int comment_kind;int is_initialized;char *p_variable;char *source_name;int written;unsigned char written_in_transition;unsigned char read_in_transition;static struct __SourcePoint __MAIN_SPSPA_0[] = {{1,9,4,0},{1,9,4,0},{1,11,4,0},{1,11,4,0}};static struct __SourcePoint __MAIN_SESPA_1[] = {{1,20,4,0}};static struct __SourcePoint __MAIN_SESPA_2[] = {{1,12,4,0}};static struct __SourcePoint __MAIN_SPSPA_2[] = {{1,17,4,0},{1,17,4,0},

Code cible

Compilation

Page 28: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 28 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Utilisé pour les nouvelles Utilisé pour les nouvelles fonctions du Mirage 2000-9fonctions du Mirage 2000-9

et du standard F2 du Rafaleet du standard F2 du Rafale

Page 29: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 29 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

PlanPlanPlanPlan

Contexte industriel

Démarche

Résultats

Satisfactions

Déceptions

« Conclusion »

Page 30: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 30 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

DéceptionsDéceptions

Très peu d’outils vraiment fiables et passant « à l’échelle »

Des classes de traitements qui résistent à la preuve l’automatique continu les composants COTS (OS, compilateurs,...) les grands systèmes asynchrones distribués

Une grande ambivalence dans la relation recherche-industrie

Page 31: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 31 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Autres déceptions ....Autres déceptions ....

Quel marché pour Simulog, Steria, Verilog, ...?

Humain, trop humain ... la technique est souvent peu de chose face aux questions de carrières, de

budgets, ou d’emploi la productivité se vend mieux que la sécurité

Primat de l’organisation industrielle sur le succès d’une technologie

Page 32: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 32 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

Autres déceptions ....Autres déceptions ....

Si c’était à refaire, pourrions nous le refaire ? réduction des budgets de R&D départ en retraite des « bâtisseurs » pression pour un ROI court terme

Rôle moteur des autorités de tutelle ou de certification ?

Page 33: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 33 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

PlanPlanPlanPlan

Contexte industriel

Démarche

Résultats

Satisfactions

Déceptions

« Conclusion »

Page 34: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 34 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

En guise de conclusion (1/2)En guise de conclusion (1/2)

GIE et développement GPL « à la Linux » pour avoir des « outils MF » pérennes ?

Pas de transferts à pas cher syndrome « du stagiaire » il faut des compétences de développement coté industriel

pour répondre à des besoins non valorisables coté recherche

Choix technologiques orientés « processus » 99,9% d ’accord avec J. Rushby ’s FM99 talk

Page 35: Page : 1 Référence : DIG 95/ AFADL 2000 - Grenoble, 26-28 janvier 2000 Direction de la Prospective Regard sur 10 années dintroduction des méthodes formelles

Page : 35 Référence : DIG 95/AFADL’ 2000 - Grenoble, 26-28 janvier 2000Direction de la Prospective

En guise de conclusion (2/2)En guise de conclusion (2/2)

Sujets de recherche génération de tests

(model checking et interprétation abstraite) vérification modulaire spécification formelle et preuve sur du C restreint

Collaborations avec des labos qui développent du code fini et

veulent vraiment résoudre des problèmes de taille réelle