Aperçus des Cross-Références ACMU
L'analyse des dernières décennies de patrimoine Legacy MVS/z/OS révèle des chiffres dont vous n'avez peut-être pas connaissance !
Voici quelques exemples de résultats produits automatiquement d'après les JCL et PROC que vous fournissez. Il s'agit de fichiers Excel à plat, standalone, sans macro, faciles à lire et à manipuler, qui permettent de rechercher et de filtrer les données.
Les Cross-Références aident significativement HH&S et le Client à apprécier la faisabilité, à prendre des décisions concernant l'architecture cible, à déterminer les priorités pour porter les applications et les données, et à planifier le projet de façon réaliste.
Vue Index
Cette vue montre les compteurs de JCL, PROC, PGM distincts (uniques). Cela donne une idée de l'effort requis pour le portage vers l'architecture cible des applications "Legacy" et des programmes utilitaires : Quel que soit le nombre de JCL, c'est le nombre et la nature des différents programmes / procédures / utilitaires qui sont déterminants.
Vue XRef JCL - EXEC
Cette vue montre quels programmes et procédures sont appelés par quels JCL, pour toutes les applications (JCL Set).
Cela répond aux questions :
- Quelles applications, quels JCL utilisent ce programme ?
- Quels programmes sont nécessaires pour les JCL d'une application ?
De plus, on peut voir quelles technologies sont mises en œuvre dans les applications. Dans cet exemple, CUSTOMER et FINANCIAL partagent des technologies et programmes communs, tels que DB2 (DSN*) et les composants d’ordonnancement OPC/TWS (EQQ*).
Cette liste des EXEC PGM et EXEC PROC nous permet :
-
de vérifier que nous avons un script Shell "Wrapper" (1) pour chaque utilitaire Legacy IBM ou d'un Independent Software Vendor :
(ADABATC7 BPXBATCH CFTUTIL DMS DSNUPROC EQQYCAIN FTP ICEGENER ICEMAN ICESORT IDCAMS IEBCOPY IEBEDIT IEBGENER IEFBR14 IEHLIST IKJEFT01 IKJEFT1A IKJEFT1B IRXJCL ISRSUPC JVMLDM86 JZOS86 SENDMAIL SORT, etc.) - d'identifier tous les utilitaires pour lesquels il faut coder un wrapper Shell ;
- d'identifier tous les programmes applicatifs que le Client doit porter sur Open.
(1) Le wrapper est un script Shell frontal d'appel au programme cible qui adapte les paramètres et la syntaxe Legacy z/OS au monde Open.
Vue JCL - IKJEFT01
Avec le "couteau suisse" IBM IKJEFT01 vous pouvez faire beaucoup de choses !
La question est :
- Que font vos JCL IKJEFT01 ?
- Seront-ils compliqués à migrer vers UNIX/Linux ?
Notre XRef donne une classification des opérations IKJEFT01 :
- DB2, TSO command, ISPSTART command : peut être délicat. Nécessite une analyse.
- Procédures REXX : nécessite une analyse pour décider d'un portage REXX ou d'une réécriture.
- BPXBATCH, OMVS commands : pas de difficulté.
À partir de ce tableau, nous allons nous concentrer sur les points délicats identifiés, et donner une assez bonne estimation de la faisabilité et de la charge de travail, pour HH&S et pour le Client.
Vue JCL - Datasets
Quel plaisir de trouver la liste de tous les fichiers de son patrimoine Batch !
- Triés par application, JCL, Step et DDNAME.
- DatasetName original, Disposition, RECFM (Fixed/Variable).
- High Level Qualifier.
- Proposition de nommage pour la cible UNIX/Linux. Bien sûr, la convention de nommage est décidée par le client, et programmée dans ACMU.
- Données faciles à trier, rechercher, filtrer et manipuler pour construire votre convention de nommage cible.
Vue EXEC Count
Cette vue présente le nombre d'appels de chaque programme et procédure pour tous les JCL, et par application, et au total.
On peut voir d'un coup d'œil quelles technologies sont utilisées par les différentes applications.
Des yeux "Mainframe" verront dans cet exemple que HR est la seule application à utiliser Oracle (SQLPLUS, SQLLoader),
tandis que les applications CUSTOMER, PURCHASE et SALES utilisent DB2 (DSNUTIL, DSNUPROC), et toutes utilisent les composants d’ordonnancement OPC/TWS (EQQ*).
Une fois les Cross-References effectuées, l'équipe HH&S identifiera si un programme/utilitaire est complexe, délicat à porter.
Dans ce cas, ce tableau aide à prendre une décision : Supprimer / Remplacer / Réécrire.
Exemples typiques :
| Legacy | Décision | Cible |
|---|---|---|
| ADRDSSU backup | Remplacer | Votre utilitaire de backup favori : tar, zip, ... Nous codons un UserExit ACMU "custom" qui remplacera à la volée le pattern ADRDSSU par le pattern approprié pour la cible |
| IDCAMS IEBCOPY IEBGENER | Remplacer | Dans la plupart des cas, les utilitaires standards UNIX cp, mv, dd, awk |
| Proc REXX | Réécriture | Votre langage de scripting favori : Shell, Perl, Python, ... |
| BPXBATCH Shell commands | Suppression | BPXBATCH n'est utile que sous z/OS : les commandes Shell tourneront naturellement sous UNIX/Linux |
| ISPSTART | Réécriture | appel à ISPF : voir si cela a un sens de porter/conserver sur Open ... |
| SORT, ICESORT | Remplacer | Notre tri à syntaxe DFSORT a été conçu pour ça : XSM |
Vue 'Missing Material'
Vous n'êtes pas certain de nous avoir transmis tous les éléments nécessaires ?
Pas d'inquiétude, ce tableau identifie les fichiers manquants !