Saturday, January 19, 2019

Similarities of SAP and mainframes

I recently took a part in online MOOC course called "Mainframe - Crucial Role in Modern Enterprise Computing" by HPI institute.

Here while learning about mainframe architecture its operating systems, history how it evolved and features of mainframes I noticed few similarities comparing to SAP NetWeaver architecture.

There are few points of view where I found some similarities between the two.

With regards to architecture - From this point of view, it all goes back to early days of SAP. When they introduced R/2 software (Enterprise Resource Planning software) which at the time (approximately in 1979) was only available on the mainframes (before R/2 there was an R/1 which was batch processed based system). When they started to develop R/3 (launched in 1992) they needed to migrate to client/server architecture. The R/3 inherited many components of the R/3 like tables, UI in form of DynPros, ABAP programming language, batch job management, etc. which at the end formed Basis platform of the R/3 (Basis Component - BC). By this way many of architecture principles that they used on mainframe got to new technology that was the client/server. Later the Basis Component of R/3 was transformed to NetWeaver (2013) by adding Web Application Server and other components and rest is history.

Controlling of user interactions – in R/3 SAP had to simulate functionality of 3270 terminal screens of R/2. That’s how function key like F1, F3, F11, F12 made to SAP GUI of R/3 and subsequently even to most recent version of SAP GUI. The purpose of function keys followed an IBM standard for application user interfaces (mainframe user interfaces).  See user screens examples of R/2 and R/3 here.
F1 Help
F3 Save and Quit
F10/F11 Shift left/right
F12 Cancel (Quit without saving)

Batch job management - SAP NetWeaver job management has its roots in jobs on an IBM mainframe. The concept is quite similar. Mainframe’s JES (Job Entry Subsystem) has similar principles that we can find in SAP’s NetWeaver like: job class, input, conversion, processing, output (output goes to spool), etc.

Software development – ABAP was introduced in case of R/2 (so on mainframe) software and it is supported by SAP stack also today (of course ABAP has evolved since and has many features of modern programming languages. It started as a report language influenced by COBOL which is predominant programming language even today. There are many similarities between the two. E.g. language statements like: END-IF, END-PERFORM, ADD, MOVE-CORRESPONDING, WRITE etc.

In standard SAP NetWeaver ABAP stack based installations there is ABAP program called ROIUHSTRUTIL. It is available in the newest version of the NetWeaver – 7.5. The program itself appears to be COBOL to ABAP conversion, string processing support tool.

Storage Management - Data sets are basically files in Linux. This term is used in both worlds, mainframe and in case of SAP there is a language statement in ABAP called OPEN DATASET.

No comments: