z390 Service Oriented Architecture Support for COBOL and Assembler
System Oriented Architecture (SOA) is a software design model to address the need to share and reuse application components across diverse applications and network users. z390 now includes tools to enable users to generate low level SOA type COBOL and z390 client server assembler applications. For COBOL clients, the EZASOKET interface is called to send and receive SOA messages via TCP/IP. For z390 assembler clients and servers, the z390 TCPIO macro and svc are used to send and receive SOA messages via J2SE sockets support. No other SOA frameworks or languages such as CICS, XML or C are required.
For COBOL client applications on Windows which call mainframe assembler, Micro Focus Mainframe Express now has EZASOKET support available which is supported by the z390 SOA COBOL client generator. See COBOL SOA Demo for more details.
The z390 TCPIO macro supports client and server TCP/IP messaging using J2SE sockets via SVC X'7C'. z390 servers running on Windows or Linux can issue OPEN to listen for messages from clients on a specified port. z390 clients on Windows or Linux can issue OPEN for specific HOST port to connect and SEND and RECEIVE messages from the server.
A z390 demo application consisting of a main program DEMOMAIN.MLC which calls 2 subroutines DEMOSUB1.MLC and DEMOSUB2.MLC are included in new SOA directory. As a base line, the demo can be assembled, statically linked, and executed locally using the command SOA\DEMO\DEMOSTD.BAT. Then the demo can be converted to an SOA client server application, assembled, linked, and executed using the command SOA\DEMO\DEMOSOA.BAT. The demo SOA application generation is driven by the user defined SOAGEN macro call:
SOAGEN CTYPE=MLC, X
The z390 SOA application generation macros create the following source files from the above:
The z390 SOA generated command DEMOBLD.BAT builds the following executables:
The demo SOA client server application has been run on single CPU, local LAN connected client and server PCs, and again on wireless LAN connected client and server PC's to generate initial z390 SOA Demo Timing Statistics showing that after initial transaction, the average overhead for the z390 SOA TCP/IP messaging is about 2-3 milliseconds. For complex services performing I/O to databases, this overhead is relatively negligible compared to the major benefit of simplifying the sharing and maintenance of services across diverse applications and users. Future plans for z390 enhancements will include support for XML and registry type services to provide unit test environment for higher level SOA type application components.
An IBM Enterprise COBOL compatible version of the z390 assembler SOA client demo has been created named soa\demo\DEMOMAIN.CBL. The SOAGEN macro has been updated to support the name keyword CTYPE=CBL in addition to the default CTYPE=MLC. The new command soa\demo\DEMOSOAC.BAT will generate the COBOL stubs and COBOL client message manager required to run the COBOL demo program using the same z390 assembler server as the z390 assembler client demo. The generated COBOL client message manager issues calls to the HLL standard EZASOKET interface which is now available for running mainframe COBOL and z390 assembler applications on Windows via Micro Focus Mainframe Express 3.1.
The COBOL SOA application generation macros create the following source files from the above:
To run the COBOL SOA demo using Micro Focus Mainframe Express on Windows perform the following steps:
Ok, so the demo works, now how do I get my mainframe COBOL and assembler application to work using this new option so I can do development and testing on my Windows PC? First I'd recommend talking to both Micro Focus and Automated Software Tools to determine if the Micro Focus and z390 tools will support the application requirements. Then if the requirements are met, the tools can be installed and the process to generate one or more SOA z390 servers can be started along with setting up the COBOL client application in Mainframe Express or Server Express.
IBM, CICS, HLASM, MVS, OS/390, VSAM, z9, z10, and z/OS
are registered trademarks of International Business Machines Corporation
This page last updated
Sunday September 07, 2008.
Copyright 2008 Automated Software Tools Corporation