B - RIS
Transcription
B - RIS
B : Une méthode de développement de logiciels sûrs Loïc PELHATE, Responsable de l’Atelier des Logiciels de Sécurité de l’Ingénierie du Transport Ferroviaire [email protected] 9/11/01 Θ Θ Réseau d’Ingénierie de la Sureté de fonctionnement - Atelier Thématique 1 1 Berlin STAR 2000 Plan 9/11/01 O Contexte et problématique O La méthode B O L’Atelier B O Bilan O Utilisateurs industriels O Etudes et recherches Θ Θ Réseau d’Ingénierie de la Sureté de fonctionnement - Atelier Thématique Berlin STAR 2000 2 2 Le contexte O 1988 : Premiers logiciels de sécurité (SACEM - RER A) W Problèmes de spécification V V V Problèmes de validation W V pas de certitude de la suffisance des tests Re-spécification formelle + Preuve W V 9/11/01 manque d’approche système ambiguïtés difficultés pour mesurer la cohérence et la complétude Détection d ’une 20aine d’erreurs de conception/codage d’un an ΘMise en service retardée Θ Réseau d’Ingénierie de la Sureté de fonctionnement - Atelier Thématique 3 3 Berlin STAR 2000 La problématique METEOR 9/11/01 O Un système complexe W pilotage automatique sans conducteur W possibilité d’une exploitation mixte O De fortes contraintes de performances W fiabilité, disponibilité, maintenabilité W sécurité O Le retour d’expérience du SACEM W utilisation de méthodes formelles Θ Θ Réseau d’Ingénierie de la Sureté de fonctionnement - Atelier Thématique Berlin STAR 2000 4 4 Le choix de la méthode B O Objectif W Obtenir un logiciel correct par construction O Domaine d’application W Code séquentiel ininterruptible (non prise en compte des aspects temps réel, des logiciels de base…) O Langage à large spectre Cadre unifié et continu de la spécification au code W 9/11/01 Θ Θ Réseau d’Ingénierie de la Sureté de fonctionnement - Atelier Thématique 5 5 Berlin STAR 2000 Les concepts de la méthode B O Méthode « orientée modèle » W Logiciel = données + propriétés + services O Processus de raffinement W O 9/11/01 Passage de la spécification abstraite au code concret en une ou plusieurs étapes Obligations de preuve W Construction rigoureuse du logiciel basée sur les mathématiques Θ Θ Réseau d’Ingénierie de la Sureté de fonctionnement - Atelier Thématique Berlin STAR 2000 6 6 Le Langage B 9/11/01 O Modélisation des données et des propriétés W Théorie des ensembles W Logique du premier ordre O Modélisation des services W Substitutions généralisées O Décomposition et architecture W Machines abstraites Θ Θ 7 Réseau d’Ingénierie de la Sureté de fonctionnement - Atelier Thématique 7 Berlin STAR 2000 Architecture classique d’un modèle B Machine abstraite preuve Raffinement(s) Machine abstraite im po rta tio n preuve Machine abstraite ... Raffinement(s) preuve Implémentation 9/11/01 Θ Implémentation Θ Réseau d’Ingénierie de la Sureté de fonctionnement - Atelier Thématique Berlin STAR 2000 8 8 Cycle de vie standard Tests de validation Spécifications Conception Générale Tests d ’intégration Conception Détaillée Tests unitaires Codage 9/11/01 Θ Θ Réseau d’Ingénierie de la Sureté de fonctionnement - Atelier Thématique 9 9 Berlin STAR 2000 Cycle de vie avec B Tests de validation Spécifications Tests d ’intégration B / non B Ré-expression formelle en B preuve validation des activités de preuve Conception formelle en B Génération automatique de code 9/11/01 Θ Θ Réseau d’Ingénierie de la Sureté de fonctionnement - Atelier Thématique Berlin STAR 2000 10 10 L’Atelier B 9/11/01 O Outil industriel de développement logiciel supportant la méthode B O Eléments clés W Prouveurs automatiques et interactifs W Générateurs de code (ADA, C, C++) O Eprouvé sur METEOR Θ Θ Réseau d’Ingénierie de la Sureté de fonctionnement - Atelier Thématique 11 11 Berlin STAR 2000 METEOR : la ligne 14 du métro parisien O Inaugurée le 15/10/1998 7.2 km, entre “Madeleine“ et “Bibliothèque O François Mitterrand“ pour 7 stations O 25 000 passagers/heure dans chaque sens O 19 trains composés de 6 voitures (extension à 8 voitures possibles) 9/11/01 O 40 km/h : vitesse commerciale O 85 s : intervalle entre les trains en automatique Θ Θ Réseau d’Ingénierie de la Sureté de fonctionnement - Atelier Thématique Berlin STAR 2000 12 12 Un système complexe 1 - Vidéo-surveillance de train (transmision par hyperfréquence) 2 - Interphone 3 - Video-surveillance de quai 4 - Interphone sur le quai 5 - Portes pallières 6 - Pilotage Automatique Embarqué 7 - Tapis de transmission 8 - Transmission SOL-BORD 9 - Signalisation 10 -Pilotage Automatique Section 11 -PCC 9/11/01 Θ Θ Réseau d’Ingénierie de la Sureté de fonctionnement - Atelier Thématique 13 13 Berlin STAR 2000 Maturité industrielle de l’Atelier B O Le noyau sécuritaire de METEOR représente : W 1150 composants B W 115000 lignes de B W 27800 obligations de preuve W 86000 lignes de code ADA sécurisé Intégralement analysé et prouvé avec l’Atelier B 9/11/01 Θ Θ Réseau d’Ingénierie de la Sureté de fonctionnement - Atelier Thématique Berlin STAR 2000 14 14 Bilan de l’utilisation de B O Meilleur passage entre phases système et logicielle O Meilleure maîtrise des spécifications O Amélioration de l’intégration des logiciels O Allègement du processus classique de validation 9/11/01 O Haut niveau de qualité du logiciel Θ Θ Réseau d’Ingénierie de la Sureté de fonctionnement - Atelier Thématique 15 15 Berlin STAR 2000 Coûts des logiciels développés en B O Comparable à celui d’un logiciel développé et validé selon des méthodes classiques mais … pour des niveaux de qualité et de sécurité supérieurs O 9/11/01 MTI l’utilise sur tous ses projets y compris sur des parties non sécuritaires Θ Θ Réseau d’Ingénierie de la Sureté de fonctionnement - Atelier Thématique Berlin STAR 2000 16 16 Utilisateurs industriels O Ferroviaire W Systèmes de contrôle de vitesse et de pilotage automatique intégral V O SACEM Mexico, métro de New York, métro de Lyon MPL75, métro de Hong Kong, KVB Bord (SNCF) Automobile W Diagnostic de panne Analyse système O Carte à puce W 9/11/01 Validation de protocoles de sécurité Θ Θ 17 Réseau d’Ingénierie de la Sureté de fonctionnement - Atelier Thématique 17 Berlin STAR 2000 Couplage B-SCADE O SCADE W W W O outil de conception de systèmes temps réel modélisation graphique génération automatique de code exécutable Modèle B générique Preuve automatique Application à un PMI Schéma SCADE Code exécutable Traduction automatique Comparaison Modèle B Raffinement et preuve automatique Code exécutable Exécution en redondance 9/11/01 Θ Θ Réseau d’Ingénierie de la Sureté de fonctionnement - Atelier Thématique Berlin STAR 2000 18 18 Etudes 9/11/01 O schémas EDF O poste de manœuvre d’aiguillage O systèmes temps réel O système de gestion de bases de données O protocoles cryptographiques O protocoles de communication O … Θ Θ Réseau d’Ingénierie de la Sureté de fonctionnement - Atelier Thématique 19 19 Berlin STAR 2000 Tendances Remontée aux niveaux systèmes : O O B-évènementiel et B-système W Conception système W Contraintes dynamiques τ Système concurrent Site B du laboratoire du LSR Grenoble W 9/11/01 Θ http://www-lsr.imag.fr/B/ Θ Réseau d’Ingénierie de la Sureté de fonctionnement - Atelier Thématique Berlin STAR 2000 20 20