Chapter 28: Further Reading - Batch Processing Patterns and Design

Books

"Mainframe COBOL: Batch and Online Programming" by Robert Grauer and Carol Vazquez Villar A practical textbook that covers batch processing patterns in the context of real mainframe COBOL applications. The chapters on sequential file update, control break processing, and table-driven batch design include complete program listings with line-by-line explanations. The exercises build progressively, culminating in multi-step batch job streams with error handling and restart logic.

"Design Patterns for Batch Processing" by Enterprise Integration Patterns (Hohpe and Woolf, selected chapters) While this book focuses primarily on messaging patterns, its treatment of batch processing architectures, idempotent operations, and transactional batch design is directly applicable to mainframe COBOL batch programs. The patterns for splitting, aggregating, and routing data through processing stages translate well to multi-step JCL job designs.

"MVS/ESA: System Programming Library -- Checkpoint/Restart" by IBM This specialized manual provides the complete technical specification for z/OS checkpoint/restart facilities. It covers the CHKPT macro, the RESTART parameter on the JOB statement, the SYSCHK DD statement, and deferred restart procedures. Essential reading for developers who write long-running batch programs that require checkpoint and recovery capabilities.

Online Resources

IBM Developer: Batch Modernization Framework IBM publishes resources describing how traditional batch processing patterns can be modernized using IBM's Batch Modernization framework, which enables COBOL batch programs to leverage parallel processing, modern scheduling, and container-based execution. These resources bridge the gap between classic batch design and contemporary infrastructure.

Micro Focus: Batch Processing Best Practices for COBOL Micro Focus provides documentation and white papers on batch processing patterns as implemented in their COBOL development environment. Their treatment of control break processing, sequential file handling, and batch testing strategies complements the IBM-centric perspective and is especially useful for developers working in distributed COBOL environments.

SHARE Conference: Batch Processing Optimization Sessions SHARE conference proceedings include presentations on batch window reduction, parallel batch execution strategies, and the integration of batch COBOL programs with modern scheduling systems like IBM Workload Automation. These sessions provide real-world case studies from organizations that have successfully optimized their batch processing infrastructure.

IBM Documentation

"z/OS DFSMS Checkpoint/Restart" (SA23-1377) The definitive IBM reference for checkpoint/restart facilities in z/OS. This manual covers automatic and deferred restart, checkpoint dataset management, and the interaction between checkpoint/restart and various access methods (QSAM, VSAM, BSAM). It includes detailed JCL examples and programming requirements for COBOL programs using these facilities.

"Enterprise COBOL for z/OS: Programming Guide -- Batch Processing" (SC27-8845) The batch processing chapters of the Enterprise COBOL Programming Guide cover COBOL-specific batch programming considerations, including STOP RUN versus GOBACK behavior, return code setting through the RETURN-CODE special register, and the interaction between COBOL runtime options and batch job execution.

"IBM Workload Automation: Scheduling and Dependency Management" IBM Workload Automation (formerly TWS/Tivoli Workload Scheduler) is the standard tool for scheduling and managing batch job streams in z/OS environments. Understanding its capabilities -- including time-based scheduling, event-driven triggering, resource-based throttling, and cross-platform dependencies -- is essential for COBOL developers who design batch processes that must fit within production scheduling frameworks.

Standards and Practices

"Batch Processing Architecture Standards" (Industry Best Practices) Industry guides from organizations such as the Open Mainframe Project document best practices for batch processing design, including standard return code values, error handling conventions, logging requirements, and restart/recovery procedures. These standards ensure consistency across development teams and simplify operations management.

"Transaction Processing: Concepts and Techniques" by Jim Gray and Andreas Reuter This seminal academic work provides the theoretical foundation for understanding batch transaction processing, including ACID properties as applied to batch updates, recovery algorithms, and the trade-offs between batch and online processing models. While not mainframe-specific, its concepts underpin every batch processing pattern covered in this chapter.