top of page

EDVard on mainframes and COBOL

Mainframes are computer systems that can handle thousands of users and very large data bases offering unsurpassed performance, safety and security. Mainframe operating systems are very   sophisticated. The available editors, compilers, job control, utilities, etc. offer more and better features and possibilities and they may have their own programming language (think of EDT or SDF-P in BS2000). Mainframes come with clever diagnostic tools that allow tracing of programs at run-time, probing of program memory, etc. These tools may have their own programming capability (think of AID in BS2000). 

Mainframes come with data bases, transaction monitors, networking, file transfer, etc. 

 

Yes they are more expensive to buy or lease and to operate. Yet to dump the mainframe and migrate to a network of PC's may result in a poorer system with worse performance and reduced security and safety. And an equivalent PC system may eventually prove to be quite expensive.

 

Mainframes offer everything that you get on PC's or UNIX systems. You have JAVA, C/C++, web, etc. You may run UNIX parallel to your mainframe operating system and the two operating systems can work together and share their files. Some mainframes even have UNIX as the native environment (BS2000 and z/OS use Solaris for that purpose). 

 

COBOL is as good (or better) a language as any. There are COBOLs that run on anything from mainframes to PC's. COBOL has nowadays everything that you may reasonably ask for, like embeded data base commands,  web, XML, and last not least object oriented programming. COBOL is and always has been the language that can be learned easier and faster than any other programming language. COBOL source is legible, intelligible and comprehensible. 

 

There is a considerable amount of COBOL code running on mainframes worldwide. Banks 'too big to fail' and government agencies, to name some, cannot dump their mainframes and COBOL systems. There is ususally no genuine need for the decision to go away from COBOL and mainframes. 
 

The decision on what hardware (HW) and software (SW) environment to have is an important one. Keep your existing HW/SW environment if you are more or less happy with it. Do not change it if you do not have to or if you do not genuinely know why you should. We can often observe dumping mainframes or computer languages like COBOL because it is fashionable to have a network of PC's running Windows with some "new" or "up-to-date" language. You probably do need mainframes in a project with very large and complex and sensitive data where thousands of users need simultaneous access whereby performance and safety and security are particularly important. And you will have your PC's anyway as nowadays big systems come in the form of multi-tier systems, or networks, with mainframes, UNIX computers and PC's (PC as user interface). You will often find the change or migration to a "modern" system to be more difficult and more unpredictable than could be envisaged in the decision making process.

 

We have seen migration projects that have been cancelled after having spent a fortune. If you decide to migrate you must make sure that your old system does not get switched off at the same time as the new system is launched. If you do decide to migrate make sure that the new system is better than the old one. Design the new system properly. Do not merely re-program the same thing in a different environment. It is not right to turn an old file system into a database by migrating the files to tables, whereby the records stay the same. In doing so we do not use the database as a database. We even know of a government agency somewhere in Europe where files were changed to Oracle tables with records consisting of two fields: key and everything else. The structure of 'everything else' was declared in the programs. Needless to say that such programs are obviously more difficult to maintain, SQL and PL/SQL cannot be used as they are meant to, the data base access operations are more complex and expensive on resources for no advantage at all, etc.

 

The decision to migrate away from mainframes to Windows or Unix based systems is often "justified" with issues of the old system like "running slow", "containing errors", "no or little user friendliness", etc. These are issues that have nothing to do with the mainframes. Rather we may have poorly programmed systems or systems that do not take full advantage of their environment. By simply moving on to a new environment you would not produce anything better.

 

The reasoning for the move is usually based on describing 'legacy' systems as 'dinosaurs'. All the 'problems' (without specifying them) would be solved by migrating to a 'system of PC's' with C++ or Perl. Java is the usual buzzword. The new system would be more 'cost-effective'. Never mind the loss of performance, the real cost of procuring, running and maintaining the new computer system including all hidden costs. Never mind the cost of migration, the need to rewrite all code and to test it. Never mind the loss of functionality and features (think of safety and security or the developer's environment).

Never mind the loss of credibility due to errors and shortcomings of the new system.

 

Moving away from mainframes may be like swapping your HGV's (trucks) for a fleet of pick-ups. And you have all those tonnes of sand and what not to transport to your road works or dam construction site....

 

Remember the maxim of the first car mechanics more than hundred years ago:

 If it works don't fix it.

 

You would not build a new house and tear down the old one only because there are "better" and more "up-to-date" houses around.

 

 

Some links to what others say:

 

http://www.developer.com/lang/other/7-myths-of-cobol-debunked.html

http://www.itworldcanada.com/article/the-future-of-cobol-why-it-wont-go-away-soon/45722

http://www.theguardian.com/technology/2009/apr/09/cobol-internet-programming

http://cloudcomputing.sys-con.com/node/2094767

http://www.computerworld.com/s/article/9004821/Cobol_The_New_Latin

in German: http://www.tecchannel.de/server/extra/1753015/it_jobs_karriere_support_administrator_helpdesk/ 

 

Third party apps may use cookies. You agree if using our web site. 

U s e f u l   L i n k s

bottom of page