- 1 ISM Architecture
- 2 Platform
- 3 ISM Engine
- 4 ISM Web Console
- 5 ISM Service Flow
- 6 ISM Service Types
ISM consists of three main components.
- Platform — J2EE compliant application server like JBoss, WebLogic, and BusinessWare
- ISM Engine — Execute and control business services on the platform
- ISM Web Console — Manage, execute, and monitor the services
As an EAI/ESB tool, it serves the interface function among integration target systems. It provides consistent network interface by offering connector(adapter) according to application type. ISM provides instant messaging function, one of the most important feature as a platform, providing synchronous/asynchronous/broadcasting messaging function so that the users can choose according to integrated working service type. The stability of messaging include not only swift and precise delivery but also the system which can prevent duplicated delivery. To prevent the possibility of errors for duplicated data which has already been processed, the feature of transaction management is positively necessary. For this, BusinessWare provides transaction managing feature which supports J2EE transaction service standard and reliable messaging. ISM engine executes integration business service making use of BusinessWare messaging, transaction managing feature, connector feature. The communication of relevant target system to integration between ISM engine is mediated by connector/messaging layer of BusinessWare. The components executing integration service is expressed as a project as a executable unit of BusinessWare. Every process of ISM is a project based on BusinessWare in the prospective of process.
ISM engine is an essential component of integration business service. ISM comprised of pattern management, service process, service/information management, service tracking/monitoring components.
A user registers the information including the location of the source system, and what information has to be sent to where. When ISM engine receives the service request, ISM fetches the data from the source system and apply it the the target system according to the registered information. It can be called interface pattern between the source and target. Many types of interface patterns can be registered on ISM web console, and they are processed by ISM engine. ISM conducts the interface between source/target system according to predefined pattern, and the result is also processed as defined. There's no fixed pattern in ISM, but the patterns commonly used are as follow.
- Source 1 → Target 1 transaction process request (synchronous interface)
- Source 1 → Target 1 process result transfer (asynchronous interface)
- Source 1 → Target 1 Data synchronization (DB type)
- Source 1 → Target 1 Data synchronization (File type)
- Source 1 → Target 1 Data synchronization (DB type)
- Source 1 → Target 1 Date synchronization (File type)
Besides, other patterns meets integration service requirements can be customized by users.
Sometimes, the data has to be modified by the business conditions. On other occasions, the data has to verified to prevent data contamination before the process. Service processor plays a role to execute required processes by each stage of the whole service flow. Required processes are as below.
Extracting Data and Information
When the first data process request is received, and in the condition the data to be processed by external system is transferred, the operation of extracting service information form the input data is required. Service information extraction is the process of extracting integration service ID which has the same key of ISM administrating information, and after the operation is completed, the regular ISM integration service began. After the service ID is extracted, the operation of referring what pattern is it defined to process.
When the target system varies with the contents of data or when it's require to be verified to prevent data contamination, analyze the data. In the case the data is transferred to target data regardless of its contents, do not.
The process of data verification is to divide the data to defined data structure by data analysis, and then confirm whether does each filed value conform to defined rule. Data is verified by checking whether it equal to defined value, or within the value range, or fit in the list predefined, or the user's result correspond to predefined function.
If input data has to be reproduced be sent to target system, ISM conduct the data conversion in the way defined. Each conversion is conducted according to 1:1, N:1, default value, conversion function, etc.
Service Information Manager
Administration activity of registration/modification/deletion/application of service information in runtime is conducted by ISM web console, but the role to deliver these requests to each integration service process/component is conducted by service information manager. The service information created by ISM web console exist not as the form the process operable but as text data. Service information manager convert the data to the object operable by the process. Since the conversion is completed, each process notify and transfer the changes to each process so that each process can use the service information. By this process, the service information is created and modified dynamically.
Tracking and Monitoring
To see whether the integration service is conducted well or not, there must be result log or it has to be provided in the form lucidly. ISM Service tracking/monitoring component store the service performance in separated media so that make it approachable to web console. It provides not only the result but the status of process including the status of process or the concentration and dispersion status of the service. There's also a monitoring environment to notify users the error or failure swiftly.
ISM Web Console
Web console produces the information for the engine conducting its service and manage it. It manages the whole conditions of integration service and send the information of processed result or statistics to the users. The functions of web console is in the following.
Interface Organization is the most basic function of web console to configure the integration service. Integration service comprise of system, data, rules of process. System mean each source and target system, and the data is the data structure between the source and target, the rules of process is the methods of data transmission between the source and the target system. These information is combined to web console creating unified integration service. The integration service is managed by its versions, and even the integration service shares the same name can be defined differently to the interface with other data or system.
The batch/online service executed by external request cannot be controlled by web console, but the deferred service executed by ISM scheduler can be controlled by web console. The whole process of service's start/suspend/resume/end is controlled by web console.
Transaction Result and Report
Web console provides the view which the result of the service process can be referred informs whether the services processed normally, what data has been processed. It also provides hourly/daily status report for each service performance to show current information to predict system management information.
ISM Service Flow
The components related to ISM service can be listed according to the processing flow as follows.
Requests Service Operation
Accepts service execution request. The channel service recieve the request by each interface type, extract the integration service information from the data, turn over it to the service controller. Return the processed result to external system(source) after the service controller's process.
Inquires the integration service information, determine how to handle the service, send the request to component service according to processing method. If any conversion, verification, or routing is necessary, the controller determines the component service to send the request.
Sends the transfer request from the service controller to external system. Return the processed result to external system(source) after the service controller's process. Monitors whether to retire the target system when it's on failure.
Receive the execution request, execute it and returns the result.
ISM Service Types
ISM provided services sorted into three different types: Batch/Deferred/Online. Another service which can be categorized to these category but exceeds the ISM provided functions, assort it to Custom Service.
Batch service means the service to transfer a file or data from source to target by user request or scheduler. the request data in batch service include the conditions to hand over a file or table data. The request from scheduler has a certain cycle, but the request of user doesn't. Batch service supported application types are file and database. It supports 1:1~n patterns in the basis of the number of integration target systems.
Deferred service is the service which transfers the table data of source system and syncs it to target system. Most of data to be processed to deferred data doesn't have to be synced immediately, but it has to not too be late. Immediate transfer of log data are the data have to be processed by deferred service. To do this, ISM determines the data process cycle by its scheduler. The scheduler of batch service is on external system of ISM which can set daily, weekly cycle but the scheduler of deferred service manages relatively short cycle. Deferred service supported application types are file and database but only database can be used as a source system. It supports 1:1~n pattern like the batch service in the basis of the number of integration target systems.
Online service is processing flat message including all the data has to be transferred according to the request of the user .The response is immediate, and done in short time. Major interfaces of this are Socket/HTTP/TP monitor/WebService etc. Flat message is made of header and data. Unlike batch and deferred service, more various types of interface - request/respond, publish/subscribe, sync/async are used.