overview of application adapter technology kenneth baik kenneth baik april 10, 2003 ece1770 - expert...
Post on 28-Dec-2015
217 Views
Preview:
TRANSCRIPT
Overview of Application Overview of Application Adapter TechnologyAdapter Technology
Overview of Application Overview of Application Adapter TechnologyAdapter Technology
Kenneth BaikKenneth Baik
April 10, 2003April 10, 2003
ECE1770 - Expert TopicECE1770 - Expert Topic
2
AgendaAgenda
Main reasons for EAIMain reasons for EAI
Primary objective of Application AdapterPrimary objective of Application Adapter
Typical Issues with AdapterTypical Issues with Adapter
Basic Functions of AdapterBasic Functions of Adapter
Adapter MethodologyAdapter Methodology
One of Adapter TechnologiesOne of Adapter Technologies
Simple DemoSimple Demo
SummarySummary
3
Application System IntegrationApplication System Integration
Heterogeneous PlatformsHeterogeneous PlatformsERP SystemsERP SystemsIn-house Proprietary AppsIn-house Proprietary AppsMainframe ApplicationsMainframe Applications
ConsumersConsumers
Trading PartnersTrading PartnersSuppliersSuppliersDistributorsDistributorsBusiness PartnersBusiness Partners
Internet / Internet / Virtual Private NetworkVirtual Private Network
B2BB2BIntegration
Integration
A2AA2A
B2CB2C
B2B
Corporate procurement, supply chain, industry portals
B2C
Web Storage System, customer relationship management
Application Integration
Combining applications into new processes
Connecting internal, external applications
4
Two main reasons for Two main reasons for Application System IntegrationApplication System Integration
To connect between the existing application systemsTo connect between the existing application systems A typical Fortune 1000 company has many Mission Critical A typical Fortune 1000 company has many Mission Critical
Application SystemsApplication Systems A typical large enterprise has more than 5000 major application A typical large enterprise has more than 5000 major application
systemssystems These systems are logically interconnectedThese systems are logically interconnected Corporate information is scattered in disparate and Corporate information is scattered in disparate and
heterogeneous application systems. These application systems heterogeneous application systems. These application systems are called “Legacy” systems.are called “Legacy” systems.
Approximately 70% of corporate data resides on legacy hosts, Approximately 70% of corporate data resides on legacy hosts, such as mainframe and AS/400 platformsuch as mainframe and AS/400 platform
Therefore, the most of enterprises have a mandate to integrate Therefore, the most of enterprises have a mandate to integrate legacy systems to share, exchange, analyze and consolidate the legacy systems to share, exchange, analyze and consolidate the corporate datacorporate data
5
Two main reasons for Two main reasons for Application System IntegrationApplication System Integration
To connect the existing application systems with new To connect the existing application systems with new application systems on new platform such as Web application application systems on new platform such as Web application systemssystems
As the Internet gets more attention from business sectors, the As the Internet gets more attention from business sectors, the requirements of connecting the legacy systems to the Web requirements of connecting the legacy systems to the Web application systems arise to the surfaceapplication systems arise to the surface
Rewriting a legacy system into Web application system does Rewriting a legacy system into Web application system does not make sense financially and technicallynot make sense financially and technically
There are too many risks for mission critical applicationsThere are too many risks for mission critical applications To provide a means of exchange for business information To provide a means of exchange for business information
flowing between business partners, legacy systems and Web flowing between business partners, legacy systems and Web application systems must be integrated.application systems must be integrated.
6
Core component of EAI ProductsCore component of EAI Products
The requirement for communication between The requirement for communication between disparate and heterogeneous application systems disparate and heterogeneous application systems leads to development of Enterprise Application leads to development of Enterprise Application Integration productsIntegration products
A core component of this is “A core component of this is “AdapterAdapter””
““Application AdapterApplication Adapter” is ” is one of the core components of EAI productone of the core components of EAI product!!
7
Definition of AdapterDefinition of Adapter
The term “The term “AdapterAdapter” could mean different things ” could mean different things depending on the context and the application architecturedepending on the context and the application architecture
Example 1Example 1
a simple a simple servletservlet is called an adapter is called an adapter Example 2Example 2
an entire application, such as an entire application, such as EDI gatewayEDI gateway, could be , could be called an adaptercalled an adapter
Regardless of its size and context, Regardless of its size and context, anan adapter’s primary adapter’s primary objective is objective is to facilitate integration of the application for to facilitate integration of the application for which it has been designedwhich it has been designed
8
Developing an AdapterDeveloping an Adapter Often enterprises end up with multiple homegrown Often enterprises end up with multiple homegrown
adapters, each exposing a subset of the application adapters, each exposing a subset of the application functionalityfunctionality
Developing an adapter can be very costly and time-Developing an adapter can be very costly and time-consumingconsuming
Therefore, for well-known packaged applications such as Therefore, for well-known packaged applications such as SAP and Siebel, off-the-shelf adapters are available that SAP and Siebel, off-the-shelf adapters are available that integrate the packaged application to the integration integrate the packaged application to the integration backbone with little or no coding effortbackbone with little or no coding effort
Custom adapters can also be written for legacy systems Custom adapters can also be written for legacy systems for which such ready-made adapters are not availablefor which such ready-made adapters are not available
EAI vendors provide adapter SDKs to facilitate this EAI vendors provide adapter SDKs to facilitate this development development
9
Typical Issues with an AdapterTypical Issues with an AdapterMany EAI vendors build an application adapter for a specific client Many EAI vendors build an application adapter for a specific client
and later package it as a product. The design of such an adapter and later package it as a product. The design of such an adapter could have the following limitations:could have the following limitations:
Limited functionalityLimited functionality: “First customer” specific customizations and : “First customer” specific customizations and shortcuts render it ineffective in a different scenarioshortcuts render it ineffective in a different scenario
Version tie-inVersion tie-in: Tie-in to a specific version of the packaged : Tie-in to a specific version of the packaged application (ie. PeopleSoft 7, PeopleSoft 8, SAP R/3, etc.) implies application (ie. PeopleSoft 7, PeopleSoft 8, SAP R/3, etc.) implies substantial additional effort whenever the application version is substantial additional effort whenever the application version is upgradedupgraded
Non-scalable designNon-scalable design: Improper design may render an application’s : Improper design may render an application’s inherent scalability completely ineffectiveinherent scalability completely ineffective
Most of all, Most of all, each adapter is application-specificeach adapter is application-specific due to the due to the uniqueness of APIuniqueness of API
10
Basic Functions of AdapterBasic Functions of Adapter Data TransformationData Transformation
When two independently written application systems When two independently written application systems communicate each other, their datasets between two systems communicate each other, their datasets between two systems do not match. Therefore, there is a need for message do not match. Therefore, there is a need for message transformation between the originator and the recipient.transformation between the originator and the recipient.
A source adapter transforms the source message to a common A source adapter transforms the source message to a common form while a target adapter changes the common form to that form while a target adapter changes the common form to that required by the recipient.required by the recipient.
Data TransportationData Transportation The transformed data in the source application has to be The transformed data in the source application has to be
transferred to the target application system by specific protocol transferred to the target application system by specific protocol such as FTP, HTTP, HTTPS, SMTP, etc.such as FTP, HTTP, HTTPS, SMTP, etc.
11
Basic Functions of AdapterBasic Functions of Adapter
Application1
EIS
Document Specification (API)
Document Specification (API)
DataMapping
DataMapping
Data
Tra
nsfo
rmati
on
Data
Tra
nsp
orta
tion
12
Integration-ready Appl. systemIntegration-ready Appl. system
For an application system to be integration-ready, there are two requirements One is to isolate and expose its different points of
integration. A point of integration could be a specific database table, a specific business function or a stored procedure
The other is to isolate the integration logic from the application’s business logic, interface and database layers. In a three-tiered application architecture, the user interface, business logic and database layers each encapsulate specific application functionality
13
Adapter Design MethodologyAdapter Design Methodology
Adapters are one way for developers to isolate an application’s integration logic. However, application adapters use application-specific APIs and this is not ideal as access mechanisms, since the API will most likely be different for most applications
So, platform-neutral standards such as XML, SOAP (Simple Object Access Protocol) and J2EE (the Java 2 platform, Enterprise Edition) are ideal building blocks for developers to design adapters
14
One of Adapter TechnologiesOne of Adapter Technologies MS BizTalk ServerMS BizTalk Server provides the ability to exchange provides the ability to exchange
data between two heterogeneous systems through an data between two heterogeneous systems through an XML interfaceXML interface
BizTalk Messaging ServicesBizTalk Messaging Services BizTalk Server SupportsBizTalk Server Supports
XML, X12, EDIFACT, and other document formatsXML, X12, EDIFACT, and other document formats HTTP, HTTPS, SMTP, MSMQ, File, DCOM, HTTP, HTTPS, SMTP, MSMQ, File, DCOM,
and other protocolsand other protocols Mapping Between Document FormatsMapping Between Document Formats Programmable Interfaces for Submitting and Programmable Interfaces for Submitting and
Receiving Documents and for AdministrationReceiving Documents and for Administration Content-Based Routing of DocumentsContent-Based Routing of Documents Data Tracking and AnalysisData Tracking and Analysis
15
BizTalk Server Messaging ToolsBizTalk Server Messaging Tools
BizTalk EditorBizTalk Editor Defines input and output document specifications (XML or non-XML)Defines input and output document specifications (XML or non-XML)
BizTalk MapperBizTalk Mapper Maps one document format to another using document specificationMaps one document format to another using document specification
BizTalk Messaging ManagerBizTalk Messaging Manager Administers agreements with trading partners and applicationsAdministers agreements with trading partners and applications Messaging Port – defines Messaging Port – defines Transport Target LocationTransport Target Location Messaging Channel – defines input/output document specification and a Messaging Channel – defines input/output document specification and a
map for data transformationmap for data transformation
BizTalk Administration ToolBizTalk Administration Tool Manages queues (receive function/MSMQ)Manages queues (receive function/MSMQ) Configures transport integration (HTTP, File, SMTP, etc)Configures transport integration (HTTP, File, SMTP, etc)
16
BizTalkServerGroup
SMTP
HTTP
FTP
MSMQ
SNAServer
FileSystem
DCOM
EDIIIS
Management Desk
BizTalkEditor
ChannelManager
XXXXXX
XXXXXX
Tools
DataStore Work ItemsAdminSchemas/Maps Tracking
XXXXXX
XMLPO
SAPIDOC
SchemaEditor
Channel
ChannelEditor
BizTalkMapper
PortManager
SchemaMapper
XSLMap Port
PortEditor
ExternalApplication
Internet
SAPR/3
1
Document Interchange ExampleDocument Interchange Example
17
BizTalkServerGroup
SMTP
HTTP
FTP
MSMQ
SNAServer
FileSystem
DCOM
Management Desk
BizTalkEditor
PipelineManager
XXXXXX
Tools
DataStore Work ItemsAdminSchemas/Maps Tracking
XMLPO
SAPIDOC
SchemaEditor
Channel
ChannelEditor
BizTalkMapper
AgreementManager
SchemaMapper
XSLMap Port
PortEditor
ExternalApplication
Internet
XXXXXX
Messaging Service
Decrypt/Decode
Parse
Select Pipeline
XXXXXX
XMLPO
Decrypt/Decode
Parse
Select Channel
SAPR/3
XMLPO
2
Document Interchange ExampleDocument Interchange Example
18
Management DeskManagement Desk
BizTalkBizTalkEditorEditor
PipelinePipelineManagerManager
SAPSAPR/3R/3
ToolsTools
DataDataStoreStore Work ItemsWork ItemsAdminAdminSchemas/MapsSchemas/Maps TrackingTracking
XMLXMLPOPO
SAPSAPIDOCIDOC
SchemaSchemaEditorEditor
ChannelChannel
ChannelChannelEditorEditor
BizTalkBizTalkMapperMapper
AgreementAgreementManagerManager
SchemaSchemaMapperMapper
XSLXSLMapMap PortPort
PortPortEditorEditor
ExternalExternalApplicationApplication
Internet
XMLXMLPOPO
ChannelChannel
XSL TransformXSL Transform
Serialize to IDOCSerialize to IDOC
SAP IntegrationSAP IntegrationComponentComponent
SAPSAPIDOCIDOC
XSL TransformXSL Transform
Serialize to IDOCSerialize to IDOC
SAP IntegrationSAP IntegrationComponentComponent
SAPSAPIDOCIDOC
DC
OM
DC
OM
XMLXMLPOPO
SAPSAPIDOCIDOC
33
Document Interchange ExampleDocument Interchange Example
20
SummarySummary
Middleware is software that sits between the back-end or Middleware is software that sits between the back-end or database tier and the front-end or presentation tier of an database tier and the front-end or presentation tier of an application. Various types of middleware perform application. Various types of middleware perform functions such as data access, messaging, data aggregation, functions such as data access, messaging, data aggregation, data integration, and transaction management. data integration, and transaction management.
Application Adapter is an Integration Middleware that is Application Adapter is an Integration Middleware that is used for process integration or data integration and used for process integration or data integration and aggregation.aggregation.
top related