Making Sense of Middleware
Andre Yee
“Integrating Your eBusiness Enterprise”
Context is Everything
Personal background– Developed distributed middleware technology for
the past 8 years.
– Author of articles and books including “Integrating Your eBusiness Enterprise” (SAMS Publishing, April 2001)
– Currently in the Internet Security arena w/ NFR Security.
Middleware synonyms– EAI (Enterprise Application Integration)
– B2Bi (B2B Integration
– e-Business Integration
Agenda
The Enterprise Integration Challenge Making Sense of Middleware
Technology Evaluating Middleware - What’s right for
you?
Trends Driving the EAI Challenge
Growing Adoption of Packaged Applications
Base of Business Critical “Legacy” Systems
Internet is driving Open B2B Collaboration
Complexity of Changing Business Processes
– M&A, Consolidation, Re-engineering
The Need For Application Integration
Source: Aberdeen Group, October 2000
The Integration Problem
“70% of all code written today consists of interfaces, protocols and other procedures to establish linkages among various systems”
“30% of entire IT budget is spent on building, maintaining, and supporting application integration”
Middleware - The Answer to the Integration Challenge
What is Middleware?
“Connectivity software that consists of a set of enabling services that allow multiple processes running on one or more machines to interact across a network.” CMU Software Engineering Institute
“Middleware is software that connects applications, allowing them to exchange data” CIO article, May 2001.
Why Middleware?
Preserve and leverage existinginformation technology systems
Bridge diverse “islands of automation”
Purchase and integrate “best of breed”
offered by independent software vendors
Disorder Today
Application
Application
Application Application
Application
Application
Application
Order Tomorrow
Application
Application
Application Application
Application
Application
Application
EAI
But, what is EAI or Middleware Technology?
Integration Broker Vendors Say:
MessageBrokers
Application
Application
Application Application
Application
Application
Application
Application Server Vendors Say:
ApplicationServers
Application
Application
Application Application
Application
Application
Application
Distributed Object Guys Say:
Let’s look at middleware taxonomy...
DistributedObjects
Application
Application
Application Application
Application
Application
Application
BusinessProcess
Data-Access
Messaging-Transport
Object-Transactional
Integration Brokers
The Middleware Taxonomy
Application Messages
Data
ApplicationInterface
BusinessApplication
Data
ApplicationComponents
AsynchronousProtocol
Making Sense of Middleware - Data Access Middleware
Data Access Middleware– Focused on client-server data access
– Synchronous Request/Reply model
– ODBC, Database Gateways
– Vendors: Merant/Data Direct, Information Builders EDA/SQL
OracleOracle SybaseSybase MSSQL Server
MSSQL Server
Client SQL RequestClient SQL Request
DatabaseGatewayDatabaseGateway
SQL Joins
Distributed SQL
Request
SQL Request/Replay
SQL Request/Replay
SQL Request/Replay
Figure 2.2
Integration with Data Access Middleware
Making Sense of Middleware - Messaging Middleware
Messaging Middleware– AKA Message Queuing Middleware or
Message Oriented Middleware (MOMs)
– Focused on transporting application data via asynchronous messaging protocols
– Vendor/Products: IBM MQ Series, Microsoft MSMQ, Java Messaging Service (JMS)
Integration with Messaging Middleware
ApplicationApplication
MessageMessage
ApplicationApplication
MessageMessage
MQM/MOMQueueQueue
MessageMessage
MessageMessage
MessageMessage
Message createdand sent to a message queue
Message received froma queue and processed
Figure 2.3
Making Sense of Middleware - Object Transactional Middleware
Object-Transactional Middleware– Focused on a distributed object, component
or transactional model
– Most products support all three
– Requires custom component code to bind applications or data resources
– CORBA, TP Monitors, Application Servers
– Vendor/Products: BEA Weblogic, IBM Websphere, Microsoft MTS, BEA Tuxedo, IBM CICS
ApplicationServer
Integration with Application Servers
Web ClientWeb Client Web ClientWeb Client
HTTP RequestsHTTP Requests
IntegrationLogic
IntegrationLogic
IntegrationLogic
IntegrationLogic
EJBEJB EJBEJB
ERPERP CRMCRM LegacyLegacy DBDB
TransactionManagementTransactionManagement
Making Sense of Middleware - Integration Brokers
Integration Brokers– Focused specifically for application integration
– Integration Broker components include messaging middleware, transformation engine, rules engine, adapters, integration design tools.
– Content based routing is a distinctive feature from the basic messaging middleware
– Parameterized data mapping approach rather than Code-driven approach
– Vendors/Products: Webmethods, Vitria, SeeBeyond, Tibco, IONA
Integration with Integration Brokers
AppCAppA
SourceAdapterSourceAdapter
TargetAdapterTarget
Adapter
TransformerTransformer
LinkLink
MessageMessage
ReplyAdapterReply
Adapter
AppB
HubHub
FilterFilter
Variations on Theme
B2Bi/Web Services Brokers– Evolved from application servers or integration
brokers
– Utilize HTTP as primary protocol
– Based on XML, XML Schema, XSLT, SOAP
Business Process Integration– Focused on business process rather than
business data
– State management of “long running transactions”
– Extensions to application servers or integration brokers
Evaluating and Selecting Middleware
Consider the required integration model or pattern
– Intra-enterprise or Inter-enterprise
– Client/Server data access, inter-application data exchange, composite application integration
Consider scope and complexity– Simple integration or complex global multi-
application integration
Consider use of standards– XML, XSLT, JMS, JCA
Evaluating and Selecting Middleware
Evaluate Technology Criteria *:– High Availability
– Transactional
– Performance
– Scalability
– Adapters
– Integration Design Tools
Evaluate Vendor Criteria *:– Viability
– 24x7 Support
– Proven Case Studies on ROI
* Partial listing only