Appendix H: Bibliography

This bibliography collects the most important references for intermediate and advanced COBOL development. Entries are organized by topic and annotated with brief descriptions of their relevance. Where applicable, edition numbers and IBM publication numbers are provided to help you locate the exact version.

Many IBM publications are available free of charge through the IBM Documentation portal (https://www.ibm.com/docs) and the IBM Redbooks site (https://www.redbooks.ibm.com). Print editions of some titles are available through IBM Press or third-party publishers.


COBOL Language References

IBM Corporation. Enterprise COBOL for z/OS: Language Reference, Version 6 Release 4. IBM Publication SC27-8713. IBM, 2022. The definitive reference for IBM Enterprise COBOL syntax, statements, and language rules. Essential companion to this textbook; every serious COBOL developer should have a copy (print or digital) within reach. Version 6.4 covers JSON GENERATE/PARSE, UTF-8 support, and other modern features.

IBM Corporation. Enterprise COBOL for z/OS: Programming Guide, Version 6 Release 4. IBM Publication SC27-8714. IBM, 2022. Complements the Language Reference with practical guidance on compiler options, file processing, DB2/CICS/IMS integration, debugging, and performance tuning. More task-oriented than the Language Reference.

ISO/IEC. ISO/IEC 1989:2023 — Information Technology — Programming Languages — COBOL. International Organization for Standardization, 2023. The international standard for COBOL. The 2023 revision incorporates modern features including object-oriented COBOL, XML/JSON support, and updated string handling. Useful for understanding portability across COBOL implementations.

Stern, Nancy, Robert A. Stern, and James P. Ley. Structured COBOL Programming. 10th ed. John Wiley & Sons, 2006. A classic introductory COBOL textbook used in university courses for decades. Covers COBOL 85 and COBOL 2002 fundamentals. While introductory, its treatment of structured programming principles remains valuable for understanding the philosophical foundations referenced in this textbook.

Stern, Nancy, Robert A. Stern, and James P. Ley. COBOL for the 21st Century. 11th ed. John Wiley & Sons, 2013. Updated edition of the classic Stern text, incorporating more modern COBOL features and contemporary examples. A solid bridge between introductory and intermediate COBOL study.

Brown, Gary DeWard. Advanced COBOL for Structured and Object-Oriented Programming. 3rd ed. John Wiley & Sons, 1999. One of the few textbooks to cover advanced COBOL topics including object-oriented COBOL, dynamic tables, and complex data manipulation. Though dated in some respects, its treatment of OO COBOL (Chapter 25 of this textbook draws on similar concepts) remains useful.

Newcomer, Lawrence R. IBM Mainframe COBOL: A Practical Approach. Independently published, 2020. A modern treatment focused specifically on IBM Enterprise COBOL in the z/OS environment. Covers compiler options, JCL integration, and practical mainframe development workflows.

Murach, Mike, and Anne Prince. Murach's Mainframe COBOL. 2nd ed. Mike Murach & Associates, 2021. A well-structured reference with a paired-pages format (concept on the left, example on the right). Strong coverage of VSAM, DB2, CICS, and modern COBOL features. Excellent desk reference for practicing developers.


Mainframe and z/OS

IBM Corporation. z/OS Concepts. IBM Publication SA23-2256. IBM, 2023. A high-level overview of z/OS architecture, including job management, data management, security, and system components. Recommended for developers who need to understand the environment in which their COBOL programs execute.

IBM Corporation. ABCs of z/OS System Programming. 13 volumes. IBM Redbooks. IBM, various dates. A comprehensive series covering z/OS internals, JES, VTAM, TCP/IP, security, storage management, and more. Volumes 1–3 are most relevant to application developers; later volumes address system programming.

IBM Corporation. z/Architecture Principles of Operation. IBM Publication SA22-7832. IBM, 2023. The definitive reference for the z/Architecture instruction set and hardware behavior. Rarely needed by COBOL application programmers, but invaluable when debugging data representation issues, understanding condition codes, or performing inter-language communication with assembler.

Barbier, Franck. z/OS: A Handbook for IT Professionals. IBM Redbooks, SG24-6366. IBM, 2021. A readable introduction to z/OS for professionals coming from distributed computing backgrounds. Covers the unique aspects of mainframe computing including batch processing, DASD management, and security concepts.

Ebbers, Mike, et al. Introduction to the New Mainframe: z/OS Basics. IBM Redbooks, SG24-6366. IBM, 2011. A classic introductory text for the mainframe platform. Covers TSO/ISPF, JCL, datasets, security, and the relationship between z/OS components. Referenced in Chapters 1 and 2 of this textbook.


JCL (Job Control Language)

IBM Corporation. z/OS MVS JCL Reference. IBM Publication SA23-1385. IBM, 2023. The complete reference for JCL statements, parameters, and syntax. Every JCL question you will ever have is answered somewhere in this manual. Companion to the JCL User's Guide.

IBM Corporation. z/OS MVS JCL User's Guide. IBM Publication SA23-1386. IBM, 2023. Task-oriented companion to the JCL Reference. Explains how to code common JCL patterns including multi-step jobs, procedures, GDGs, and conditional execution. More accessible than the Reference for learning purposes.

Brown, Gary DeWard. JCL: Job Control Language. 4th ed. John Wiley & Sons, 2002. An approachable treatment of JCL with abundant examples and clear explanations. Covers JCL fundamentals, procedures, utilities, and common patterns. A good supplement to the IBM manuals.


DB2 and SQL

IBM Corporation. Db2 12 for z/OS: SQL Reference. IBM Publication SC27-8855. IBM, 2022. The authoritative SQL syntax reference for DB2 on z/OS. Covers all SQL statements, functions, predicates, and expressions supported by DB2 12. Referenced extensively in Chapters 27 and 28.

IBM Corporation. Db2 12 for z/OS: Application Programming and SQL Guide. IBM Publication SC27-8845. IBM, 2022. Practical guidance for embedding SQL in COBOL (and other host languages). Covers host variables, indicator variables, cursor processing, dynamic SQL, stored procedures, and performance optimization. The primary DB2 reference for COBOL developers.

IBM Corporation. Db2 12 for z/OS: Performance Monitoring and Tuning Guide. IBM Publication SC27-8850. IBM, 2022. Covers DB2 performance topics including EXPLAIN, access path analysis, index design, and SQL tuning. Referenced in Chapter 36's discussion of database-related performance optimization.

Mullins, Craig S. DB2 Developer's Guide. 6th ed. IBM Press/Addison-Wesley, 2012. A comprehensive guide to DB2 for z/OS from a developer's perspective. Covers SQL coding, application design, performance tuning, and administration topics relevant to application developers. A valuable single-volume reference.

Date, C. J. An Introduction to Database Systems. 8th ed. Addison-Wesley, 2003. The foundational database theory textbook. While not COBOL-specific, it provides the relational model underpinnings needed to use DB2 effectively. Chapters on normalization, relational algebra, and SQL theory complement the practical DB2 coverage in this textbook.


CICS

IBM Corporation. CICS Transaction Server for z/OS: Application Programming Reference, Version 6.1. IBM Publication SC34-7398. IBM, 2022. The complete reference for CICS API commands available to application programs. Organized alphabetically by command, with syntax diagrams, option descriptions, and condition codes. The essential CICS desk reference.

IBM Corporation. CICS Transaction Server for z/OS: Application Programming Guide, Version 6.1. IBM Publication SC34-7399. IBM, 2022. Task-oriented guide to CICS application development covering BMS, program control, file control, temporary storage, transient data, interval control, and task control. Complements the Reference with design guidance and examples.

IBM Corporation. CICS Transaction Server for z/OS: CICS and Java. IBM Publication SC34-7403. IBM, 2022. Describes how Java and COBOL programs interact in a CICS environment, including Liberty JVM server, CICS bundles, and mixed-language transaction design. Relevant to Chapter 40's modernization discussions.

Horswill, Mark. Designing and Programming CICS Applications. O'Reilly Media, 2000. A practical guide to CICS application design with emphasis on pseudo-conversational programming, BMS map design, and error handling. Though the CICS version is dated, the design principles remain applicable.


IMS

IBM Corporation. IMS Version 15: Application Programming Guide. IBM Publication SC18-9698. IBM, 2021. The primary reference for IMS application programming, covering DL/I call formats, segment search arguments, database operations, and message processing. Referenced in Chapter 31.

IBM Corporation. IMS Version 15: Application Programming APIs. IBM Publication SC18-9699. IBM, 2021. Detailed API reference for IMS DL/I calls, including CBLTDLI and AIBTDLI interfaces, status codes, and feedback areas. Companion to the Application Programming Guide.

Meltz, Dean, Rick Long, Mark Harrington, Robert Hain, and Geoff Nicholls. An Introduction to IMS. IBM Press, 2005. An accessible introduction to IMS concepts, architecture, and programming. Covers both IMS/DB (database) and IMS/TM (transaction management). Useful background reading for Chapter 31.


Testing and Quality

IBM Corporation. IBM Developer for z/OS: Unit Testing with zUnit. IBM Documentation, 2023. Guide to using IBM's unit testing framework for COBOL and PL/I programs on z/OS. zUnit integrates with IBM Developer for z/OS (IDz) and supports test case creation, execution, and results analysis. Referenced in Chapter 34.

COBOL-Check Project. COBOL-Check: A Testing Framework for COBOL. Open source, GitHub repository, 2023. https://github.com/openmainframeproject/cobol-check An open-source unit testing framework for COBOL that embeds test code directly in COBOL source. Part of the Open Mainframe Project. Referenced in Chapter 34 as an alternative to IBM zUnit.

Myers, Glenford J., Corey Sandler, and Tom Badgett. The Art of Software Testing. 3rd ed. John Wiley & Sons, 2011. The classic software testing text. Not COBOL-specific, but its principles of test case design, boundary value analysis, and equivalence partitioning apply directly to COBOL testing strategies discussed in Chapters 33 and 34.

Martin, Robert C. Clean Code: A Handbook of Agile Software Craftsmanship. Prentice Hall, 2008. While all examples are in Java, the principles of naming, function design, error handling, and code organization translate well to COBOL. Referenced in Chapter 35's discussion of code review and coding standards.

Feathers, Michael C. Working Effectively with Legacy Code. Prentice Hall, 2004. The definitive guide to working with code that lacks tests. Its techniques for introducing testability into legacy systems (characterization tests, seam identification, dependency breaking) are directly applicable to COBOL codebases. Referenced in Chapters 34, 37, and 41.


Modernization and Migration

Gartner. Modernization of Legacy Applications: A Strategic Approach. Gartner Research, various years. Analyst reports providing frameworks for evaluating modernization options (retain, retire, rehost, replatform, refactor, replace). Referenced conceptually in Chapter 37's modernization decision frameworks.

IBM Corporation. Modernizing Applications on z/OS. IBM Redbooks, SG24-8547. IBM, 2022. Covers strategies and tools for modernizing z/OS-based applications, including API enablement, DevOps adoption, and cloud integration. Directly relevant to Chapters 37, 39, and 40.

IBM Corporation. z/OS Connect Enterprise Edition: Overview. IBM Documentation, 2023. Describes how z/OS Connect enables RESTful API access to COBOL programs, CICS transactions, and IMS transactions. Referenced in Chapter 39's discussion of real-time integration.

Fowler, Martin. "StranglerFigApplication." MartinFowler.com, June 29, 2004. https://martinfowler.com/bliki/StranglerFigApplication.html The original description of the Strangler Fig pattern for incremental legacy system replacement. Short but foundational; referenced in Chapter 37's modernization strategies.

Fowler, Martin. Refactoring: Improving the Design of Existing Code. 2nd ed. Addison-Wesley, 2018. The definitive guide to code refactoring. While examples are in JavaScript, the catalog of refactoring techniques (extract method, rename variable, replace conditional with polymorphism) applies to COBOL with adaptation. Referenced in Chapters 35 and 37.

Richards, Mark, and Neal Ford. Fundamentals of Software Architecture. O'Reilly Media, 2020. Covers architectural patterns including monolithic, layered, microservices, and event-driven architectures. Provides context for understanding the architectural choices involved in COBOL modernization (Chapter 40).

Newman, Sam. Monolith to Microservices: Evolutionary Patterns to Transform Your Monolith. O'Reilly Media, 2019. Practical strategies for decomposing monolithic systems. Its patterns for strangling, branch-by-abstraction, and parallel running are applicable to mainframe modernization projects discussed in Chapters 37, 40, and Appendix I.


History of Computing

Beyer, Kurt W. Grace Hopper and the Invention of the Information Age. MIT Press, 2009. A biography of Rear Admiral Grace Hopper, the pioneer of automatic programming whose work led directly to COBOL's creation. Provides essential historical context for Chapter 1's discussion of COBOL's origins.

Bemer, Robert W. "A View of the History of COBOL." Honeywell Computer Journal 5, no. 3 (1971): 130–141. A first-hand account of COBOL's creation by one of the participants in the CODASYL committee. Valuable primary source for understanding the design decisions that shaped COBOL.

Ben-Ari, Mordechai. Understanding Programming Languages. John Wiley & Sons, 1996. A comparative study of programming language design including COBOL. Helps contextualize COBOL's design choices (verbose syntax, data-centric organization, decimal arithmetic) within the broader landscape of programming language evolution.

Ceruzzi, Paul E. A History of Modern Computing. 2nd ed. MIT Press, 2003. A comprehensive history of computing from ENIAC through the Internet age. Places COBOL and the mainframe in the broader arc of computing history, providing context for Chapter 1 and Chapter 42's forward-looking perspectives.

Haigh, Thomas, Mark Priestley, and Crispin Rope. ENIAC in Action: Making and Remaking the Modern Computer. MIT Press, 2016. While focused on ENIAC, this work illuminates the transition from hardware programming to stored programs to high-level languages — the trajectory that made COBOL necessary and possible.

CODASYL (Conference on Data Systems Languages). COBOL — Report to Conference on Data Systems Languages Including Initial Specifications for a Common Business Oriented Language. U.S. Government Printing Office, April 1960. The original COBOL specification. A historically significant document that reveals the practical, committee-driven origins of the language. Available through various archives and the Computer History Museum.


Online Resources

IBM Z Xplore. https://www.ibm.com/it-infrastructure/z/education/zxplore IBM's free, hands-on learning platform for z/OS, COBOL, JCL, DB2, and other mainframe technologies. Provides access to a real z/OS system for practice. Highly recommended for students working through this textbook without mainframe access.

GnuCOBOL Documentation. https://gnucobol.sourceforge.io/ Documentation for the GnuCOBOL open-source compiler, including the Programmer's Guide and FAQ. Essential reference for readers using GnuCOBOL as their development environment (Chapter 2).

Open Mainframe Project. https://www.openmainframeproject.org/ A Linux Foundation project that hosts open-source initiatives for mainframe computing, including COBOL-related projects like COBOL-Check, COBOL Programming Course, and Zowe. A hub for the modernization community.

Zowe. https://www.zowe.org/ An open-source framework for z/OS that provides modern interfaces (REST APIs, CLI, VS Code extension) for interacting with mainframe resources. Referenced in Chapter 40's discussion of modern development tools for z/OS.

IBM COBOL Cafe. https://community.ibm.com/community/user/ibmz-and-linuxone/groups/topic-home?CommunityKey=cobol IBM's community forum for COBOL developers. A place to ask questions, share knowledge, and connect with other COBOL professionals. Active community with IBM staff participation.

Enterprise COBOL for z/OS Documentation Library. https://www.ibm.com/docs/en/cobol-zos The complete Enterprise COBOL documentation set including the Language Reference, Programming Guide, Migration Guide, and Performance Tuning Guide. The authoritative online source for IBM COBOL documentation.

Stack Overflow — COBOL Tag. https://stackoverflow.com/questions/tagged/cobol Community Q&A for COBOL programming questions. Quality varies, but many questions have authoritative answers from experienced mainframe professionals.

IBM Redbooks. https://www.redbooks.ibm.com/ IBM's technical library of detailed guides, best practices, and solution architectures. Searchable by topic. Many of the IBM references in this bibliography are available free as Redbooks PDFs.

COBOL Standard Committee (J4/INCITS PL22.4). https://www.incits.org/ The committee responsible for the COBOL standard in the United States. Provides access to standards documents and committee work items for those interested in the language's ongoing evolution.


Career and Industry

Deloitte and the Smithsonian Institution. Framing the Future of COBOL in the Federal Government. Deloitte Insights, 2020. A report examining COBOL's role in U.S. federal government systems, workforce challenges, and modernization strategies. Catalyzed by the COVID-19 unemployment system failures that exposed COBOL workforce shortages.

Micro Focus. State of COBOL Survey. Micro Focus International, 2022. Industry survey of COBOL usage, developer demographics, and modernization trends. Reports that 70% of organizations consider COBOL strategic, and that the average COBOL codebase is growing, not shrinking. Referenced in Chapter 1.

Dice. Tech Salary Report. Dice Holdings, annual. Annual survey of technology salaries including mainframe and COBOL-related positions. Consistently shows COBOL developers earning above-average salaries, particularly those with DB2, CICS, and z/OS skills. Referenced in Chapter 1's career discussion.

Bureau of Labor Statistics. Occupational Outlook Handbook: Software Developers, Quality Assurance Analysts, and Testers. U.S. Department of Labor, updated annually. https://www.bls.gov/ooh/computer-and-information-technology/software-developers.htm Provides labor market context for software development careers. While not COBOL-specific, the data on job growth, median salaries, and education requirements contextualizes the mainframe career path discussed in Chapters 1 and 42.

Kappelman, Leon, et al. "The 2023 SIM IT Issues and Trends Study." MIS Quarterly Executive 22, no. 1 (2023): Article 4. Annual survey of top IT issues facing organizations. Legacy system modernization consistently ranks in the top 10, underscoring the career relevance of COBOL modernization skills discussed in Chapters 37 and 42.

Reuters. "Pandemic Exposes America's Crumbling Unemployment Systems." Reuters, April 8, 2020. News coverage of the 2020 unemployment system crisis that brought COBOL workforce shortages to mainstream attention. Useful primary source for Chapter 1's discussion of COBOL in public consciousness.

Thibodeau, Patrick. "The Inevitability of COBOL." TechTarget / SearchITOperations, various articles, 2019–2023. A series of articles examining COBOL's persistence, modernization challenges, and workforce dynamics. Provides journalistic context for the industry trends discussed throughout this textbook.


The resources listed above represent a starting point. The IBM Documentation portal alone contains thousands of pages relevant to COBOL development on z/OS. For the most current versions of IBM publications, always check https://www.ibm.com/docs, as publication numbers and content are updated with each product release.