Appendix H: Annotated Bibliography

Overview

This bibliography lists books, manuals, online resources, and reference materials that support and extend the topics covered in this textbook. Entries are organized by category and include annotations describing the scope, audience, and relevance of each work. Publication dates reflect the most recent editions available at the time of writing.


1. COBOL Language References and Standards

ISO/IEC 1989:2014. Information Technology -- Programming Languages, Their Environments and System Software Interfaces -- Programming Language COBOL. International Organization for Standardization, 2014. The current ISO COBOL standard. This is the definitive, normative reference for the COBOL language including all features through the 2014 revision: JSON/XML processing, dynamic tables, and OO extensions. Essential as an authoritative reference but dense and formal; not suitable as a learning text. Available for purchase from ISO or national standards bodies.

IBM Corporation. Enterprise COBOL for z/OS: Language Reference, Version 6 Release 4. IBM, 2023. (SC27-1408) The definitive language reference for IBM Enterprise COBOL, the compiler used on nearly all production z/OS mainframes. Covers all IBM-specific extensions beyond the ISO standard, including COMP-5, XML/JSON statements, and Java interoperability. The primary reference for any developer writing COBOL on IBM mainframes. Available free at the IBM Documentation website.

IBM Corporation. Enterprise COBOL for z/OS: Programming Guide, Version 6 Release 4. IBM, 2023. (SC27-1412) The companion to the Language Reference, providing practical guidance on writing, compiling, and debugging COBOL programs on z/OS. Covers compiler options, interlanguage communication, performance tuning, and migration from older COBOL standards. More accessible than the Language Reference for day-to-day development questions. Available free at the IBM Documentation website.

IBM Corporation. Enterprise COBOL for z/OS: Migration Guide, Version 6 Release 4. IBM, 2023. (GC27-1413) Guides migration from older IBM COBOL compilers (VS COBOL II, COBOL for OS/390, Enterprise COBOL V3/V4/V5) to the current version. Invaluable for modernization projects that involve recompiling legacy programs. Documents incompatibilities, deprecated features, and required code changes. Available free at the IBM Documentation website.

GnuCOBOL Project. GnuCOBOL Programmer's Guide. 2023. The primary documentation for GnuCOBOL, the open-source COBOL compiler used throughout this textbook. Covers installation, compiler options, language features, and differences from IBM Enterprise COBOL. Essential for readers following the textbook exercises on Windows, macOS, or Linux. Available free at the GnuCOBOL project website (sourceforge.net/projects/gnucobol/).

Cutler, Gary. GnuCOBOL Quick Reference. GnuCOBOL Project, 2023. A concise reference card for GnuCOBOL syntax, compiler options, and runtime configuration. Useful as a desk reference when writing programs. Complements the full Programmer's Guide with a more compact format. Available free at the GnuCOBOL project website.

Shneiderman, Ben and Plaisant, Catherine. "The History of COBOL" in History of Programming Languages. ACM, 1981/2021. An academic treatment of COBOL's origins, the CODASYL committee process, and the language's evolution through successive standards. Provides historical context that deepens understanding of why COBOL's features are designed the way they are. The original 1981 paper has been supplemented by more recent historical analyses.


2. COBOL Textbooks and Tutorials

Stern, Nancy, Stern, Robert A., and Ley, James P. Structured COBOL Programming. John Wiley & Sons, 11th edition, 2012. A classic COBOL textbook that has been used in university courses for decades. Covers COBOL-85 thoroughly with a structured programming emphasis. Strong on file handling, report writing, and table processing. The earlier editions reflect older COBOL practice but remain useful for understanding the vast body of production COBOL code written using these patterns.

Murach, Mike and Menendez, Ben. Murach's Mainframe COBOL. Murach & Associates, 2nd edition, 2020. A practical, industry-oriented COBOL textbook focused on IBM Enterprise COBOL on z/OS. Covers structured COBOL programming, VSAM, DB2, and CICS with a clear, example-driven approach. The "paired pages" format (concept on the left, example on the right) is effective for visual learners. Highly recommended as a supplement to this textbook, especially for readers targeting IBM mainframe careers.

Newcomer, Laurence. IBM Mainframe COBOL: A Complete Course. CreateSpace Independent Publishing, 2015. A comprehensive tutorial covering COBOL programming in the IBM mainframe environment, including JCL, VSAM, DB2, and CICS. Written for self-study with exercises and projects. Covers practical topics that academic textbooks sometimes skip, such as ABEND debugging and production support procedures.

Brown, Gary DeWard. Advanced COBOL for Structured and Object-Oriented Programming. John Wiley & Sons, 3rd edition, 1999. Despite its age, this book remains one of the few thorough treatments of OO COBOL features introduced in the COBOL 2002 draft standard. Covers class definition, method implementation, inheritance, and polymorphism in COBOL. Useful as a supplement to Chapter 37 of this textbook, though some syntax details have changed in the final 2002 standard.

Coughlan, Michael. Beginning COBOL for Programmers. Apress, 2014. A modern introductory COBOL text aimed at experienced programmers learning COBOL for the first time. Covers COBOL 2002/2014 features including free-format source, intrinsic functions, and OO capabilities. Good for readers who want a second perspective on the topics covered in Parts I and II of this textbook.

Ashley, Ruth and Fernandez, Judi N. Job Control Language: A Step-by-Step Tutorial Using z/OS. John Wiley & Sons, 5th edition, 2002. While focused on JCL rather than COBOL, this book is an essential companion for COBOL developers working on z/OS. Covers JOB, EXEC, and DD statements, procedures, GDGs, VSAM definitions, and utility programs in a tutorial format with exercises. Recommended for readers who need deeper JCL knowledge than Chapter 27 provides.


3. Mainframe References

Ebbers, Mike et al. Introduction to the New Mainframe: z/OS Basics. IBM Redbooks, SG24-6366, 2019. IBM's own introduction to the z/OS mainframe environment. Covers z/OS architecture, datasets, JCL, TSO/ISPF, batch processing, security (RACF), and workload management. Written for newcomers to the mainframe platform. Free download from the IBM Redbooks website (redbooks.ibm.com). Essential reading for anyone entering the mainframe workforce.

Ebbers, Mike et al. ABCs of z/OS System Programming, Volumes 1-13. IBM Redbooks, various numbers, 2018-2022. A comprehensive multi-volume series covering z/OS system programming in depth: IPL and system initialization, allocation and catalog management, DFSMS storage management, JES2/JES3, RACF security, TCP/IP networking, and more. Reference-level material for developers who need to understand the platform beyond application programming.

IBM Corporation. z/OS MVS JCL Reference. IBM, 2023. (SA23-1385) The definitive JCL reference for z/OS. Every JCL statement, parameter, and option is documented with syntax diagrams and examples. The authoritative source for resolving JCL questions beyond what textbooks cover. Available free at the IBM Documentation website.

IBM Corporation. z/OS MVS System Messages, Volumes 1-10. IBM, 2023. (SA38-0668 through SA38-0677) The complete reference for z/OS system messages, including those produced by COBOL runtime errors, JCL processing, dataset management, and utility programs. Essential for diagnosing job failures and ABEND conditions. Available free at the IBM Documentation website.

IBM Corporation. z/OS DFSMS Access Method Services for Catalogs. IBM, 2023. (SC23-6853) The reference manual for IDCAMS, the utility program used to define, alter, and manage VSAM datasets. Essential for Chapter 11 (indexed files) and any VSAM-related development work. Covers DEFINE CLUSTER, REPRO, PRINT, ALTER, DELETE, and all other AMS commands.

Müller, Frank-Martin. IBM z/OS V2R5 Communications Server TCP/IP Implementation. IBM Redbooks, various, 2021. Covers TCP/IP networking on z/OS, relevant to developers working on API integration, web services, and modern COBOL connectivity topics covered in Chapter 38. Available free from the IBM Redbooks website.


4. DB2 References

Mullins, Craig S. DB2 Developer's Guide: A Solutions-Oriented Approach to Learning the Foundation and Capabilities of DB2 for z/OS. IBM Press, 6th edition, 2012. The most widely recommended book on DB2 for z/OS application development. Covers SQL, embedded SQL in COBOL, DB2 utilities, performance tuning, and database design. Extensive treatment of COBOL-DB2 programming patterns used in Chapters 22-23 of this textbook. A valuable reference throughout a mainframe development career.

IBM Corporation. DB2 12 for z/OS: SQL Reference. IBM, 2023. (SC27-8855) The definitive SQL reference for DB2 on z/OS. Every SQL statement, function, predicate, and expression is documented with syntax and examples. The authoritative reference for embedded SQL questions. Available free at the IBM Documentation website.

IBM Corporation. DB2 12 for z/OS: Application Programming and SQL Guide. IBM, 2023. (SC27-8845) Covers the application programming interface for DB2 on z/OS, including embedded SQL in COBOL, cursor processing, stored procedures, user-defined functions, and application design best practices. The primary IBM resource for COBOL-DB2 development. Available free at the IBM Documentation website.

Lawson, Susan. DB2 for z/OS: DBA Performance and Tuning. MC Press, 2020. Focused on DB2 performance tuning from the DBA perspective, but includes material valuable to COBOL developers: understanding access paths, interpreting EXPLAIN output, and writing efficient SQL. Relevant to the performance optimization topics in Chapter 32.


5. CICS References

Horswill, Matthew. Designing and Programming CICS Applications. O'Reilly Media, 2000. Despite its age, this remains one of the most readable introductions to CICS application design. Covers the CICS programming model, BMS maps, pseudo-conversational design, COMMAREA management, and error handling. The concepts have not changed significantly, making this book still useful for Chapters 24-25.

IBM Corporation. CICS Transaction Server for z/OS: Application Programming Reference, Version 6.1. IBM, 2023. (SC34-7684) The definitive reference for CICS application programming commands (EXEC CICS). Every CICS command is documented with syntax, options, and exception conditions. The primary reference for CICS development. Available free at the IBM Documentation website.

IBM Corporation. CICS Transaction Server for z/OS: Application Programming Guide, Version 6.1. IBM, 2023. (SC34-7683) Covers CICS programming concepts and techniques in depth: program control, data handling, BMS, temporary storage, transient data, web services, security, and recovery. The companion to the Reference manual, providing conceptual explanations and examples. Available free at the IBM Documentation website.

IBM Corporation. CICS Transaction Server for z/OS: Web Services Guide, Version 6.1. IBM, 2023. Covers CICS web services (SOAP and REST), service provider and requester configurations, and JSON/XML processing. Directly relevant to the API integration topics in Chapter 38. Reflects the current CICS capabilities for exposing COBOL programs as web services.


6. Financial and Industry References

Hull, John C. Options, Futures, and Other Derivatives. Pearson, 11th edition, 2021. The standard graduate-level text on financial derivatives. While not COBOL-specific, it provides the mathematical foundations for the financial calculations implemented in Part VII. Chapters on interest rates, day-count conventions, and present value are particularly relevant to Chapter 33.

Fabozzi, Frank J. Bond Markets, Analysis, and Strategies. Pearson, 10th edition, 2021. Comprehensive coverage of fixed-income securities, including bond pricing, yield calculations, duration, convexity, and mortgage-backed securities. Relevant to the banking and financial calculation topics in Chapters 33-34. Provides the business context that helps COBOL developers understand the calculations they implement.

Kieso, Donald E., Weygandt, Jerry J., and Warfield, Terry D. Intermediate Accounting. John Wiley & Sons, 18th edition, 2023. The standard accounting textbook used in university programs. Covers the double-entry bookkeeping system, journal entries, general ledger structure, financial statement preparation, and GAAP requirements that underpin the accounting systems in Chapter 36. Essential background for COBOL developers working on general ledger systems.

Federal Financial Institutions Examination Council. Bank Secrecy Act / Anti-Money Laundering Examination Manual. FFIEC, updated regularly. Covers regulatory requirements for banking systems, including transaction monitoring, reporting requirements, and compliance programs. Provides context for the regulatory reporting systems discussed in Chapter 34. Available free at the FFIEC website (ffiec.gov).


7. Modernization References

Khadka, Ravi et al. "How Do Professionals Perceive Legacy Systems and Software Modernization?" in Proceedings of the 36th International Conference on Software Engineering. ACM, 2014. An academic study of how IT professionals perceive legacy systems and modernization strategies. Provides empirical data on the challenges and approaches discussed in Chapter 39, including the finding that rewrite projects carry significantly higher risk than wrapping or refactoring strategies.

Brodie, Michael L. and Stonebraker, Michael. Migrating Legacy Systems: Gateways, Interfaces, and the Incremental Approach. Morgan Kaufmann, 1995. Although published in 1995, this book's incremental modernization methodology remains highly relevant. The "chicken little" approach it describes -- modernize incrementally rather than in a big bang -- aligns with the strangler fig pattern discussed in Chapter 39. A foundational text for understanding why gradual modernization succeeds where wholesale replacement fails.

Comella-Dorda, Santiago et al. "A Survey of Software Modernization Approaches" in Software Engineering Institute Technical Report. Carnegie Mellon University, CMU/SEI-2000-TN-003, 2000. A systematic survey of modernization approaches: wrapping, reengineering, migration, and replacement. Provides a classification framework that helps practitioners evaluate options for their specific context. Relevant to the modernization strategy discussions in Chapter 39.

IBM Corporation. IBM Application Discovery and Delivery Intelligence. IBM, 2023. Documentation for IBM's code analysis and modernization toolset that discovers application dependencies, analyzes COBOL code structure, and supports modernization planning. Relevant to the legacy analysis techniques discussed in Chapter 39. Available at the IBM Documentation website.

IBM Corporation. Wazi Developer and Wazi Code: Modernizing the COBOL Development Experience. IBM Redbooks, 2022. Covers IBM's modern COBOL development tools that run on developer workstations with VS Code, providing syntax highlighting, debugging, and integration with z/OS backend systems. Directly relevant to the DevOps topics in Chapter 40.


8. Online Resources

IBM Z Xplore (formerly Master the Mainframe). https://www.ibm.com/it-infrastructure/z/education/zxplore IBM's free hands-on learning platform providing access to a real z/OS mainframe environment. Participants work through challenges covering TSO/ISPF, JCL, COBOL, DB2, and other mainframe technologies. Recommended in Chapter 2 as a supplement to GnuCOBOL exercises for gaining real mainframe experience.

IBM Documentation. https://www.ibm.com/docs/en The centralized location for all IBM product documentation, including Enterprise COBOL, DB2, CICS, z/OS, and modernization tools. Free access to current and historical versions of all manuals referenced in this bibliography. Bookmark this as your primary reference for IBM mainframe technologies.

GnuCOBOL Project. https://gnucobol.sourceforge.io/ The home page for the GnuCOBOL open-source compiler. Provides downloads, documentation, FAQ, and links to the developer community. The primary resource for GnuCOBOL installation and configuration topics covered in Appendix L.

IBM Redbooks. https://www.redbooks.ibm.com/ IBM's technical publication platform providing in-depth guides on IBM technologies. Redbooks are written by IBM specialists and practitioners, and cover topics from introductory overviews to advanced implementation guides. All publications are available free in PDF format.

COBOL Programming Course. https://github.com/openmainframeproject/cobol-programming-course An open-source COBOL course maintained by the Open Mainframe Project under the Linux Foundation. Provides a structured learning path with exercises. A useful supplement to this textbook, particularly for readers who benefit from multiple perspectives on the same topics.

Stack Overflow -- COBOL Tag. https://stackoverflow.com/questions/tagged/cobol The COBOL tag on Stack Overflow contains thousands of answered questions on COBOL programming, compilation issues, runtime errors, and platform-specific problems. While the quality varies, the best answers provide practical solutions to real-world COBOL development challenges.

IBM COBOL Cafe. https://community.ibm.com/community/user/ibmz-and-linuxone/groups/topic-home?CommunityKey=cobol IBM's community forum for COBOL developers. Features discussions, announcements, technical articles, and direct access to IBM COBOL product team members. A valuable resource for staying current with IBM Enterprise COBOL developments.

SHARE Inc. https://www.share.org/ The IBM mainframe user group, founded in 1955 and still active. SHARE conferences and publications provide access to the mainframe professional community, technical sessions, and industry trends. Membership provides networking opportunities with experienced mainframe professionals.