- Posted by ErikW on March 25, 2009
Most organizations typically use many applications and databases in their daily operations. Applications could be off-the-shelf (COTS), custom-built, or part of legacy systems, and they often operate in multiple network tiers and often reside on varying operating system platforms. Organizations that have a many applications like this are often thought to be large, possibly employing thousands of people; however, smaller organizations – even those that employ one or two people – are not immune since they are more likely to be forced into using their customer’s applications and platforms.
So where do all of these applications and platforms come from?
Business applications, like the businesses they support are unique. Business applications solve difficult problems, making them difficult to write in almost all cases. A simple approach could attempt to write an all-encompassing application that capable of running a complete business. However, this all-encompassing approach is not feasible as is demonstrated by applications from vendors like SAP, and Oracle, which, as large as they are, encompass only a fraction of the business functions of a typical organization.
A multi-application approach makes it possible for businesses to select the best of a class of applications. A business could choose to invest in the best customer relationship management system, or best billing system to meet their specific business needs.
Common business functions cross application boundaries. Accepting a new order can span business applications that manage inventory, billing, customer relationships, and payment processing – and all need to operate in the context of a single transaction.
Integration supports common business processes. Enterprise Application Integration is a practice that results in efficient, reliable, and secure information exchange between applications. The efficiencies that surface as a result of integration help organizations stay agile in a fluid marketplace, while reducing operational overhead (organizations save money!).
Path to Realization
Integration is a term that describes a state made up of three types of successful integrations:
1. Application Integration
2. Enterprise Integration
3. Business Integration
Application integration
Application integration gets applications to exchange data. There are three fundamental patterns (recurring approaches) that applications achieve integration (listed in order from least mature to most mature):
1. File Transfer
2. Shared Database
3. Remote Procedure Invocation
4. Messaging
Enterprise Integration
Enterprise Integration gets applications to work together in a coordinated manner to provide value to the underlying customer. Going back to the example of placing an order, Application Integration gets the inventory, billing, customer relationship, and payment processing applications to exchange data whereas Enterprise Integration orchestrates the applications into a repeatable, value added process that manages the order throughout its useful lifetime.
Enterprise Integration involves business process management (BPM), a practice that models an organizational structure, defines the business processes, and shows the interactions between them. BPM is important in discovering, analyzing, and creating repeatable processes that the Enterprise Integration effort can encode in a repeatable, value added process.
Enterprise Integration is comprised of four patterns:
1. Enterprise Service Bus
2. Service Oriented Architecture (hub and spoke)
3. Publish-Subscribe (distributed)
4. Point-to-point (mesh/network)
The four patterns each have their own applicability and none is more mature than the other. The only aspect they have in common is that they all use a pattern called Messaging, which you saw in the list of application integration patterns.
The goals of Enterprise Integration include flexible architectures, integration with existing applications, service integration, and state of the art composite application development.
Business Integration
Business Integration is relatively straightforward, assuming that you have spent time on your organization’s BPM. Business integration focuses mostly on your organization’s technical infrastructure since Business Integration exposes parts of your business’ operations on the public Internet.
Fortunately, state of the art business integration is within reach of all sizes of organizations as a result of the broad availability of cloud computing (a very cost-effective, demand-based model of using compute resources to meet fluid demands without having to make investments in infrastructure).
Conclusion
While I have introduced a number of concepts and terms here, you can see that integration is a fundamental aspect of working in and competing in the fluid marketplace. The ultimate goal of integration is to lower your organization’s costs while provide business value to your clients.
Next Step
Ready for the next step? Contact us here - http://www.tblocks.com/BLOG/contact.aspx
About the author:
Erik Westermann is the practice lead of Enterprise Application Integration at TechBlocks. Erik, a veteran with more than 12 years industry experience, published author, speaker and instructor, has the perspective needed to consistently and effectively deliver enterprise-class solutions. Erik publishes an EAI magazine at ArtOfBabel.com