Dans l’ensemble du gouvernement fédéral, les organismes font face à d’importants défis en matière de modernisation des applications existantes, intégrant des systèmes centraux riches en données et aux processus d’affaires abondants à des architectures modernes. Un programme du département de la Défense des États-Unis a fait appel à CGI Federal pour l’aider à moderniser son système de soutien à la chaîne d’approvisionnement et à l’équipement essentiel à sa mission, utilisé par 18 000 employés répartis dans 260 emplacements à l’échelle mondiale. Confronté à la hausse des coûts d’exploitation des composantes existantes, le programme a reconnu la nécessité de mettre à jour son système complexe de chaîne d’approvisionnement et de le migrer vers une plateforme ouverte tout en maintenant toutes ses fonctionnalités. Ce système sert de système de données imputable pour plus de 30 milliards de dollars d’inventaire essentiel aux opérations militaires.
Le département de la Défense avait déjà modernisé certaines composantes du système; toutefois, une composante majeure, vieille de plus d’un demi-siècle et contenant une logique d’affaires sur le plan du commerce de détail, fonctionnait toujours sur l’ordinateur central. Par le passé, les tentatives de modernisation de cette composante, qui traite environ 500 000 transactions par jour, ont échoué en raison de l’ampleur et de la complexité de la tâche.
Surmonter les obstacles à la modernisation
Le code de la composante n’était pas bien documenté, après plus de 50 ans d’exploitation, de maintenance et de prolongation. Les experts actuels ne connaissaient qu’une fraction des règles de gestion complexes du système. Trouver des programmeurs COBOL s’est avéré tout aussi difficile.
À la recherche de nouvelles approches pour moderniser plus d’un million de lignes de code COBOL tout en maintenant les règles de gestion actuelles, le département de la Défense a demandé l’aide de CGI.
Mettant de côté des stratégies telles qu’une réécriture manuelle et une refonte de l’architecture en raison des risques et des coûts associés, le programme a choisi une solution de réusinage automatisé du code COBOL en Java. À l’aide d’une approche progressive à faible risque pour répondre aux exigences de modernisation, l’équipe dirigée par CGI a utilisé des outils efficaces pour une livraison rapide de logiciels de grande qualité.
Préserver les règles de gestion au moyen d’une approche de modernisation en trois phases
Pour répondre aux exigences du programme en tenant compte des contraintes de coûts, de temps et de risques, CGI a recommandé une approche de modernisation en trois phases. Au cours de la première phase, l’équipe a utilisé des outils avancés de TSRI JANUS Studio© pour réusiner automatiquement le code COBOL en Java, convertissant 1 260 679 lignes de code COBOL et 10 078 lignes de code C en Java. Plutôt que de simplement translittérer le code source COBOL en code cible Java, l’outil exécute une conversion automatisée mature vers ce que nous appelons un langage de traduction intermédiaire. Les experts ont ensuite pu utiliser un processus itératif d’application des règles et de réglage pour convertir le code transformé en langage Java cible. Parallèlement, l’équipe a transformé le code de gestion des données COBOL en SQL.
Lors de la deuxième phase, CGI a peaufiné le nouveau code Java, qui contenait des vestiges du paradigme de conception de COBOL, pour en faire une solution Java plus standard. L’équipe a élaboré un plan pour cibler et corriger les vestiges COBOL à l’aide de la solution TSRI et des méthodes d’optimisation du code éprouvées lors de la première phase. Elle a ensuite commencé le processus itératif de réusinage automatisé, de tests de régression et d’examen avec le client pour fournir un code base Java plus maintenable. Au cours de la troisième phase, nous avons déplacé l’ensemble de la composante vers AWS GovCloud, en tirant parti d’Amazon EC2 pour la présentation, l’accès aux données et la logique d’affaires.
Notre approche de transformation automatisée n’a donné lieu qu’à 1 défectuosité par 21 000 lignes de code, comparativement à la norme du secteur de 15 à 50 défectuosités par 1 000 lignes de code lorsqu’elles sont rédigées manuellement.
Créer une architecture moderne maintenable
Grâce à la modernisation de cette composante essentielle de ses processus de soutien à la chaîne d’approvisionnement et à l’équipement, le département de la Défense a pu transformer son ancien système central COBOL en une solution infonuagique Java moderne facilement maintenable. L’approche adoptée, fondée sur le réusinage et l’automatisation, a permis au programme de préserver ses précieuses règles de gestion et de les intégrer au nouveau système modernisé.
La migration vers AWS améliore la sécurité et la souplesse des environnements système tout en permettant des économies de coûts considérables et une performance accrue.
Les essais de performance du gouvernement ont démontré que la solution modernisée exécutait plus de 500 % de la pointe de charge de production dans un environnement deux fois plus petit que l’environnement précédent, ce qui équivaut à une capacité de 8,7 fois la charge de production prévue. En éliminant 8 serveurs centraux existants, le département de la Défense a atteint 7,5 millions de dollars par année en coûts d’hébergement seulement. Dans l’ensemble, la modernisation permet de réaliser des économies de coûts estimées à 25 millions de dollars par année grâce à un système plus facile à maintenir et à améliorer pour répondre aux besoins de la mission.