9 fonctionnalités incontournables pour la migration de votre application PowerBuilder

Visual Expert Features for Code Migration

Qu'il s'agisse de passer à PowerBuilder 2022, de mettre à niveau votre base de données, de passer au Cloud ou de migrer en 64 bits, le remaniement d'applications volumineuses et complexes constitue toujours un défi.

Cet article présente les outils Visual Expert qui simplifieront la migration de votre application PowerBuilder

Nettoyez votre code

Pourquoi migrer du code obsolète ou inutilisé ? Mieux vaut le trouver et le supprimer...

  1. Trouver et supprimer les objets et méthodes inutilisés
  2. Trouver et supprimer les objets dupliqués

Estimez l'effort de migration

Cette fonctionnalité calcule le nombre d'objets, de méthodes et de lignes de code de votre application, afin de vous aider à estimer l'effort de migration.

  1. Combien de lignes de code, d'objets et de méthodes votre application PowerBuilder contient-elle ?

Trouver et remplacer les fonctionnalités obsolètes

Il se peut que vous deviez remplacer des fonctionnalités obsolètes : fonctions PB dépréciées, fonctionnalités non prises en charge pour la migration PowerServer, anciens objets OLE, appels de services web non sécurisés.

  1. Trouver où une fonctionnalité donnée est utilisée dans votre code

Migration 64 bits - Mise à jour des dépendances des dll

Si vous migrez en 64 bits, vous devez vérifier si votre application utilise des dlls 32 bits et mettre à jour chaque référence pour les remplacer par des dlls 64 bits.

  1. Trouver les appels aux dlls 32 bits

Examiner les dépendances client/serveur

Selon la nature de votre migration, vous devrez peut-être revoir et mettre à jour les dépendances entre votre client PB et votre base de données :

  1. Quels objets utilisent quelles tables, de quelle manière (Matrice CRUD) ?
  2. Quels objets appellent quelles procédures stockées ?

Isoler des modules du reste de l'application

Vous devrez peut-être isoler certaines parties de votre application pour :

  • Migrer un sous-ensemble de vos fonctionnalités vers le Web avec PowerServer
  • Pour fractionner un grand ensemble de code en plusieurs petits ensembles.
  • Déplacer une partie de la logique du PowerBuilder vers le serveur (dans des services Web, des procédures stockées, des dlls...).
  1. Vérifier les dépendances au niveau des PBL

Documenter les changements effectués pendant la migration

Une fois la migration terminée, gardez une trace de tous les changements effectués afin de pouvoir vous y référer ultérieurement.

  1. Comparez le code avant et après la migration

Testez Visual Expert

Téléchargez une version d'essai gratuite pour analyser votre code PowerBuilder, Oracle ou SQL Server.

Nettoyez votre code

Trouvez et supprimez les objets et méthodes inutilisés

Pourquoi nettoyer le code ?

La plupart des grandes applications comprennent de nombreux objets obsolètes qui ne sont plus appelés par le reste de l'application. Ils restent généralement là, car ils sont difficiles à identifier. Une migration est une bonne occasion de s'en débarrasser : en effet, pourquoi s'embêter à migrer du code obsolète ?

Visual Expert liste les objets éventuellement inutilisés afin que vous puissiez les supprimer si nécessaire.

Résultats attendus

Find unused PowerBuilder Objects

Comment procéder ?

  1. Installez Visual Expert pour PowerBuilder et créez un nouveau projet pour analyser votre code.
  2. Pour trouver les objets PowerBuilder inutilisés, sélectionnez une cible, une PBL, ou un type d'objet (Windows, UO, DW...) dans l'arborescence, et cliquez sur "Eléments inutilisés".
  3. Pour trouver les méthodes, variables et paramètres PowerBuilder non utilisés, sélectionnez un objet PB et cliquez sur "Eléments inutilisés".
  4. Pour trouver les objets Oracle PL/SQL ou SQL Server Transact-SQL inutilisés, sélectionnez une application, un package ou un type d'objet et cliquez sur "Composants non utilisés".

Note : Un objet est considéré comme "inutilisé" lorsque l'analyse du code n'a pu trouver aucune référence à cet objet. Il reste possible de trouver des références dynamiques qui ne peuvent pas être détectées dans le code source (analyse statique). Néanmoins, les fonctions "inutilisées" aideront à se concentrer sur un nombre très restreint d'"objets probablement inutilisés", plutôt que de vérifier l'ensemble de l'application. Si nécessaire, vous pouvez également rechercher le nom d'un objet donné (recherche simple de chaîne de caractères). Dans le menu du ruban, allez dans " Recherche " et entrez le nom de l'objet dans le champ " Code source ". Traduit avec www.DeepL.com/Translator (version gratuite)

En savoir plus

Trouver et supprimer les objets dupliqués

Pourquoi supprimer les doublons ?

Bien que votre application puisse inclure quelques copies d'objets en cours de modification dans une PBL temporaire, la plupart des doublons sont oubliés. Ce sont des composants inutilisés qui peuvent être supprimés pour alléger votre code.

Visual Expert va générer une liste de tous les objets PBL qui appartiennent à la même cible et qui ont le même nom et le même type.

Résultat attendu

Find duplicated PowerBuilder Objects

Comment procéder

  1. Installez Visual Expert for PowerBuilder et créez un nouveau projet pour analyser votre code.
  2. Pour trouver les objets PowerBuilder dupliqués, sélectionnez une cible et cliquez sur "Composants dupliqués".
  3. Pour identifier les fonctions ou procédures Oracle PL/SQL ou SQL Server Transact-SQL éventuellement dupliquées, sélectionnez le(s) type(s) d'objet(s) correspondant(s) à la racine de l'arborescence, et cliquez sur " Trouver les éléments similaires ".

Estimer l'effort de migration

Combien de lignes de code, d'objets et de méthodes dans votre application PowerBuilder ?

Pourquoi calculer des metriques de code ?

Sur la base de votre expérience, et en fonction de la nature et de la complexité de votre application, vous disposez peut-être de certaines mesures internes définissant un coût moyen de migration par objet, méthode et/ou ligne de code.

Visual Expert calculera le nombre d'éléments pour vous afin que vous puissiez estimer votre effort de migration.

Résultats attendus

Visual Expert provides Code Metrics: the number of PowerBuilder or Database items in an application

Comment procéder

  1. Installez Visual Expert for PowerBuilder et créez un nouveau projet pour analyser votre code.
  2. Dès que le code sera analysé, le nombre d'objets clés PowerBuilder, Oracle, PL/SQL, SQL Server et Transact-SQL apparaîtra dans le treeview.
  3. Pour calculer le nombre de lignes de code PowerBuilder, sélectionnez une cible, une PBL, un type d'objet (Windows, UO, DW...) ou un ou plusieurs objets PB spécifiques et cliquez sur " Lignes de code ".
  4. Pour calculer le nombre de lignes de code PL/SQL ou Transact-SQL, sélectionnez un type d'objet à la racine de l'arborescence, ou un ou plusieurs objets spécifiques et cliquez sur " Lignes de code ".
  5. Pour calculer le nombre de fonctions, d'événements, de variables et de constantes PowerBuilder, sélectionnez une cible, une PBL, un type d'objet (Windows, UO, DW...) ou un ou plusieurs objets PB spécifiques et cliquez sur " Nombre d'éléments ".

En savoir plus sur l'inventaire de code

Trouver et remplacer les fonctionnalités obsolètes

Trouver où une fonctionnalité donnée est utilisée dans votre code

Pourquoi ?

Vous pouvez être amené à remplacer des fonctionnalités obsolètes dans votre application : fonctions PB dépréciées, fonctionnalité non supportée lors de la migration vers le web, anciens objets OLE, appels non sécurisés vers des services web.

Visual Expert montrera où chaque fonctionnalité est utilisée dans votre code.

Résultat attendu

Trouver dans votre code les références à une fonctionnalités PowerBuilder, une procédure stockée, un service Web...

Comment procéder ?

  1. Installez Visual Expert for PowerBuilder et créez un nouveau projet pour analyser votre code.
  2. Pour trouver les appels à une fonctionnalité PowerBuilder donnée (objet intégré, contrôle, méthode ou attribut), sélectionnez l'application virtuelle " Objet système PowerBuilder " dans la section supérieure du treeview.
    Cliquez ensuite sur "Tous les objets PB" et ouvrez le type d'élément que vous recherchez (par exemple "Fonctions").
    Localisez la fonction PB dépréciée (par exemple, systemfunctions.findclassdefinition).
    Cliquez sur "Analyse d'impact".
  3. Pour trouver les appels à un objet ou à une méthode externe, consultez la liste des fonctions externes : sélectionnez une cible PB dans l'arborescence, cliquez sur " Fonctions externes " et recherchez le nom de la fonction dans le champ de recherche situé au-dessus de l'arborescence. Une fois la fonction externe sélectionnée, cliquez sur "Analyse d'impact".

Migration 64 bits - Mise à jour des dépendances dll

Trouver les appels aux dlls 32 bits

Pourquoi ?

Certaines applications PowerBuilder incluent des appels aux API Windows ou s'intègrent à des outils tiers en appelant leurs dlls. Si vous migrez en 64 bits, vous devez vérifier si votre application utilise des dlls 32 bits et mettre à jour chaque référence pour les remplacer par des dlls 64 bits.

Visual Expert listera toutes les dll utilisées par votre application, ainsi que les fonctions de dll appelées, et trouvera toutes les références à chaque fonction de dll dans le code PowerBuilder.

Résultat attendu

Trouver les appels aux dlls 32 bits dans votre code PowerBuilder

Comment procéder

  1. Installez Visual Expert for PowerBuilder et créez un nouveau projet pour analyser votre code.
  2. Pour trouver les appels à une fonction donnée de la dll, ouvrez la liste des dll à la racine du treeview, double-cliquez sur la dll, sélectionnez les fonctions de la dll que vous recherchez et cliquez sur "Impact Analysis".
  3. Pour identifier les objets PowerBuilder déclarant des fonctions de cette dll, sélectionnez la dll dans l'arborescence et cliquez sur " Composants PB reliés ".
  4. Pour trouver les fonctions d'une dll, qui sont déclarées, mais non utilisées dans votre code, sélectionnez la dll et cliquez sur " Fonctions externes inutilisées ".

Examiner les dépendances client/serveur

Quels objets utilisent quelles tables, de quelle manière (Matrice CRUD) ?

Pourquoi générer une matrice CRUD

Selon la nature de votre migration, vous devrez peut-être revoir et mettre à jour les dépendances des tables de la base de données.

Cette matrice montrera quels objets PowerBuilder et de BDD appellent les tables, et indiquera pour quel type d'accès (Create, Read, Update, Delete).

Résultat attendu

Visualiser les dépendances entre les process et les données dans PowerBuilder

Comment procéder

  1. Installez Visual Expert for PowerBuilder et créez un nouveau projet pour analyser votre code.
  2. Dans l'arborescence, double-cliquez sur "Table", sélectionnez une ou plusieurs tables et cliquez sur "Créer une matrice CRUD". Un fichier Excel est généré avec la matrice CRUD, que vous pouvez ouvrir, commenter et partager si nécessaire.
  3. Si vous souhaitez en savoir plus sur les dépendances d'une table particulière, sélectionnez-la dans l'arborescence et cliquez sur "Analyse d'impact". Tous les appels à cette table seront affichés.
  4. Sélectionnez un objet dans le résultat pour voir la ou les références exactes dans son code.

Quels objets appellent quelles procédures stockées ?

Pourquoi ?

Comme pour les tables (voir ci-dessus), vous pouvez être amené à revoir et mettre à jour les dépendances aux procédures stockées, par exemple en remplaçant certaines d'entre elles par des services web.

Pour chaque PBL, Visual Expert listera les objets PowerBuilder appelant les procédures stockées, indiquera les procédures appelées, et montrera les références correspondantes dans le code PB.

Résultats attendus

Trouver les objets PowerBuilder appelant des procédures stockées

Comment procéder

  1. Installez Visual Expert for PowerBuilder et créez un nouveau projet pour analyser votre code.
  2. Sélectionnez une ou plusieurs PBL dans l'arborescence et cliquez sur " Procédures stockées appelées ". Le résultat apparaîtra, que vous ayez inclus ou non le code de la procédure dans votre projet (Oracle PL/SQL ou SQL Server Transact-SQL). Les analyseurs de code de Visual Expert suivront principalement les références aux procédures stockées dans le code PowerBuilder pour établir cette liste.
  3. Dans le résultat, sélectionnez un objet PowerBuilder pour voir la ou les références à la ou les procédures dans son code.
  4. Si vous avez besoin de lister uniquement les références à une procédure donnée, sélectionnez cette procédure et cliquez sur "Analyse d'impact".

Isoler des modules du reste de l'application

Vérifier les dépendances entre les PBL

Pourquoi segmenter l'application

Au cours du processus de migration, vous devrez peut-être isoler certaines parties de votre application :

  • pour migrer un sous-ensemble de vos fonctionnalités vers le Web avec PowerServer
  • pour diviser un grand ensemble de code en ensembles plus petits
  • pour déplacer une partie du code métier PowerBuilder sur le serveur (dans des services Web, des procédures stockées, des fichiers DLL, etc.)

Visual Expert affichera les dépendances entre les PBL de votre application. Si vous sélectionnez plusieurs PBL composant un module donné, vous pouvez alors vérifier et mettre à jour leurs dépendances avec d'autres PBLs et modules.

Expected result

Examiner les dépendances des PBL dans votre code PowerBuilder

Comment procéder

  1. Installez Visual Expert for PowerBuilder et créez un nouveau projet pour analyser votre code.
  2. Dans le treeview, double-cliquez sur l'icône PBL, sélectionnez les PBL composant votre module et cliquez sur "Dépendances PBL".
  3. Si les dépendances d'une PBL donnée doivent être examinées en détail, sélectionnez cette PBL et cliquez sur "External References". Ceci montrera toutes les références aux objets de cette PBL, provenant d'objets situés dans d'autres PBL(s).

Documenter les changements effectués pendant la migration

Comparez le code avant et après la migration

Pourquoi

Une fois la migration terminée, gardez une trace de tous les changements effectués pour pouvoir vous y référer ultérieurement.

Résultat attendu

Comparer les versions de votre code PowerBuilder avant et après la migration

Comment procéder

  1. Installez Visual Expert for PowerBuilder et créez un nouveau projet pour analyser votre code.
  2. Dans l'arborescence, sélectionnez une PBL ou un ou plusieurs objets PB de votre choix.
  3. Dans le menu, allez dans "Comparaison" puis dans "Comparer avec une analyse".
  4. Choisissez l'analyse dont vous avez besoin puis cliquez sur "Comparer".
PowerBuilder, Oracle, SQL Server, Code Exploration, VE 2017