Modeling for System Integration

Today most of the enterprise-wide systems are comprised of myriad of software applications. Typically these applications don't communicate with each other, which results in the information silos. These types of silo systems introduce many problems, such as duplicate data and information falling through the cracks. Lack of automated communication between these systems also leads to inefficiencies and overall slow business process. Due to this fact System Integration that was one of the least considered areas in IT is now receiving a lot of attention.

Types of Integration

All the applications in the enterprise are part of some business process. To integrate the IT Systems we need the knowledge of surrounding business processes, which can be modeled using IDEF0, BPMN, UML, etc. As System Integration is about communication between software systems, it can be done at below different levels.

Data Integration

The integration of systems is done at the data layer. There are many tools available today that do the schema mapping between different databases.

Functional Integration

It integrates systems at the logical layer and is accomplished by implementing Service Oriented Architecture (SOA), messaging middleware or distributed computing model.

Presentation Integration

This is done using screen scrapers. The application is integrated through User Interface; a screen scraper reads the screen output and user actions are automated programmatically.

Standard Formats

System Integration may include IT systems that span different organizations and there are many industry standards used in communication between these inter-organizational systems. These standards are basically the technical representation of data that is exchanged between them. Below is the set of main standards used in the industry.


UN/EDIFACT has been developed under the United Nations to provide a standard for administration, commerce and transport. It has replaced TRADACOMS, which was one of the oldest EDI standards. XML/EDIFACT standard allows using the XML syntax to represent the EDIFACT messages so that they can be used by the XML systems. UN/EDIFACT has been adopted by ISO as the ISO standard ISO 9735.


ANSI ASC X12 is the standard from US national standards body under ANSI for health care, insurance, government, transportation, and many other industries.


SWIFT is a cooperative under Belgian law. It has established common standards for financial transactions. SWIFT operates a worldwide financial messaging network which exchanges messages between banks and other financial institutions.


ODETTE is the standard for automotive industry and consists of over thirty messages. It is managed by ODETTE International in association with Society of Motor Manufacturers and Traders (SMMT).


ACCORD is a nonprofit standards development organization serving the insurance industry and related financial services industries. ACCORD standards describe various aspects of the life, health annuity, and insurance industries.


Modeling for System Integration

Modeling in UML

Many of the industry standards have their own modeling languages. But the direction that we all are moving towards is to have a modeling language that is independent of any standard or technology and that is where UML fits in. The advantage of neutral message specification in UML is the much easier conversion of messages from one format to another.

Communication between different IT systems occurs through interfaces. Through an interface system sends a message to another system. The sender initiates an activity and receiver responds to the event. The messages that are exchanges are self-contained and coherent. There is also metadata in the messages referred to as reference data, which with other data also contains the information of sender and receiver.

In UML the whole process of system integration can be modeled using four diagrams: Deployment, Activity, Sequence and Class diagrams. Deployment diagram can be uses to show interfaces. Activity and Sequence diagrams are used to show the dynamic flow of the system, how messages flow in the system. Class diagram is used to depict the structure of the messages.

To illustrate this, let's take an example of an electronics company that outsources its manufacturing to a vendor; let's name the electronics company and its vendor as Khanyar and Nowhatta respectively. The Sales application of Khanyar sends the order list to Order Receiving system of Nowhatta, which processes the orders and sends the updated order list back to the Khanyar.

Deployment diagram

This will be used to show the interfaces between the IT systems.


Activity diagram

The activity diagram depicts the process; it is used to show the interaction between the IT systems.


Sequence diagram

The focus of the sequence diagram is to illustrate the chronological sequence of message exchange between the IT systems.


Class diagram

This represents the static view that describes the structure of business objects that are sent in the messages. The structure and purpose of the objects should be clear and reusable.


Sajad Deyargaroo

This article was originally published on September 4th, 2009

About the Author

Sajad Deyargaroo

Sajad, MCTS, MCP, started his career developing applications in VB 4.0 and C++. His interest in programming has spanned many languages but is now focused on .Net. Nowadays, he works with AIS on Microsoft technologies and has published many articles in several magazines and web. You can send an email to sajad@programmer.net.

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date