Cliquez ici pour une Démo de XRAY |
XRAY est un outil interactif pour la mise au point des programmes batch au niveau du source. Il aide pour le développement, les tests et la maintenance des applications batch. XRAY est disponible en OS/390, MVS et VSE.
XRAY permet la mise au point on line des programmes batch écrit en COBOL OS/VS, VS COBOL II, COBOL pour OS/390, VM et VSE, F COBOL, Assembleur F, Assembleur H, High level Assembleur et PL1.
La mise au point des programmes est faite à partir d'un terminal CICS, lequel est connecté à votre job Batch. Votre code objet n'est pas modifié et ne doit pas être recompilé pour XRAY.
La mise au point au niveau du source est possible seulement après que XRAY a traité la liste compilateur/assembleur/linkedit. Cependant la mise au point au niveau objet (si vous avez une liste) peut être faite sur n'importe quel programme.
XRAY est tout aussi efficace pendant le développement des programmes, que pendant la maintenance ultérieure.
XRAY audite les programmes sélectionnés en ajoutant simplement un paramètre dans la carte EXEC.
XRAY procure les avantages suivants :
XRAY permet :
Une mise au point plus rapide des programmes
XRAY permet une mise au point plus rapide de la logique et de lécriture des programmes ainsi que la correction des erreurs de données. Lutilisateur peut arrêter lexécution dun programme ou de nimporte quel sous-programme à des étapes définies. Ces arrêts dexécution interviennent seulement quand certaines conditions sont remplies. Les données peuvent être désignées au travers des références Cobol. Les boucles peuvent être interceptées en spécifiant des limites aux instructions.
Des corrections plus rapides
Pour suivre la logique des programmes, XRAY permet une progression simple grâce à lintroduction dinstructions machine ou dinstructions programme. Il met en évidence les erreurs sur lécran. Les sources COBOL, Assembleur et PL1 peuvent être affichés. Les corrections sont faites on line et lexécution du programme peut redémarrer. Après un arrêt du programme, lexécution se poursuit et peut emprunter un chemin destiné à tester des logiques de traitement dont on sait quelles seront exceptionnellement utilisées.
Une mise au point plus efficace
Plusieurs erreurs peuvent être examinées et corrigées en une seule exécution du programme. Ceci signifie donc moins dattente avant de soumettre des compilations supplémentaires, réaliser davantage de tests et éviter de se pencher sur trop de dumps.
De réduire lanalyse des dumps
Il nest plus nécessaire de sattarder sur les dumps mémoire. XRAY affiche à lécran exactement ce dont vous avez besoin. Il allège considérablement le travail fastidieux des tests et de la mise au point des programmes.
D'intercepter les ABEND des Programmes
Quand un programme tombe en ABEND, XRAY affiche le code source associé, la raison de lABEND et dautres informations liées à celui-ci. Pour la détermination des problèmes, toutes les fonctions de mise au point XRAY sont disponibles à cet instant. Une fois lerreur identifiée, le programmeur peut décider du type daction à prendre. Par exemple, le programmeur peut vouloir mettre fin au job et générer un dump, ou corriger le problème et poursuivre lexécution du job, ou ignorer totalement la partie de code en erreur.
De protéger la mémoire
XRAY ne permet pas aux programmes « testés » de modifier des zones mémoire qui sont en dehors de son contrôle directe (à moins que lutilisateur ne le force expressément).
La détection des Boucles
XRAY arrête automatiquement un job quand la limite du nombre dinstructions préalablement définie a été atteinte. Ceci permet déviter les boucles programmes potentielles.
Les bénéfices que vous en retirerez :
Amélioration de la productivité des programmeurs
Réduction du temps de développement
Réduction du temps à consacrer à lanalyse fastidieuse des dumps
Possibilité de tester les logiques de traitement rarement exécutés et de corriger les erreurs « mystérieuses » des programmes.
Fiabilisation des programmes, car mieux testés.
Facile à utiliser
XRAY est un debugger batch facile à utiliser. Cest un produit dans lequel on évolue grâce à des menus, des touches fonction et des écrans daide. Toutes les fonctions sont accessibles à partir de menus clairs en utilisant des commandes ou des raccourcis. Les écrans interactifs sont faciles à comprendre, ils proposent en surbrillance les cas derreur.
XRAY est utilisé par les développeurs pour détecter dans les programmes les erreurs de logique, les erreurs de code et les erreurs de données.
XRAY est une aide remarquable pour les programmeurs débutants. Ils peuvent facilement suivre la logique du programme et éviter les problèmes récurrents rencontrés par les nouveaux programmeurs.
Menus et raccourcis
Des menus donnent accès aux principales fonctions de XRAY. Ils fournissent des indications sur les fonctions disponibles et permettent une utilisation facile de celles-ci.
COMMAND est le champ de saisie de la commande dans lequel on peut saisir nimporte quelle commande valide XRAY. Vous pouvez également utiliser un raccourci et ainsi vous retrouver directement vers un menu particulier ou un écran fonction.
Sur les menus, vous pouvez sélectionner une option en saisissant son identifiant dans le champ commande. Une autre modalité consiste à positionner le curseur sur la ligne requise et appuyez sur la touche PF Zoom. Les valeurs affichées entre parenthèses à droite de chaque option,représentent les identifiants des raccourcis associés à chaque fonction.
Par exemple pour sélectionner la fonction Display Program Structure, vous pouvez fournir soit la valeur de loption =2 ou si vous connaissez lécran à atteindre, vous pouvez être plus précis en entrant =2.1. Ou encore, vous pouvez positionner le curseur nimporte où sur la ligne contenant loption 2 et appuyer sur la touche PF Zoom.
OFFSET vous permet dentrer une valeur pour modifier leffet de certaines commandes. Par exemple si une zone de mémoire doit être affichée, la valeur entrée détermine la position à partir de laquelle laffichage commencera.
En haut de lécran se trouvent deux champs qui apparaissent pendant toute lutilisation du produit : Command et Offset.
Vous pouvez obtenir des informations daide en positionnant le curseur sur loption demandée et en appuyant sur la touche Help.
Points darrêt standard
XRAY arrête lexécution dun programme aux endroits spécifiés par lutilisateur. Quand larrêt se produit, un écran halte est affiché, comprenant le code source correspondant si celui-ci est disponible. Toutes les fonctions XRAY de debugging sont disponibles pour lexamen et la modification de la mémoire et du code source du programme.
De cette façon, les erreurs peuvent être trouvées et corrigées, des modifications peuvent être faites pour « forcer » lexécution de certaines parties de code.
Après chaque arrêt, le programmeur peut soit terminer le job et produire un dump, soit continuer normalement lexécution, avancer par étape (STEP) dans le programme instruction par instruction, soit reprendre à partir dun autre point dans le programme.
Contrôle du Debugging et de lexécution en utilisant la ligne de commandes
Une session de mise au point se fait facilement en utilisant la ligne de commandes. Vous pouvez contrôler ou arrêter lexécution du programme, définir des conditions spéciales darrêt et même modifier le déroulement logique du programme en utilisant la ligne de commandes. Tout ceci peut être fait en visualisant le code source du programme. Les points darrêt peuvent être établis de différentes manières : la plus efficace consiste à visualiser le code source du module. Vous pouvez vous déplacer dans le source du programme en faisant de la pagination avant et arrière, trouver (FIND) une chaîne de caractères ou aller directement vers un numéro dinstruction.
En utilisant les écrans menu de XRAY, le source de votre programme est affiché à votre demande. Il est également affiché sur un écran STOP pendant la session de mise au point. Une fois que linstruction localisée, déplacez tout simplement le curseur nimporte où dans le numéro dinstruction, tapez un H, appuyez sur Entrée et le point darrêt est alors établi. Quand cette instruction est rencontrée, XRAY stoppe lexécution du programme et afficher un écran STOP.
De la même manière vous pouvez désactiver un arrêt. Pour ce faire il faut taper un R (RESET) dans le numéro dinstruction et appuyer sur Entrée.
Notez quà nimporte quel point darrêt, toutes les fonctions de XRAY sont disponibles. Après chaque arrêt, le programmeur peut terminer le programme, produire un dump, continuer normalement lexécution, avancer pas à pas (STEP) instruction par instruction ou continuer lexécution à partir dun autre point dans le programme.
En plus des touches fonction PF, le programmeur a plusieurs champs disponibles pour contrôler le test.
Par exemple Chaque fois que le programme exécute linstruction numéro 2483 (Halt Offset => S1748), le contenu de H1-PAGE-CTR est comparé à la valeur 2. Si H1-PAGE-CTR est plus grand que 2, il y aura une halte.
Afficher et Modifier la zone mémoire dans votre programme en entrant simplement le nom du champ
La colonne la plus à gauche affiche ladresse relative du champ affiché.
La colonne la plus à droite donne ladresse de la mémoire virtuelle.
La donnée du milieu représente en hexadécimal et en caractères, la valeur du champ demandé.
Si le champ de commande contient PRINT-REC, alors laffichage montre ladresse et la valeur en mémoire de PRINTREC.
Ces valeurs peuvent être modifiées en saisissant une autre valeur sur une de ces deux représentations (hexadécimales ou décimales). Quand lexécution reprend, le traitement continue avec la nouvelle valeur.
Quand un programme est stoppé avant lexécution dune instruction, les valeurs des variables présentes dans linstruction sont affichées dans une fenêtre.
Points darrêt Etendus
Les points darrêt (halt) étendus sont similaires aux points darrêt standard. Mais en définissant les points darrêt étendus, lutilisateur peut spécifier que larrêt sera effectif quand toutes les conditions seront remplies.
Par exemple une halte pourrait être demandée à linstruction numéro 999 quand la zone WKTERM est égale à T05A. Il est possible de rendre le point darrêt encore plus sélectif en spécifiant également :
Le nombre de fois que cet arrêt sera honoré,
Combien de passages sur ce point de halte peuvent avoir lieu, quelle que soit la condition rencontrée avant que larrêt ne soit effectif,
Combien de passages peuvent avoir lieu sur ce point darrêt, quelle que soit la condition rencontrée entre les arrêts,
Pour exprimer une condition tout type dopérateur peut être utilisé : égal, différent, plus grand que, plus grand ou égal, plus petit, plus petit que ou égal.
Modification du déroulement du Programme
Si le programmeur décide de continuer lexécution du programme, lexécution peut reprendre à un autre point que le point du dernier arrêt du programme. Quand un programme se termine, le programmeur peut demander ou pas un dump.
Un ABEND programme stoppe lexécution du programme et met en évidence la ligne où sest produit lABEND.
Sans XRAY, vous auriez dû imprimer le Dump, trouver linstruction qui a causé lABEND en ajoutant un déplacement en Hexadécimal et en comparant le résultat avec la procédure division, puis calculer lendroit où se trouve le champ invalide, trouver ce champ dans le dump, puis corriger lerreur, recompiler le programme et enfin redémarrer le test.
Le fait dappuyer sur PF2 provoque laffichage dun écran dinformation relatif au programme testé: cet écran affiche le contenu des registres du programme à ce point darrêt particulier. Appuyer de nouveau sur PF2 permet au développeur de revenir à lorigine du point darrêt.
XRAY est également arrêté quand la fin du programme est demandée.
Environnements supportés
VSE :
Toutes les releases
OS/390, MVS z/OS : Toutes les releases
CICS: 1.7 -TS 1.1 (VSE) ou TS 1.3
Langages: COBOL, COBOL II, COBOL LE/370, PL/1, Assembleur.
Prix
XRAY n'est pas un produit onéreux. La plupart des produits de sa catégorie sont 3 à 5 fois plus chers. De plus, la mise à niveau de ces produits est souvent très coûteuse quand vous changez de version de système d'exploitation ou quand vous évoluez vers une CPU plus puissante.
XRAY est facile à installer et à utiliser. Alors, comme de
nombreux utilisateurs US et européens, profitez vous aussi des nombreux avantages que
procurent XRAY.
Informations
complémentaires