La depuració és una part essencial del desenvolupament de programari, ja que permet identificar i corregir errors en el codi. En aquest tema, aprendrem les tècniques i eines per depurar programes COBOL de manera eficient.

Objectius

  • Comprendre la importància de la depuració.
  • Aprendre a utilitzar eines de depuració per a COBOL.
  • Identificar i corregir errors comuns en programes COBOL.

  1. Importància de la Depuració

La depuració és crucial per assegurar que el programa funcioni correctament i compleixi amb els requisits especificats. Els errors poden ser de diversos tipus, com ara errors de sintaxi, lògica o execució, i poden afectar el rendiment i la funcionalitat del programa.

  1. Eines de Depuració per a COBOL

Hi ha diverses eines disponibles per a la depuració de programes COBOL. Algunes de les més utilitzades són:

2.1. IBM Debug Tool

IBM Debug Tool és una eina poderosa per depurar aplicacions COBOL. Permet als desenvolupadors executar programes pas a pas, inspeccionar variables i modificar el codi en temps real.

2.2. Micro Focus COBOL Debugger

Micro Focus proporciona un depurador integrat en el seu entorn de desenvolupament. Aquest depurador permet als desenvolupadors establir punts de ruptura, seguir l'execució del programa i analitzar l'estat de les variables.

2.3. GDB (GNU Debugger)

GDB és una eina de depuració de codi obert que es pot utilitzar per depurar programes COBOL compilats amb el compilador GnuCOBOL. Tot i que no és específic per a COBOL, proporciona funcionalitats bàsiques de depuració.

  1. Tècniques de Depuració

3.1. Punts de Ruptura

Els punts de ruptura permeten aturar l'execució del programa en una línia específica de codi. Això permet als desenvolupadors inspeccionar l'estat del programa en aquest punt i determinar si el codi s'està executant com s'esperava.

MOVE 0 TO WS-COUNTER.
PERFORM UNTIL WS-COUNTER > 10
    ADD 1 TO WS-COUNTER
    DISPLAY 'Counter: ' WS-COUNTER
END-PERFORM.

En aquest exemple, podem establir un punt de ruptura a la línia ADD 1 TO WS-COUNTER per inspeccionar el valor de WS-COUNTER en cada iteració del bucle.

3.2. Seguiment Pas a Pas

El seguiment pas a pas permet executar el programa una línia a la vegada. Això és útil per entendre com es modifica l'estat del programa a cada pas i identificar on es produeixen errors.

3.3. Inspecció de Variables

La inspecció de variables permet veure els valors actuals de les variables en qualsevol punt de l'execució del programa. Això ajuda a verificar si les variables contenen els valors esperats.

3.4. Registres de Traça

Els registres de traça són missatges de depuració que es poden inserir en el codi per registrar informació sobre l'execució del programa. Aquests registres poden ajudar a identificar on es produeixen errors.

DISPLAY 'Inici del bucle'
PERFORM UNTIL WS-COUNTER > 10
    ADD 1 TO WS-COUNTER
    DISPLAY 'Counter: ' WS-COUNTER
END-PERFORM.
DISPLAY 'Fi del bucle'

  1. Errors Comuns i Solucions

4.1. Errors de Sintaxi

Els errors de sintaxi es produeixen quan el codi no compleix amb les regles del llenguatge COBOL. Aquests errors són fàcils de detectar, ja que el compilador els informarà durant la compilació.

4.2. Errors de Lògica

Els errors de lògica es produeixen quan el codi no fa el que s'esperava. Aquests errors són més difícils de detectar, ja que el programa pot compilar i executar-se sense problemes, però produir resultats incorrectes.

4.3. Errors d'Execució

Els errors d'execució es produeixen durant l'execució del programa i poden ser causats per problemes com ara divisió per zero o accés a fitxers inexistents.

Exercici Pràctic

Exercici 1: Depuració d'un Programa COBOL

  1. Escriu un programa COBOL que calculi la suma dels primers 10 números naturals.
  2. Introdueix un error de lògica en el codi (per exemple, utilitza SUBTRACT en lloc de ADD).
  3. Utilitza una eina de depuració per identificar i corregir l'error.

Solució

IDENTIFICATION DIVISION.
PROGRAM-ID. SumNumbers.

DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-COUNTER PIC 9(2) VALUE 0.
01 WS-SUM PIC 9(4) VALUE 0.

PROCEDURE DIVISION.
    PERFORM UNTIL WS-COUNTER > 10
        ADD 1 TO WS-COUNTER
        ADD WS-COUNTER TO WS-SUM
    END-PERFORM.

    DISPLAY 'La suma dels primers 10 números naturals és: ' WS-SUM.

    STOP RUN.

Passos de Depuració

  1. Estableix un punt de ruptura a la línia ADD 1 TO WS-COUNTER.
  2. Executa el programa fins al punt de ruptura.
  3. Inspecciona el valor de WS-COUNTER i WS-SUM per verificar si són correctes.
  4. Continua l'execució pas a pas fins a identificar l'error.
  5. Corregeix l'error substituint SUBTRACT per ADD.

Conclusió

La depuració és una habilitat essencial per a qualsevol programador COBOL. Utilitzant les tècniques i eines adequades, pots identificar i corregir errors de manera eficient, assegurant que el teu programa funcioni correctament. Practica aquestes tècniques regularment per millorar les teves habilitats de depuració.

© Copyright 2024. Tots els drets reservats