Validation et certification de logiciels critiques

Parcours IL / Orientation IL

Tout produit logiciel doit être vérifié et validé avant sa mise en production. Plus précisément, il faut s’assurer que le logiciel respecte les spécifications fonctionnelles (c’est-à-dire que le produit fonctionne correctement) ainsi que les besoins utilisateurs (c’est-à-dire que le bon produit est développé). De plus, pour les systèmes les plus critiques on demande souvent une certification garantissant que les critères d’acceptation (prévus par des normes) ont été remplis.

Ce cours introduit les spécificités des processus de développement de logiciels critiques. Le cours présente des techniques de vérification et validation dynamiques avec, en particulier, des techniques de test unitaire, intégration, acceptance, etc. Des techniques d’analyse statique permettant de découvrir des défauts, des failles de sécurité ou des anomalies dans les logiciels seront également présentées.

On présentera les principes d’une évaluation Critères Communs (CC) et on verra comment identifier les composants CC pertinents et comment rédiger des cibles de sécurité.

Prérequis

  • Connaissances en génie logiciel et modélisation système.

Acquis d’apprentissage

  • Concepts et des techniques concernant le développement de logiciels critiques.
  • Méthodes et outils d’analyse statiques de logiciels.
  • Techniques et outils pour le test automatisé.
  • Méthodes d’évaluation et validation dans le cadre de la certification Critères Communs.

Compétences visées

  • Concevoir et implémenter des systèmes logiciels sûrs et fiables.
  • Réaliser l’évaluation d’un logiciel pour vérifier sa conformité par rapport à un cahier des charges ou à une spécification technique.

Parcours IL / Orientation IL