Loose Coupling Improvement with Enterprise Application Integration: Comparison
Please note this is a comparison between Version 1 by José-Alfonso Aguilar-Calderón and Version 2 by Lindsay Dong.

Integrating third-party and legacy systems has become a critical necessity for companies, driven by the need to exchange information with various entities such as banks, suppliers, customers, and partners. Ensuring data integrity, keeping integrations up-to-date, reducing transaction risks, and preventing data loss are all vital aspects of this complex task. Achieving success in this endeavor, which involves both technological and business challenges, necessitates the implementation of a well-suited architecture.

  • enterprise application integration
  • EAI
  • loose coupling
  • software engineering
  • software architecture
  • software units

1. Introduction

At present, enterprises worldwide use for their internal process and operations software applications purchased from third parties, legacy systems, in-house developed applications, or a combination. This software works in several layers on different environments (i.e., operating systems, local networks, World Wide Web, cloud, etc.). Integrating systems acquired from third parties and legacies has become a significant concern for companies. Consequently, most of the software used are heterogeneous, autonomous, and operate in a distributed environment. In this regard, diversity has been considered one of the most relentless problems since it is inclined to cause interoperability complications. Specifically, rise-up problems arise regarding semantic incompatible issues when software uses distinct meanings for the same data. The integration is not easy to perform; it requires the expertise of the IT (Information Technology) department because challenges are made up of several business and technical issues, especially concerning interoperability, scalability, and maintenance [1].
Integrating systems acquired by third parties is a real problem, mainly due to the lack of information exchange between entities such as banks, suppliers, and customers, among others. Continual changes in the information systems environment have become the most critical challenge in enterprises. The applications to be integrated are usually developed by different teams that often do not focus on the integration as a relevant issue for them. This is because, given the limited capacity of the resources for a large number of applications, the deployment of the integration does not scale well and leads to operational complexity and run-time overhead. Improving this is time-consuming, and there is no guarantee that the created deployment for integrating software units will yield an efficient cost. There is a Software Engineering (SE) area known as Enterprise Application Integration (EAI) [2] dedicated to research in order to ameliorate this issue. The EAI goal is to integrate application systems with different workflow functions and to build the data exchange mechanism and application communication mechanism. Implementing EAI is a complex task involving technological and business challenges and requires appropriate EAI architecture. In compliance with this, enterprise integration is implemented using different integration tools, technologies, and methodologies. They all aim to ensure that data transformation, translation, and communication are accomplished efficiently. Therefore, improvement in integration technology, mainly concerning middle-ware, provides new forms to obtain agile and responsive business architectures. Aiming at eliminating the integration challenges, EAI is proposed as a solution. Nonetheless, assessing and introducing EAI is a complex task that calls for a systematic and homogeneous architecture with suitable criteria. Faced with this situation, the need arises for new EAI proposals to resolve the external and data loose coupling for the integration at the software unit level.
Despite the required complexity in integrating software units in the real world, there is no reference guide in the context of EAI to assist in implementing architectures for the integration [1]. Consequently, it is essential to establish a baseline that can serve as a starting point when developing integration work to develop reliable proposals that can be applied to the real world. Furthermore, this will satisfy enterprise expectations since software units and independent software system elements are highly interconnected and represent a high information-sharing budget.

2. Loose Coupling Improvement with Enterprise Application Integration 

The most used for this purpose is SOA (Service Oriented Architecture) [3][4][5][6][7][8][9][10][11][12][13][14][15][5,6,7,8,9,10,11,12,13,14,15,16,17]. The integration corresponds to an orchestration of technologies supported by existing communication protocols such as SOAP (Simple Object Access Protocol) and HTTP (Hypertext Transfer Protocol), among others.
A case study that explores the evolution of an established legacy system towards a more maintainable Service-Oriented Architecture (SOA) is presented in reference [3][5]. The suggested approach entails the restoration of the legacy system’s architecture as an initial phase, enabling the formulation and implementation of a targeted evolution plan. The case study focuses on a medical imaging system, demonstrating its transformation into a service-based model.
In reference [4][6], the authors focus on developing an SOA-based model for Information Technologies (IT) integration into Intelligent Transportation Systems (ITS). They applied the proposed model involving some key elements (Roadside Unit (RSU) and navigation systems) to generate value-added ITS.
A service-oriented model for information integration is presented in reference [5][7]. The model mainly focuses on giving a complete structure for information integration that is adaptable to any environment. The information is converted into service, and then the information services are integrated through service-oriented integration to provide the information as a service.
The author in reference [6][8] proposes a new concept of SOA/ESB architecture for WSNs, called “miniSOA/ESB”, to address the problem of the restricted computing power and processing capacity of the sensors node due to the fact that it may not be possible for sensor data to be encoded in an XML format within SOAP envelops or being transported using internet protocol to applications.
Reference [7][9] combines the technology of web services and ServiceMix bus (a frame of SOA-based loose-coupling system integration) to effectively resolve the existing systems’ problems, including information delay and the ineffective management of customer expectations.
The research in reference [8][10] analyzes the characteristics of SOA. It determines that it cannot meet some characteristics of mission-critical applications such as high availability, continuous operation, high flexibility, high performance, etc. Also, the concept of ADS and its architecture was explored, and it was found that such requirements are satisfied by this system-designing paradigm. The authors present a novel SOA-ADS modeling approach called Autonomous Decentralized Service Oriented Architecture (ADSOA); the Low Coupling Synchronization and Transactional Delivery Technology was proposed to ensure data consistency and high application availability. A prototype tested the effectiveness and feasibility of the ADSOA and the proposed technology.
A combination of SOA and Web service technology that simplifies the application integration into the development and use of services, solving the connectivity of the isomerous platform, security, loose coupling between systems, and refactoring and optimizing the processes is presented in reference [9][11]. The research integrates the isomerous enterprise systems, applications, and business processes and composes the application environment of the data sources as a whole system. In addition, the technique standards, such as SOAP, WSDL, BPEL, and WDDI, are studied.
The authors in [10][12] propose a security architecture constructed as an adaptive way-forward Internet-of-Things (IoT)-friendly security solution that is comprised of three cyclic parts: learn, predict, and prevent. A novel security component named “intelligent security engine” is introduced, which learns the possible occurrences of security threats on SOA using artificial neural network learning algorithms. It predicts the potential attacks on SOA based on the obtained results by the developed theoretical security model and the written algorithms as part of the security solution to prevent SOA attacks.
Reference [11][13] presented an adaptation to the external context making use of an Enterprise Service Bus (ESB) and Complex Event Processing (CEP). In this regard, the proposed solution first leverages well-known ESB mediation patterns (e.g., transformation) to adapt services to context transparently for the final user and the service developer. Secondly, complex event processing has been used to analyze the events received from external sources to detect relevant situations for the service context. Finally, a context reasoner has been provided, which provides the transformations to be done depending on the context events.
Two approaches to increase Web services and SOA adaptability were presented in reference [12][14]. The first is based on a technical solution considering Aspect-Oriented Programming (AOP) as a new design solution for Web services. The second combines Model-Driven Development (MDD) and Context Awareness to promote the reusability and adaptability of Web services behavior depending on the context.
A proposal to apply the SOA paradigm to existing Enterprise Resource Planner (ERP) systems so that building, changing, and operating other information systems is faster, easier, and cheaper is presented in reference [13][15]. In order to demonstrate this proposal, a tool to integrate with SAP systems from OutSystems, an Agile development framework, has been implemented, and this tool is a proof of concept. The authors present how this integration was achieved quickly and effectively without SAP expertise.
An integration framework based on semantic web services and SOA for supply chain collaboration was presented in reference [15][17], and the process of semantic Web services and automatic matching arithmetic for web services composition are discussed. An integration framework of the agile supply chain management system based on web services shows that semantic Web services have the advantage of agile composing flows in supply chain integration. Also, the Microservices REST (REpresentational State Transfer) architecture applied in the proposals in references [16][17][18][19][20][18,19,20,21,22] emerges as the second most used architecture for this purpose. The authors of reference [16][18] present a real-world case study in order to demonstrate how scalability is positively affected by re-implementing a monolithic architecture (MA) into a microservices architecture (MSA) and also analyzed a case study based on the FX Core system, a mission critical system of Danske Bank (Denmark). The technical problem addressed and solved is identifying a repeatable migration process that can be used to convert a real-world Monolithic architecture into a Microservices architecture in the specific setting of the financial domain. In reference [17][19], the authors review the history of software architecture and the reasons that led to the diffusion of objects and services first and microservices later. Finally, open problems and future challenges are introduced. In addition, some practical issues were investigated and a few potential solutions focusing on microservices were pointed out. The researchers in references [18][19][20][20,21,22] focus on analyzing microservices’ core properties, highlighting their limitations and the challenges concerning their components. The existing literature was analyzed and provided potential directions and interesting points in this growing field of research, assisting application designers in selecting the most appropriate approach. In addition, it should be noted that other architectures have been implemented, such as Publish/Subcribe found in references [21][22][23,24], Hub and Spoke presented in reference [23][25], Camel Apache used in reference [24][26], Multi Tier Reference proposed in reference [25][27], MOM, Message-Oriented Middleware described in reference [26][28], Federated Database [27][29], BDI, Belief Desire Intention Software Model [28][30], Intermediate Layer [29][31], SCA, Service Component Architecture [30][32], Grid Computing [31][33], and model-driven architecture developed to deploy microservices [32][34]; even if these are not very widely used, it is elementary to mention them. Most loose coupling software unit integration proposals are based in an environment conformed by SOA, Web Services, and Microservices. In this environment, the network nodes make their resources available to other participants in the network as independent services to which they have access in a standardized way. Most definitions identify Web Services using SOAP and WSDL in their implementation; however, it can be implemented using any service-based technology.
Video Production Service