This content is also available in: Anglais
Eranea fournit à ses clients une solution de migration de Cobol (ou autres langages “historiques” ) vers Java:
- très fluide et granulaire: les utilisateurs peuvent être migrés 1 par 1 vers le nouveau système si tel est le souhait de nos clients
- avec un niveau de risque extrêmement réduit: le nouveau système délivre exactement les mêmes fonctions que l’ancien à chaque instant puisqu’ils sont issus du même code source au même niveau de maintenance. Les utilisateurs n’ont qu’à basculer de leur émulateur de terminal vers leur navigateur internet (et vice-versa si besoin) pour passer de l’ancien au nouveau système.
- avec très peu de gêne pour les développeurs informatiques: pendant que la migration se déroule, ils poursuivent la maintenance de leur code Cobol et la version Java est automatiquement générée à partir de ce Cobol. A la fin du projet, ils basculent vers la maintenance du code Java. Il le trouve instantanément extrêmement familier puisqu’il a été généré à partir du code Cobol qu’ils maîtrisent depuis des années: le code Java possède exactement la même structure (programmes, paragraphes, écrans, etc…) que le Cobol dont il est issu. Ainsi, leur productivité est même accrue puisqu’ils peuvent utiliser sans limite la vaste palette de fonctions offerte par les ateliers logiciels les plus modernes (IDE) tels que Eclipse, Netbeans, eux-mêmes augmentés de l’immense boîte à outils complémentaire et configurable dont ils disposent.
Les points-clefs de la solution Eranea sont sa capacité à générer un nouveau code Java 100% iso-fonctionnel qui devient le nouveau code source de référence ainsi que sa faculté à migrer l’application initiale de manière 100% automatique: ils créent des avantages critiques et inaccessibles aux solutions qui conservent une partie de travail manuel complémentaire aussi faible soit-il.
- Code source strictement iso-fonctionnel (jusqu’au “niveau du bit de donnée”) d’un point de vue système: il permet au nouveau système Java d’accéder en temps-réel la même base de données que le système historique en Cobol: les 2 systèmes génèrent et interprètent donc les enregistrements de données d’une manière strictement identiques. Ils comprennent donc les données enregistrées par l’autre système logiciel comme s’ils les avaient eux-mêmes créées et peuvent donc ainsi collaborer harmonieusement sur la même et unique base de données .
- Code source strictement iso-fonctionnel et iso-structurel: il permet une migration extrêmement fluide. Les utilisateurs passent au nouveau système sans formation spécifique: ils retrouvent les fonctions dont ils ont besoin exactement à la position qu’ils connaissent déjà sur les écrans qu’ils maîtrisent depuis longtemps. De plus, la cinématique de l’enchaînement entre ces écrans est conservé elle-aussi. Les utilisateurs s’approprient donc le nouveau système en un temps record !
- Automatisation totale: elle permet de répéter le processus de transcodage du Cobol vers Java autant de fois que nécessaire sans coûts associés en termes de ressources humaines pour faire les “derniers ajustements” sur le code généré. Sachant que la technologie Eranea permet de transcoder de nombreux millions de lignes de code source par heure, le délai d’un transcodage supplémentaire est négligeable dans la durée des processus du projet de migration
- La rapidité de transcodage et son automatisation totale permettent donc de répéter cette opération au moins quotidiennement (chaque nuit) afin d’avoir chaque matin un nouvel applicatif Java à un niveau fonctionnel strictement équivalent à celui du système historique
- L’ensemble des points précédents permettent donc une migration à un niveau de risque extrêmement bas: les utilisateurs peuvent basculer sans “Big Bang” au rythme le plus approprié vers le nouveau système sans formation particulière (grâce à l’iso-fonctionnalité) et sans limitation fonctionnelle (grâce à la régénération nocturne récurrente). L’iso-fonctionnalité parfaite et le partage des données en temps réel permet d’envisager une migration où chaque utilisateur est basculé indépendamment de tous les autres.
Un aspect technologique clef du système généré est le choix de Java comme cible. Il offre des avantages critiques pour ce nouveau système:
- Portabilité maximale: la devise de Java est “Write Once, Run Anywhere”. (“Écrit une fois, exécutable partout”). L’intégralité du système généré par les outils d’Eranea ainsi que ces outils eux-mêmes sont écrits 100% en Java: ils sont donc tous deux extrêmement portables et peuvent donc fonctionner dans les environnements les plus divers sans aucun changement: Linux (même zLinux sur les machines IBM S/390), Unix dans toutes ses variantes, z/OS (grands systèmes IBM), Sun / Oracle Solaris, Windows, etc. Ainsi une application peut initialement être migrée vers un premier environnement cible puis vers un second après une décision de réorientation sans impact important sur le projet ou après celui-ci. Plus fréquemment, cette flexibilité est utilisée pour faire fonctionner l’application dans des environnements différents simultanément: les développeurs la maintiennent et la testent sur leur station de développement Windows alors que les équipes systèmes la font fonctionner en production sur des serveurs Linux. Java permet cette souplesse sans effort important et spécifique: les différentes équipes peuvent ainsi faire fonctionner exactement la même application (code source et exécutables binaires) sur leurs environnements favoris respectifs.
- Très bas coûts: de très grandes applications peuvent fonctionner très efficacement sur la plate-forme technologique avec le meilleur rapport qualité / prix du moment: Java sur Linux hébergé par des serveurs d’architecture Intel / AMD. En termes de chiffres, des économies jusqu’à 90% des coûts payés annuellement aux fournisseurs du système propriétaire initial peuvent être économisés sur une base récurrente.
- Outillage optimale: dès que le code source de l’application a été muté vers Java, la très vaste palette des outils du monde Java peut lui appliqué pour en améliorer drastiquement la qualité. Les outils de monde Java peuvent ainsi drastiquement doper la productivité des développeurs: IDEs (Eclipse, Netbeans), tests unitaires (JUnit), analyse du taux de couverture du code (Emma, Cobertura), analyse statique de la qualité du code (PMD, CheckStyle, Findbugs), tests de performance (JMeter). Tous ces outils sont immédiatement utilisables. Sans oublier de mentionner que la plupart d’entre sont totalement gratuits ….
- Très large adoption: il est de nos jours devenu beaucoup plus simple de trouver des ingénieurs de développement Java expérimentés que des développeurs Cobol experts dans l’environnement des grands systèmes propriétaires. Donc, le changement de langage de programmation et de plate-forme technique permet de traiter indirectement la question de la rareté des ressources humaines idoines.
Le code généré en Java devient le nouveau code source: la solution d’Eranea permet donc réellement de se débarrasser des anciennes technologies en stoppant toutes leurs utilisations à la fin du projet. Il ne s’agit pas d’ajouter encore de nouvelles briques à l’édifice pour le fragiliser davantage mais réellement de simplifier son architecture: les compétences Cobol ne sont plus nécessaires, les systèmes d’exploitation en fonction sont diminués du système propriétaire initial quand l’ancienne machine est stoppée, etc…
L’objectif d’Eranea est réellement de livrer à ses clients un nouveau système au niveau de l’état de l’art, débarrassé de toutes les contraintes du passé et dans lequel tous les obstacles à des évolutions flexibles et agiles ont été levés.
L’atteinte de ce but permet à l’application, critique pour le métier du client, de poursuivre sa vie et de reprendre un rythme soutenu d’évolutions et d’améliorations, libérée des barrières de l’obsolescence, très flexible pour absorber le meilleur des possibilités de la nouvelle plate-forme technologique qui l’héberge. Cette application retrouve alors une espérance de vie au moins égale à son âge au moment du projet, soit souvent plusieurs décennies !
