Aller au contenu

Système hérité

Un article de Wikipédia, l'encyclopédie libre.
Ceci est une version archivée de cette page, en date du 23 octobre 2021 à 09:04 et modifiée en dernier par Innomé (discuter | contributions). Elle peut contenir des erreurs, des inexactitudes ou des contenus vandalisés non présents dans la version actuelle.

Un système hérité, système patrimonial ou legacy system en anglais est un matériel ou un logiciel continuant d'être utilisé dans une organisation (entreprise ou administration), alors qu'il est supplanté par des systèmes plus modernes. L'obsolescence de ces systèmes et leur criticité les rendent difficilement remplaçables sans engendrer des projets coûteux et risqués.

Par exemple, les banques et assurances qui ont informatisé leur traitement des informations dans les années 1970 ont des applications qui tournent avec du code hérité souvent en COBOL ou en Fortran. Les risques pris pour réécrire l'application dans un autre langage et les coûts inhérents au changement dissuadent souvent la modernisation du système, voire son remplacement.

Causes

Les entreprises peuvent avoir des raisons sérieuses de conserver un système hérité, par exemple :

  • Le système fonctionne de manière satisfaisante, et son propriétaire décide de ne pas allouer de ressources à l'analyse du rapport bénéfice/risque de l'évolution du système, possiblement par heuristique assumée, aversion au changement, voir par négligence ou ignorance de répercussions néfastes envisageables et raisonnablement anticipables.
  • Les coûts pour retravailler ou remplacer le système seraient prohibitifs, parce que celui-ci est de grande taille, monolithique (en), complexe.
  • Former les utilisateurs au nouveau système demanderait beaucoup de temps et d'argent, ceci étant à comparer avec les avantages apportés par le remplacement du système (ceux-ci pouvant être nuls).
  • Le système requiert une haute disponibilité et ne peut être interrompu. De plus, les coûts pour concevoir un nouveau système atteignant le même niveau de disponibilité seraient élevés. Ces systèmes contrôlent des secteurs critiques, tels que : gestion bancaire, réservations, contrôle aérien, distribution d'énergie (réseau électrique), contrôle de centrale nucléaire, installations de défense militaire, trafic ferroviaire, etc.
  • Le fonctionnement du système existant n'est pas entièrement maîtrisé. De telles situations peuvent se produire lorsque les concepteurs du système ont quitté l'entreprise et que celui-ci n'est pas entièrement documenté, ou bien que la documentation a été perdue ou pas mise à jour.

Exemple de la NASA

La NASA continue d'utiliser des technologies des années 1970. Les processus de validation sont très lourds et coûteux. Aussi la NASA a été obligée d'acheter sur eBay des microprocesseurs 8086 en 2002 pour les systèmes de contrôle des navettes spatiales parce qu'ils n'étaient plus fabriqués par Intel[1]. Ils sont bien connus des développeurs, et étant plus gros, ils résistent mieux aux radiations que les microprocesseurs récents.

Un système hérité d'une ingénierie rigoureuse peut se perpétuer avec une portée incommensurable. Les normes des chariots romains sont à l'origine de celles des trains et des tunnels ferroviaires, et ont limité la taille des réservoirs auxiliaires des navettes ravitaillant la station spatiale internationale[2].

Conséquences

Les systèmes hérités sont généralement considérés comme problématiques pour différentes raisons :

  • Maintenance compliquée par un manque de documentation, de compétences, de composants (disparus)
  • Maintenance potentiellement coûteuse
  • Lenteurs dues à l'obsolescence du matériel
  • Ergonomie inférieure à celle des systèmes modernes
  • Risques de panne accrus
  • Vulnérabilités liées à l'absence de correctif
  • Absence d'évolutivité et d'adaptation aux nouveaux besoins fonctionnels ou a une augmentation de la volumétrie

Solutions

Le développement d'une nouvelle interface homme-machine généralement plus ergonomique peut être une manière d'améliorer l'expérience utilisateur mais ne constitue pas une réelle solution, pas plus que la virtualisation des machines ou des applications qui permet plutôt de conserver les systèmes hérités en les décorrélant du matériel ou du système d'exploitation, leur offrant ainsi une deuxième vie[3].

Il faut prévoir l'apurement progressif des systèmes hérités par une démarche régulière d'urbanisation du système d'information.

Références

  1. William J. Broad, « NASA checks EBay for obsolete parts », New York Times,
  2. « How the width of the SRBs relates to horse's bums »
  3. « Virtualization : Dealing with Legacy Apps », sur Microsoft.com (consulté le ).

Article connexe

Lien externe