Chapter 20: Debugging Techniques and Tools -- Further Reading

Books

"Debugging Mainframe COBOL" by Robert C. Cain This focused text covers the full lifecycle of COBOL debugging from reading compiler diagnostics through analyzing dump output and using interactive debuggers. The treatment of S0C7 data exceptions is especially detailed, with a systematic methodology for tracing invalid packed-decimal data back to its source. The book includes real abend scenarios with step-by-step diagnosis walkthroughs. Search for this title through technical publishers and university bookstores.

"Murach's Mainframe COBOL" by Mike Murach and Associates Murach's practical approach to debugging emphasizes the compiler listing as the programmer's primary diagnostic tool. The book walks through reading cross-reference listings, data division maps, and condensed verb listings with annotated examples that show exactly how to match an abend offset to a source statement. The troubleshooting appendix catalogs common abend codes with their causes and solutions. Available from the Murach website and major technical booksellers.

"MVS JCL and Utilities" by Michael Trotter While not a COBOL book per se, Trotter's JCL reference is essential for debugging batch COBOL programs on z/OS. Understanding how to read job output, interpret system messages, configure SYSUDUMP and SYSABEND DD statements, and control region sizes directly impacts a programmer's ability to diagnose and resolve abends. Available through major technical booksellers.

Online Resources

IBM Enterprise COBOL Programming Guide -- Debugging Chapter The official programming guide includes a comprehensive chapter on debugging that covers compiler options for debugging (TEST, SSRANGE, LIST, MAP, XREF, OFFSET), DISPLAY debugging, and the USE FOR DEBUGGING declarative. It also documents how to read the compiler listing sections relevant to diagnosis. Find this in the IBM Documentation portal under the Enterprise COBOL Programming Guide.

IBM z/OS Debugger User's Guide The complete documentation for IBM's interactive COBOL debugger, covering breakpoint management, variable inspection and modification, step-by-step execution, and conditional breakpoints. The guide includes tutorials for both the ISPF interface and the Eclipse-based IBM Developer for z/OS interface. Search for "z/OS Debugger" on the IBM Documentation website.

GnuCOBOL FAQ -- Debugging Section The GnuCOBOL FAQ provides practical guidance on debugging COBOL programs compiled with GnuCOBOL, including compiler flags for debug output (-debug, -ftrace, -ftraceall), using GDB with COBOL programs, and interpreting runtime error messages. The FAQ also covers how GnuCOBOL's debugging features map to IBM Enterprise COBOL equivalents. Available through the GnuCOBOL project on SourceForge.

IBM Documentation

IBM Redbook: "Application Debugging on z/OS" This Redbook provides an end-to-end treatment of debugging applications on z/OS, including COBOL, PL/I, and Assembler programs. The chapters on COBOL cover Language Environment condition handling, abend interception, dump analysis with IPCS, and the integration of z/OS Debugger with CICS and DB2. The real-world scenarios make this one of the most practical debugging references available. Search for this title on the IBM Redbooks website.

IBM Language Environment Debugging Guide Language Environment is the runtime foundation for Enterprise COBOL, and understanding LE condition handling, storage management, and runtime options (such as TRAP, STORAGE, and CHECK) is essential for diagnosing COBOL abends. This guide explains how LE intercepts program checks, formats condition information, and produces formatted dumps. Available on the IBM Documentation website under Language Environment publications.

IBM Enterprise COBOL Compiler Listing Reference This section of the Enterprise COBOL documentation explains every component of the compiler listing, including the source listing, cross-reference, data division map, verb cross-reference, and the condensed verb listing used for offset-based diagnosis. Understanding the listing format is a prerequisite for effective abend analysis. Found within the Enterprise COBOL Programming Guide on the IBM Documentation portal.

Standards and Specifications

ISO/IEC 1989:2023 -- COBOL Standard, Debugging Module The COBOL standard defines the USE FOR DEBUGGING declarative, the DEBUG-ITEM special register, and the WITH DEBUGGING MODE clause. Understanding the standard specification helps clarify which debugging features are portable across compilers and which are implementation-specific extensions. Available for purchase through ISO or national standards bodies.

"Systematic Debugging of COBOL Programs" -- SHARE Conference Proceedings SHARE conferences have featured numerous sessions on COBOL debugging methodologies, from structured diagnostic approaches to advanced dump analysis techniques. Presentations from experienced systems programmers often include tips and techniques not found in vendor documentation. SHARE proceedings are available through the SHARE association website.