System Architecture Design Notes (81)-Enterprise Application Integration

Many enterprises' information systems did not consider the need for multiple systems to "work together" in the initial design. This is mainly because it takes a long-term process for enterprise informatization builders to change from unfamiliar to familiar with information systems. From understanding the benefits of informatization to truly experiencing the benefits, it takes a long-term process, which objectively causes the lack of an overall plan for enterprise informatization. Think of it when you actually need it. Therefore, the informatization of an enterprise often starts from a single business system, and the development methods of different systems and the degree of compliance with the development specifications are different, which makes the existence of strong isolation between systems, plus the external Insufficient attention to information has caused the information systems developed by various departments to eventually become islands of information. It is difficult for one system to exchange information with other systems. At the same time, most companies have an application environment composed of heterogeneous systems, applications, business processes and data sources left over from the past. The communication status of the application environment is chaotic, there are few interface documents, and the maintenance cost is very expensive.

According to relevant statistics, a typical large enterprise has an average of 49 application systems, and 33% of its IT budget is spent on traditional integration, and it is generally through “point-to-point” connections.

EAI (Enterprise Application Integration) can help people solve this problem to a certain extent. EAI refers to the seamless integration of application systems that complete different business functions in the enterprise by combining business processes, application software, hardware and various standards, so that they can process business and share information as a whole, thereby improving the enterprise Efficiency, to provide customers with flexible business services.

EAI allows people to look at the information resources in the enterprise from a higher level, so that new information and applications can work together on a brand-new information integration sharing platform through a pluggable way and the original resources. "1 +1>2" the integration effect. While using the EAI system to integrate various existing information systems within the enterprise, the enterprise also accelerates the real-time sharing of data and improves the enterprise's information response capabilities. In particular, companies currently in the e-commerce era not only need to integrate between their internal systems, but also need to integrate different links in the supply chain.

EAI is not only an efficient means of connecting applications within enterprises, it is also a scientific and effective way to establish information communication and sharing between enterprises, thereby effectively reducing the overall cost of ownership of the supply chain network. EAI can connect various enterprise-level applications through middleware technology, so that heterogeneous application systems can "communicate" and "collaborate" with each other, as shown in Figure 1.

First of all, middleware products are compatible and open to various hardware platforms, operating systems, network database products and clients.
Second, the middleware maintains the transparency of the platform, so that developers do not have to consider the operating system.
Third, the middleware realizes the protection of the consistency and integrity of the transaction and improves the reliability of the system.
Fourth, middleware products can shorten the development cycle by 50% to 75%, thereby greatly reducing development costs and improving work efficiency.

The content of EAI is very complex, involving all levels of enterprise systems such as structure, hardware, software, and processes. According to the depth of EAI integration, it can be divided into application integration, business process integration, and data integration.

1 Application integration

Application-level integration mainly provides near real-time integration of data and functions in more than two applications. Application to Application (A2A) integration between cross-platform applications in the network environment. It covers common code (COBOL, C++, Java) writing, application programming interfaces, remote procedure calls, distributed middleware such as TP monitoring, distributed objects, CORBA, RMI, message-oriented middleware and Web services. Kind of technology. Application-level integration is generally achieved by processing message exchanges between multiple application systems to achieve integration between systems. Each application can be in a synchronous mode, that is, based on the request-response interaction mechanism between the client (request program) and the server (response program). The application system can handle the message conversion by itself, and it will affect the data conversion and validity of the integrated system. However, this requires modifications to the system to establish an interface for sending and receiving messages.

2 business process integration

Business process integration needs to handle business processes within the enterprise and integrate the existing application systems of the enterprise into these business processes. It is a complete implementation strategy of enterprise application integration, because it turns the separate systems within the enterprise into a continuous system that supports the business process, thereby meeting the needs of the entire business process of the enterprise. When integrating business processes, companies must define, authorize, and manage the exchange of various business information in various business systems in order to improve operations, reduce costs, and increase response speed. Business process integration includes business management, process simulation, and a workflow that integrates tasks, processes, organizations, and incoming and outgoing information. It also includes the tools needed at every step in business processing. Business process integration includes at least the following two forms of processes.

(1) Interactive process

The interactive process involves transaction processing across two systems. This process is complete and uninterrupted, and it does not contain any work and intermittent processes that require human involvement. Since the interactive process usually flows between the two systems, it does not require particularly complex EAI processing.

(2) Multi-step process

As part of the business process, many individual transaction processing flows between two or more systems according to a pre-defined sequence, which involves workflow and business process reorganization. A multi-step process has a series of steps and is related to multiple systems, which can be completed within a certain time. This process can be a one-to-many, many-to-one, or many-to-many relationship.

3 Data integration

To complete application integration and business process integration, we must first solve the problem of data and database integration. In order to handle data movement between multiple databases, many companies use data-level EAI as their entry point for implementing EAI. When the application system must share information, this integration can support data exchange between different databases.

There are currently many tools that support data-level EAI, which makes it relatively easy to implement data-level EAI without even modifying the source program of the application system. The common practice is to batch import historical data into the new system and batch, real-time data processing in the current system, also known as data synchronization.

With the establishment of data warehouses, more and more data synchronization tasks can be processed in batches. In this way, more information can be grasped, such as customer types, customer transaction history, and customer habitual purchases and delivery methods can be updated daily or weekly. Critical data, new customer data and increased demand for available inventory can all be updated in batches in real time. Many companies are also looking for ways to integrate batch data to alleviate the pressure on data synchronization caused by increasing data. Of course, for deeper data integration, you need to first identify and catalog the data, and determine the metadata model. After these three steps are completed, the data can be distributed and shared in the database system.

However, the most common method in current data integration solutions occurs at the level of databases and data sources within the enterprise, that is, data integration is completed by migrating data from one data source to another. Here are some examples of data integration: update the order from the ERP system to the CRM (Customer Relationship Management, customer relationship management) system so that the sales staff can understand the status of the order in real time. Synchronize and standardize customer information from multiple systems, enabling companies to have a 360° view of customers. By storing operational data in the system in real time, customers and distributors can access the company's inventory and order information through the business intelligence network. Importing data from ERP into the SCM (Supply Chain Management) system once or several times a day will help the company to formulate material demand plans. The transportation price information is transmitted to various downstream distributors multiple times a day.

One of the biggest problems of data integration is that business logic often only exists in the main system, and cannot respond to the processing of business processes at the database level, thus limiting the ability of real-time processing. Within the enterprise, EAI establishes the underlying structure to connect heterogeneous systems, applications, and data sources across the entire enterprise, and completes the gap between ERP, CRM, SCM, databases, data warehouses, and other important internal systems. Need to share and exchange data seamlessly. In the era of e-commerce, enterprises not only need to integrate between internal application systems, but also need to integrate different enterprise systems in the supply chain to help them create a smooth flow between the various departments of the enterprise and its suppliers and carriers. The information flow between merchants, distributors, retailers and customers for effective data and business integration.

Especially with the popularization of information technology and the rapid increase of various enterprise applications, more and more enterprises have begun to use EAI solutions to link their internal application software with external customers and suppliers’ application software to achieve data flow and The automation of business operations achieves real-time and rapid business operations. Good enterprise application integration solutions can realize future business integration, maintenance and modification to achieve time and cost savings, thereby enhancing the core competitiveness of the enterprise.


Guess you like

Origin blog.csdn.net/deniro_li/article/details/108807968