COBOL : Tout sur le langage historique de gestion de données

-
7
 m de lecture
-

COBOL (Common Business-Oriented Language) est un langage de programmation développé dans les années 1950 pour les applications commerciales et administratives, et très utilisé encore aujourd’hui pour la gestion de bases de données. Découvrez tout ce que vous devez savoir !

À partir des années 1950, avec l’émergence de l’informatique commerciale, les entreprises ont commencé à utiliser massivement les ordinateurs pour traiter leurs données. Toutefois, il n’existait pas encore de langage de programmation standardisé pour les applications commerciales.

En 1959, préoccupé par l’incompatibilité des nombreux langages utilisés, le Département de la Défense des États-Unis décida de financer le développement d’un langage universel. C’est l’une des pionnières de l’informatique, Grace Hopper, qui fut chargée de concevoir ce langage : COBOL.

Qu’est-ce que COBOL ?

COBOL (Common Business-Oriented Language) est un langage de programmation standard développé par le consortium CODASYL (Conference/Committee on Data Systems Language) en 1959. Il est conçu pour être facilement compréhensible par les professionnels de la gestion, et pour permettre la portabilité des programmes sur différents ordinateurs.

Dédié à la création d’applications d’entreprise ou de finance, c’est un langage principalement pensé pour les ordinateurs mainframe. Son fonctionnement ne dépend pas d’un système d’exploitation spécifique. Très intuitif, COBOL utilise des mots et des phrases en anglais en guise de syntaxe pour les mots-clés et les constructions.

Cette structure syntaxique inspirée du langage naturel est basée sur les travaux de Grace Hopper dans les années 1940 sur FLOW-MATIC : un langage de traitement de données basé sur texte. Ainsi, les langages tels que COMTRAN et FACE ont fortement influencé la conception de COBOL.

Auparavant, chaque système d’exploitation avait son propre langage de programmation. Ceci pouvait s’avérer pénible pour les entreprises travaillant avec de multiples OS. C’est pour remédier à ce problème que le projet COBOL a vu le jour. Sa portabilité et sa simplicité d’usage en ont fait un outil très utilisé par les entreprises de nombreux secteurs. Depuis son apparition dans les années 1950, COBOL s’est décliné dans plusieurs versions. La première est COBOL 60, et a été suivie par COBOL 61, COBOL 65, COBOL 68, COBOL 74, COBOL 85, COBOL 2002 et COBOL 2014.

Au fil des années, COBOL a évolué pour répondre aux besoins changeants de l’informatique. Des fonctionnalités telles que le traitement des fichiers, la gestion des données ou les calculs arithmétiques complexes et la manipulation de chaînes de caractère ont été ajoutées. Ce langage est devenu très populaire dans les systèmes de gestion des entreprises, notamment pour les applications de traitement des transactions financières, les systèmes de paie et les bases de données.

COBOL a également joué un rôle crucial dans l’industrie informatique en raison de sa compatibilité ascendante. Les anciens programmes COBOL pouvaient être facilement adaptés aux nouvelles versions du langage sans nécessiter de modifications majeures. Cette caractéristique a permis aux entreprises de conserver leurs systèmes existants tout en intégrant progressivement de nouvelles fonctionnalités.

Cependant, avec l’émergence de nouveaux langages de programmation et de nouvelles technologies, il a perdu de sa popularité à partir des années 1990.  Les langages plus modernes et orientés objet ont commencé à dominer le paysage de la programmation, tandis que COBOL était souvent perçu comme un langage obsolète.

Néanmoins, il n’a pas disparu complètement. De nombreuses entreprises et institutions financières continuent d’utiliser des systèmes basés sur COBOL en raison de leur fiabilité et de leur capacité à gérer des volumes massifs de données. Certaines des infrastructures les plus critiques, telles que les systèmes de paiement et les systèmes de sécurité sociale, reposent encore sur des programmes COBOL.

Le développement de COBOL est désormais terminé, mais ses programmes sont toujours utilisés et pourraient continuer d’exister jusqu’à ce que les logiciels soient prêts à migrer vers une nouvelle alternative.

Comment fonctionne COBOL ?

Un programme COBOL typique suit une structure hiérarchique comprenant de multiples composants liés entre eux. D’abord, ce langage comporte 78 caractères. Ceci inclut les lettres de l’alphabet, les chiffres et les caractères spéciaux.

Les déclarations sont composées de verbes, de mots, de mots clés et d’opérandes. Elles indiquent l’action effectuée sur les données pour accomplir des tâches conditionnelles ou inconditionnelles.

De son côté, une phrase combine deux ou plusieurs déclarations et se termine par un point. Le terme de paragraphe désigne quant à lui un extrait de code combinant des phrases ou des déclarations. Il commence par un nom de paragraphe et se termine avec le terminateur de portée de paragraphe. Une section combine un ensemble de phrases, des blocs de phrases ou des paragraphes.

De même, les divisions sont des combinaisons de phrases, déclarations et paragraphes. Un programme COBOL typique a quatre divisions. La division d’identification identifie le programme par son nom PROGRAM-ID, et la division d’environnement définit ses entrées et fichiers.

Les données utilisées par les programmes COBOL telles que les variables sont définies par la division Data. Enfin, la division de procédure contient la logique du programme et notamment les déclarations et les variables de la division Data. Les utilisateurs y définissent les noms des paragraphes et des sections. Elle doit contenir au moins une déclaration et se termine par les commandes « STOP RUN » et « EXIT RUN » dans les programmes appelant et appelés.

Les avantages de COBOL

Plusieurs caractéristiques ont permis à COBOL de se distinguer de ses rivaux et de rester populaire aujourd’hui encore.

Un langage mondial

D’abord, il s’agit d’un langage d’entreprise utilisé dans le monde entier. Plusieurs grandes entreprises, banques, compagnies d’assurance ou secteurs industriels comme la santé, l’automobile, le transport ou le commerce de détail utilisent COBOL.

On peut citer par exemple des entreprises de renommée mondiale comme IBM, UPS, Fiserv, Bank of America, JPMorgan Chase ou Cigna. Ainsi, le langage continue à jouer un rôle crucial pour les organisations qui stimulent l’économie mondiale.

Malgré l’arrêt de son développement, il reste un langage de choix pour de nombreux secteurs. Un sondage mené début 2022 par Micro Focus révèle que 92% des ingénieurs et développeurs de logiciels confirment que des applications COBOL sont développées aujourd’hui pour répondre aux besoins stratégiques de leurs organisations.

Une syntaxe proche de l’anglais naturel

En outre, la lisibilité de ce langage lui a permis de devenir très populaire dans une large variété d’industries. Les profils non techniques peuvent apprendre à le maîtriser en suivant une formation adéquate. Il est accessible à n’importe qui maîtrisant la grammaire anglaise. En outre, sa fonctionnalité d’auto-documentation facilite la maintenance en synchronisant le code et sa documentation. De plus, COBOL n’utilise pas de pointeurs, fonctions ou types de données définis par l’utilisateur. C’est ce qui en fait un langage très simple à comprendre.

Flexible et portable

Ce langage prend en charge la plupart des architectures et déploiements traditionnels, mais aussi les technologies modernes et les applications complexes. Il est compatible avec Java, C# et les conteneurs Docker, et peut aussi tourner sur des plateformes plus récentes comme .NET et JVM. Il fonctionne aussi sur différents environnements cloud tels que Azure et AWS.

Avec l’essor des architectures orientées service (SOA), REST et services web, de nouveaux protocoles et méthodes ont vu le jour comme XML, HTML, WDSL, JSON et SOAP. Toutefois, COBOL s’intègre et se connecte parfaitement avec les applications modernes et étend son fonctionnement au web, au mobile et au cloud. Un autre avantage majeur de COBOL est sa portabilité. Le langage est compatible avec la plupart des OS comme Windows, Linux ou Unix.

La communauté des programmeurs peut donc développer des applications sans s’inquiéter de la compatibilité avec les systèmes d’exploitation. Cet aspect agnostique permet aussi aux développeurs de construire, tester et déployer des programmes COBOL sur les différentes plateformes prises en charge. Les processus de développement et d’exécution d’application s’en trouvent accélérés.

Enfin, l’utilisation des environnements de développement intégrés (IDE) standards prévalents dans la plupart des industries permet aux équipes d’évaluer et d’amender les programmes COBOL facilement en cas de besoin. Sa nature adaptative et évolutive a permis au langage de résister à l’épreuve du temps et de fusionner avec les APIs, microservices et applications cloud modernes.

Points faibles et inconvénients

Malgré ses avantages, ce langage présente aussi des faiblesses. L’un des problèmes est le manque de programmeurs qualifiés en activité. Selon une étude de 2021 menée par Advanced Software, 89% des grandes entreprises déplorent une pénurie de professionnels capables de gérer les ordinateurs mainframes reposant sur COBOL.

Ces systèmes anciens sont difficiles à utiliser et maintenir, et effectuer une requête pour l’extraction ou l’analyse de données est une tâche complexe. Suite à l’arrêt du développement après COBOL 2014, toutes les ressources telles que les compilateurs, les outils de débogage et les interpréteurs ont cessé d’évoluer et n’ont pas toujours été remplacés. La plupart des compilateurs COBOL comme ceux de Micro Focus ou IBM sont par ailleurs relativement chers, même s’il existe quelques alternatives open source gratuites comme GnuCOBOL.

Principaux cas d’usage de COBOL

Grâce au langage COBOL, les ordinateurs mainframe sont utilisés pour les tâches de traitement de données à grande échelle. Ces machines sont réputées pour leur vitesse, leur sécurité et leur capacité de stockage les rendant adaptés aux applications modernes.

Un socle fondateur pour l’industrie de la finance

Toute l’industrie des services financiers est basée sur COBOL, qui a servi à écrire son code système fondateur. Aujourd’hui encore, il est utilisé pour traiter de larges volumes de données par les banques, assurances et autres institutions financières.

Les systèmes de cette industrie traitent de larges volumes de transactions et servent plusieurs utilisateurs simultanément. Ceci requiert un langage robuste et sécurisé comme COBOL capable de manipuler, traiter et gérer de nombreuses données tout en fonctionnant à haute vitesse.

Un langage historique de gestion et traitement de données

En tant qu’ancien langage de programmation pour les systèmes d’entreprises, COBOL est utilisé depuis bien longtemps pour la création, la manipulation et la gestion des bases de données. Il fournit des fonctionnalités pour définir la structure des données, créer des tables, insérer, mettre à jour et supprimer des enregistrements ou pour effectuer des requêtes de base de données.

On peut aussi s’en servir pour lire, écrire et manipuler des fichiers de données stucturés. Les programmes COBOL peuvent être développés pour extraire des informations spécifiques à partir de fichiers, trier et filtrer les données pour effectuer des calculs et générer des rapports.

Un autre cas d’usage est l’intégration de systèmes différents par l’échange de données. Ce langage permet en effet de lire et d’écrire des données dans des formats compatibles avec d’autres systèmes, facilitant l’échange d’informations entre les applications.

Enfin, COBOL permet d’implémenter des fonctionnalités de sécurité des données telles que le contrôle d’accès, la vérification des autorisations et le chiffrement.

Conclusion : COBOL, un langage ancien qui reste d’actualité

Près de six décennies après sa création, COBOL est encore utilisé dans le monde entier. Ce langage fiable et flexible continue de répondre aux besoins des organisations et institutions financières où l’exactitude est une priorité, comme les banques.

Il s’agit d’un outil historique pour la gestion et le traitement des données, et de nombreuses applications d’entreprise reposent encore dessus. Selon une étude Micro Focus datée de février 2022, près de 850 milliards de lignes de code COBOL sont encore utilisées.

Néanmoins, de nouveaux langages de programmation et technologies ont vu le jour et sont de plus en plus adoptés : Python, Java, JavaScript, Ruby, Hadoop ou les plateformes de cloud ne sont que quelques exemples.

Afin d’apprendre à manier les langages de programmation et outils d’analyse de données, vous pouvez choisir DataScientest. Nos différentes formations Data Engineer, Data Analyst, Data Scientist, Data Product Manager ou ML Engineer vous permettent d’apprendre à maîtriser Python, les bases de données, les solutions de business intelligence et les outils de DataViz et de Machine Learning. Tous ces cursus s’effectuent intégralement à distance, sont éligibles au CPF pour le financement et permettent de recevoir une certification professionnelle. Découvrez vite DataScientest !

Vous savez tout sur COBOL. Pour plus d’informations sur le même sujet, découvrez vite notre dossier complet sur Python et notre dossier sur SQL !

Facebook
Twitter
LinkedIn

DataScientest News

Inscrivez-vous à notre Newsletter pour recevoir nos guides, tutoriels, et les dernières actualités data directement dans votre boîte mail.

Vous souhaitez être alerté des nouveaux contenus en data science et intelligence artificielle ?

Laissez-nous votre e-mail, pour que nous puissions vous envoyer vos nouveaux articles au moment de leur publication !

Newsletter icone
icon newsletter

DataNews

Vous souhaitez recevoir notre
newsletter Data hebdomadaire ?