13.07.2015 Views

La sûreté des logiciels - CEA

La sûreté des logiciels - CEA

La sûreté des logiciels - CEA

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Direction de la communicationService Information-médiasDossier de pressePetit déjeuner de presse du 11 septembre 2003SÛRETÉDESLOGICIELS<strong>CEA</strong> 31-33, rue de la Fédération 75752 Paris cedex 15 - Tél. 01 40 56 10 00


Sommaire‣ Les enjeux de la <strong>sûreté</strong> du logiciel‣ L’outil Caveat‣ EDF‣ Airbus‣ TNI Valiosys‣ Annexes :• Fiche <strong>CEA</strong>• Fiche ListDossier de presse <strong>CEA</strong> : <strong>sûreté</strong> <strong>des</strong> <strong>logiciels</strong> septembre 2003 www.cea.fr / 2


la compétitivité. Il faut sortir un nouveau produit plus vite et moins cher que lesconcurrents. <strong>La</strong> crise économique est un facteur de croissance, car il faut être encore pluscompétitif.En outre, la correction d’une erreur sur un logiciel coûte infiniment plus cher si elle estdétectée tardivement. Une détection précoce d’erreurs peut être faite avant l’étape de testsi l’on dispose d’outils d’analyse statique du logiciel, c’est-à-dire sans exécution de celuici.Le résultat de l’analyse est valable pour toute exécution du logiciel, quelles que soientles valeurs d’entrée, et non uniquement pour certains jeux de valeurs particulières commec’est le cas pour le test. C’est précisément sur cette approche que le <strong>La</strong>boratoired’intégration <strong>des</strong> systèmes et <strong>des</strong> technologies (List) 1 du <strong>CEA</strong> a développé unetechnologie innovante pour renforcer la maîtrise de la <strong>sûreté</strong> <strong>des</strong> <strong>logiciels</strong> critiquesdans l’industrie.Le marché <strong>des</strong> <strong>logiciels</strong> en pleine croissanceL’emploi <strong>des</strong> techniques logicielles dans les principaux domaines industriels estmaintenant incontournable. Pour un système programmé donné, la taille du logiciel doubletous les 18 mois. En 2002, le marché <strong>des</strong> outils <strong>logiciels</strong> pour le développementd’applications (tous domaines confondus, y compris les outils <strong>logiciels</strong> pour la <strong>sûreté</strong>) areprésenté près de 9 milliards d’euros (source Cabinet IDC, nov. 2002) avec unecroissance prévisible de 13 % dans les quatre années à venir.L’industrie a besoin d’outils permettant de rendre ces <strong>logiciels</strong> plus fiables, à faible coût etdans <strong>des</strong> délais toujours plus courts.Au plan purement économique, une étude menée par le National Institut of Standards andTechnology américain évalue à 60 milliards de dollars par an le coût <strong>des</strong> boguesinformatiques, dont 22 milliards de dollars pourraient être évités si l’industrie informatiqueaméliorait ses métho<strong>des</strong> de vérification de <strong>logiciels</strong>.1 Cf fiche <strong>CEA</strong>/ListDossier de presse <strong>CEA</strong> : <strong>sûreté</strong> <strong>des</strong> <strong>logiciels</strong> septembre 2003 www.cea.fr / 4


Quelques exemples de sources d’erreurs dans les <strong>logiciels</strong>1 - Erreur dans l’exécution d’une opérationLe résultat de l’opération « a divisé par b », dans le cas où « b » est nul, est irréalisable par l’ordinateur etle programme s’arrête. Il faut donc éviter, lorsque le logiciel fonctionne, que « b » prenne une valeur nulle.Mais « b » peut parfois prendre un grand nombre de valeurs différentes résultant d’un grand nombre decalculs possibles. Découvrir les cas où « b » a une valeur nulle qui induit un mauvais fonctionnement dulogiciel devient alors difficile et peut échapper à l’attention du concepteur.2 - Résultat d’une opération non représentable en machineLes entiers représentés en machine ne correspondent nullement aux entiers mathématiques ; ils restentbornés. Ainsi « a » et « b » peuvent être représentables en machine mais pas « a+b »3 - Perte de précision dans <strong>des</strong> calculs en nombres flottantsUn <strong>des</strong> grands paradoxes de l’informatique est que l’ordinateur est utilisé pour calculer, mais qu’il calculefaux le plus souvent ! Les « flottants », c’est-à-dire les nombres réels informatiques n’ont qu’une lointaineressemblance avec leurs cousins mathématiques. Par exemple, si une valeur est non nulle mais trèspetite, son carré peut être nul ! Ainsi le nombre réel 1/3 = 0,33333… n’a pas de représentation exacte eninformatique (à combien de 3 après la virgule s’arrête-t-on ?) Ajouter un certain nombre de fois 1/3 <strong>des</strong>econ<strong>des</strong> à une horloge conduit à une dérive de l’horloge - et peut conduire, par exemple, à la perte d’unmissile.4 - Bouclage infiniOn demande au logiciel la répétition d’une série d’opérations jusqu’à ce qu’une certaine condition soitsatisfaite mais elle ne l’est jamais. Les calculs se répètent à l’infini.5 - Blocage par attente réciproqueComme deux personnes dans la vie courante attendent que l’autre ait fait le premier pas, deux élémentsde <strong>logiciels</strong> attendent un résultat l’un de l’autre pour pouvoir poursuivre leur exécution.6 - Perte d’information par défaut de synchronisationDes valeurs se succèdent et doivent être traitées par le logiciel. Dans ce flot de valeurs, une <strong>des</strong> valeursest remplacée par la suivante avant qu’elle n’ait été lue et utilisée par la partie du logiciel chargée de sontraitement.7 - Le résultat arrive trop tardDans un système temps-réel, le résultat doit arriver avant une date limite pour être utilisable. Parexemple, <strong>des</strong> informations sur la météo du lendemain qui arriveraient le surlendemain seraient bienévidemment inutiles.8 - Le résultat ne correspond pas à ce qui est attenduOn désire obtenir le plus grand de deux nombres mais le logiciel rend le plus petit. Il n’y a pas d’erreur àl’exécution (« plantage ») mais le résultat n’a pas la propriété attendue.Dossier de presse <strong>CEA</strong> : <strong>sûreté</strong> <strong>des</strong> <strong>logiciels</strong> septembre 2003 www.cea.fr / 5


EDF, en tant qu’exploitant d’installations, est responsable de la qualification <strong>des</strong> systèmesutilisés dans ses centrales nucléaires. Aujourd’hui, les systèmes critiques (par exemple lessystèmes de protection du réacteur) sont <strong>des</strong> systèmes programmés intégrant du logiciel.Pour maîtriser ses coûts de qualification, EDF Recherche et Développement étudie <strong>des</strong>approches de vérification du logiciel, basées sur <strong>des</strong> techniques d’analyse statique ducode. Dans ce but, EDF a lancé depuis 1996 une collaboration avec le <strong>CEA</strong> autour del’outil Caveat.Lors d’une qualification, ces techniques sont capables de fournir <strong>des</strong> informationsindiscutables sur un système, ou de guider les analyses plus subjectives vers les pointsles plus critiques. Elles complètent les phases de test et de relecture, tout en offrant untemps d’analyse borné.Caveat a été utilisé avec succès lors de la rénovation d’un système de protectionactuellement opérationnel sur certaines tranches nucléaires.L’utilisation typique de l’outil est la suivante : une première phase identifie certains typesde menaces internes au logiciel pouvant entraîner une défaillance du système (commeune division par zéro, un débordement d’indice de tableau). Dans une seconde phase, etavec l’aide d’un opérateur, l’outil cherche à prouver l’innocuité de ces menaces.L’opérateur intervient pour introduire <strong>des</strong> hypothèses complémentaires, afin d’aider l’outildans sa démonstration. Chaque hypothèse est soit prouvée directement par l’outil, soit estargumentée par l’opérateur. Lorsque l’outil n’arrive pas à conclure sur l’innocuité d’unemenace, il permet alors d’orienter la relecture de code en localisant la menace et enfournissant les informations qui lui manquent pour terminer sa démonstration.Dossier de presse <strong>CEA</strong> : <strong>sûreté</strong> <strong>des</strong> <strong>logiciels</strong> septembre 2003 www.cea.fr / 8


Le test <strong>des</strong> <strong>logiciels</strong> avioniques est structuré en plusieurs phases : le test unitaire, le testd’intégration et le test de validation. Le test unitaire adresse les propriétés de chaquemodule, le test d’intégration adresse les propriétés d’interactions <strong>des</strong> modules et le test devalidation adresse les propriétés globales du logiciel complet. Le choix <strong>des</strong> propriétésfonctionnelles aiguille naturellement un positionnement de l’utilisation <strong>des</strong> preuvesunitaires à la « Caveat » à la place du test unitaire.Utilisation opérationnelle de CAVEAT<strong>La</strong> collaboration avec le <strong>CEA</strong> List a abouti à un outil ainsi qu’à une méthodologie depreuve de propriétés fonctionnelles utilisables industriellement. Caveat est aujourd’huidéployé et utilisé sur une première application : un sous-ensemble de logiciel critique <strong>des</strong>comman<strong>des</strong> de vol du programme A380.Dossier de presse <strong>CEA</strong> : <strong>sûreté</strong> <strong>des</strong> <strong>logiciels</strong> septembre 2003 www.cea.fr / 10


AnnexesDossier de presse <strong>CEA</strong> : <strong>sûreté</strong> <strong>des</strong> <strong>logiciels</strong> septembre 2003 www.cea.fr / 13


Le <strong>CEA</strong>Un acteur clef de la recherchetechnologique et fondamentaleLe <strong>CEA</strong> est un acteur clef de la recherche, du développement et de l'innovation enmatière d'énergie, de défense, de technologies de l'information, et de santé.Depuis sa création en 1945, il relève <strong>des</strong> défis scientifiques majeurs dans un ensemblede domaines : programmes électronucléaires, dissuasion nucléaire, micro etnanotechnologies, astrophysique, imagerie médicale, toxicologie ou biotechnologies….Il constitue ainsi un outil essentiel de l’action de l’Etat en matière de recherche et dedéveloppement.Cette situation est confortée par une insertion régionale forte de ses 9 centres, par laconstruction de soli<strong>des</strong> partenariats avec les universités ou les collectivités locales etpar une présence croissante au niveau européen et international où il joue un rôle deleader dans de nombreux partenariats. Le <strong>CEA</strong> est pleinement inséré dans l’espaceeuropéen de la recherche aussi bien pour les activités nucléaires que pour les autres.Pour l’ensemble de ses recherches, le <strong>CEA</strong> dispose d’outils exceptionnels etperformants (supercalculateur, réacteurs de recherches, grands instruments de laphysique, lasers de puissance…).Les gran<strong>des</strong> priorités pour le futur : cinq gran<strong>des</strong> orientations<strong>La</strong> recherche sur les énergiesLes recherches au <strong>CEA</strong> contribuent à garantir une énergie propre et sûre et répondentà la nécessité de disposer de formes d’énergie non émettrices de gaz à effet de serre.Le <strong>CEA</strong> conduit ainsi <strong>des</strong> actions de recherche et développement <strong>des</strong>tinées à appuyeret optimiser le parc actuel de réacteurs nucléaires. Par ailleurs, il étudie et développe<strong>des</strong> solutions techniques pour la gestion <strong>des</strong> déchets radioactifs pour la réduction deleur quantité et de leur nocivité. Le <strong>CEA</strong> conduit également <strong>des</strong> programmesconcernant l’impact sanitaire et environnemental de l’énergie nucléaire. Enfin, il mène<strong>des</strong> recherches au niveau international sur les réacteurs et combustibles nucléaires dufutur avec comme objectif majeur une production plus économique, plus sûre etgénérant moins de déchets. Le <strong>CEA</strong> soutient également l’essor <strong>des</strong> nouvellestechnologies pour l’énergie : l’hydrogène et les piles à combustible, l’énergie solaire etle stockage de l’énergie, l’efficacité énergétique.Enfin, le <strong>CEA</strong> est un acteur clef <strong>des</strong> recherches dans le domaine de la fusionthermonucléaire, dont la maîtrise pourrait permettre dans l’avenir de disposer d’unesource quasi infinie d’énergie. Le <strong>CEA</strong> est ainsi fortement impliqué dans le projetinternational du réacteur expérimental Iter, étape essentielle vers la conception d’unréacteur de fusion électrogène. Le site <strong>CEA</strong> de Cadarache est d’ailleurs le candidat dela France à l’accueil de cette machine.Dossier de presse <strong>CEA</strong> : <strong>sûreté</strong> <strong>des</strong> <strong>logiciels</strong> septembre 2003 www.cea.fr / 14


<strong>La</strong> recherche au service de la défense nationaleLe <strong>CEA</strong> développe les programmes nécessaires pour garantir la capacité dedissuasion française, dans le cadre <strong>des</strong> lois de programmation militaire. L’arrêt <strong>des</strong>essais nucléaires et le passage à la simulation conduit à la mise en place d’importantsmoyens expérimentaux (Airix, <strong>La</strong>ser Mégajoule, Supercalculateur Tera), dont lesapplications civiles seront également développées.<strong>La</strong> recherche technologique au service de l’industrieLe <strong>CEA</strong> dispose d’une recherche technologique de base de niveau très élevé qu’il metau service <strong>des</strong> industriels, notamment dans les domaines de micro- etnanotechnologies, nanomatériaux et biotechnologies où il jouit d’une reconnaissanceinternationale. Il conclut également <strong>des</strong> partenariats au niveau européen ainsi que <strong>des</strong>collaborations avec les autres organismes de recherche.Les compétences et la technologie au service de la connaissanceMenées et évaluées dans le cadre de collaborations internationales, coordonnées avecles autres organismes de recherche et les universités, les recherches fondamentalesdu <strong>CEA</strong> sont orientées vers la résolution de questions scientifiques majeures :exploration de la matière nucléaire loin de la stabilité, physique <strong>des</strong> particules et del’Univers, sciences du climat et de l’environnement, biologie…. A court terme, le <strong>CEA</strong>contribue à la mise en œuvre de projets majeurs : Soleil, Iter, Neurospin….<strong>La</strong> recherche d’une meilleure efficacité et l’approfondissement <strong>des</strong>coopérationsNe pas relâcher l’effort pour la recherche d’une meilleure efficacité dans la gestion,notamment par l’utilisation croissante <strong>des</strong> technologies de l’information et de lacommunication, est une <strong>des</strong> priorités du <strong>CEA</strong>. L’organisme poursuit son action deconseil au gouvernement dans ses secteurs d’expertise, en particulier sur les aspectseuropéens et internationaux liés à l’énergie nucléaire et contribue à la préparation dufutur et au renforcement <strong>des</strong> positions scientifiques technologiques et industrielles denotre pays dans le monde. <strong>La</strong> capacité de répondre aux enjeux scientifiques ettechnologiques passe également par une coordination renforcée avec les autresorganismes et les universités au niveau national et européen.Dossier de presse <strong>CEA</strong> : <strong>sûreté</strong> <strong>des</strong> <strong>logiciels</strong> septembre 2003 www.cea.fr / 15


<strong>La</strong>boratoire d’intégration <strong>des</strong> systèmes et <strong>des</strong> technologiesRecherche technologique sur les systèmes à logiciel prépondérantLe List développe <strong>des</strong> technologies innovantes associant le logiciel et le matériel pour laconception et la maîtrise de la complexité <strong>des</strong> systèmes à haut niveau d’intégration.<strong>La</strong>boratoire de recherche technologique, le List met en synergie la R&D industrielle et larecherche fondamentale, dans une dynamique qui va du concept de système jusqu’audémonstrateur pré-industriel.300 chercheursUne envergure européenne<strong>La</strong> culture projet, forte et bien établie <strong>des</strong> 300 chercheurs, ingénieurs et techniciens du List enfait le partenaire naturel <strong>des</strong> industriels dans l’émergence de nouvelles technologies. De longuedate, ceux-ci ont su répondre aux exigences <strong>des</strong> industriels du nucléaire, en termes deperformance, de <strong>sûreté</strong>, de délai. Ils étudient et développent, aujourd’hui, <strong>des</strong> solutions adaptéesaux besoins <strong>des</strong> industriels de nombreux secteurs de l’économie, notamment l’automobile,l’aéronautique, la défense, le médical et la communication.Contribuant au transfert de technologies innovantes, ils favorisent la création de richessesnotamment par l’émergence d’entreprises. Les technologies du List ont fait l’objet de la création deplusieurs spin-off, dont Haption (interfaces haptiques, Ile-de-France) et Acti-CM (systèmes demesure 3D, Rhône Alpes).Les équipes du List sont en relation avec de nombreux laboratoires universitaires, de gran<strong>des</strong>écoles et d’autres organismes de recherche (CNRS, Inria, etc.), au travers de collaborationsintégrant <strong>des</strong> compétences complémentaires. Elles sont aussi reconnues au niveau international(expertise, projets Européens, conférences et comités d’expert et de normalisation).Dossier de presse <strong>CEA</strong> : <strong>sûreté</strong> <strong>des</strong> <strong>logiciels</strong> septembre 2003 www.cea.fr / 16


Le List fédère les équipes de la Direction de la recherche technologique du <strong>CEA</strong> basées enIle-de-France, à Fontenay-aux-Roses(92) et à Saclay (91). Il est porteur, en partenariat avec leCNRS/Stic du projet NUM@TEC, plate-forme d’innovation pour les technologies numériques, pourconstituer en région Ile de France un pôle de recherche technologique de dimension européennecentré sur les « systèmes à logiciel prépondérant ».<strong>La</strong> recherche en <strong>sûreté</strong> <strong>des</strong> <strong>logiciels</strong>Le <strong>CEA</strong> List mène <strong>des</strong> travaux de recherche technologique pourmaîtriser la <strong>sûreté</strong> et la complexité <strong>des</strong> <strong>logiciels</strong>. Couvrant tout lecycle de développement du logiciel, le List propose <strong>des</strong> métho<strong>des</strong>et <strong>des</strong> outils pour diminuer le coût de développement <strong>des</strong> <strong>logiciels</strong>et accroître leur <strong>sûreté</strong> en analysant et en détectant le plus enamont possible les erreurs de spécifications, de conception <strong>des</strong>ystèmes et en générant ainsi les tests structurels adaptés. Cestravaux sont menés dans deux laboratoires du List : le <strong>La</strong>boratoire<strong>sûreté</strong> <strong>des</strong> <strong>logiciels</strong> et le <strong>La</strong>boratoire <strong>logiciels</strong> pour la <strong>sûreté</strong> <strong>des</strong>procédés.Fondé sur une expérience acquise sur plus de vingt ans pourrépondre aux besoins de l’industrie nucléaire, la compétence duList sur la <strong>sûreté</strong> est aussi déployée dans le secteur <strong>des</strong> transportstant pour les besoins de la défense que pour les besoins civils, enparticulier pour les transports aéronautique et automobile.Pour répondre aux contraintes de <strong>sûreté</strong> sécurité et de performancede l’industrie, le List est le seul laboratoire de recherche possédantune offre conséquente et une masse critique et mobilisable.Une offre importante dans les techniques de preuve et d’analyse de logicielCaveat : Mise en évidence et preuve de propriétés attenduesFluctuat : Etude de la précision numérique de calculs en nombres flottantsAlcool : Détection <strong>des</strong> erreurs de type blocage, perte d’information, etc.Slicer : Recherche et isolation <strong>des</strong> composants <strong>logiciels</strong> participant au calcul du paramètreintéressant le concepteur dans un logiciel de plusieurs dizaines de milliers de lignes de code. Cetoutil est particulièrement important pour la reprise et la maintenance de <strong>logiciels</strong> existants.Gatel : Méthode et outil d’assistance à la génération de séquence de tests à partir d’une<strong>des</strong>cription en langage LUSTREAGATHA : Analyse et validation de spécifications de systèmes industriels complexes à partir delangages standards tel que UML, Statecharts, SDL…OASIS : Méthode et outils pour la conception de systèmes temps réel Multitâches déterministespour les applications de <strong>sûreté</strong>CLAIRE : Environnement de test de systèmes temps-réel distribués utilisant <strong>des</strong> simulateurs demicroprocesseurs<strong>CEA</strong> LIST18, route du Panorama - BP 6 - 92265 Fontenay-aux-Roses CedexTél. 01 46 54 99 37 – Fax. 01 46 54 99 42www-drt.cea.frDossier de presse <strong>CEA</strong> : <strong>sûreté</strong> <strong>des</strong> <strong>logiciels</strong> septembre 2003 www.cea.fr / 17

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!