Cet article traite de la problématique de la certification, en soulignant son utilité sur le plan sociétal. Il offre l’intérêt et l’originalité de donner le point de vue d’un membre d’un organisme de certification. Il adresse ensuite plus spécifiquement le développement de logiciels critiques, avec une illustration dans le domaine de l’aéronautique. Il souligne les difficultés rencontrées en entreprise et l’état des pratiques pour mettre en perspective quelques pistes d’améliorations possibles de celles-ci. Il démontre notamment l’intérêt d’intégrer plus étroitement les contraintes de certification au processus de développement des systèmes de façon continue.
Notre proposition est d’aller au-delà et de s’inspirer des valeurs agiles (produire régulièrement des livrables opérationnels, accepter des changements de besoins, valoriser les interactions entre les individus) pour être capable d’apporter plus tôt dans le développement et de façon continue, des garanties de conformité aux normes. C’est ce que l’article appelle « Certification Continue ».
La section 2 positionne le contexte de ce travail, introduit la problématique générale de la certification et propose un état des pratiques industrielles dans différents domaines d’activité (automobile, santé, nucléaire…). La section 3 rappelle les pratiques actuelles en matière d’ingénierie logicielle et explique en quoi les objectifs de certification contraignent le processus de développement logiciel en aéronautique (objectifs, référentiels, contraintes induites, etc.). Cette section analyse également comment la certification est vécue par les industriels du secteur. La section 4 développe quelques pistes permettant de mieux intégrer les exigences de certification au processus de développement logiciel. La section 5 démontre qu’il est possible d’introduire de l’agilité dans le processus de développement de logiciels critiques soumis à certification. L’article conclut sur la nécessité et l’intérêt de faire évoluer les pratiques en les rendant plus agiles et en s’appuyant sur des approches basées modèles ; elle étend ces conclusions pour la certification de logiciels critiques à des domaines autres que l’aéronautique ou même pour des systèmes non logiciels.
Nota : dans cet article, les schémas et les tableaux ont été laissés en anglais pour rester conformes aux documents réglementaires dont ils sont extraits.