![]()
Précédent : Maintenance et manipulation de
programmes Remonter : Domaines d'applications Suivant :
Logiciel pour le commerce
électronique
Mots clés : sûreté de programmation, vérification de logiciel, transports, télécommunications .
Les appareils que nous utilisons dans notre vie quotidienne contiennent une quantité croissante de logiciel. Ce logiciel contribue à la compétitivité de ces appareils en permettant des utilisations plus simples du point de vue de l'utilisateur, mais souvent plus complexes en réalité.
Jusqu'à maintenant, les erreurs de programmation étaient une caractéristique admise et le coût de telles erreurs était réduit par la possibilité de faire intervenir un opérateur humain pour diagnostiquer les pannes et corriger les erreurs manuellement. Lorsque le logiciel est embarqué, ceci n'est plus possible. Le coût d'une erreur pour l'entreprise qui utilise ce logiciel devient beaucoup plus important : rappel de voitures déjà vendues, fusées ou sondes spatiales dont les missions échouent, accidents de véhicules de transport.
De nombreuses équipes de recherche mettent au point des techniques qui permettent de développer des logiciels validés vis-à-vis de spécifications, ce qui permettrait théoriquement de réduire le risque d'erreur à zéro (en pratique des erreurs peuvent également se glisser dans les spécifications). Ces techniques sont plus ou moins coûteuses et plus ou moins générales. Avec le logiciel COQ, dont le langage de spécification permet de faire des mathématiques très générales et contient un langage de programmation fonctionnel pur, on se trouve à un bout du spectre : on peut aborder des problèmes très variés et complexes mais avec un coût très important. Les recherches que nous faisons contribuent à diminuer ce coût, d'une part en utilisant efficacement les possibilités des stations de travail graphiques, d'autre part en abaissant le niveau de compétence requis de l'ingénieur. Nos recherches dans ce domaine sont le lieu de collaborations avec des constructeurs aéronautiques.