Il ne fait aucun doute que le monde a un Problème COBOL. Nos banques, gouvernements et systèmes d’entreprise sont soutenus par un langage de programmation vieux de 60 ans que de moins en moins de gens comprennent.
Traîné sous les projecteurs par un incident aux États-Unis en avril, le problème COBOL est traité comme une simple pénurie de compétences. En tant que tel, les deux IBM et Micro Focus (qui jouent un rôle démesuré dans l’entretien de COBOL) ont lancé des initiatives de formation distinctes, dans le but d’inciter les développeurs à revenir à ce langage qui n’est plus à la mode.
Cependant, il est possible que ces entreprises se soient toujours trompées sur la nature du problème COBOL. Selon la start-up technologique Phase Change Software, il est assez facile pour les développeurs chevronnés de apprendre COBOL, mais il est beaucoup plus difficile de comprendre le langage dans le contexte d’applications du monde réel.
«Le marché voit le problème COBOL comme une pénurie de compétences, mais c’est en fait un problème de connaissances», a déclaré Steve Brothers, COO chez Phase Change.
«Dans l’espace COBOL, vous disposez de millions de lignes de code actif et, pour effectuer la maintenance nécessaire, vous avez besoin de développeurs qui comprennent ce que fait ce code. Mais lorsque vous écrivez des applications complexes, le code écrit le matin devient hérité l’après-midi. »
Selon Brothers, alors que les entreprises souffrent d’attrition des connaissances (lorsque les développeurs prennent leur retraite ou quittent le pays), la tendance est de résoudre les problèmes en trouvant des solutions de contournement (c’est-à-dire en s’appuyant sur et autour du code existant) au lieu de solutions authentiques.
Finalement, cela conduit à des applications gonflées et lourdes que même les développeurs les plus grisonnants n’ont aucun espoir de comprendre. Tel est, dit-il, le problème COBOL qui mérite l’attention la plus urgente.
Sommaire
Résoudre le problème COBOL
Selon les chiffres de Reuters, la majorité des développeurs encore familiers avec COBOL se dirigent vers le crépuscule de leur carrière; seulement 11,5% ont moins de 35 ans, tandis que 18,8% ont 55 ans ou plus. Et la popularité du langage parmi les développeurs en herbe est également sur une trajectoire descendante depuis environ 2002, passant du 5e au 33e langage de programmation le plus populaire.
Cependant, bien que la résolution de ce déséquilibre soit probablement la première étape pour corriger le problème COBOL, les nouveaux développeurs (quel que soit leur talent) ne peuvent faire beaucoup pour peaufiner les applications COBOL héritées. Ils sont quelque peu bloqués par la peur de casser des applications qu’ils ne comprennent pas (et ne peuvent espérer) comprendre.
«La volonté des banques et des assureurs de changer [COBOL] le code est si faible, car ils voient que le risque est si élevé. Ils préfèrent payer des amendes en cas de non-conformité plutôt que d’apporter des modifications au code qui pourraient briser les applications et planter leurs systèmes », nous a dit Brothers.
Dans le but de remédier à ce triste état de choses, Phase Change publiera bientôt un outil basé sur l’IA appelé COBOL Colleague, qui, selon l’entreprise, est capable de diriger les développeurs vers les sections spécifiques du code qui nécessitent une attention particulière.
L’outil est essentiellement conçu pour remplacer les experts en la matière, qui sont de moins en moins nombreux. En théorie, les nouveaux développeurs introduits dans un environnement n’auront pas besoin de s’appuyer sur le pilotage d’un collègue expérimenté (comme c’est actuellement le cas), mais pourront exécuter une maintenance vitale sur la bonne partie de la base de code.
Les développeurs modernes passent jusqu’à 80% de leur temps à identifier le code problématique, explique Brothers, faisant signe à une recherche menée par Microsoft. Un outil capable de réduire ce temps à la découverte pourrait donc non seulement contourner le problème des connaissances COBOL, mais aussi générer des gains de productivité spectaculaires.
Une version bêta de COBOL Colleague est actuellement utilisée dans une banque d’Amérique du Nord et des discussions sont en cours avec une autre en Europe. L’outil est prévu pour un lancement complet au deuxième trimestre de l’année prochaine, mais d’ici là, nous devrons tous espérer que la colle et les élastiques qui maintiennent ensemble nos banques et nos entreprises tiennent bon.