Chapter 21: COBOL Coding Standards and Best Practices -- Further Reading
Books
"Murach's Mainframe COBOL" by Mike Murach and Associates Murach's text is itself a model of COBOL coding standards. Every example program follows consistent naming conventions, structured paragraph organization, and clear documentation practices. The book explicitly discusses the rationale behind its coding style choices, making it both a teaching text and a practical standards reference. The treatment of top-down program design with hierarchical paragraph numbering is particularly well-demonstrated. Available from the Murach website and major technical booksellers.
"Structured Programming in COBOL" by Paul Noll This classic text focuses exclusively on applying structured programming principles to COBOL, with detailed guidance on eliminating GO TO statements, designing paragraph hierarchies, and using PERFORM as the primary control mechanism. The methodology presented is directly applicable to establishing or improving a shop's coding standards. The before-and-after refactoring examples are especially instructive. Search for this title through used technical bookstores or online archives.
"The Pragmatic Programmer" by David Thomas and Andrew Hunt While not COBOL-specific, this widely respected book on software craftsmanship covers principles that apply directly to COBOL development: meaningful naming, DRY (Don't Repeat Yourself), code readability, and the importance of consistent conventions within a team. COBOL programmers will find the discussions of naming, documentation, and maintainability directly transferable to their work. Available from Addison-Wesley and major booksellers.
Online Resources
IBM Enterprise COBOL Programming Guide -- Coding Your Program The official programming guide includes sections on recommended coding practices, structured programming techniques, and program organization that constitute IBM's de facto coding standard recommendations. The guidance on paragraph organization, data division layout, and PERFORM usage reflects decades of mainframe development experience. Find this in the IBM Documentation portal under the Enterprise COBOL Programming Guide.
GnuCOBOL Style Guide and Best Practices The GnuCOBOL community maintains documentation on coding standards adapted for open-source COBOL development. This guide addresses differences in coding practices between mainframe and Linux/Windows environments while maintaining the core principles of structured COBOL programming. Particularly useful for teams transitioning COBOL applications to open platforms. Available through the GnuCOBOL project documentation on SourceForge.
"COBOL Coding Standards" -- Various Enterprise Standards Documents Many large organizations have published summaries of their COBOL coding standards as part of modernization initiatives. These documents provide real-world examples of naming conventions, paragraph organization rules, and code review checklists that have been proven effective in production environments handling millions of transactions daily. Search for "COBOL coding standards" and "mainframe coding standards" on technical forums and enterprise computing communities.
IBM Documentation
IBM Redbook: "Batch Modernization on z/OS" This Redbook addresses coding standards in the context of modernizing legacy COBOL batch applications. It covers refactoring strategies for replacing unstructured GO TO logic with PERFORM-based control flow, standardizing data naming across program suites, and establishing consistent error-handling patterns. The case studies show the concrete benefits of applying modern coding standards to legacy code. Search for this title on the IBM Redbooks website.
IBM Redbook: "ABCs of z/OS System Programming, Volume 11" Volume 11 of this series covers application development practices on z/OS, including coding standards for COBOL, PL/I, and Assembler. The sections on COBOL address shop standards for source management, naming conventions that facilitate automated impact analysis, and testing practices that support reliable production deployments. Search for this title on the IBM Redbooks website.
Standards and Specifications
ISO/IEC 1989:2023 -- COBOL Standard The COBOL standard itself implicitly establishes certain best practices through its deprecated-feature lists and recommended usage patterns. Features marked as obsolete in the standard (such as ALTER, segmentation, and the debugging module in some forms) should be avoided in new code. Understanding what the standard deprecates helps teams make forward-looking decisions about coding practices. Available for purchase through ISO or national standards bodies.
"Measuring Maintainability of COBOL Systems" -- IEEE Software Engineering Conference Proceedings Academic research on COBOL maintainability has produced metrics and measurement frameworks for assessing the quality of COBOL code. Papers on this topic cover cyclomatic complexity in COBOL programs, naming quality metrics, and the correlation between coding standards compliance and defect rates. These proceedings provide evidence-based justification for investing in coding standards. Available through IEEE Xplore and university library databases.
SHARE Guide to COBOL Best Practices SHARE, the independent z/OS user group, has published guidelines on COBOL best practices that synthesize the collective experience of hundreds of mainframe development organizations. These guidelines cover naming conventions, structured programming patterns, performance-conscious coding, and change management practices that are widely adopted across the industry. Available through the SHARE association website.