DevOps finally is about quality and productivity. How can I develop faster and better and how can I get my applications faster and more frequent into production? Every stakeholder and every optimized process step can contribute to these objectives.
Let us start with the developers and their development environments. We just show two major development environments to develop mainframe code.
Standard Mainframe editor
On IBM z/OS, the most commonly used editor is ISPF (Interactive System Productivity Facility). ISPF provides developers features for application development and for administering the z/OS operating system. The features include:
- Browse: for viewing data sets and Partitioned Data Set (PDS) members
- Edit: for editing data sets and PDS members
- Utilities for performing data manipulation operations, such as:
- Data Set List which allows the User to list and manipulate (copy, move, rename, print, catalog, delete, etc.) files (called "data sets" in the z/OS environment).
- Member List for similar manipulations of members of PDSs.
- Search facilities for finding modules or text within members or data sets.
- Compare facilities for comparing members or data sets.
Figure one: ISPF, COBOL program
A today’s alternative for writing COBOL, PL/1 or even JCL ISPF, are Eclipse-based editors running on a PC.
Basically, an Eclipse-based or .NET editor offers the same functionality as ISPF and some additional benefits like:
- Automatic code completion
- Syntax checking, helping you out with writing correct code while you type
- Debugging, with step-by-step, break points, variable inspection, etc.
- Navigation capability (click on an object, go to its definition; find where an object is used and the hierarchy of calls leading to it; etc.).
Figure two: Eclipse based COBOL Editor
When using an Eclipse-based editor, the mainframe complexity is completely hidden from the developers and they can use the same Eclipse-based editor as their peer Java developers.
Another advantage is that by using one and the same Eclipse framework for both your mainframe and non-mainframe development, you can save on the costs for managing different development environments.
Continue reading in our next post: Versioning (Mainframes and DevOps)
About the author
Hello, my name is René De Vleeschauwer.
Throughout my career I've been responsible for the development of enterprise software. Since 12 years I've been leading the development of IKAN ALM, an open DevOps framework.