Features of development on mainframes

The stages of development of most applications in modern realities look about the same, regardless of whether you write the firmware for the remote control from an air conditioner or launch a drone on Mars. However, the challenges posed by platform or application-specific priorities are very varied.





I want to share with you some of the specifics that teams face when developing mainframe applications.





Debug

I don’t know why, but debugging applications on z / OS in 2021 is going on in much the same way as it was 30 years ago. The most convenient / powerful debugger available is a console XDC debugger running on z / OS with access from the ISPF panel. It is really cool, but not user-friendly at all and cannot be screwed to the IDE, which makes most Juns use printf in the first year and avoid debuggers (but you won't be able to run for a long time, sooner or later you will have to look into the lion's mouth).





Yes, there is a debugger from IBM with its own IDE, but my personal opinion is that it is suitable for either "Hello World!" projects or for small pocket projects.





XDC Debugger
XDC Debugger

Legacy code

, , , : . : HLASM (High Level Assembler) C++, .





.. , , Clean Code (2008) ... , Code Complete (1993).





, HLASM REXX, C, C++, PHP, Java . , , .





, , , . , : TSO, JCL, USS, ISPF, Datasets, JES, SDSF, SMP/E.





, , , -, .





, , .. , , , , , ..





Quality First

, , . Enterprise .





Scrum , - . , :





  1. . , . , . , , 20% - .





  2. , ( ). - , ( ), , , .





z/OS , / . z/OS 24, 31 64 , .. 24- , 31- 64-. (Key 0, SUPER MODE) .





: "A", "B", "A" , , "B" ( schedule SRB - Service Request Block), , "A" "A" .





"A" , , 15 , ? , (ABEND) - . , "A" z/OS ( , ). .. , LPAR, IPL.





, , (kill) .





" ?". - . , (DASD), , , () , . , , .





, - DASD , . , .





- PRIMEPSA, , , , 0xAA. ABEND , NULL , NULL.





- LPAR . CPU , LPAR .





(IPL) LPAR 1-2 , 1-2 .





, - , - , , , - , , NDA.





Google

Stack Overflow . , . , ... 10 ... . , .





, .. , - .





, wiki, , . , , .





, , -, . - - , , , .. , , . , , .





, , , , , , , .





, Adabas z/OS , . , . , .





, ABC CCB, , . , , . , , .





, , , , , - ( ).





, , , , .





In general, if you go into the office (after they have been opened, of course) to the mainframe developers, you will not see strong differences: the same scrum, the same accompanying meetings, familiar IDEs, automation in the same Python, some kind of web UI , the same tickets in Jira and much more recognizable. I think globalization and the desire of all companies to work effectively makes everything similar everywhere.








All Articles