Title: BizTalk 2004 Enterprise Message Bus
1BizTalk 2004Enterprise Message Bus
- Claessens Christof
- Technical Software Engineer
- SD WORX
2Key message
- Flexibility by modeling real business concepts
like events, SLAs, rules, tasks - Standards based
- Anticipate integration, instead of doing this
afterwards, providing much cleaner solutions
3Overview
- Introduction
- BTS2004 EAP Scenario
- Architectural Overview
- Technical Implementation Walkthrough
- Round Up and Conclusion
4BTS2004 EAP ScenarioEnterprise Message Bus
- Some cool buzwords(RTE, SOA, EAI, BAM, BPM,
Broker Architectures, ) - Business Value?
- From business wishes -gt Technology decisions.
- Goals
5BTS2004 EAP ScenarioEnterprise Message Bus
Goals
- Event driven
- Make BP act and react live
- Ensure flexible plugging / plumbing of services
- Reliable
- Trackable
- Maintainable
6BTS2004 EAP ScenarioEnterprise Message Bus
Example
- Employees get engaged on probation
- Service follow up of this probation period
- Provide employer advise at appropriate time
(probation almost over) - Send needed documents and information
- Notify and inform employer
- Keep track of illness and recalculate / extend
probation period according
7Overview
- Introduction
- BTS2004 EAP Scenario
- Architectural Overview
- Technical Implementation Walkthrough
- Round Up and Conclusion
8Architectural Overview Overview
- Events
- Publish / Subscribe
- Eventbus visualised
- Tasks
- Taskbus visualised
- SLAs
- SLA orchestration visualised
- Entire picture
9Architectural Overview The entire picture
DB
10Architectural Overview Events
- Gartner a business event is a meaningful change
in the state of the enterprise, such as - Technical this means XML data representing a
defined restricted by XSD schema - Examples
- New customer
- New order
- Payment Done
- Part delivered
11Architectural Overview Publish / Subscribe 1
- Loosely coupled exchange of asynchronous
notifications - Publish/subscribe builds on top of content based
routing - Publisher creates events and makes them
available to other processes to consume - Subscriber listens to (published) events,
filtered by set of criteria
12Architectural Overview Publish / Subscribe 2
- PubSub architectures decouples the actor and
reactor - System publishing has NO knowledge of system
subscribing - BTS2004 in every aspect builds on a pubsub engine
- This concept leveraged in the Enterprise Message
Bus by notion of Event Bus
13Architectural Overview Visualising events and
publishers
New customer New order Payment done Stock part
delivered Employee Engaged
EventBus
Events
Publishing
Event Listeners
14Architectural Overview Event Bus in relation to
SOA
New customer New order Payment done Stock part
delivered Employee Engaged
EmplHealth Svc
Billing Svc
EventBus
Shipping Svc
StockMgmt Svc
WelcomeMail Svc
NewsLetter Svc
Services
Event Listeners
15Architectural Overview Overview
- Events
- Publish / Subscribe
- Eventbus visualised
- Tasks
- Taskbus visualised
- SLAs
- SLA orchestration visualised
- Entire picture
16Architectural Overview Tasks and TaskBus 1
- Events often too restrictive and not very
flexible (depending on scenario) - Subscriptions dont contain any business rules or
external data - No preconditions possible other than those
expressable in subscription - Starting BP on the fly requires creating an
artificial event not a good practice - Notion of Task a well known business process,
triggered by a task message
17Architectural Overview Tasks and TaskBus 2
- Tasks can be started on the fly by dropping task
message on Task Bus - Direct routing instead of Pub Sub(Well known
services versus subscribed event listeners) - Taskbus can be leveraged by
- BPs (started for example by an event)
- Interactive Processes (SmartClient, Web, WSs,
WinForms, ) - MF (using MQSeries for example)
18Architectural Overview Visualising Task Bus
TaskBus
- Get probationduration
- Sleep
- Wakeup
- Check illness
- Recalculateprobation
- Send info
Task
Task
Task Drop
Task Orchestrations
19Architectural Overview Overview
- Events
- Publish / Subscribe
- Eventbus visualised
- Tasks
- Taskbus visualised
- SLAs
- SLA orchestration visualised
- Entire picture
20Architectural Overview SLA Orchestration 1
- You dont want tasks to start always under any
condition gt preconditions - Example When customer is gold-customer then
OR When price gt 1000 then - These scenarios mostly driven by Service Level
Agreements - Implemented as proxy-orchestration that
connects the eventbus with the taskbus
21Architectural Overview SLA Orchestration 2
- SLA orchestration has 2 main purposes
- Checking agreements and preconditions to them
- Taking care of customisation and data
modification - Examples
- Only certain customers want the probation period
to be followed up - It only makes sense to follow up the probation
period of an employee (not of a labourer)
22Architectural Overview SLA Orchestration 3
- Examples
- Customers can choose the adress to ship bought
product to (in some preferences table) - Certain customers get an extra discount under
certain conditions
23Architectural Overview Visualising Taskbus and
SLA orchestr
TaskBus
- Get probationduration
- Sleep
- Wakeup
- Check illness
- Recalculateprobation
- Send info
Task
Task
Task Drop
Task Orchestrations
24Architectural Overview Overview
- Events
- Publish / Subscribe
- Eventbus visualised
- Tasks
- Taskbus visualised
- SLAs
- SLA orchestration visualised
- Entire picture
25Architectural Overview Visualising relationship
event/task bus
DB
26Overview
- Introduction
- BTS2004 EAP Scenario
- Architectural Overview
- Technical Implementation Walkthrough
- Round Up and Conclusion
27Technical Implementation Walkthrough
Claessens ChristofTechnical Software Engineer SD
WORX
28Key message
- Flexibility by modeling real business concepts
like events, SLAs, rules, tasks - Standards based
- Anticipate integration, instead of doing this
afterwards, providing much cleaner solutions
29Resources
- http//www.microsoft.com/biztalk
- http//www.gotdotnet.com
30(No Transcript)