Modularisation d'une application Oracle à l'aide de Visual Expert

Un organisme financier public a entrepris un projet de transformation de son application principale, développée en Oracle PL/SQL. Cette initiative visait à modulariser l'application afin d'en améliorer la maintenabilité, la flexibilité et la sécurité. Visual Expert (VE) for Oracle a été choisi pour faciliter cette transition grâce à ses capacités avancées d'analyse du code, de mappage des applications et de génération de documentation automatisée.

Historique du client

Le client exploite une application critique au cœur de ses activités quotidiennes, notamment pour la gestion des prêts étudiants. Au fil des années, cette application est devenue de plus en plus complexe, ce qui a créé des difficultés majeures en matière de maintenance, de mises à jour régulières et d'évolutivité - des facteurs essentiels pour assurer un service continu et répondre aux demandes croissantes des utilisateurs.

Les interdépendances entre les composants rendaient difficile la modification de l'application sans risquer des bugs ou entrainer des dysfonctionnements du système. Dans ce contexte, une société de services, agissant en tant que partenaire technologique, a été chargée d'effectuer une analyse approfondie et de proposer une solution de refactoring.

Défis rencontrés lors de la modularisation d'une application Oracle complexe

Augmentation de la complexité du code

Des années de modifications et d'extensions ont énormément complexifié le code, rendant presque impossible la mise en œuvre de changements sans affecter d'autres composants critiques, ce qui a considérablement retardé les évolutions indispensables au bon fonctionnement de l'entreprise.

Risques opérationnels

La nature monolithique de l'application augmentait les risques opérationnels. Chaque mise à jour nécessitait des tests approfondis pour s'assurer que les changements n'affectaient pas les fonctionnalités existantes, ralentissant par la même le cycle de développement.

Documentation incomplète

Une documentation obsolète et incomplète retardait l'intégration des nouveaux développeurs, augmentait le temps de débogage et le risque d'erreurs.

Nécessité de la modularisation

L'institution financière a décidé de modulariser l'application pour relever ces défis. Il s'agissait de remanier le code pour créer des modules autonomes dotés d'interfaces bien définies, permettant des mises à jour indépendantes et réduisant le risque d'erreurs lors des modifications.

Solutions proposées par Visual Expert

Visual Expert pour Oracle a fourni une solution complète pour relever les défis de la modularisation, avec des fonctionnalités spécifiques qui ont facilité la compréhension, le remaniement et la gestion du code complexe. Découvrez les solutions apportées par Visual Expert, allant de l'accélération des cycles de déploiement à la réduction du temps de debugging, en passant par l'amélioration des performances de l'application Oracle.

1. Cartographie de l'application et planification de la modularisation

La première étape a consisté à utiliser VE pour générer des diagrammes d'architecture et de flux de données représentant visuellement la structure de l'application.

Ces diagrammes interactifs ont permis aux architectes et aux développeurs de l'organisation de visualiser les interactions entre les différents modules et de planifier leur décomposition en unités autonomes dotées d'interfaces claires. Cette cartographie a permis d'identifier les points d'intégration critiques et de guider les stratégies visant à isoler les modules tout en maintenant l'intégrité des flux de données.

En savoir plus sur la cartographie des applications avec Visual Expert.

Generate Call Tree Diagrams for Oracle PL/SQL Code
Object Dependency Matrix

2. Analyse d'impact avancée

Après avoir cartographié l'application, l'équipe a utilisé les outils d'analyse d'impact de VE pour mettre en évidence les relations et les dépendances entre les objets de la base de données (tels que les tables, les vues et les procédures stockées) et le code PL/SQL.

Une analyse statique complète du code a été réalisée pour identifier les dépendances directes et indirectes, y compris les appels de procédures et de fonctions ainsi que les interactions par le biais de triggers. Cette étape a permis de détecter les effets en cascade des changements potentiels, d'identifier les zones de couplage fort et de documenter ces dépendances afin de gérer efficacement les changements et de minimiser les erreurs.

En savoir plus sur l'analyse d'impact de Visual Expert.

Impact Analysis for Oracle PL/SQL Functions
Impact Analysis for Oracle PL/SQL Variables

3. Documentation automatisée

Pour faciliter le partage d'informations entre les équipes et assurer la maintenance future, VE a été utilisé pour générer automatiquement une documentation complète et à jour de l'application.

Cette documentation comprend la description détaillée des objets de la base de données, des procédures stockées, des fonctions, des triggers et des vues.
En automatisant ce processus, le client s'est assuré que toutes les parties impliquées disposaient des informations nécessaires pour comprendre les fonctionnalités et l'architecture du système, réduisant ainsi le risque d'erreurs humaines et améliorant la qualité globale du code.

En savoir plus sur la Documentation du code automatique avec Visual Expert.

Oracle PL/SQL Code Documentation
Generate HTML Documentation for Oracle DB

4. Collaboration via un référentiel partagé

La collaboration entre le client et son partenaire a été facilitée par le partage du référentiel de Visual Expert.

Cette configuration a permis d'améliorer la coordination entre les équipes de développement en permettant à plusieurs développeurs de travailler sur les mêmes modules, de partager des informations en temps réel et d'assurer la cohérence des versions de code utilisées. Cette approche collaborative a amélioré la productivité en rationalisant les efforts de développement et de maintenance.

En savoir plus sur les fonctionnalités collaboratives de Visual Expert

Team Collaboration and Access Control for Oracle Projects

5. Revue de code et sécurité

Parallèlement au processus de modularisation, l'équipe a utilisé VE pour effectuer une revue de code approfondie.

Ces analyses ont permis d'identifier les redondances, le non respect des bonnes pratiques et les vulnérabilités potentielles, renforçant ainsi la sécurité et la fiabilité du système. L'amélioration de la qualité du code était une priorité pour prévenir les défaillances futures et réduire les coûts de maintenance à long terme.

En savoir plus sur la revue de code avec Visual Expert.

Oracle PL/SQL Code Review Dashboard
Oracle PL/SQL Code Security Check

Résultats obtenus

Visual Expert pour Oracle a permis au client et à son partenaire de transformer un système existant en une application dynamique et modulaire, mais aussi de réduire les risques opérationnels, diminuer les temps de développement et assurer la pérennité de la plateforme qui peut maintenant évoluer de façon continue.

Intégration

2x
plus rapide

Bugs

40%
de mois

Revue

50%
plus rapide

Deploiement

30%
plus rapide

Erreurs

50%
de moins

Prochaines étapes

Fort du succès de la modularisation, le client souhaite se concentrer sur l'optimisation des performances de l'application. En s'appuyant sur les connaissances de Visual Expert, l'équipe pourra réduire les temps de traitement, améliorer l'efficacité et offrir une expérience utilisateur plus rapide et plus fiable, tout en réduisant les coûts opérationnels.