La genèse, CORIG de Robert Mallet

L’histoire commence dans les années 60 quand Robert Mallet se penche sur l’industrialisation du logiciel

Il rédige une brochure sur l’étude préalable en 1962 qui deviendra CORIG « A » plus tard.

Deux ans après, il réalise une autre brochure, sur la programmation, le futur CORIG C auquel s’ajoutera CORIG B en 1971.

Le sigle CORIG apparaît tardivement (1967), il signifie Conception et Réalisation de l’Informatique de Gestion.

Brillant polytechnicien, dès 1953, Robert Mallet comprend que la mécanographie, qui date de la fin du siècle précédent, n’a pas d’avenir.

CGI

Le mot « informatique » n’existe pas encore, il ne sera créé qu’en 1964 et on programme de manière sauvage dans un langage proche du système, l’assembleur.

Les machines qui occupent des salles entières disposent de mémoire de 4000 à 8000 octets, les 80 premières positions pour la lecture des cartes perforées, les 80 suivantes pour les perforer en sortie, plus 132 destinées à l’impression.

Tous les traitements à réaliser sont de sacrées performances, un véritable défi compte tenu des contraintes de l’époque, inimaginable aujourd’hui..

En même temps que la technologie évolue, et qu’apparaissent des langages comme le COBOL, plus proche de la sémantique humaine, Robert Mallet réfléchit pour industrialiser tout ça.

Il a son fil conducteur.

D’abord, l’étude préalable qui se compose d’un survol, d’où l’on dégage ensuite les principes de la réorganisation avant de tracer les frontières de l’informatisation.

Puis, en parallèle, on mène l’organisation des services et de la machine.

On termine par une étude de rentabilité.

La conception du système d’information pris en charge par l’ordinateur doit aller de pair avec la description des tâches humaines.

L’organisateur dit aux personnes ce qu’elles doivent faire, l’informaticien s’adresse à des machines qui exécutent ces instructions.

Regardons le discours de la méthode de Descartes qui aurait influencé Robert Mallet, puisqu’il le citait dans son livre dans la présentation de CORIG.

.

Il s’agit d’une évolution, du passage d’un concept naturel simple et objectif à celui d’un concept modelé par la subjectivité et l’artificiel, devenu trop complexe.

Descartes souhaite que rien de subjectif ou de fantaisiste ne vienne polluer sa pensée et il s’impose quatre préceptes :

« Ne recevoir aucune chose pour vraie tant que son esprit ne l’aura clairement et distinctement assimilé préalablement.

Diviser chacune des difficultés afin de mieux les examiner et les résoudre.

Établir un ordre de pensées, en commençant par les objets les plus simples jusqu’aux plus complexes et diverses, et ainsi de les retenir toutes et en ordre.

Passer toutes les choses en revue afin de ne rien omettre. »

Robert Mallet lui, propose deux manières de découper : par objet d’activité et par événement.

Cette structure permet de se focaliser sur le détail, sans perdre de vue l’ensemble dans lequel il s’insère.

Robert Mallet privilégie les procédures à cause de leur pérennité, véritable invariant de l’entreprise.

A contrario aujourd’hui, l’invariant est du coté des données tandis que les entreprises s’efforcent d’être souples dans leurs procédures.

Quelles sont les règles du jeu?

Robert Mallet en distingue quatre, comme les préceptes de Descartes..

_l’enquête dans les services, pour connaître les procédures existantes ;

la réglementation en vigueur, pour savoir ce qui doit être réalisé;

le dépistage des erreurs, ce qui doit être corrigé ;

la mise au point de modèles économiques de gestion qui permet de concevoir des manières de faire totalement nouvelles, utilisant les capacités de la machine pour le calcul.

Dans la phase de réalisation, CORIG C va prendre la main et guider le développeur.

Les procédures se découpent en fonctions du point de vue de la machine.

Elles correspondent aux tâches (20 à 50 lignes de COBOL.) que l’on conditionne et que l’on minimise pour facilement les assembler.

A l’époque, on comparait les programmes à des plats de nouilles, impossibles à dénouer.

Du coup, pour éviter les Go To intempestifs, l’idée est de fédérer le calcul des conditions techniques dans des fonctions techniques bien particulières.

Lecture d’avance, gestion de la fin de travail, cinématique, rupture premier, rupture dernier, l’objectif est de ne rien laisser au hasard, en sachant que ces fonctions technologiques vont se retrouver dans tous les programmes.

Alors, autant les standardiser.

Les programmes sont organisés dans des chaînes batch (CORIG B) et structurés en fonction de leurs technologies :Contrôles, mise à jour, calcul, édition…

Une méthodologie est associée à ces fonctions et un langage de variables, accessible à tous les développeurs, est développé :

PE pour premier, DE pour dernier, CF pour configuration, OC pour occurrence, FT pour fin de travail, etc…

Un dictionnaire est créé, qui contient :

des rubriques codées sur 6 caractères (limite imposée par l’Assembleur de l’époque)

des états,

des fichiers (2 caractères),

des enregistrements,

mais aussi des tâches qui décriront l’application….

Plus de détail en lisant ici CORIG C