In engineering, system integration is defined as the process of bringing together the component
subsystems into one system and ensuring that the subsystems function together as a system.
In information technology, systems integration is the process of linking together different
computing systems and software applications physically or functionally, to act as a coordinated
whole.
The system integrator brings together discrete systems utilizing a variety of techniques
such as computer networking, enterprise application integration, business process management or
manual programming.
Overview A system is an aggregation of subsystems cooperating
so that the system is able to deliver the overarching functionality.
System integration involves integrating existing often disparate systems.
System integration is also about adding value to the system, capabilities that are possible
because of interactions between subsystems.
In today’s connected world, the role of system integration engineers is becoming more
and more important: more and more systems are designed to connect, both within the system
under construction and to systems that are already deployed.
Required skills A system integration engineer needs a broad
range of skills and is likely to be defined by a breadth of knowledge rather than a depth
of knowledge.
These skills are likely to include software, systems and enterprise architecture, software
and hardware engineering, interface protocols, and general problem solving skills.
It is likely that the problems to be solved have not been solved before except in the
broadest sense.
They are likely to include new and challenging problems with an input from a broad range
of engineers where the system integration engineer "pulls it all together."
Methods of integration Vertical Integration is the process of integrating
subsystems according to their functionality by creating functional entities also referred
to as silos.
The benefit of this method is that the integration is performed quickly and involves only the
necessary vendors, therefore, this method is cheaper in the short term.
On the other hand, cost-of-ownership can be substantially higher than seen in other methods,
since in case of new or enhanced functionality, the only possible way to implement would be
by implementing another silo.
Reusing subsystems to create another functionality is not possible.
Star Integration also known as Spaghetti Integration is a process of systems integration where
each system is interconnected to each of the remaining subsystems.
When observed from the perspective of the subsystem which is being integrated, the connections
are reminiscent of a star, but when the overall diagram of the system is presented, the connections
look like spaghetti, hence the name of this method.
The cost varies because of the interfaces that subsystems are exporting.
In a case where the subsystems are exporting heterogeneous or proprietary interfaces, the
integration cost can substantially rise.
Time and costs needed to integrate the systems increase exponentially when adding additional
subsystems.
From the feature perspective, this method often seems preferable, due to the extreme
flexibility of the reuse of functionality.
Horizontal Integration or Enterprise Service Bus is an integration method in which a specialized
subsystem is dedicated to communication between other subsystems.
This allows cutting the number of connections to only one per subsystem which will connect
directly to the ESB.
The ESB is capable of translating the interface into another interface.
This allows cutting the costs of integration and provides extreme flexibility.
With systems integrated using this method, it is possible to completely replace one subsystem
with another subsystem which provides similar functionality but exports different interfaces,
all this completely transparent for the rest of the subsystems.
The only action required is to implement the new interface between the ESB and the new
subsystem.
The horizontal scheme can be misleading, however, if it is thought that the cost of intermediate
data transformation or the cost of shifting responsibility over business logic can be
avoided.
A common data format is an integration method to avoid every adapter having to convert data
to/from every other applications' formats, Enterprise application integration systems
usually stipulate an application-independent data format.
The EAI system usually provides a data transformation service as well to help convert between application-specific
and common formats.
This is done in two steps: the adapter converts information from the application's format
to the bus's common format.
Then, semantic transformations are applied on this.
See also Continuous integration
Enterprise application integration Integration platform
Integration Competency Center Interoperability
System of record Systems integrator
Multidisciplinary approach Cloud-based integration
Interoperability System design
Modular design Configuration design
References
External links CSIA