Comment concevoir un logiciel qui fonctionnera plus de 100 ans

Le démonstrateur Dassault Rafale à Farnborough 1988 (Photo : Andrew Thomas)L’obsolescence des systèmes est un problème épineux, notamment dans le secteur aéronautique où les programmes et la durée de vie des « produits » est très longue.

Ainsi, le Rafale de Dassault Aviation commence à peine sa carrière export grâce aux premières ventes réalisées auprès de l’Egypte et de l’Inde. Pourtant, son programme de développement avait officiellement été lancé en 1978 et le prototype du démonstrateur Rafale A avait pris l’air pour la première fois le 4 juillet 1986. Vous vous souvenez à quoi ressemblait l’informatique à cette époque ?

L’obsolescence des systèmes, un problème récurent dans l’aéronautique

L’anecdote avait fait sourire, elle est pourtant emblématique du problème d’obsolescente des équipements dans le domaine de l’aéronautique. En 2002, les ingénieurs de la Nasa se sont mis à visiter les sites d’enchères de l’époque, eBay et Yahool Sell. En effet, ceux-ci avaient besoin de puces Intel 8086 pour une application de diagnostic pour les booster de la navette spatiale. Intel ayant stoppée la fabrication de ces puces obsolète, les ingénieurs n’avait plus qu’à arpenter le Web pour trouver la puces des IBM PC de première génération. Développer un nouveau système de diagnostic était prévu, mais ce projet de 20 millions de dollars à lui seul allait prendre du temps, trouver des stockes de vieux composants était un moyen de gagner du temps.

Dès 2002, la NASA était confrontée à la problématique de l'obsolescence des équipements de sa navette spatiale (Photo : NASA / Tom Farrar & Tony Gray)

Dès 2002, la NASA était confrontée à la problématique de l’obsolescence des équipements de sa navette spatiale (Photo : NASA / Tom Farrar & Tony Gray)

Si cette problématique d’obsolescence est bien connue des concepteurs de systèmes embarqués, dont ceux du Rafale. Ceux-ci conçoivent aujourd’hui des systèmes modulaires et dont il est possible de replacer la carte processeur sans avoir à tout refaire. Néanmoins, il est une problématique tout aussi importante sur ce plan de l’obsolescence, c’est celle des logiciels eux-mêmes. Qu’adviendra-t-il des logiciels dans 100 ans lorsque tous les développeurs d’un logiciel auront quitté cette terre et lorsque la documentation et les codes sources auront été irrémédiablement perdus ? On peut imaginer que chez Dassault Systèmes cela n’arrivera sans doute pas. Les grands industriels disposent des moyens informatiques pour archiver ces données sur le long terme et seront sans doute capables de retrouver chaque version de chaque composant du système d’un Rafale, d’un Mirage 2000. Mais à l’heure où on trouve du logiciel dans le moindre objet du quotidien, il y a de grandes chances que son fabriquant ait disparu dans 100 ans et ses archives avec lui…

Une architecture pour faire vivre un logiciel au-delà de 100 ans

BRASS-ArchitectureLa question est suffisamment sérieuse pour que l’armée américaine lance un projet de recherche sur la question.Le projet Building Resource Adaptive Software Systems (BRASS) donne 4 ans (et un budget de 8 à 10 millions de dollars) aux chercheurs pour imaginer des solutions, leur objectif étant de concevoir des logiciels qui seront capables de fonctionner 100 ans après avoir étés écrits, c’est à dire à un moment où le matériel, les capteurs, les protocoles de communications et les formats de données auront immanquablement changés. Pour les chercheurs, la solution des API (interfaces logicielles documentées), très largement usité sur Internet, n’est pas suffisante face aux très nombreuses modifications qu’un système peut être amené à connaître sur une durée aussi longue. Le projet BRASS vise a mettre en place une architecture complète où le système pourra identifier les liens entre les composants du logiciels, les ressources qu’ils utilisent.

 

Sources :

« Building Resource Adaptive Sofware Systems (BRASS) », FedBizOps.gov, 7 avril 2015

« For Old Parts, NASA Boldly Goes . . . on eBay », The New York Times, 12 mai 2002

 

Commentaires Facebook
Twitter Facebook Plusone Pinterest Linkedin
Ce contenu a été publié dans Développement, Logiciel embarqué, avec comme mot(s)-clé(s) . Vous pouvez le mettre en favoris avec ce permalien.