Application and Data Mainframe to Enterprise Evolution |
The SimoTime Home Page |
This document provides an overview of an application life cycle that includes the structure and process on various systems (ZOS, Linux, UNIX or WINDOWS) for promoting a release level through the Development, Testing and Production phases.
| ||||||||
Application Evolution |
We have made a significant effort to ensure the documents and software technologies are correct and accurate. We reserve the right to make changes without notice at any time. The function delivered in this version is based upon the enhancement requests from a specific group of users. The intent is to provide changes as the need arises and in a timeframe that is dependent upon the availability of resources.
Copyright © 1987-2025
SimoTime Technologies and Services
All Rights Reserved
The following is an overview of the application life cycle and support infrastructure.
Color Associations: The Application EvolutionApplication changes are usually driven by business requirements. A secondary driver may be a technological advancement that changes the way certain processes may be implemented and may offer cost savings to the consumer. Create a Development EnvironmentThe development environment is the starting point or foundation. This is where the initial systems preparation work is performed and where the application programs are created and the application build process is executed. Unit testing is performed in this environment prior to promoting the programs and associated dependencies on to the Test environment for full system testing and user acceptance. This section describes a set of script files (or Windows Command Files) and JCL Members that are used to create a directory structure for a Development Environment that includes a Micro Focus catalog and the non-relational data structures that may be refreshed to a Zero Reference point or baseline condition. Define Environment & a Directory StructureBefore we can begin to create, compile and execute application programs we need to do a little system preparation work. We will need to define and create a directory structure to efficiently managed the program members, control files, configuration files and data items that make up an application. Explore a Directory Structure for a Development Environment that supports the execution of business applications using Micro Focus Enterprise Server. Import or Create Source MembersThe source code for an application may be acquired from a variety of professional services organizations or developed by in-house programming groups.
Note: On the mainframe source members are EBCDIC-encoded, members in a Partitioned-Data-Set (PDS). The members are typically formatted as record sequential files with eighty (80) byte fixed-length records. Create & Populate a CatalogOn a Mainframe System and in the Micro Focus Enterprise Server and Enterprise Developer environments a catalog is used to managed non-relational data file structures. The DD statement in the JCL uses the catalog to map the physical file name with the logical name used by a program that will be executed. Explore a higher-level perspective of the catalog migration process for the Micro Focus environment. Partitioned Data Sets (PDS's)When preparing a system to run batch applications using JCL it is usually necessary to create a number of Partitioned-Data-Sets (PDS's). A commonly used method for creating a PDS is to submit a job. The following is an example of a JCL Member that will create a PDS that will be used as a PROCLIB with Micro Focus Enterprise Server. This JCL was generated by a COBOL program and submitted to the Internal Reader (INTRDR). //MAKEAPDS JOB SIMOTIME,CLASS=1,MSGCLASS=0,USER=SIMOTIME,NOTIFY=CSIP1 //* ******************************************************************* //* Do Catalog Entry for SIMOTIME.PDS.PROCLIB //* Generated JCL Code, the file properties were user defined. //PODEFINE EXEC PGM=IEFBR14 //SYSOUT DD SYSOUT=* //PROCLIB DD DSN=SIMOTIME.PDS.PROCLIB, // DISP=(NEW,CATLG,CATLG), // STORCLAS=MFI, // SPACE=(TRK,5), // DCB=(DSORG=PO,LRECL=00080,RECFM=LSEQ) //*MFE: %PCDSN=C:\SIMOSAM1\DEVL\PROCLIB\*.PRC //* The following link will provide additional detail for creating PDS's in a Micro Focus environment. Explore How to Create Catalog Entries for Partioned Data Sets (PDS's) and Document the Process. This suite of scripts and documentation is for a Micro Focus Enterprise Server running on a Windows System. Generation Data Groups (GDG's)If an application uses Generation-Data-Groups (GDG's) and the application is being deployed on a new system or the application is being moved from a development environment to a test environment it may be necessary to create GDG Base. A commonly used method for creating a GDG Base is to submit a job. The following is an example of a JCL Member that will create a GDG Base that will be used with Micro Focus Enterprise Server. This JCL was generated by a COBOL program and submitted to the Internal Reader (INTRDR). //MAKEAGDG JOB SIMOTIME,CLASS=1,MSGCLASS=0,USER=SIMOTIME,NOTIFY=CSIP1 //* ******************************************************************* //* Do Catalog Entry for SIMOTIME.DATA.GDGROUP1 //* Generated JCL Code, the file properties were user defined. //GDGIDXX1 EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //SYSIN DD * DEFINE GDG( - NAME(SIMOTIME.DATA.GDGROUP1) - LIMIT(003) - NOEMPTY - SCRATCH - ) /* //* The following link will provide additional detail for creating GDG's in a Micro Focus environment. Explore How to Create Catalog Entries for Generation Data Groups (GDG's) and Document the Process. Sequential Files (Fixed & Variable)The following link will provide additional detail for creating catalog entries for Sequential Files in a Micro Focus environment. Explore How to Create Catalog Entries for Sequential Files and Document the Process. This suite of scripts and documentation is for a Micro Focus Enterprise Server running on a Windows System. VSAM Data SetsThe following link will provide additional detail for creating catalog entries for VSAM Data Sets in a Micro Focus environment. Explore How to Create Catalog Entries for VSAM, Key-Sequenced-Data-Sets (KSDS's) and Document the Process. Copy or Create Data for Unit TestingWIP Create a Test EnvironmentThis section describes a set of script files (or Windows Command Files) and JCL Members that are used to create a directory structure for a TEST environment that includes a Micro Focus catalog and the non-relational data structures that are refreshed to a Zero Reference point or baseline condition. Create a Directory StructureFrom the C:\SIMOSAM1\DEVL\Adm1 directory (this is a development directory) execute the MDIRTEST.CMD command. Note: This may be done from Windows Explorer by double-clicking on the item or by executing the following from a Command Line window. C:\SIMOSAM1\DEVL\Adm1> MDIRTEST Explore a Directory Structure for a TEST Environment that supports the execution of business applications using Micro Focus Enterprise Server. Start a JES ServerOpen a Command Line Window and make the newly created directory C:\SIMOSAM1\TEST\SYS1\LOADLIB the current directory. Start the Micro Focus JES Server that is used for the "TEST" environment as shown in the following statement. C:\SIMOSAM1\TEST\SYS1\LOADLIB> SYS1START SIMTSTS1 Populate the CatalogFrom the Command Line Window execute the following. C:\SIMOSAM1\TEST\SYS1\LOADLIB> CATALLE1 The preceding will execute a process that will read a list of names and properties for the non-relational data files structures that include VSAM Data Sets and sequential files. The list of file names are managed in suite of Excel spreadsheets. Restore Data Files from a Master CopyFrom the Command Line Window execute the following. C:\SIMOSAM1\TEST\SYS1\LOADLIB> CATALLE3 The preceding will execute a process that will perform simple file copies from a master directory to the test directory for non-relational data structures. Create a Production EnvironmentWIP2 Technical DetailsThis section provides additional technical details. Ancillary or Shared FunctionsThis section provides technical detail about the supporting scripts and programs that are used across the SimoTime suite of program applications. Set the Common Environment VariablesThe command file script (ENV1BASE.cmd) is used to set the commonly used or shared environment variables. This script is typically called from other command file scripts. @echo OFF rem * ******************************************************************* rem * ENV1BASE.cmd - a Windows Command File * rem * This program is provided by SimoTime Technologies * rem * (C) Copyright 1987-2021 All Rights Reserved * rem * Web Site URL: http://www.simotime.com * rem * e-mail: helpdesk@simotime.com * rem * ******************************************************************* rem * rem * Text - Provide a single point to set common environment variables. rem * Author - SimoTime Technologies rem * Date - January 24, 1996 rem * rem * Set the commonly used environment variables. This is used to provide rem * a single point for managing the commonly used environment variables. rem * set SimoLIBR=c:\SimoLIBR set BASELIB1=c:\SIMOSAM1\DEVL set BASELIB8=c:\SimoSAM8 set BaseWIP1=c:\SimoSAM1\WIP1 set DATAZERO=c:\SIMODATA\DEVL\DATA\ZERO set BASEAPP=%BaseLib1% set BASESYS=%BaseLib1%\SYS1 set BASECAT=%BaseLib1%\DATA set UMAPALIB=%BASECAT%\ASC1 set UMAPELIB=%BASECAT%\EBC1 set SYSLOG=%BASESYS%\LOGS\SYSLOG_USER.DAT set SYSOUT=%BASEAPP%\LOGS\SYSOUT_SIMSAM01.txt set SLZMSG=%BASEAPP%\LOGS\SLZMSG_USER.TXT set PostNOTE=%BASEAPP%\LOGS\JOBLOG_SIMONOTE.TXT set SIMONOTE=%BASEAPP%\LOGS\JOBLOG_SIMONOTE.txt set USERPOST=%BASEAPP%\LOGS\ASSIGNED_USER_POST_FILE.txt if [%1]==[] goto NO_POST set SYSOUT=%BaseLib1%\LOGS\SYSOUT_%1.txt call SIMONOTE "+ ENV1BASE *" call SIMONOTE "+ ENV1BASE ********************************************************************%1" call SIMONOTE "+ ENV1BASE is preparing the System Environment..." call SIMONOTE "+ SIMOLIBR is %SIMOLIBR%" call SIMONOTE "+ MIFOSYS1 is %MIFOSYS1%" call SIMONOTE "+ BASELIB1 is %BASELIB1%" :NO_POST call SIMONOTE "+ SIMONOTE Job Log File is %SIMONOTE% " rem * set MQBASE=C:\Program Files\IBM\WebSphere MQ rem * rem * Set the location for the Apache-Tomcat Server... set CATALINA_HOME=C:\APACHETC\apache-tomcat-7.0.52 rem set CATALINA_HOME=C:\Program Files (x86)\Java\jdk1.8.0_112 rem * rem * Set the Environment for the Java Environment... rem set JAVABASE=C:\APACHETC\apache-tomcat-7.0.52 set JAVABASE=C:\Program Files (x86)\Java\jdk1.8.0_112 set JAVASDK="%JAVABASE%\bin" set JAVA_HOME=%JAVABASE% set JRE_HOME=%JAVABASE% set SIMOTCAT=%CATALINA_HOME%\webapps\simotcat set SIMPACKS=%CATALINA_HOME%\webapps\simotcat\WEB-INF\classes\simpacks rem * rem * Set the environment for the Micro Focus technology... set MIFOEDEV=C:\Program Files (x86)\Micro Focus\Enterprise Developer set MIFOVCBL=C:\Program Files (x86)\Micro Focus\Visual COBOL Build Tools set MIFOESTU=C:\Program Files (x86)\Micro Focus\Studio Enterprise Edition 6.0 set MIFOEMFE="C:\Program Files (x86)\Micro Focus\Mainframe Express" rem * rem * Large file support, performance tuning and record locking of the File Handler set EXTFH=%BASESYS%\CONFIG\EXTFHBIG.CFG rem * rem * For IMS Support set ES_IMSLIB=%BASEAPP%\IMSLIB set ES_ACBLIB=%BASEAPP%\IMSLIB rem * rem * EZASOKETS Check EZASOKETS Enabled box or set ES_EZASOKET_SUPPORT=YES set EZACONFG=BASESYS1\CONFIG\EZACONFG.dat rem * rem * Resource Allocation and Performance for SORT and non-Relational Data rem set MFJSENGINE=SYNCSORT set SORTSCHEME=1 set SORTSPACE=750000000 set TMP=C:\SORTWORK rem * set ES_ALLOC_OVERRIDE=%BASESYS%\CONFIG\CATMAPA1.cfg rem * For CORE_ON_ERROR function, ABEND Dump rem * set COBCONFIG_=%BASESYS%\CONFIG\diagnose.cfg rem * rem * Consolidated Trace Facility (CTF) rem * set MFTRACE_CONFIG=%BASESYS%\CONFIG\ctf.cfg rem * set MFTRACE_LOGS=c:\ctflogs rem * rem * For Job Restart, ABEND Recovery set MF_UCC11=Y set ES_JES_RESTART=Y rem * rem * Set environment for MFBSI (Micro Focus Batch Scheduling Interface) set ES_EMP_EXIT_1=mfbsiemx set MFBSI_DIR=%BASESYS%\LOGS\%JESSERVERNAME% set MFBSIEOP_CMD=ENABLE set MFBSIEOP_CSV=ENABLE set MFBSIEOP_HTM=ENABLE set MFBSIEOP_XML=ENABLE rem * rem * Set Behavior and Trace Flags for GETJOBDD rem * Position=12345678/12345678 set JDDFLAGS=nnnWnnnn/YYnnnnnn rem * rem * If not already set then set the PATH for Micro Focus Directories if "%SIMOPATH%" == "Y" goto JUMPPATH if "%MIFOSYS1%" == "EDEV" goto JUMPEDEV if "%MIFOSYS1%" == "VCBL" goto JUMPVCBL if "%MIFOSYS1%" == "ESTU" goto JUMPESTU if "%MIFOSYS1%" == "EMFE" goto JUMPEMFE :JUMPEDEV set path=%BASESYS%\LOADLIB;%MIFOEDEV%\bin;%JAVASDK%;%BASEAPP%\JAVA;%PATH%; set CobCpy=%BASEAPP%\CobCpy1;%BASEAPP%\CobCpy2;%BASEAPP%\CobCpy6;%SimoLIBR%;%MIFOEDEV%\CPYLIB set MIFOBASE=%MIFOEDEV% goto JUMPPATH :JUMPVCBL set path=%MIFOVCBL%\bin;%MIFOVCBL%;%JAVASDK%;%BASEAPP%\JAVA;%PATH%; set MIFOBASE=%MIFOVCBL% goto JUMPPATH :JUMPESTU set MIFOBASE=%MIFOESTU%\Base set MIFOBIN=%MIFOBASE%\bin set path=%BASESYS%\LOADLIB;%MIFOBASE%;%MIFOBIN%;%JAVASDK%;%BASEAPP%\JAVA;%PATH%; set CobCpy=%BASEAPP%\CobCpy1;%BASEAPP%\CobCpy2;%BASEAPP%\CobCpy6;%SimoLIBR%;%MIFOBASE%\SOURCE goto JUMPPATH :JUMPEMFE set MIFOBASE=%MIFOEMFE%\Base set MIFOBIN=%MIFOBASE%\bin set path=%BASESYS%\LOADLIB;%MIFOBASE%;%MIFOBIN%;%JAVASDK%;%BASEAPP%\JAVA;%PATH%; set CobCpy=%BASEAPP%\CobCpy1;%BASEAPP%\CobCpy2;%BASEAPP%\CobCpy6;%SimoLIBR%;%MIFOBASE%\SOURCE goto JUMPPATH rem * :JUMPPATH set SIMOPATH=Y rem * set MAINFRAME_FLOATING_POINT=true set COBIDY=%BASEAPP%\COBIDY set COBPATH=.;%BASEAPP%\LOADLIB;%BASEAPP%\LOADLIB\GNTS;%BASESYS%\LOADLIB;%SimoLIBR% set LIBPATH=.;%BASEAPP%\LOADLIB;%BASEAPP%\LOADLIB\GNTS;%BASESYS%\LOADLIB;%SimoLIBR% set TXDIR=%BASESYS%\LOADLIB;%MIFOBASE% set CobCpy=%BASEAPP%\CobCpy1;%BASEAPP%\CobCpy2;%BASEAPP%\CobCpy6;%SimoLIBR% rem * set USERCLASS=%BASELIB1%\LOADLIB set CLASSPATH=. set CLASSPATH=%CLASSPATH%;%JAVABASE% set CLASSPATH=%CLASSPATH%;%JAVABASE%\lib set CLASSPATH=%CLASSPATH%;\%USERCLASS%\simpacks set CLASSPATH=%CLASSPATH%;C:\APACHETC\apache-tomcat-7.0.52\webapps\simotcat\WEB-INF\classes set CLASSPATH=%CLASSPATH%;C:\APACHETC\apache-tomcat-7.0.52\webapps\simotcat\WEB-INF\classes\simpacks rem * if "%MIFOSYS1%" == "ESTU" set CLASSPATH=%CLASSPATH%;%MIFOBIN% if "%MIFOSYS1%" == "EDEV" set CLASSPATH=%CLASSPATH%;%MIFOEDEV% if "%MIFOSYS1%" == "VCBL" set CLASSPATH=%CLASSPATH%;%MIFOVCBL% if "%MIFOSYS1%" == "VCBL" set CLASSPATH=%CLASSPATH%;%MIFOVCBL%\bin\mfcobol.jar rem * set JobStatus=0000 call SIMONOTE "+ ENV1BASE is returning to caller" Post a Message to the Screen, Log to FileThe command file script (SIMONOTE.cmd) is used to consistently display a message to the screen and write a message to a log file with a date and time stamp. This script may be called from other command file scripts. Explore How to Display Messages and Write to a Log File from within a Windows Command file. SummaryThis document provides an overview of an application life cycle that includes the structure and process on various systems (ZOS, Linux, UNIX or WINDOWS) for promoting a release level through the Development, Testing and Production phases. This document may be used to assist as a tutorial for new programmers or as a quick reference for experienced programmers. In the world of programming there are many ways to solve a problem. This documentation and software were developed and tested on systems that are configured for a SIMOTIME environment based on the hardware, operating systems, user requirements and security requirements. Therefore, adjustments may be needed to execute the jobs and programs when transferred to a system of a different architecture or configuration. SIMOTIME Services has experience in moving or sharing data or application processing across a variety of systems. For additional information about SIMOTIME Services or Technologies please contact us using the information in the Contact or Feedback section of this document.
Permission to use, copy, modify and distribute this software, documentation or training material for any purpose requires a fee to be paid to SimoTime Technologies. Once the fee is received by SimoTime the latest version of the software, documentation or training material will be delivered and a license will be granted for use within an enterprise, provided the SimoTime copyright notice appear on all copies of the software. The SimoTime name or Logo may not be used in any advertising or publicity pertaining to the use of the software without the written permission of SimoTime Technologies. SimoTime Technologies makes no warranty or representations about the suitability of the software, documentation or learning material for any purpose. It is provided "AS IS" without any expressed or implied warranty, including the implied warranties of merchantability, fitness for a particular purpose and non-infringement. SimoTime Technologies shall not be liable for any direct, indirect, special or consequential damages resulting from the loss of use, data or projects, whether in an action of contract or tort, arising out of or in connection with the use or performance of this software, documentation or training material. Downloads and LinksThis section includes links to documents with additional information that are beyond the scope and purpose of this document. The first group of documents may be available from a local system or via an internet connection, the second group of documents will require an internet connection. Note: A SimoTime License is required for the items to be made available on a local system or server. Current Server or Internet AccessThe following links may be to the current server or to the Internet. Note: The latest versions of the SimoTime Documents and Program Suites are available on the Internet and may be accessed using the icon. If a user has a SimoTime Enterprise License the Documents and Program Suites may be available on a local server and accessed using the icon. Explore An Enterprise System Model that describes and demonstrates how Applications that were running on a Mainframe System and non-relational data that was located on the Mainframe System were copied and deployed in a Microsoft Windows environment with Micro Focus Enterprise Server. Explore the COBOL Connection for more examples of COBOL programming techniques and sample code. Explore an Extended List of Software Technologies that are available for review and evaluation. The software technologies (or Z-Packs) provide individual programming examples, documentation and test data files in a single package. The Z-Packs are usually in zip format to reduce the amount of time to download. Explore The ASCII and EBCDIC Translation Tables. These tables are provided for individuals that need to better understand the bit structures and differences of the encoding formats. Explore The File Status Return Codes that are used to interpret the results of accessing VSAM data sets and/or QSAM files. Internet Access RequiredThe following links will require an internet connection. A good place to start is The SimoTime Home Page for access to white papers, program examples and product information. This link requires an Internet Connection Explore The Micro Focus Web Site for more information about products (including Micro Focus COBOL) and services available from Micro Focus. This link requires an Internet Connection. Explore the GnuCOBOL Technologies available from SourceForge. SourceForge is an Open Source community resource dedicated to helping open source projects be as successful as possible. GnuCOBOL (formerly OpenCOBOL) is a COBOL compiler with run time support. The compiler (cobc) translates COBOL source to executable using intermediate C, designated C compiler and linker. This link will require an Internet Connection. Glossary of TermsExplore the Glossary of Terms for a list of terms and definitions used in this suite of documents and white papers. Contact or FeedbackThis document was created and is maintained by SimoTime Technologies. If you have any questions, suggestions, comments or feedback please use the following contact information.
We appreciate hearing from you. Company OverviewSimoTime Technologies was founded in 1987 and is a privately owned company. We specialize in the creation and deployment of business applications using new or existing technologies and services. We have a team of individuals that understand the broad range of technologies being used in today's environments. Our customers include small businesses using Internet technologies to corporations using very large mainframe systems. Quite often, to reach larger markets or provide a higher level of service to existing customers it requires the newer Internet technologies to work in a complementary manner with existing corporate mainframe systems. We specialize in preparing applications and the associated data that are currently residing on a single platform to be distributed across a variety of platforms. Preparing the application programs will require the transfer of source members that will be compiled and deployed on the target platform. The data will need to be transferred between the systems and may need to be converted and validated at various stages within the process. SimoTime has the technology, services and experience to assist in the application and data management tasks involved with doing business in a multi-system environment. Whether you want to use the Internet to expand into new market segments or as a delivery vehicle for existing business functions simply give us a call or check the web site at http://www.simotime.com
|