SOA Generation



                         SOA architecture for Cobol / CICS / DB2


           SOAG (Service Oriented Architecture Generator) is intended to facilitate the work of professionals: system analysts and system developers focused on the SOA architecture.


            Over many years in systems development, its creators realized that the great difficulty that analysts face is to transfer to developers all the details that involves the definition of services, being it domain rules, persistence, integrity, program names, message codes and more.


            Almost  entirely, these details are already explicit in the definition of the data model, whether it is just an ER or an existing DB.


           SOAG provides an user friendly exposition of these details and also allows the analyst / developer to interact and improve this information.


  • Reduce the cost of software development;

  • Modernize your applications using the latest technologies;

  • Services with low level of interdependence;

  • 100% automated process;

  • Web interface.


            In software development there is nothing new in the way we think about detailing an application into component parts. It is the central paradigm of object orientation, software abstractions and elaboration of components. Currently, this factorization tends to take the form of classes and interfaces between layers of technology and shared libraries. In general, a layered approach is adopted with a back-end repository, middle-tier business logic and a front-end UI (user interface). What has changed in recent years is that developers are compiling applications cloud-driven oriented to business.

            Variable needs of businesses:

  • A service that is compiled and operated in scale to reach customers in new geographic regions (as an example);

  • More agile delivery of resources in order to be able to respond quickly to customer demands;

  • Better use of resources to reduce costs.

          These business needs are affecting the way we build applications, so a micro-service-based architecture becomes more and more attractive.





           The objectives of SOAG are:

  • Generate CRUD + L services in COBOL / CICS / DB2 on SOA architecture;

  • Generate WEB applications in Python.


           SOAG's SOA approach is to use its own services as well as corporate services.

           The main words of SOAG are:

  • Simplicity and standardization.


           The SOF mainframe programming model is divided into three layers:

  • Messenger Module - program that exchanges messages with the "front end" and distributes the tasks to other services;

  • Functional Module - program that validates the messages;

  • Persistence Module - A program that persists messages in the DB.





           Monolithic Design:

  • Increased complexity and size over time;

  • High dependence on code components;

  • Scalability of the system is limited;

  • Lack of flexibility;

  • Difficulty to implement changes in production.

           Micro Services Design:

  • Maintenance and evolution of the most stable services;

  • Services with low level of interdependence;

  • Scalability of the system;

  • Reduction of costs;

  • Flexibility of technology;

  • Ease to implement changes in production.














  Figure 1: The image demonstrates an SOA architecture against the implementation of SOAG



  • Standardization of messages;

  • Messages by business rules from data columns;

  • Import of Meta Data;

  • Check list for process follow-up;

  • Standardization of Nomenclatures (Tables, Fields);

  • Creating business rules from columns;

  • Integration with ERWIN;

  • Review of tables, columns, "primary keys" and "foreign keys";

  • Program naming.

Figure 2: This image illustrates the SOAG module for standardizing messages in the generation of micro services



•   Windows 7 or above (32/64 bits);

•   Hard disk space: a minimum of 2 GB recommended for a complete installation;

•   A complete installation includes the SOAG product installer (approximately 1 GB) and Web2Py (included);

•   System memory: a minimum of 4 GB recommended;

•   DB2 LUW / DB2 ZOS connection driver.

White paper:

Why Micro Services?

Objectives of SOAG

Monolithic Design versus Micro Services


Technical specifications