Master Mainframe Technologies - COBOL, JCL, DB2, VSAM, CICS & More
ABEND Codes SQLCODEs File Status Interview Prep Contact
💻 COBOL

COBOL Paragraph and Section Design

Beginner 🕑 10 min read 👁 0 views

COBOL Paragraph and Section Design

Well-structured paragraphs and sections improve maintainability.

Paragraphs

```cobol PROCESS-CUSTOMER. PERFORM VALIDATE-INPUT PERFORM CALCULATE-TOTAL PERFORM WRITE-OUTPUT. ```

Sections

```cobol MAIN SECTION. MAIN-PROCESS. ...

FILE-HANDLING SECTION. OPEN-FILES. ... CLOSE-FILES. ... ```

Naming Conventions

  • Use meaningful names
  • Verb-noun format (PROCESS-ORDER)
  • Consistent prefixes (1000-, 2000-)

Single Responsibility

Each paragraph should do one thing:

  • VALIDATE-DATE: Only validates dates
  • FORMAT-OUTPUT: Only formats output
  • WRITE-RECORD: Only writes records

Cohesion

Group related paragraphs in sections:

  • FILE-IO-SECTION
  • VALIDATION-SECTION
  • CALCULATION-SECTION

Size Guidelines

  • Keep paragraphs under 50 lines
  • One screen visible at a time
  • Extract common logic to shared paragraphs

Code Example

       IDENTIFICATION DIVISION.
       PROGRAM-ID. PARA-DEMO.
       PROCEDURE DIVISION.
       0000-MAIN-CONTROL.
           PERFORM 1000-INITIALIZE
           PERFORM 2000-PROCESS
           PERFORM 3000-TERMINATE
           STOP RUN.
           
       1000-INITIALIZE.
           PERFORM 1100-OPEN-FILES
           PERFORM 1200-INIT-VARS.
           
       1100-OPEN-FILES.
           DISPLAY 'Opening files...'.
           
       1200-INIT-VARS.
           DISPLAY 'Initializing variables...'.
           
       2000-PROCESS.
           DISPLAY 'Processing data...'.
           
       3000-TERMINATE.
           PERFORM 3100-CLOSE-FILES
           PERFORM 3200-DISPLAY-STATS.
           
       3100-CLOSE-FILES.
           DISPLAY 'Closing files...'.
           
       3200-DISPLAY-STATS.
           DISPLAY 'Displaying statistics...'.