Cover....1
Copyright....6
Table of Contents....7
Foreword....15
Preface....17
What’s Covered....17
Who Is This Book For?....18
The Approach to This Book....18
Conventions Used in This Book....19
Using Code Examples....19
O’Reilly Online Learning....20
How to Contact Us....20
Acknowledgments....21
Part I. Fundamentals of the Mainframe....23
Chapter 1. Why Be a Mainframe Developer?....25
Fear of Disruption....26
Software Is Eating the World....27
COVID-19....29
Government Modernization....30
Future of Mainframe Development....31
Career Opportunities....32
Conclusion....33
Chapter 2. World of the Mainframe....35
What Does “Mainframe” Mean Anyway?....36
A Brief History....36
What Are Punch Cards?....37
Growth of the Mainframe....37
Mainframe Innovation....40
The Terminal....40
Mainframe Challenges....41
Why Have a Mainframe?....42
The OS....43
z/VSE....44
z/TPF....45
z/VM....45
Linux....45
KVM....46
Processor Architecture....46
LPAR....46
Disks....47
Batch and Online Transaction Processing....48
Mainframe Trends....49
The Mainframe “Shop”....49
Conclusion....50
Chapter 3. The Development Environment....51
Accessing a Mainframe....51
TSO....54
ISPF....54
Datasets....56
Main Types of Datasets....57
Sequential File....57
Partitioned Dataset....57
Virtual Storage Access Method....58
Catalogs....59
ISPF and Datasets....60
Creating a File with ISPF....62
System Display and Search Facility....66
Job Control Language....68
Unix System Services....70
Mainframe Tools....70
Modern IDEs....71
IBM Developer for z/OS....71
BMC Compuware Topaz Workbench....72
Che4z....72
Visual Studio Code....73
Standardizing on Visual Studio....78
Simple IDEs....79
Web-Based Editors....79
Development Process....80
Conclusion....81
Chapter 4. The COBOL Language....83
COBOL’s Background, in Brief....83
COBOL Versions....84
Why Use COBOL?....85
COBOL Program Structure: Columns....86
COBOL Program Structure: Divisions....87
IDENTIFICATION DIVISION....88
ENVIRONMENT DIVISION....88
DATA DIVISION....89
PROCEDURE DIVISION....95
Conclusion....110
Chapter 5. File Handling....111
Records and Files....111
Sequential File....112
File Errors....116
WRITE to a File....117
JCL for File-Handling Programs....118
Inventory Update Program....120
File with Multiple Records....124
Variable-Length Records....126
Indexed Files....128
Updating an Indexed File....130
VSAM Files....132
Conclusion....135
Chapter 6. COBOL Tables and Reports....137
Introduction to Tables....137
Tables and Reading Files....140
Multilevel Tables....142
Indexes....146
Searching a Table....146
Binary Search....150
Reports....151
The PROCEDURE DIVISION for Reports....154
Testing a Report....154
Reporting Tools....155
Working with Characters and Strings....156
STRING....158
UNSTRING....159
INSPECT....161
Conclusion....162
Chapter 7. Other Languages and Programming Techniques....163
What Language to Use?....163
Assembler Language....164
Memory....165
Registers....167
Base Displacement Addressing....168
Sample Assembler Language Code....169
Java....169
C and C++....170
PL/I....171
CLIST and REXX....172
REXX Variables....173
REXX Comparisons....174
Control Structures....175
Calling Functions....177
Arrays....179
Object-Oriented COBOL....180
Programming Techniques....180
Copy Member....181
Subprograms....182
Conclusion....183
Chapter 8. Databases and Transaction Managers....185
Information Management System....185
IMS Database Manager....187
IMS Transaction Manager....189
IMS Services and Tools....190
IMS Programming Language....192
Db2 and the Relational Database....195
Benefits of Relational Databases....197
Using Db2....198
Structured Query Language....200
Joins....202
Database Administrator....203
Application Development with Db2....204
Db2 Ecosystem....206
Customer Information Control System....207
Working with the CICS Platform....208
Programming in CICS....209
Conclusion....211
Part II. Modern Topics....213
Chapter 9. DevOps....215
Advantages of DevOps....215
Waterfall Method Model....217
Agile Method....218
Scrum....220
Kanban....221
Lean....223
Agile: It’s Not All About Speed....224
Mainframes and the Challenges for DevOps....225
DevOps Best Practices....226
Configuration Management....227
Issues with DevOps....229
Metrics....230
Mainframe DevOps Tooling....230
Automation....231
CI/CD....232
Zowe....235
BMC Jenkins Plug-ins....237
Zigi....241
Conclusion....244
Chapter 10. Artificial Intelligence....245
What Is AI?....246
Why Use AI?....247
Downsides of AI....248
Machine Learning....250
Binary Classification....251
Multiclass Classification....252
Multilabel Classification....252
Imbalanced Classification....252
Types of Machine Learning....252
Supervised Learning....253
Unsupervised Learning....253
Reinforcement Learning....254
Deep Learning....255
Data....256
Big Data....257
Data Management....258
Log Data....260
Data Wrangling....261
The AI Process....263
Accuracy....265
An AI Demo....266
AI on Z....269
AIOps....270
Conclusion....271
Chapter 11. Robotic Process Automation, and Low-Code and No-Code Systems....273
What Is RPA?....274
The Disadvantages of RPA....276
Macros, Scripts, and APIs....276
Types of RPA....277
Process Methodologies....278
RPA Roles....279
Evaluating RPA Software....280
Process Mining....281
How to Create a Bot....283
Creating a UiPath Bot....283
Creating a Bot for the Mainframe....288
RPA Issues with Mainframes....290
Low-Code and No-Code Systems....291
Conclusion....293
Chapter 12. Mainframe Modernization Strategies....295
Why Modernize?....295
Using a Hybrid Cloud....297
Setting Goals....298
Encapsulating....300
Rehosting or Replatforming....300
Refactoring or Rearchitecting....301
Replacing or Rebuilding....303
Working with the Hyperscalers....304
Amazon Web Services....305
Microsoft....306
Google Cloud....308
Automation Tools....309
Heirloom Computing....310
EvolveWare....311
Advanced’s Automated COBOL Refactoring....312
Astadia....312
Data Migration....312
Conclusion....313
Chapter 13. The Future....315
Innovation of the Mainframe....315
Enterprise Integration....317
The Hybrid Model....319
Mainframe as a Service....320
Conclusion....321
Additional Resources....323
Glossary....325
Index....331
About the Author....348
Colophon....348
Even as spending on digital transformation continues to skyrocket, mainframes nevertheless have major advantages for global enterprises. These systems still process huge amounts of information and allow for highly secure transactions. In this practical book, author Tom Taulli shows software developers how to pursue a hybrid approach by integrating traditional mainframes and applications with modern digital systems.
By the end of this book, you'll have a solid understanding of the mainframe architecture and ecosystem, including core concepts and technologies such as COBOL, REXX, JCL, Db2, VSAM, and CICS. You'll also learn how to blend in newer technologies such as the cloud, AI and machine learning, and microservices. This handbook is indispensable for enterprises looking to thrive in the new digital world.