Online Solutions & Services, Inc.
Integration and Conversion
 

Database and Application Integration and Conversion Services

Business Case: This client was embarking on a large-scale project to re-engineer their existing CA/IDEAL and Cobol/CA/Datacom legacy applications to a modern rules-based engine.

Solution: Online Solutions recommended to this client that all of the Cobol code be parsed into a relational database to allow for their existing programmer analysts to quickly and accurately extract business rules from the legacy applications. These rules could be formulated both in an English narrative with the corresponding code to facilitate discussions between the Business Analysts, programmer analysts and application end-users.

A set of migration tools was developed to assist this client in re-engineering their large inventory of legacy applications. The suite of tools consisted of:

  • Cobol Parse Engine
  • Source Code Analyzer Workbench
  • Business Rules Repository

Cobol Parse Engine: The Cobol parse engine processed the entire set of source code consisting of 3300 source modules (over 4 million lines of code) by lexically parsing each module. The lexical parse consisted of tokenizing each discrete element on the Cobol line and tagging it by function (its use within the Cobol code). Functions consist of Cobol Reserved words, Data elements (a reference to mainframe Datacom tables), literal values (cryptic codes that relate only to this clients business applications). The lexical parse of the code is the foundation for the cross-referencing (via SQL) of the occurrences of any single 'token' to its location and use within any and all other Cobol programs within the source code repository. In this manner both query by token and query by function are supported. For example, the Source Code Analyzer Workbench enables an analyst to research all of the occurrences of any given data element (e.g., 'YTD_Earnings') or by function: within Cobol all input files must be declared. All programs that process input files can be listed and further inspected.

Source Code Analyzer Workbench: This component uses a web-browser control to allow analysts to query the source code repository to facilitate specific analyses. The user-interface allows the analyst to continue searching and displaying all source modules containing the item being searched. Additionally, the analyst will be positioned automatically to the location within the source module within which the search item was found.

Business Rules Repository: Online Solutions developed a repository with a data entry/ data search capability that allows Cobol programmer analysts to place business rules extracted from the Cobol source code into a central repository.

MS/Office Inventory Control Software

Business Case: This client had hundreds of MS/Access databases and MS/Excel spreadsheets linked together over several NT servers executing a set of overnight processing runs for their middle and back office accounting departments. These were business critical processes whose output was used by business analysts to assess previous day security position risk, intra month P&L by position, security position custodial reconciliation (a bank's record of a client's security position against the Depository's record of the security position).

Solution: Online Solutions implemented a "Batch Engine" consisting of management software that allowed all of the queries and macros to be placed in a central SQLServer database and managed within a Data Center environment. The management software facilitated the migration of existing queries and spreadsheet macros and VBA code into an execution and scheduling 'Batch' engine. The software allowed analysts to code up 'Cycles' that contained a list of queries to run the order in which they could be run and to specify any dependencies (e.g., other cycles, time of day, etc.) associated with each cycle. Error recovery steps could also be specified in the event of failure. A monitoring component was developed that allowed for Data Center operators to easily manage and review the hundreds of cycles (batch runs) that had been placed in the scheduling repository.