Faut-il achever les AS/400 ?

Il en est des technologies comme de certaines stars vieillissantes d’Hollywood : là où certaines savent tirer leur révérence à temps, en pleine gloire, d’autres se sentent obligées de faire leur cinéma jusqu’à ce que mort s’ensuive…

Le temps semble venu de réexaminer le vieux « mythe » anachronique de l’AS/400, ce dinosaure à la peau dure, résidu de la préhistoire de l’informatique défiant les lois de l’évolution et qui n’a jusqu’ici survécu à tout … que par l’inadaptation de certains humains.

Si la présence en ligne d’une entreprise était encore à créer, nul doute qu’elle songerait d’emblée à (se faire) créer un site Web, et pas à mettre en place un service télématique destiné au Minitel, qui vient de disparaître. De même, si une entreprise avait précédemment un service Minitel, sans doute l’a-t-elle déjà fait migrer, et depuis fort longtemps, sur Internet, plutôt que de maintenir son serveur tel quel et de continuer à le faire utiliser par ses collaborateurs en émulation Videotex.

Alors, pourquoi persister à infliger à des opérationnels ainsi qu’au budget informatique la présence d’un AS/400 ? Il en reste encore beaucoup nichés quelque part dans les recoins de nombreuses organisations, et cela quelle que soit leur taille, depuis le monde des PME jusqu’aux multinationales. Comme le confirmait, il y a tout juste deux ans, en septembre 2010, Steve Will, architecte en chef pour IBMi sur son blog (http://ibmsystemsmag.blogs.com) : « Les systèmes IBMi ont davantage de clients que n’importe quelle autre plate-forme d’IBM, cela représente plus de 100 000 entreprises de toutes tailles, dans 115 pays. »

Conçu dans les années 1970, l’AS/400 est issu du monde de la mini-informatique, par opposition à celui de la micro-informatique (pourtant lui aussi largement estampillé IBM). Comment s’étonner, dès lors, que l’Application System/400, sous ses différents oripeaux (tour à tour rebaptisée iSeries, ou encore System i5, pour tenter de lui redonner une nouvelle jeunesse) ait toujours constitué un cas à part dans l’informatique ?

En effet, autant l’informaticien actuel, pour peu qu’il sache s’adapter, sait assez facilement passer d’un système d’exploitation à un autre (qu’il s’agisse de Windows, des différentes distributions de Linux, de systèmes d’exploitation embarqués ou de systèmes alternatifs) ou d’un langage de programmation à un autre, retrouvant ses marques assez rapidement, autant il se trouvera assez probablement déconcerté face à un système aussi baroque. D’où une interrogation légitime : se pourrait-il que les efforts nécessités par le choix d’un AS/400 (matériel spécifique, informaticiens spécifiques) pour des applications business soient justifiés par le fait qu’il s’agirait non pas d’un système marginal, mais plutôt d’une solution d’exception ? Alors comparons !

Quant à l’explication de leur adoption aussi large, elle me semble résider dans la conjonction entre plusieurs facteurs :

  • Leur adoption initiale dans beaucoup d’entreprises s’est déroulée à un moment où le monde des serveurs et des réseaux présentait un visage si différent que ce pouvait être un très bon choix pour l’époque. Puis l’héritage se perpétue, même s’il devient de plus en plus lourd, et se retrouve environné d’autres systèmes bâtis autour et qui ont besoin des AS/400 pour fonctionner. Jusqu’à ce que plus personne n’ose y toucher de peur de fragiliser le système d’information.
  • Enfin, ce choix est bien souvent fait par des personnes qui n’ont qu’une vision extrêmement abstraite de ce qu’elles choisissent, d’autant qu’elles n’auront pas à l’utiliser elles-mêmes ! D’où leur propension à préférer payer cher un logo prestigieux et le sentiment de sécurité qu’il leur procurera, ainsi qu’aux instances qui auront à juger de la pertinence de ce choix.

Nul doute que l’AS/400 fût une vraie merveille pour son époque, et qu’il aura marqué une étape importante dans son domaine, tout comme a pu le faire le cinéma muet en noir et blanc, avant l’arrivée du son et de la couleur : disons qu’en l’occurrence, nous sommes en présence de l’informatique en noir et vert, d’avant l’avènement du multimédia. Mais vivre dans le passé, c’est mourir… Foin d’acharnement thérapeutique, gageons que l’AS/400 finira par s’éteindre…

Pour qui sonne le glas ? Et qui l’AS/400 emportera-t-il dans sa chute ? Dans tout marché, il faut savoir se retirer à temps, avant que le marché ne le fasse, et le véritable enjeu pour les entreprises qui en sont dotées à l’heure actuelle semble être d’en sortir tant que cela est encore possible dans de bonnes conditions… •

(*) Charles Roche est titulaire d’un diplôme de 3e cycle en droit et économie de la Banque, de l’assurance et des marchés financiers. Après sept ans chez Marsh, où il s’est entre autres occupé de l’extranet, et un passage chez l’éditeur SAB ; Charles Roche est actuellement chef de projet à la direction des opérations d’une banque d’affaires. L’auteur s’exprime ici à titre personnel.

Les spécificités de l’AS/400
Critère AS/400 Reste du marché
Matériels Fournisseur Forte dépendance au constructeur et à son seul écosystème Choix et concurrence propres au marché.
Machines
  • Un AS/400 (encombrement : d’un gros PC tour à des armoires beaucoup plus imposantes, en passant par le monolithe noir façon 2001, l’Odyssée de l’Espace).
  • Les terminaux ne sont plus fabriqués
  • On s’y connecte depuis des PC en émulation de terminal 5250 (les émulateurs tiers aux fonctions avancées sont payants).
Grand choix de serveurs traditionnels.
On s’y connecte depuis des PC sans besoin d’émuler un terminal (et sans les imperfections et l’instabilité que cela peut sous-entendre).
Processeur  Processeur Power, aussi utilisé par plusieurs consoles de jeux. Habituellement Pentium d’Intel ou des clones de ceux-ci.
Prix  À partir de 11 500 € pour un modèle i5. Le prix peut évidemment être beaucoup plus élevé. De vieux PC suffisent au stade du développement. Par la suite, on trouve de très bon serveurs pour quelques milliers d’euros.
Maintenance/ réparation Uniquement le SAV du constructeur, ou éventuellement de coûteux spécialistes Au choix, facilité par une architecture non spécifique à un constructeur en particulier.
Logiciels Système d’exploitation
  • Spécifique (orienté objet, très différent des OS habituels sur le plan conceptuel), appelé OS/400 puis i5/OS, enfin IBM i.
  • Également : AIX et Linux (1)
Au choix, dont des gratuits (dont de multiples distributions de Linux)
 Codage  EBCDIC nécessitant un transcodage  Principalement ASCII (classique)
Programmation
  • Spécifiques : CL, RPG, souvent Cobol (1)
  • Également : assembleur et divers langages évolués : C(++), Pascal, Basic… (1)
  • Langages Web : WebSphere, Apache, PHP, MySQL, Java + serveur DNS, DHCP, SMTP… (1)

Compétences : beaucoup des programmeurs AS/400 qui ne sont pas encore à la retraite ne tarderont pas à l’être…

Au choix (dont de nombreux gratuits), dont les mêmes (à l’exception du CL et du RPG, d’autres langages jouant ici le rôle qui est le leur sur AS/400).
Compétences : il n’y que peu de difficulté à trouver un informaticien pratiquant tel ou tel langage actuel.
Logiciels disponibles Seuls des progiciels très spécifiques et au prix prohibitif sont généralement écrits pour cette plate-forme.  L’embarras du choix, même parmi les gratuits.
 Base de données  Intégrée : IBM DB2/UDB Installer MySQL (gratuit) répond à tous les besoins sauf les plus extrêmes.
 Administration Par un administrateur spécialisé, qui est plus coûteux car plus rare. Un administrateur traditionnel fait parfaitement l’affaire.
Utilisation  Ergonomie
  • Complètement obsolète : mode texte vert sur fond noir (!).
  • Conçu pour un clavier à 24 touches de fonctions qui n’est plus fabriqué ;
  • Usage très limité de la souris dans une interface qui désoriente les collaborateurs par son archaïsme et à laquelle il faut les former.
Les systèmes actuels sont d’une très grande ergonomie, à laquelle nous sommes habitués.
Par exemple : la sélection d’une valeur parmi une liste s’opère dans une liste déroulante où il suffit de cliquer.
Sur AS/400, cela prend tout un nouvel écran, on y accède par une frappe sur F4.
 Haute disponibilité
  • Peut servir un grand nombre de connexions simultanément (peu méritoire puisqu’il ne transmet que des chaînes de caractères de longueur limitée).
  • Lenteurs ou interruptions, comme les autres serveurs, si l’administrateur ne l’a pas paramétré de façon optimale.
La haute disponibilité peut être atteinte par la mise en œuvre des techniques idoines, dont clustering et load-balancing…
 Sécurité L’AS/400 est réputé inviolable. Son obscurité joue sans doute un rôle dans cette position. Mais cela n’empêche pas de trouver des articles sur le hacking AS/400
(voir par exemple : www.hackingiseries.com).
La sécurité est une question de rigueur de la part de l’administrateur et du programmeur. S’ils ont tous deux fait leur travail en l’état de l’art, le système est sécurisé.
Références  Documentation La documentation officielle est aride, il n’existe que deux ouvrages actuellement disponibles sur le sujet en langue française. Les rayonnages de librairies croulent sous la littérature consacrée à toutes les technologies actuelles.
(1) Mais dans ce cas, où est l’intérêt de faire un détour par un AS/400 ?

Par ici la sortie !

Tous les assureurs vous le diront : derrière chaque problème se cache une opportunité pour celui qui sait la saisir. À ceux qui cherchent à (s’)en sortir, le fait d’avoir jusque-là maintenu un système préhistorique offre l’occasion d’accomplir un véritable saut quantique qui peut se révéler particulièrement vertueux au moment de s’en débarrasser.

En effet, ceux de vos concurrents qui ont su évoluer sont déjà munis d’un système certes moderne dans l’interface qu’il affiche, mais vieillissant dans le code qui la sous-tend. Pour ce système, ils ont, au fil du temps, investi dans des technologies qui ne sont plus forcément encore en selle suite aux affrontements successifs entre les différentes modes qui se succèdent ces dernières années à un rythme étourdissant et dans la mêlée desquelles bien malin serait celui qui pourrait dire quel paradigme sera le prochain standard – du moins tant que la poussière n’est pas encore retombée.

Au moment où vous arrivez, la messe est dite : aujourd’hui, l’état de l’art, ce n’est plus un programme mais un extranet (ergonomique, multi-plateforme, urbanisé et déployable chez vos clients au besoin) renvoyant du HTML 5 (déjà adapté aux tablettes et smartphones), codé non pas en CGI mais en PHP (ou l’un de ses concurrents payants) et reposant sur une base de données MySQL (même remarque !), et donc avec un coût logiciel de zéro (même l’OS Linux côté serveur est gratuit). Dès sa mise en place, il sera porteur d’un avantage concurrentiel non négligeable, que cela soit en termes de cohérence du fond (réordonné), d’aisance d’utilisation (que ce soit par les collaborateurs ou chez le client, ce qui peut permettre d’emporter de nouvelles affaires) ou de coût de maintenance et d’évolution.

À l’occasion de cette démarche, le développeur devra s’attacher à transposer les concepts d’un paradigme aux réalités de l’autre.

Concept AS/400 Transposition courante
Objet Fichier
Fichier physique Table à accès séquentiel
Fichier logique Vue d’une table avec des index
Objet bibliothèque (Library = *LIB) Répertoire (DOS) / Dossier (Windows)
Scripts en Control Language Shell scripting
Programme en RPG, Cobol, etc. (*PGM)
  • Programme souvent aisément transposable à la nouvelle plate-forme dans le même langage (sauf pour RPG, qui est exclusif à l’AS/400).
  • Le programme (même en Cobol !) peut sous-tendre un site Web avec peu de réécriture à travers la Common Gateway Interface.
Traitements batch Tout automate de traitements par lots.

Cet article a été écrit par Charles Roche.