Skip to content

Conversation

oathar
Copy link
Contributor

@oathar oathar commented Aug 26, 2025

Proposed changes

This PR introduces a new lab for the COBOL Programming Course focused on debugging intentionally broken COBOL programs. The lab is designed to help learners strengthen their problem-solving and debugging skills by identifying, understanding, and fixing errors in COBOL code.

This addition aligns with the course’s goal of providing practical, hands-on learning experiences and will improve students' ability to work with real-world COBOL applications where debugging is an essential skill.

Fixes # (issue): NA

Summary of changes:

  1. Added interactive S322 lab under existing "S222/S322 - Time Out / Job Cancelled" section
  2. Created problem scenario using CBL0015.cobol with infinite loop (ALWAYS-TRUE = 'N' condition never met)
  3. Implemented guided learning approach with hints rather than direct solutions
  4. Added solution file CBLC2.cobol as fallback for struggling students
  5. Included JCL CBL0015J.jcl with TIME=(0,05) to demonstrate real timeout conditions
  6. Added visual documentation with screenshots showing ABEND occurrence and successful resolution

Motivation:

S322 timeout ABENDs are among the most common runtime errors students encounter, especially when learning loop constructs. The existing theoretical content explains the concept well, but students need hands-on practice to truly understand how infinite loops consume CPU time and trigger system timeouts. This lab bridges the gap between theory and practice.

📌 LAB: S322 Abend Lab.pdf

Type of change

What type of changes does your PR introduce to the COBOL Programming Course? Put an x in the boxes that apply.

  • Bug fix (change which fixes one or more issues)
  • New feature (change which adds functionality or features to the course)
  • Translations (change which adds or modifies translations of the course)
  • Documentation (change which modifies documentation related to the course)
  • This change requires an update to the course's z/OS environment

Checklist:

Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This checklist will be used as reference for both the contributor and the reviewer

  • I have read the Contributing Guideline
  • I have included a title and description for this PR
  • I have DCO-signed all of my commits that are included in this PR
  • I have tested it manually and there are no regressions found
  • I have commented my code, particularly in hard-to-understand areas (if appropriate)
  • I have made corresponding changes to the documentation (if appropriate)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant