ESB
Implementation Methodologies
3 Basic Integration Patterns
DB Synchronization
- Multiple Processes
- Parallel unrelated steps
- One-Way, asynchronous
- Batch or Immediate
- Physically Independent
- Logically dependent
Data Consistency
Order Fulfillment Application
- One Business Process
- Multi Steps
- One-Way, asynchronous
- Batch or Immediate
- Physically Independent
- Logically Dependent
Multistep Process
Quote to Bind Application
- One Business Process
- One Step
- Two-Way, synchronous
- Physically Independent
- Logically Dependent
Composite
Application
Step 1 Requirements Gathering
Data Consistency Database Synchronization
The technical requirements of ABC Corporation can
be summarized as
- Data needs to be replicated across multiple data centers
asynchronously using a Message Bus.
- Any changes made to the Oracle Database instance in Geneva
need to be reflected (based on certain selection criteria) in
either the Sybase database instance or the MSSQL database instance
located in San Francisco and St.Louis respectively.
- The data needs to be transformed from the source table
data format to target table data format(s).
- All data transfers need to be secure
Key Characteristic: the data flow between steps is
asynchronous and one-way
Multi Step Process
Order Fulfillment
Company X runs an online market place for electronics products.
Orders are accepted over the web and saved in an Oracle DB. To
process an order, the company needs to perform credit-card
verification using a 3rd party hosted credit card gateway and then
send out orders to suppliers over email. The supplier sends back an
acceptance or rejection notification of the order (along with
expected delivery schedule) by a return email. This informationneeds
to be updated in the Oracle DB, so that the customer can track the
status of the order online.
Key Characteristic: the data flow between steps is
asynchronous and one-way
Composite
Application Quote To Bind
End to End business process for opening a new insurance policy that
includes Capture of customer information, Risk Evaluation requestor,
Processing of the Application, Development of a Price Quote and
finally, a Response (Quote) to the user.
Key Characteristic: The completion of each Step is
predicated on the completion of the next step and the calling
sequence is request/reply between steps.
Business Data Synchronization
- Data synchronization for Disaster recovery planning and
businesscontinuance, Content distribution, Backupconsolidation,
Server migration.
- Completely eliminate all manual data synchronization
without having to stop the system to accommodate new outlets or
changes to the tables in the source or target systems
- Business process monitoring Dash Board
- Add new retail outlets
- Business users should be able to rapidly create and deploy
business processes
- Timelines immediate
- Reduce development, maintenance costs
Technical/Systems Data Synchronization
- Technical
- High Level Business process representation ideally, the
model should map as rapidly as possible to the final application
solution
- Databases (SQL, Oracle, DB2 and files) across disparate
OS.
- Data flow representation
- Intended users
- Business Analyst (Choreography and Execution)
- System Administrator (setup, configuration, data
transformation)
- System
- Platforms and Operating Systems
- Overall network topology
Output Documents
- High-Level Design documents that address the integration
requirements(business & technical)
- Document all the identified data and process flows.
- Create a list of different networks, and the servers
available in each of this network
- Recommended hardware specifications for the specific ESB
product
- Any 3rdparty software that is essential to the functioning
of the ESB
Step 2 indentifying "must have"
features
Data consistency
- Architecture
- SOA ? (Hub & Spoke, Peer to Peer, Brokered Peer to
Peer)
- Brokered P2P with store and forward at end points of the
network
- Automatic reconnects in case of neworkfailures
- In-built store-and-forward
- Supported Standards
- Message Bus (Asynchronous, Transformation etc)
- Asynchronous, Transformation (at source or destination)
- Support for Distributed Applications (Compose, Execute and
Monitor distributed Apps)
- Location and Technology transparency, Intelligent
routing, Single point of control, Deployment support
- Connectivity services ( Web services,J2EE Connectors, JMS,
WebSphereMQ)
- JMS, Database Connectivity (JDBC)
- Administration / Deployment
- Single point of control
- Dynamic changes to application processes
- Single point of control
- Remote access capability
- Start / stop facilities
- Manual routing support
- Tracing
- Message editing
- Monitoring
- Problem determination
- Problem prediction
- Internal and external support
- Support for enterprise management frameworks
- Robustness (Service and the
Infrastructure level)
- Fault avoidance
- Fault tolerance
- Scalability and Performance (Service and
the Infrastructure level)
- Asynchronous messaging
- Multi-threading
- Load balancing
- Large data handling
- Security (Infrastructure and Application
level)
- Access control
- Information security
- Tools usage
- Breadth of Connectivity (Configure,
Modify, Connect with other Adapters)
- DBMS access (Oracle, SQL, DB2 etc)
- Legacy systems (Mainframe Applications)
- Application servers
- .NET
- COM / CORBA -Multi-Language Adapters
- WebServices(Publisher and Consumer)
- Tools
- Configuration (Business Processes, Services,
Infrastructure)
- Incremental deployment
- Life cycle support
|