EP0423937A2

Portable and dynamic distributed applications architecture.

Abstract

A system and method is disclosed for enabling a plurality of computers and associated computer resources. some or all of which may be of heterogeneous configuration, to cooperatively process a variety of applications such that the execution is transparent to the user regardless of where the application is actually executing. This distributed applications architecture performs an information distribution service between multiple transaction processing systems by working with a transaction processor via communication channels to other hosts within the network and a dialog manager (26) which uses a transaction processor interface (78) to communicate with the transaction processor. Additionally, the architecture employs a map service (36,40) to provide an editor to allow application programmers to create the maps (40) for the application panels, a compiler to generate the maps into linkable form, and a linkable interpreter which translates the linkable form into the screen presentation format for that platform. Furthermore, to distribute an application, the source code for the procedures (32), views (38) and panels are moved as a block to the new system. This is possible because once the application source code is complete, all of the application logic, user interface control tables, view definitions, and other application-specific tables for one transaction definition are packaged by the present invention in a single load module on the system where the application will reside. The load module is then compiled using the target system's compiler, link editor, and bind process. Thus, all environment-dependent vanations of import/export, including network protocol, operating systems, processor types, etc., are automatically integrated with the application at load module bind time. Therefore, no source code changes are necessary.

EP0423937A2, drawing sheet 1
Sheet 1 of 228

Term

Term ended

Projected expiry passed 14 September 2010, 16 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

16 claims: 5 independent, 11 dependent

  1. 1
    An execution environment residing on a platform for transaction processing, comprising:an input data stream:an information engineering task for transforming said input data stream into platform-usable form:a working storage for receiving said transformed input dat stream;an application program logic for executing a transaction based on said transformed input data stream, and generating an output data stream there from;anda data base system used by said application program logic to process said transformed data stream into an output data stream.
  2. 7
    A distributed environment for developing transaction processing applications across a selected set of heterogeneous computing platforms, comprising:a terminal;a communications line connected to said terminal for transmitting an input;a communications processor adapted to be connected to said communications line for receiving said input;a hookup line adapted to be connected to said communications processor for transmitting said input from said communications processor to a central processing unit;a bus adapted to be connected to said central processing unit for forwarding said input from said central processing unit to a computer memory;a tool located within said computer memory for generating a transaction based on said input;a transaction definition table built specifically for said generated transaction;a database;an SQL command interface for accessing said database, further adapted to return information obtained from said database in response to requests for such information received from said tool or said transaction definition table.
  3. 10
    A distributed environment for executing transaction processing applications across a selected set of heterogeneous computing platforms, comprising:a logical terminal;a data stream input from said logical terminal;a communications line adapted to be connected to said logical terminal for communicating said data stream input along said communications line;a communications processor adapted to be connected said communications line for receiving said data stream along said communications line from said logical terminal;a hookup line adapted to be connected to said communications processor for directing said data stream input along said hookup line;a central processing unit (CPU) adapted to be connected to said hookup line for receiving said data stream along said hookup line from said communications processor;a bus adapted to be connected to said central processing unit for forwarding said input from said central processing unit to a computer memory;an information engineering task for managing dialog flow between said input and any designated logical terminals resulting from execution of a particular transaction;a transaction definition table built specifically for said particular transaction;a disk;a database management system managing a database on said disk;an SQL command interface for accessing said database, further adapted to return information obtained from said database in response to requests for such information received from said task or said transaction definition table.
  4. 13
    A method for managing a transaction to enable it to be restarted after suspension, comprising the steps of:(a) receiving an user identification at logon at a system;(b) receiving an application identification as part of a request to execute an application;(c) locating a profile view matching said application identification and said user identification;(d) reading said profile view;(e) mapping said profile view to working storage:(f) reading a panel input;(g) mapping said panel to working storage:(h) executing procedure designated by said panel input in working storage:(i) mapping working storage to profile view, thereby overwriting the contents thereof with working storage variables resulting from said procedure execution;0) mapping working storage to a second panel;(k) displaying said second panel;and(I) repeating steps (d) through (k) until transaction is completed or suspended by a user.
  5. 15
    A method of application identification whereby multiple users may have multiple active applications on multiple computers comprising the steps of:(a) receiving a user identification;(b) receiving a request for an application bearing an application identification and system identification;(c) scanning a disk for a profile view matching said user identification and application identification;(d) if none is found, generating a new profile view with bearing said user identification and application identification;(e) if such a profile is found, reading such profile view;(f) mapping said profile view to working storage;(g) reading a panel input as specified by said profile view;(h) mapping said panel to working storage;(i) executing procedure designated by said panel input in working storage;(j) mapping working storage to profile view, thereby overwriting the contents thereof with working storage variables resulting from said procedure execution;(k) mapping working storage to a second panel;(I) displaying said second panel;(m) repeating steps (a) through (I) until transaction is completed or suspended by a user.(n) repeating steps (a) through (m) until all users have been provided with their requested applications.