WO2017020089A1 - A system, method, computer program and data signal for the provision of mainframe applications to a mainframe computing system - Google Patents

A system, method, computer program and data signal for the provision of mainframe applications to a mainframe computing system Download PDF

Info

Publication number
WO2017020089A1
WO2017020089A1 PCT/AU2016/050706 AU2016050706W WO2017020089A1 WO 2017020089 A1 WO2017020089 A1 WO 2017020089A1 AU 2016050706 W AU2016050706 W AU 2016050706W WO 2017020089 A1 WO2017020089 A1 WO 2017020089A1
Authority
WO
WIPO (PCT)
Prior art keywords
mainframe
application
computing system
accordance
mainframe application
Prior art date
Application number
PCT/AU2016/050706
Other languages
French (fr)
Inventor
Frank FERA
Original Assignee
Mainframe Cloud Pty Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from AU2015903100A external-priority patent/AU2015903100A0/en
Application filed by Mainframe Cloud Pty Ltd filed Critical Mainframe Cloud Pty Ltd
Publication of WO2017020089A1 publication Critical patent/WO2017020089A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment

Definitions

  • the present invention relates to a system, method, computer program and data signal for the provision of mainframe applications to a mainframe computing system.
  • Embodiments of the invention find particular, but not exclusive, use in the provision of an executable program from an application server to a mainframe via execution within a virtual server on the mainframe.
  • Mainframe computers are distinguished from other computing systems by engineering that results in very high reliability (e.g. through the use of redundant systems and high quality components), extensive input-output facilities to process a very high volume of transactions, high hardware utilisation rates through software (and hardware) processes that allow for virtualisation of hardware, and strong backward compatibility between successive generations of mainframe hardware and software.
  • mainframe computers are built for reliability and dependability in critical applications where failure (either in hardware or software) could have serious financial or real world consequences.
  • mainframe computers are the computers used by large corporate and governmental organisations to process very large volumes of data in critical applications (such as financial transactions, military exercises, etc).
  • a system for the provision of mainframe applications to a mainframe computing system comprising a mainframe application server arranged to store at least one mainframe application capable of executing at least one instruction on the mainframe computing system, an intermediate computing system in communication with the mainframe application server and arranged to be accessible via a user device, wherein, upon receiving an instruction from one of the user device and the intermediate computing system to execute the at least one mainframe application, the mainframe application server is arranged to provide the at least one mainframe application to the mainframe computing system.
  • the intermediate computing system further comprises a packaging application arranged to package the at least one mainframe application into a format capable of being executed by the mainframe computing system, prior to providing the at least one mainframe application to the mainframe computing system.
  • the mainframe application server may further comprise an application selection interface arranged to allow an end user to select the at least one mainframe computing application via at least one of the user device and the intermediate computing system.
  • system further comprises a programmer interface arranged to allow a programmer to publish the at least one mainframe application.
  • the at least one mainframe application may be written in an interpreted computer program language.
  • the at least one mainframe application may further be provided in at least one of a Hypertext Mark-up Language, a Control Sheet Style language and a Java language.
  • the intermediate computing system may include a data input module arranged to provide input data to the mainframe computing system when providing the at least one mainframe application.
  • the intermediate computing system may include a data receiving module arranged to receive output data from the mainframe computing system.
  • the at least one of the input and output data may be provided by the user via the application selection interface.
  • system further comprises a mainframe computing system emulator arranged to emulate a mainframe computing system.
  • system further comprises a registration module arranged to allow a programmer to register the at least one mainframe application prior to publication of the at least one mainframe application.
  • the mainframe application server may be accessible via a web based interface.
  • the method comprises the further step of the mainframe application server utilising an application selection interface arranged to allow an end user to select the at least one mainframe computing application via at least one of the user device and the intermediate computing system.
  • the method may comprise the further step of a programmer utilising a programmer interface arranged to allow the programmer to publish the at least one mainframe application.
  • the method may comprise the further step of the mainframe application server utilising an Application Program Interface arranged to provide programming code arranged to interface with the at least one mainframe application to allow the at least one mainframe application to be executable on the mainframe computing system.
  • the method may comprise the further step of the intermediate computing system utilising a data input module arranged to provide input data to the mainframe computing system when providing the at least one mainframe application.
  • the method comprises the further step of at least one of the input and output data being provided by the user via the application selection interface.
  • the method may comprise the further step of a programmer utilising a registration module arranged to allow the programmer to register the at least one mainframe application prior to publication of the at least one mainframe application.
  • a data signal including at least one encoded instruction which, when executed by a computing system, carries out the method steps in accordance with the second embodiment of the invention.
  • Fig. 1 illustrates an example system usable to operate an embodiment of the present invention.
  • FIG. 2 illustrates an example embodiment of a system in accordance with the present invention.
  • FIGs. 3 and 4 are flowcharts illustrating the steps of methods in accordance with an embodiment of the invention.
  • Fig. 6 is a schematic diagram illustrating an example embodiment of a system in accordance with the present invention.
  • Fig. 7 is a flowchart illustrating the steps of a method in accordance with an embodiment of the invention.
  • FIG. 1 there is shown an example mainframe computing system which is capable of remotely operating and executing an application in accordance with an embodiment of the present invention.
  • FIG. 1 there is shown a schematic diagram of a computing system, which in this embodiment is a mainframe computer 100 suitable for use with an embodiment of the present invention.
  • the mainframe computer 100 may be used to execute applications and/or system services such as a system and method for remotely operating and executing an application in accordance with an embodiment of the present invention.
  • the mainframe computer 100 may comprise suitable components necessary to receive, store and execute appropriate computer instructions.
  • the components may include one or more processors 102, read only memory (ROM) 104, random access memory (RAM) 106, input/output devices such as disc drives 108, direct input devices 110 (such as a 'dumb terminal') and one or more communications link(s) 114.
  • the mainframe computer 100 includes instructions that may be installed in ROM 104, RAM 106 or disc drives 112 and may be executed by the processor 102.
  • At least one of a plurality of communications link 114 may be connected to an external computing network through a telecommunications network.
  • the mainframe computer 100 includes a suitable operating system 118 which may also reside on a storage device or in the ROM of the server 100.
  • the operating system is arranged to interact one or more computer programs to cause the mainframe computer to carry out the steps, functions and/or procedures in accordance with the embodiments of the invention described herein.
  • FIG. 2 there is shown a schematic diagram of a system 200 which includes a MainspaceTM Java Application 202 (i.e. app software application) which operates on a personal computer 204.
  • the personal computer 204 is in communication (e.g. via a network or via a direct cable connection, not shown) to a mainframe computing system 206, the system 200 being a system in accordance with an embodiment of the present invention.
  • the Mainspace Java App 202 includes appropriate code to operate a Graphical User Interface (GUI) 208, and certain aspects of the mainframe program logic 210.
  • GUI Graphical User Interface
  • the Mainspace Java App 202 once deployed, interfaces with the mainframe computing system 206 to launch and operate a Mainspace Agent program 212, as shown in Figure 2.
  • the process by which the Mainspace Java App and Mainspace Agent operate are described in more detail below.
  • the Mainspace Agent is the vehicle by which the mainframe program is deployed on the mainframe (i.e. the program the user wishes to deploy and execute on the mainframe computing system).
  • REstructured extended eXecutor (REXX) language which is an interpreted programming language written developed by IBM, a US corporation (see http:/ /www.i bm .eom/rexx/).
  • the program is stored in a conventional personal computer file file in the REXX format.
  • Mainspace agent i.e. the mainframe program
  • the Mainspace Agent is run on the mainframe via a Job Control language (JCL) job, which is a scripting language used on IBM mainframes (see, for example, JCL) job, which is a scripting language used on IBM mainframes (see, for example,
  • JCL Job Control language
  • the JCL source used to carry out this process is also coded and stored in a conventional personal computer file in a conventional JCL format.
  • the batch process comprises the following steps. Firstly, at step 302 the REXX source is extracted. Secondly, at step 304 a Java class source file ("ZZAGENTREXX.java" Java program) is created within the Mainspace Java application project (to replace the existing file of the same name).
  • a Java class source file (“ZZAGENTREXX.java” Java program) is created within the Mainspace Java application project (to replace the existing file of the same name).
  • Java source code is constructed (i.e. the code is generated automatically by the batch process) to assign the content of the REXX source to a Java object variable.
  • the Mainspace Java application is compiled, resulting in the Mainspace mainframe code residing within the Mainspace Java application as a Java object.
  • the JCL object described above is dynamically inserted with required user profile data (setup information preferences previously defined by the user via a setup dialog), programmatic information required to allow multiple Mainspace Agent submissions on the same mainframe and network information to allow the Mainspace Agent to communicate with the Mainspace Java application that submitted it.
  • step 404 the JCL object is inserted with the Mainspace Agent EXX program.
  • step 406 the JCL is submitted to run on the mainframe from the Mainspace Java PC application using the technique described below.
  • the JCL job is transferred to the mainframe.
  • the Mainspace PC Java application includes an FTP Client program, which is used to seamlessly FTP transfer the Mainspace Agent JCL to the mainframe to start the Mainspace Agent.
  • FTP Client program used to seamlessly FTP transfer the Mainspace Agent JCL to the mainframe to start the Mainspace Agent.
  • the user is not explicitly aware that FTP is used to transfer the file. Rather, the process occurs in the background without the user's explicit knowledge.
  • the interface proxy (referred to in Figure 2 as the "Mainspace Agent Program 212") is an interface designed to host programs received from the Mainspace Java App202.
  • the Agent program 500 (which is equivalent to 212 in Figure 2) includes an ACTIONS processor (the API) 502 and a communications layer 504.
  • the communication layer is a Socket Server routine which is used to communicate with the Mainspace PC Java application that contains the software application logic and GUI code as described with reference to the no-install technology.
  • the ACTIONS processor interfaces with various parts of the mainframe, which are all the functional components that a mainframe user would ever need to access, in order to work on or manage the mainframe.
  • the functional components include:
  • SDSF System Display and Search Facility
  • the System log a part of SDSF, is a widely used utility by mainframe professionals to diagnose mainframe system activity. Its current green screen character based MS-DOS like display is an extremely cumbersome utility to work with, especially when several iterations of searching is usually required for any given task.
  • the Mainspace system log interface implements a useful windows like graphical user interface with scrolling and advanced filtering which is a powerful tool for daily use and also an important part of Mainspace applications requiring programmatic log analysis.
  • a PDS dataset, SEQ dataset and members are the PC equivalent of folders and files on the mainframe.
  • the DATASET interface is a powerful tool for performing all dataset actions on the mainframe, including read, write, delete, rename, copy, create, and all other administrative file related tasks.
  • the user command interface allows the execution of user written procedures (REXX programs, or CLIST programs). Where a specific function is not supported, the ability to allow users to create their own functions, allows the possibility to perform custom solutions on the mainframe.
  • MVS Multiple Virtual Storage
  • IBM is an operating system from IBM that continues to run on many of IBM's mainframe and large server computers.
  • the tasks of starting, running, and stopping the MVS operating system involve controlling the MVS system software and most of the installation's hardware, including processors, channel paths, and I/O devices.
  • MVS system commands control the z/OS operating system.
  • MVS system commands can be used to display device status and channel paths, and display or change the SMS configuration.
  • the functional components provide the functionality required to monitor and control various aspects of mainframes' operation, including but not limited to mainframe applications, system information, resources, network, log files and mainframe files.
  • FIG.6 there is shown a Mainspace virtual platform 600 which allows developers to create and deploy mainframe software solutions via a secure hybrid cloud platform.
  • the platform allows developers to create and distribute mainframe software applications without needing to develop a graphical user interface architecture or a mainframe interface architecture.
  • a publicly accessible "customer" i.e. end user or purchaser
  • the developer does not need to worry about typical commercialisation challenges, such as securing a customer or interfacing directly with a customer.
  • FIG. 6 there is shown a platform 600 including a publicly accessible website 602 where a mainframe customer is capable of logging in and launching a Mainspace application.
  • a user takes the following steps to operate Mainspace: 1.
  • the user launches the Mainspace application from the mainframecloud website, which caches the software to the user PC (Oracle Java Web Start one direction deployment) and then starts the Mainspace application on the PC (within their secure intranet).
  • PC Organic Java Web Start one direction deployment
  • the Mainspace PC application is an intuitive Graphical User Interface (GUI). When the application starts up, users are able to immediately interact with their mainframe via the PC GUI.
  • GUI Graphical User Interface
  • a user then interacts with the Mainframe via the Mainspace GUI, editing and working with files via the Zexplorer app, or performing mainframe management functions via the Zops app.
  • the Mainspace App Store is a component in the cloud
  • the Mainspace App Developer Perspective is a component in the cloud www.mainframecloud.com.au, where developers can code and publish Mainspace Apps via a Mainspace IDE web page.
  • An App Store developer creates a computer program to run on the Mainspace platform (Mainspace App).
  • the computer program is written in industry standard web code technology (HTM L/HTML5/CSS/CSS3/JavaScript/third-party JavaScript libraries etc.).
  • the web page code includes embedded Mainspace API code (ACTIONS API) to allow the Mainspace App to obtain mainframe data for the application to work with. This is the method by which a Mainspace PC application interfaces with the mainframe.
  • the computer programs are known as MWA pages (Mainspace Web App pages).
  • ... can include calls to new MWA files (pages), another API call and GUI update routine, or a redisplay of the main chart calling the Data Area API again with different API call criteria.
  • the developer may code directly on the cloud platform IDE.
  • developers register their App on the cloud platform; information which is later used for App Search queries and all other associated actions for App administration.
  • Mainframe computers due to their high security, high reliability and ability to run critical applications in a dependable manner, are generally very constrained in the software applications that are installed and run, and moreover, any addition of software applications and/or upgrades to software applications are generally preceded by a long period of testing, before an application is installed on a 'live' mainframe.
  • the rigorous testing and long installation process associated with mainframe software applications results in high costs and long lead times to deploy new applications or upgrade existing applications.
  • mainframe software applications is, by nature, very small and specialised.
  • the very high cost of mainframes, the relatively small user base, and the need to ensure extremely high reliability in the deployment and execution of mainframe software applications has meant that there is a high cost associated with application development, coupled with a low demand in the marketplace.
  • These market forces, coupled with a very conservative user base of potential clients, has meant that there is little innovation in the field of mainframe software development ecosystem.
  • there is a strong need or desire for new and innovative products in the mainframe software development ecosystem notwithstanding the overriding issues of reliability, security and long development and testing times.
  • Embodiments of the present invention ameliorate the need to rigorously test and install new mainframe software applications, as the 'no-install' technology which allows an application to be executed on a mainframe computing system without needing to install and test the application beforehand.
  • the 'no-install' technology described above is claimed in another co-pending patent application.
  • the embodiment described herein (referred to as the 'app store') provides another important component which allows for the use of applications on a mainframe without requiring any installation of an application.
  • the use of the app store in conjunction with the no-install technology removes the need for a mainframe user to create new software to run on the mainframe for all new mainframe software solutions.
  • new mainframe software applications can be developed in any modern language (such as Web JavaScript) as opposed to the current old languages used (Assembler, COBOL) of which a skills shortage is occurring as mainframe programmers are retiring from the workforce.
  • the system, method, computer program and data signal in accordance with the embodiment described herein finds use in any situation where it is desirable to execute an application on a mainframe without wishing to expend time and resources testing the application for suitability.
  • the no-install technology interfaces with the broader Mainspace virtual platform solution which are described and defined in other co-pending patent applications filed by Mainframe Cloud Pty Ltd. Together, the no-install technology and the other Mainframe Cloud Pty Ltd solutions address the need in the mainframe market to provide greater and lower cost access to mainframe computing solutions.
  • the embodiments and broader invention described herein refer to a mainframe software application, namely a software application arranged to operate on a mainframe computing system.
  • the embodiments and broader invention may also find use in analogous situations, such as the operation of software on a server, a distributed computing network, a so-called 'supercomputer', or any other use analogous to the use of a mainframe for transactional or calculation/computational purposes.
  • an application programming interface API
  • ADK application development kit
  • a series of libraries for use by a developer, for the creation of software applications which are to be used on any one or more mainframe computing platforms or analogous devices, such as a server structure, including a 'data farm' or within a bespoke transaction processing system.
  • program modules include routines, programs, objects, components and data files that perform or assist in the performance of particular functions
  • functionality of the software applications described and defined herein may be distributed across a number of routines, programs, objects or components to achieve the same functionality as the embodiments and the broader invention claimed herein. Such variations and modifications are within the purview of those skilled in the art.

Abstract

The present invention relates to a system, method, computer program and data signal for the provision of a mainframe application to a mainframe computing system. There is provided, in one aspect, a mainframe application server arranged to store mainframe applications. An intermediate computing system is in communication with the mainframe application server and is capable of receiving instructions from a user device. The user device and/or intermediate computing system is arranged to communicate with the mainframe application server to provide the mainframe applications to the mainframe computing system.

Description

A SYSTEM, METHOD, COMPUTER PROGRAM AND DATA SIGNAL FOR THE PROVISION OF MAINFRAM E APPLICATIONS TO A MAINFRAME COM PUTING SYSTEM
FIELD OF THE INVENTION
[0001] The present invention relates to a system, method, computer program and data signal for the provision of mainframe applications to a mainframe computing system.
Embodiments of the invention find particular, but not exclusive, use in the provision of an executable program from an application server to a mainframe via execution within a virtual server on the mainframe.
BACKGROUND OF THE INVENTION
[0002] Mainframe computers, despite assertions to the contrary, are enjoying a renaissance. The term 'mainframe' originally referred to the large cabinets that held the components of first generation computing systems. As computers became smaller and began to penetrate many market sectors and organisations, the term 'mainframe' came to refer to high-end, commercial computers used by large corporate and government organisations to process very large numbers of computing tasks ('transactions').
[0003] Mainframe computers are distinguished from other computing systems by engineering that results in very high reliability (e.g. through the use of redundant systems and high quality components), extensive input-output facilities to process a very high volume of transactions, high hardware utilisation rates through software (and hardware) processes that allow for virtualisation of hardware, and strong backward compatibility between successive generations of mainframe hardware and software. In other words, mainframe computers are built for reliability and dependability in critical applications where failure (either in hardware or software) could have serious financial or real world consequences. [0004] As such, mainframe computers are the computers used by large corporate and governmental organisations to process very large volumes of data in critical applications (such as financial transactions, military exercises, etc).
[0005] Over time, with the development of personal computers, widely distributed computing networks (such as the Internet), newer and cheaper ways of achieving redundancy (e.g. via a network of low-cost computers), more sophisticated manufacturing techniques which resulted in more reliable hardware across all sectors of the computer market, and the exponential growth in computing power coupled with the simultaneous miniaturisation of electronic circuitry, resulted in smaller computers that were reliable enough to be used for many tasks traditionally reserved for mainframe computers. In turn, mainframe computers remained very specialist and niche computers, used by only a handful of institutions for very specific applications.
[0006] Many commentators were of the opinion that mainframe computers would slowly die out, as the traditional user base of mainframe computers, such as banks, insurance companies, government departments, etc., moved to different types of computing systems for many of their ancillary (and core) computing needs.
[0007] However, with the explosion of Internet commerce and the revived need for ultra- secure and ultra-reliable computers that are optimised for transaction processing, there has been a renewed interest and uptake in mainframe computing.
[0008] It is against this background that embodiments of the invention have been developed.
SU MMARY OF THE INVENTION
[0009] In a first aspect of the invention, there is provided a system for the provision of mainframe applications to a mainframe computing system, comprising a mainframe application server arranged to store at least one mainframe application capable of executing at least one instruction on the mainframe computing system, an intermediate computing system in communication with the mainframe application server and arranged to be accessible via a user device, wherein, upon receiving an instruction from one of the user device and the intermediate computing system to execute the at least one mainframe application, the mainframe application server is arranged to provide the at least one mainframe application to the mainframe computing system.
[0010] In one embodiment, the intermediate computing system further comprises a packaging application arranged to package the at least one mainframe application into a format capable of being executed by the mainframe computing system, prior to providing the at least one mainframe application to the mainframe computing system.
[0011] The mainframe application server may further comprise an application selection interface arranged to allow an end user to select the at least one mainframe computing application via at least one of the user device and the intermediate computing system.
[0012] In one embodiment, the system further comprises a programmer interface arranged to allow a programmer to publish the at least one mainframe application.
[0013] The at least one mainframe application may be written in an interpreted computer program language. The at least one mainframe application may further be provided in at least one of a Hypertext Mark-up Language, a Control Sheet Style language and a Java language.
[0014] In one embodiment, the mainframe application server further includes an Application Program Interface arranged to provide programming code arranged to interface with the at least one mainframe application to allow the at least one mainframe application to be executable on the mainframe computing system.
[0015] The intermediate computing system may include a data input module arranged to provide input data to the mainframe computing system when providing the at least one mainframe application.
[0016] In one embodiment, the intermediate computing system may include a data receiving module arranged to receive output data from the mainframe computing system.
[0017] The at least one of the input and output data may be provided by the user via the application selection interface.
[0018] In one embodiment, the system further comprises a mainframe computing system emulator arranged to emulate a mainframe computing system. [0019] In one embodiment the system further comprises a registration module arranged to allow a programmer to register the at least one mainframe application prior to publication of the at least one mainframe application.
[0020] The intermediate computing system may further comprise a download module arranged to download the at least one mainframe application to the intermediate computing system.
[0021] The mainframe application server may be accessible via a web based interface.
[0022] In one embodiment the system further comprises a payment gateway arranged to allow a user to purchase the at least one mainframe computing application.
[0023] In a second aspect of the invention, there is provided a method for the provision of mainframe applications to a mainframe computing system, comprising the steps of accessing a mainframe application server having at least one mainframe application capable of execution on at least one instruction on the mainframe computing system via an intermediate computing system in communication with the mainframe application server, wherein, upon receiving an instruction from the intermediate computing system to execute the at least one mainframe application, the mainframe application server is arranged to provide the at least one mainframe application to the mainframe computing system.
[0024] The method may comprise the further step of the intermediate computing system utilising a packaging application arranged to package the at least one mainframe application into a format capable of being executed by the mainframe computing system, prior to providing the at least one mainframe application to the mainframe computing system.
[0025] In one embodiment the method comprises the further step of the mainframe application server utilising an application selection interface arranged to allow an end user to select the at least one mainframe computing application via at least one of the user device and the intermediate computing system.
[0026] The method may comprise the further step of a programmer utilising a programmer interface arranged to allow the programmer to publish the at least one mainframe application.
[0027] The method may comprise the further step of the mainframe application server utilising an Application Program Interface arranged to provide programming code arranged to interface with the at least one mainframe application to allow the at least one mainframe application to be executable on the mainframe computing system.
[0028] The method may comprise the further step of the intermediate computing system utilising a data input module arranged to provide input data to the mainframe computing system when providing the at least one mainframe application.
[0029] In one embodiment, the method comprises the further step of the intermediate computing system utilising a data receiving module to receive output data from the mainframe computing system.
[0030] In one embodiment, the method comprises the further step of at least one of the input and output data being provided by the user via the application selection interface.
[0031] The method may comprise the further step of a programmer utilising a mainframe computing system emulator arranged to emulate a mainframe computing system to test the at least one mainframe application.
[0032] The method may comprise the further step of a programmer utilising a registration module arranged to allow the programmer to register the at least one mainframe application prior to publication of the at least one mainframe application.
[0033] In one embodiment the method comprises the further step of the intermediate computing system utilising a download module to download the at least one mainframe application to the intermediate computing system.
[0034] In a third aspect of the invention, there is provided a software application which includes at least one instruction, which, when executed by a computing system, carries out the method steps in accordance with the second embodiment of the invention.
[0035] In a fourth aspect of the invention, there is provided a data signal including at least one encoded instruction which, when executed by a computing system, carries out the method steps in accordance with the second embodiment of the invention.
BRIEF DESCRIPTION OF THE DRAWINGS
[0036] The foregoing will be apparent from the following more particular description of example embodiments of the invention, as illustrated in the accompanying drawings in which like reference characters refer to the same parts throughout the different views. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating embodiments of the present invention.
[0037] Fig. 1 illustrates an example system usable to operate an embodiment of the present invention.
[0038] Fig. 2 illustrates an example embodiment of a system in accordance with the present invention.
[0039] Figs. 3 and 4 are flowcharts illustrating the steps of methods in accordance with an embodiment of the invention.
[0040] Fig. 5 is a schematic diagram illustrating an example embodiment of a system in accordance with the present invention.
[0041] Fig. 6 is a schematic diagram illustrating an example embodiment of a system in accordance with the present invention.
[0042] Fig. 7 is a flowchart illustrating the steps of a method in accordance with an embodiment of the invention.
DETAILED DESCRIPTION OF EM BODIMENTS OF TH E INVENTION Overview
[0043] A description of example embodiments of the invention follows. Like terms are used to denote functionally similar integers and features in the Figures.
[0044] Referring to Figure 1, there is shown an example mainframe computing system which is capable of remotely operating and executing an application in accordance with an embodiment of the present invention.
[0045] In Figure 1 there is shown a schematic diagram of a computing system, which in this embodiment is a mainframe computer 100 suitable for use with an embodiment of the present invention. The mainframe computer 100 may be used to execute applications and/or system services such as a system and method for remotely operating and executing an application in accordance with an embodiment of the present invention.
[0046] With reference to Figure 1, the mainframe computer 100 may comprise suitable components necessary to receive, store and execute appropriate computer instructions. The components may include one or more processors 102, read only memory (ROM) 104, random access memory (RAM) 106, input/output devices such as disc drives 108, direct input devices 110 (such as a 'dumb terminal') and one or more communications link(s) 114.
[0047] The mainframe computer 100 includes instructions that may be installed in ROM 104, RAM 106 or disc drives 112 and may be executed by the processor 102. There may be provided a plurality of communication links 114 which may variously connect to one or more computing devices 110 such as web servers, personal computers, laptops, wireless or handheld computing devices, or mobile communication devices such as a mobile (cell) telephone. At least one of a plurality of communications link 114 may be connected to an external computing network through a telecommunications network.
[0048] The mainframe computer 100 includes a suitable operating system 118 which may also reside on a storage device or in the ROM of the server 100. The operating system is arranged to interact one or more computer programs to cause the mainframe computer to carry out the steps, functions and/or procedures in accordance with the embodiments of the invention described herein.
[0049] Broadly, the invention relates to a method of delivering at least one program instruction to a mainframe system. The method comprises the steps of providing to the mainframe system a program embedded in at least one command as a processable job, the program including a server module arranged to operate as a virtual server. Upon the processable job being executed on the mainframe, the virtual server is started and is capable of receiving further instructions to operate the mainframe computing system.
[0050] Other aspects of the broad inventive concept relate to a corresponding method and data signal.
No-Install Technology - packaging and deploying applications to a mainframe
[0051] Referring now to Figure 2, there is shown a schematic diagram of a system 200 which includes a Mainspace™ Java Application 202 (i.e. app software application) which operates on a personal computer 204. The personal computer 204 is in communication (e.g. via a network or via a direct cable connection, not shown) to a mainframe computing system 206, the system 200 being a system in accordance with an embodiment of the present invention.
[0052] In the ensuing description, reference may be made to the 'Mainspace' trade mark, a trade mark of Mainframe Cloud Pty Ltd, an Australian limited company. The 'Mainspace' trade mark is used in the ensuing description to refer to one specific commercial embodiment of the invention and no 'gloss' should be taken from the use of the trade mark or the specific reference to features of the commercial embodiment to limit the broader invention defined and described herein. The commercial embodiment is described solely to assist the reader in better understanding one embodiment of the invention, and the description of the commercial embodiment should be taken at all times as being illustrative rather than restrictive.
[0053] Returning to Figure 2, the Mainspace Java App 202 includes appropriate code to operate a Graphical User Interface (GUI) 208, and certain aspects of the mainframe program logic 210. The Mainspace Java App 202, once deployed, interfaces with the mainframe computing system 206 to launch and operate a Mainspace Agent program 212, as shown in Figure 2. The process by which the Mainspace Java App and Mainspace Agent operate are described in more detail below.
[0054] It will be understood that the Mainspace Java App is the subject of the present application, and the Mainspace Agent is the subject of a co-pending application.
[0055] In the context of the embodiment described herein, the Mainspace Agent is the vehicle by which the mainframe program is deployed on the mainframe (i.e. the program the user wishes to deploy and execute on the mainframe computing system).
[0056] In the embodiment described, the mainframe program is written in the
REstructured extended eXecutor (REXX) language, which is an interpreted programming language written developed by IBM, a US corporation (see http:/ /www.i bm .eom/rexx/). The program is stored in a conventional personal computer file file in the REXX format. For the purpose of the ensuing description, reference will be made to a single Mainspace agent (i.e. the mainframe program). However, it will be understood that the user may have multiple mainframe programs. [0057] The Mainspace Agent is run on the mainframe via a Job Control language (JCL) job, which is a scripting language used on IBM mainframes (see, for example,
ht^:/ w edbooksJbm om reclbooks/pdfs/sg247436.pdi for an introduction to JCL).
[0058] That is, the Mainspace Agent, which is programmed in EXX, is 'packaged' into a JCL job. The JCL job is then submitted to the mainframe over the network (usually by using the File Transfer Protocol (FTP) and once submitted, the JCL job runs the Mainspace Agent REXX program on the mainframe within a virtual server which is opened up by the Mainspace agent program within the mainframe computer.
[0059] The JCL source used to carry out this process is also coded and stored in a conventional personal computer file in a conventional JCL format.
Packaging
[0060] Referring to Figure 3, the process of packaging will now be described in more detail with reference to flow chart 300. When packaging the Mainspace Java application a custom built batch process is utilised.
[0061] The batch process comprises the following steps. Firstly, at step 302 the REXX source is extracted. Secondly, at step 304 a Java class source file ("ZZAGENTREXX.java" Java program) is created within the Mainspace Java application project (to replace the existing file of the same name).
[0062] Thirdly, at step 306, Java source code is constructed (i.e. the code is generated automatically by the batch process) to assign the content of the REXX source to a Java object variable. Fourthly, at step 308, the Mainspace Java application is compiled, resulting in the Mainspace mainframe code residing within the Mainspace Java application as a Java object.
[0063] The same steps are taken for the JCL source (creates Java source file
ZZAGENTJCL.java). The "mainframe entity java objects" generated in this way are then ready to be used to launch the application on the mainframe, as described below.
Launch Time [0064] To launch a program on the mainframe, a user executes the Mainspace PC Java application, to have access to one or more Mainspace Agents.
[0065] The user may then, at their discretion, execute a "Start Mainspace Agent" action, which results in the process described generally at Figure 4 with reference to flow chart 400.
[0066] Firstly, at step 402, the JCL object described above is dynamically inserted with required user profile data (setup information preferences previously defined by the user via a setup dialog), programmatic information required to allow multiple Mainspace Agent submissions on the same mainframe and network information to allow the Mainspace Agent to communicate with the Mainspace Java application that submitted it.
[0067] Secondly, at step 404, the JCL object is inserted with the Mainspace Agent EXX program.
[0068] Thirdly, at step 406, the JCL is submitted to run on the mainframe from the Mainspace Java PC application using the technique described below.
Execution of Application
[0069] Firstly, at step 408, the JCL job is transferred to the mainframe. When transferring a file to the mainframe using FTP, the FTP SITE COMMAN D "FILETYPE=JES" can be used to flag with the mainframe that the uploaded file is to be executed as a JCL job. In this way the user submits a JCL job to run on the mainframe, remotely from their PC, without saving any files on the mainframe.
[0070] In the embodiment described herein, the Mainspace PC Java application includes an FTP Client program, which is used to seamlessly FTP transfer the Mainspace Agent JCL to the mainframe to start the Mainspace Agent. In other words, the user is not explicitly aware that FTP is used to transfer the file. Rather, the process occurs in the background without the user's explicit knowledge.
[0071] The standard practice for running programs from a JCL job is to code the JCL to point to an external file which contains the program to run.
[0072] It is also possible to run a program from JCL by embedding the whole program physically inside the JCL file (instream to JCL), instead of pointing to an external file. With the "mainframe entity java objects" design (building the JCL and embedded REXX dynamically within our Java application before launching to mainframe), and the FTP/JCL feature, this instream approach provides the ability to run a mainframe software solution on the mainframe without installing any software on the mainframe.
Mainframe Interface "Proxy"
[0073] The interface proxy (referred to in Figure 2 as the "Mainspace Agent Program 212") is an interface designed to host programs received from the Mainspace Java App202. Referring to Figure 5, the Agent program 500 (which is equivalent to 212 in Figure 2) includes an ACTIONS processor (the API) 502 and a communications layer 504.
[0074] The communication layer is a Socket Server routine which is used to communicate with the Mainspace PC Java application that contains the software application logic and GUI code as described with reference to the no-install technology.
[0075] The ACTIONS processor interfaces with various parts of the mainframe, which are all the functional components that a mainframe user would ever need to access, in order to work on or manage the mainframe.
[0076] In the embodiment described herein, the functional components include:
1. SDSF Interface
[0077] The System Display and Search Facility (SDSF), a feature of IBM mainframes running z/OS, enables users and administrators to view and control various aspects of mainframes' operation. These include:
Jobs and output;
Devices, such as printers, readers, lines, and spool offloaders;
Checks from IBM Health Checker for z/OS;
System resources, such as WLM scheduling environments, the members of your MAS, and JES job classes;
Status of Unix System Services processes;
System information; and
System log and action messages. 2. SYSLOG Interface
[0078] The System log, a part of SDSF, is a widely used utility by mainframe professionals to diagnose mainframe system activity. Its current green screen character based MS-DOS like display is an extremely cumbersome utility to work with, especially when several iterations of searching is usually required for any given task. The Mainspace system log interface implements a useful windows like graphical user interface with scrolling and advanced filtering which is a powerful tool for daily use and also an important part of Mainspace applications requiring programmatic log analysis.
3. TSO Commands Interface
[0079] Time Sharing Option (TSO) is an interactive time-sharing environment for IBM mainframe operating systems. Allows users to create an interactive session with the z/OS system, and commands interface to z/OS. TSO Commands control access to the system, determines terminal characteristics, allows communication between TSO users, executes programs and manages data sets.
4. DATASET Interface
[0080] A PDS dataset, SEQ dataset and members are the PC equivalent of folders and files on the mainframe. The DATASET interface is a powerful tool for performing all dataset actions on the mainframe, including read, write, delete, rename, copy, create, and all other administrative file related tasks.
5. USER Commands Interface
[0081] Much like TSO commands, the user command interface allows the execution of user written procedures (REXX programs, or CLIST programs). Where a specific function is not supported, the ability to allow users to create their own functions, allows the possibility to perform custom solutions on the mainframe.
6. MVS System Commands Interface
[0082] MVS (Multiple Virtual Storage) is an operating system from IBM that continues to run on many of IBM's mainframe and large server computers. The tasks of starting, running, and stopping the MVS operating system involve controlling the MVS system software and most of the installation's hardware, including processors, channel paths, and I/O devices. MVS system commands control the z/OS operating system. MVS system commands can be used to display device status and channel paths, and display or change the SMS configuration.
[0083] Combined, the functional components provide the functionality required to monitor and control various aspects of mainframes' operation, including but not limited to mainframe applications, system information, resources, network, log files and mainframe files.
Mainspace Άρρ Store' and Computing Platform
[0084] Referring to Fig.6, there is shown a Mainspace virtual platform 600 which allows developers to create and deploy mainframe software solutions via a secure hybrid cloud platform. The platform allows developers to create and distribute mainframe software applications without needing to develop a graphical user interface architecture or a mainframe interface architecture. Moreover, by providing a publicly accessible "customer" (i.e. end user or purchaser) interface, the developer does not need to worry about typical commercialisation challenges, such as securing a customer or interfacing directly with a customer.
Mainframe Customer Interface
[0085] Referring to Fig. 6, there is shown a platform 600 including a publicly accessible website 602 where a mainframe customer is capable of logging in and launching a Mainspace application.
[0086] In more detail and referring to Fig. 7, the platform includes a hybrid cloud solution (in this embodiment, in the form of website 602 combined with user PC 604) which provides a number of functions, including deploying from the public website to the customer intranet using Oracle Java Web Start one direction deployment at step 702, starting the Mainspace Java application on the customer PC at step 704, connecting with the Mainframe via FTP at step 706, launching the Mainspace Agent on the customer mainframe at step 708, and connecting the mainframe Mainspace Agent to the user Mainspace PC Java application at step 710, effectively creating a virtual private cloud.
[0087] In more detail, a user takes the following steps to operate Mainspace: 1. The user launches the Mainspace application from the mainframecloud website, which caches the software to the user PC (Oracle Java Web Start one direction deployment) and then starts the Mainspace application on the PC (within their secure intranet).
2. The Mainspace PC application is an intuitive Graphical User Interface (GUI). When the application starts up, users are able to immediately interact with their mainframe via the PC GUI.
3. When the PC application has started, it connects with the Mainframe systems that have been defined in the user setup, a user then logs into the Mainframe system they want to work on via the PC GUI using their existing Mainframe security credentials.
4. The user then launches the Mainspace agent on the mainframe system.
5. Once the agent has started, a connection is established, and all the supported features become available.
6. A user then interacts with the Mainframe via the Mainspace GUI, editing and working with files via the Zexplorer app, or performing mainframe management functions via the Zops app.
7. If a Mainspace agent is already running when the user logs in to the mainframe, the agent automatically connects, hence no start is required.
Customer Interaction
[0088] The Mainspace App Store is a component in the cloud
www.mainframecloud.com.au, where Mainspace customers can search and review published Mainspace Apps via the App Store web page. Customers have the option to trial Apps and then pay subscription via a monthly Software as a Service (SaaS) model. Utilising the
Mainspace Hybrid Cloud platform, when customers select Apps from the Mainspace App Store, the App identification information is added to the customer profile.
[0089] These Apps then run inside the Mainspace Private Cloud as described above.
App Developer Perspective [0090] The Mainspace App Developer Perspective is a component in the cloud www.mainframecloud.com.au, where developers can code and publish Mainspace Apps via a Mainspace IDE web page. An App Store developer creates a computer program to run on the Mainspace platform (Mainspace App). The computer program is written in industry standard web code technology (HTM L/HTML5/CSS/CSS3/JavaScript/third-party JavaScript libraries etc.). The web page code includes embedded Mainspace API code (ACTIONS API) to allow the Mainspace App to obtain mainframe data for the application to work with. This is the method by which a Mainspace PC application interfaces with the mainframe. The computer programs are known as MWA pages (Mainspace Web App pages).
[0091] Shown below is an example of MWA page pseudocode:
// Initialisation Area
... web code to initialise values and display a chart ready for data population (initialise chart GUI)
// Data Area
... embedded Mainspace API code to retrieve information from the mainframe via the Mainspace Agent Proxy
// Presentation Area
... web code to populate the initialised chart code with the data retrieved from the Data Area Mainspace API code
// Action Area
... web code to respond to GUI user actions (mouse clicks, etc.)
... can include calls to new MWA files (pages), another API call and GUI update routine, or a redisplay of the main chart calling the Data Area API again with different API call criteria.
[0092] The developer uploads MWA files and all associated web page files to the cloud platform to test on the Mainspace Mainframe Emulator.
[0093] In an alternative embodiment, the developer may code directly on the cloud platform IDE. In more detail, during the development process, developers register their App on the cloud platform; information which is later used for App Search queries and all other associated actions for App administration.
Advantages
[0094] In order to better understand the advantages that arise from embodiments of the invention, it is instructive to briefly describe prior art mainframe systems and the market forces that control software and hardware development in the mainframe computing system market. It will be understood that any reference to a prior art system is provided herein solely for the purpose of better contextualising embodiments of the present invention, and no 'gloss' should be taken from the description of a prior art system to limit the scope or nature of any feature of the embodiments, the embodiments as a whole, or the broader inventive concept described herein.
[0095] Mainframe computers, due to their high security, high reliability and ability to run critical applications in a dependable manner, are generally very constrained in the software applications that are installed and run, and moreover, any addition of software applications and/or upgrades to software applications are generally preceded by a long period of testing, before an application is installed on a 'live' mainframe. The rigorous testing and long installation process associated with mainframe software applications results in high costs and long lead times to deploy new applications or upgrade existing applications.
[0096] Moreover, the high cost and long lead times for development of new applications has meant that the market for mainframe software applications is, by nature, very small and specialised. The very high cost of mainframes, the relatively small user base, and the need to ensure extremely high reliability in the deployment and execution of mainframe software applications has meant that there is a high cost associated with application development, coupled with a low demand in the marketplace. These market forces, coupled with a very conservative user base of potential clients, has meant that there is little innovation in the field of mainframe software development ecosystem. However, from the existing user base, there is a strong need or desire for new and innovative products in the mainframe software development ecosystem, notwithstanding the overriding issues of reliability, security and long development and testing times.
[0097] Embodiments of the present invention ameliorate the need to rigorously test and install new mainframe software applications, as the 'no-install' technology which allows an application to be executed on a mainframe computing system without needing to install and test the application beforehand.
[0098] Currently, mainframe customers can spend several weeks to a year and $200K to several million dollars, on install and testing effort, for every mainframe software solution and release upgrade they purchase.
[0099] The 'no-install' technology described above is claimed in another co-pending patent application. The embodiment described herein (referred to as the 'app store') provides another important component which allows for the use of applications on a mainframe without requiring any installation of an application. The use of the app store in conjunction with the no-install technology removes the need for a mainframe user to create new software to run on the mainframe for all new mainframe software solutions.
[00100] In other words, a user can deploy new software solutions to the mainframe without needing to test the mainframe code, since all Mainspace software solutions will use the same Mainspace mainframe code that was already tested in the first instance.
[00101] The cost associated with install/testing of new mainframe software solutions before migrating to production is dramatically reduced in the first instance, and then reduced to almost no additional overhead (in terms of install/testing) for all future Mainspace mainframe solutions (apps) deployed to the platform.
[00102] Additionally, as the app store interfaces directly with the mainframe (via the proxy), new mainframe software applications can be developed in any modern language (such as Web JavaScript) as opposed to the current old languages used (Assembler, COBOL) of which a skills shortage is occurring as mainframe programmers are retiring from the workforce.
[00103] The system, method, computer program and data signal in accordance with the embodiment described herein finds use in any situation where it is desirable to execute an application on a mainframe without wishing to expend time and resources testing the application for suitability. The no-install technology interfaces with the broader Mainspace virtual platform solution which are described and defined in other co-pending patent applications filed by Mainframe Cloud Pty Ltd. Together, the no-install technology and the other Mainframe Cloud Pty Ltd solutions address the need in the mainframe market to provide greater and lower cost access to mainframe computing solutions.
Variations and Modifications
[00104] It will be understood that the embodiments and broader invention described herein refer to a mainframe software application, namely a software application arranged to operate on a mainframe computing system. However, the embodiments and broader invention may also find use in analogous situations, such as the operation of software on a server, a distributed computing network, a so-called 'supercomputer', or any other use analogous to the use of a mainframe for transactional or calculation/computational purposes.
[00105] Moreover, it will be understood that aspects or features of the described and defined invention and embodiments thereof may be implemented in hardware (for example, as firmware, as opposed to software which is arranged to interface with hardware via an operating system) may provide particular advantages, such as the ability to better secure communication channels and/or the ability to perform transactions more quickly (which may be important in a busy environment). Such variations are encompassed by the broader inventive concept described herein.
[00106] Although not required, the embodiments described with reference to the figures can be implemented via an application programming interface (API), an application development kit (ADK) or as a series of libraries, for use by a developer, for the creation of software applications which are to be used on any one or more mainframe computing platforms or analogous devices, such as a server structure, including a 'data farm' or within a bespoke transaction processing system.
[00107] Generally, as program modules include routines, programs, objects, components and data files that perform or assist in the performance of particular functions, it will be understood that the functionality of the software applications described and defined herein may be distributed across a number of routines, programs, objects or components to achieve the same functionality as the embodiments and the broader invention claimed herein. Such variations and modifications are within the purview of those skilled in the art.
[00108] It will also be appreciated that the methods and systems of the present invention and/or embodiments are implemented by mainframe computing systems or partly implemented by mainframe computing systems then any appropriate mainframe computing system architecture may be utilised.
[00109] Where the terms "computer", "computing system" and "computing device" are used in the specification, these terms are intended to cover any appropriate arrangement of computer hardware for implementing the inventive concept and/or embodiments defined and described herein.

Claims

1. A system for the provision of mainframe applications to a mainframe computing
system, comprising a mainframe application server arranged to store at least one mainframe application capable of executing at least one instruction on the mainframe computing system, an intermediate computing system in communication with the mainframe application server and arranged to be accessible via a user device, wherein, upon receiving an instruction from one of the user device and the intermediate computing system to execute the at least one mainframe application, the mainframe application server is arranged to provide the at least one mainframe application to the mainframe computing system.
2. A system in accordance with claim 1, the intermediate computing system further comprising a packaging application arranged to package the at least one mainframe application into a format capable of being executed by the mainframe computing system, prior to providing the at least one mainframe application to the mainframe computing system.
3. A system in accordance with claim 1 or claim 2, the mainframe application server further comprising an application selection interface arranged to allow an end user to select the at least one mainframe computing application via at least one of the user device and the intermediate computing system.
4. A system in accordance with any one of claims 1 to 3, further comprising a
programmer interface arranged to allow a programmer to publish the at least one mainframe application.
5. A system in accordance with any one of the preceding claims, wherein the at least one mainframe application is written in an interpreted computer program language.
6. A system in accordance with claim 5, wherein the at least one mainframe application is provided in at least one of a webpage language such as Hypertext Mark-up Language, a Control Sheet Style language and a Java language.
7. A system in accordance with claim 4, 5 or 6, wherein the mainframe application server further includes an Application Program Interface arranged to provide programming code arranged to interface with the at least one mainframe application to allow the at least one mainframe application to be executable on the mainframe computing system.
8. A system in accordance with any one of claims 4 to 7, wherein the intermediate
computing system includes a data input module arranged to provide input data to the mainframe computing system when providing the at least one mainframe application.
9. A system in accordance with any one of claims 4 to 8, wherein the intermediate
computing system includes a data receiving module arranged to receive output data from the mainframe computing system.
10. A system in accordance with claim 8 or 9, wherein at least one of the input and output data is provided by the user via the application selection interface.
11. A system in accordance with any one of claims 4 to 10, further comprising a
mainframe computing system emulator arranged to emulate a mainframe computing system.
12. A system in accordance with any one claims 4 to 11, further comprising a registration module arranged to allow a programmer to register the at least one mainframe application prior to publication of the at least one mainframe application.
13. A system in accordance with any one of the preceding claims, the intermediate
computing system further comprising a download module arranged to download the at least one mainframe application to the intermediate computing system.
14. A system in accordance with any one of the preceding claims, wherein the mainframe application server is accessible via a web based interface.
15. A system in accordance with any one of the preceding claims, further comprising a payment gateway arranged to allow a user to purchase the at least one mainframe computing application.
16. A method for the provision of mainframe applications to a mainframe computing system, comprising the steps of accessing a mainframe application server having at least one mainframe application capable of execution on at least one instruction on the mainframe computing system via an intermediate computing system in communication with the mainframe application server, wherein, upon receiving an instruction from the intermediate computing system to execute the at least one mainframe application, the mainframe application server is arranged to provide the at least one mainframe application to the mainframe computing system.
17. A method in accordance with claim 16, comprising the further step of the intermediate computing system utilising a packaging application arranged to package the at least one mainframe application into a format capable of being executed by the mainframe computing system, prior to providing the at least one mainframe application to the mainframe computing system.
18. A method in accordance with claim 16 or claim 17, comprising the further step of the mainframe application server utilising an application selection interface arranged to allow an end user to select the at least one mainframe computing application via at least one of the user device and the intermediate computing system.
19. A method in accordance with any one of claims 16 to 18, comprising the further step of a programmer utilising a programmer interface arranged to allow the programmer to publish the at least one mainframe application.
20. A method in accordance with claims 16 to 19, wherein the at least one mainframe application is written in an interpreted computer program language.
21. A method in accordance with claim 20, wherein the at least one mainframe application is provided in a webpage language such as at least one of a Hypertext Mark-up Language, a Control Sheet Style language and a Java language.
22. A method in accordance with claim 19, 20 or 21, comprising the further step of the mainframe application server utilising an Application Program Interface arranged to provide programming code arranged to interface with the at least one mainframe application to allow the at least one mainframe application to be executable on the mainframe computing system.
23. A method in accordance with any one of claims 19 to 22, comprising the further step of the intermediate computing system utilising a data input module arranged to provide input data to the mainframe computing system when providing the at least one mainframe application.
24. A method in accordance with any one of claims 19 to 23, comprising the further step of the intermediate computing system utilising a data receiving module to receive output data from the mainframe computing system.
25. A method in accordance with claim 23 or 24, comprising the further step of at least one of the input and output data being provided by the user via the application selection interface.
26. A method in accordance with any one of claims 19 to 25, comprising the further step of a programmer utilising a mainframe computing system emulator arranged to emulate a mainframe computing system to test the at least one mainframe application.
27. A method in accordance with any one claims 19 to 26, comprising the further step of a programmer utilising a registration module arranged to allow the programmer to register the at least one mainframe application prior to publication of the at least one mainframe application.
28. A method in accordance with any one of claims 16 to 27, comprising the further step of the intermediate computing system utilising a download module to download the at least one mainframe application to the intermediate computing system.
29. A method in accordance with any one of claims 16 to 28, wherein the mainframe application server is accessible via a web based interface.
30. A method in accordance with any one of claims 16 to 29, comprising the further step of the user accessing a payment gateway arranged to allow a user to access the at least one mainframe computing application.
31. A software application which includes at least one instruction, which, when executed by a computing system, carries out the method steps in accordance with any one of claims 16 to 30.
32. A data signal including at least one encoded instruction which, when executed by a computing system, carries out the method steps in accordance with any one of claims 16 to 30.
PCT/AU2016/050706 2015-08-04 2016-08-04 A system, method, computer program and data signal for the provision of mainframe applications to a mainframe computing system WO2017020089A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
AU2015903100A AU2015903100A0 (en) 2015-08-04 A system, method, computer program and data signal for the provision of mainframe applications to a mainframe computing system
AU2015903100 2015-08-04
US201562201601P 2015-08-06 2015-08-06
US62/201,601 2015-08-06

Publications (1)

Publication Number Publication Date
WO2017020089A1 true WO2017020089A1 (en) 2017-02-09

Family

ID=57942112

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/AU2016/050706 WO2017020089A1 (en) 2015-08-04 2016-08-04 A system, method, computer program and data signal for the provision of mainframe applications to a mainframe computing system

Country Status (1)

Country Link
WO (1) WO2017020089A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030037328A1 (en) * 2001-08-15 2003-02-20 International Business Machines Corporation Extending installation suites to include topology of suite's run-time environment
US8234620B1 (en) * 2007-04-30 2012-07-31 Oracle America, Inc. Method and system for software development using distributed computing resources
US20120246651A1 (en) * 2011-03-25 2012-09-27 Oracle International Corporation System and method for supporting batch job management in a distributed transaction system
US8479175B1 (en) * 2007-10-12 2013-07-02 The Pnc Financial Services Group, Inc. Mainframe-based web service development accelerator
US20150193243A1 (en) * 2014-01-06 2015-07-09 Veristorm, Inc. System and method for extracting data from legacy data systems to big data platforms

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030037328A1 (en) * 2001-08-15 2003-02-20 International Business Machines Corporation Extending installation suites to include topology of suite's run-time environment
US8234620B1 (en) * 2007-04-30 2012-07-31 Oracle America, Inc. Method and system for software development using distributed computing resources
US8479175B1 (en) * 2007-10-12 2013-07-02 The Pnc Financial Services Group, Inc. Mainframe-based web service development accelerator
US20120246651A1 (en) * 2011-03-25 2012-09-27 Oracle International Corporation System and method for supporting batch job management in a distributed transaction system
US20150193243A1 (en) * 2014-01-06 2015-07-09 Veristorm, Inc. System and method for extracting data from legacy data systems to big data platforms

Similar Documents

Publication Publication Date Title
US11178207B2 (en) Software version control without affecting a deployed container
CN109032706B (en) Intelligent contract execution method, device, equipment and storage medium
US11010283B2 (en) Mock-based unit test(s) for an end-to-end test of a code snippet
US11422785B2 (en) Container orchestration framework
US20150278511A1 (en) Monitoring an application in a process virtual machine
CN110955589A (en) Method, system, device and medium for testing headless mode based on browser
US9904574B2 (en) Parallel computing without requiring antecedent code deployment
US8904346B1 (en) Method and system for automated load testing of web applications
US10514940B2 (en) Virtual application package reconstruction
US20180165136A1 (en) A system, method, computer program and data signal for hosting and executing a program on a mainframe
CN108121650B (en) Method and device for testing page user interface
CN111506368A (en) Method, device, equipment and storage medium for transferring asynchronous call to synchronous call
WO2013176967A1 (en) Virtualizing integrated calls to provide access to resources in a virtual namespace
US9672020B2 (en) Selectively loading precompiled header(s) and/or portion(s) thereof
CN111913759A (en) Method, apparatus, computing device, and medium for controlling execution of application program
CN111459506A (en) Deployment method, device, medium and electronic equipment of deep learning platform cluster
CN116893807A (en) System and method for designing a robotic flow automation robot using a browser
WO2017020089A1 (en) A system, method, computer program and data signal for the provision of mainframe applications to a mainframe computing system
CN114911541A (en) Configuration information processing method and device, electronic equipment and storage medium
CN113742104A (en) AI-based RPA (resilient packet Access) body-separating function generation method and device
CN114679491A (en) Micro front-end service application method and device, storage medium and electronic equipment
Martínez et al. Implementing crossplatform distributed algorithms using standard web technologies
CN112929675B (en) Image resource compression method and device and electronic equipment
WO2022237826A1 (en) User interface testing method and system, cluster, medium, and program product
CN114253615B (en) Method and device for setting bootstrap program, electronic equipment and storage medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16831983

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16831983

Country of ref document: EP

Kind code of ref document: A1