BizTalk Server 2004 in a Service-Oriented World · BizTalk Server 2004 in a Service-Oriented World...
Transcript of BizTalk Server 2004 in a Service-Oriented World · BizTalk Server 2004 in a Service-Oriented World...
BizTalk Server 2004 in a Service-Oriented World
David ChappellChappell & Associates
www.davidchappell.com
The Evolution of Application Architecture
DBMS TMainframe Business Logic
DBMS GUIBusiness Logic
Business Logic
Client/Server
DBMS BrowserBusiness
LogicMulti-Tier
Service-Oriented DBMS
Business Logic Business
Logic
Clients
PCs
Web
Web Services
Enterprises Today
Packaged Application
Y
ERP Application
Unix Application
J2EE Application
.NET Application
Packaged Application
X
CICS Application
AS/400 Application
Service-Oriented Enterprises: An Idealized Picture
Packaged Application
Y
ERP Application
Unix Application
J2EE Application
.NET Application
Packaged Application
X
CICS Application
AS/400 Application
SOAP
Service-Oriented Enterprises: The Reality
Packaged Application
Y
ERP Application
Unix Application
J2EE Application
.NET Application
Packaged Application
X
CICS Application
AS/400 Application
Business Process
A Foundation for Business Processes:Describing the Platform
Communication with other applications
Scalability support
Human interaction with business processes
Cross-application authentication
Business process implementation
Process monitoring
Modifiable business rules
Tools for working with trading partners
BizTalk Server 2004BTS 2004 Engine: Adapters, pipelines, message mapping, and moreBTS 2004 Engine: Orchestrations with correlation, compensation, and more
BTS 2004 Engine: Hosts and host instances
Human Workflow Services
Technical: Health and Activity Tracking Business: Business Activity Monitoring
Enterprise Single Sign-On
Business Rules Engine
Business Activity Services
Illustrating BizTalk Server 2004
BizTalk Server 2004 Engine
Enterprise Single
Sign-On
Human Workflow Services
Business Activity Services
Health and Activity Tracking
Business Activity
Monitoring
Business RulesEngine
Illustrating the BTS 2004 Engine
MessageBox
Orchestrations
Message Path
<XML Message>
<XML Message>
<XML Message>
<XML Message>Incoming Message
Outgoing MessageSubscriptions
SendAdapter
SendPipeline
ReceiveAdapter
Receive Pipeline
Communication: BTS 2004 Adapters
Standard adapters from Microsoft include:– Web Services adapter – MQSeries adapter– SAP adapter– More
Many third-party adapters are available, including:– EDI adapter– PeopleSoft adapter– Lots more
Communication: Tools
For building adapters:– Microsoft.BizTalk.Adapter.Framework
namespaceWithin Visual Studio.NET:– Pipeline Designer
• Used to create custom pipelines– BizTalk Editor
• Used to create XSD message schemas– BizTalk Mapper
• Used to define mappings and XSLT transformations between message schemas
Process Implementation: Orchestrations
Define the operations in a business process using shapes– Compile into standard .NET assemblies
Example shapes:– Decide: an if-then-else statement– Loop: performs an action repeatedly– Send: sends a message– Receive: receives a message– Expression: executes an arbitrary expression– Parallel Actions: performs multiple operations
in parallel
Process Implementation: Tools
Within Visual Studio.NET:– Orchestration Designer
• Used to organize shapes that define a business process
Within Visio:– Orchestration Designer for Business
Analysts• Orchestrations can be imported and exported
between this and the Orchestration Designer
Process Implementation: State
Construct Message: allows declaring message variables, then setting their values with either:– Transform: set via a BizTalk Mapper map– Message Assignment: set via the Expression
EditorAn orchestration’s state is automatically stored and reloaded as needed
MessageBox
State
Scope Y: Long-running
ERP Application
Process Implementation: Scopes
Scope: allows grouping actions into transactions– Atomic: recovery via rollback– Long-running: recovery via compensation
BizTalk Server 2004 Engine x
2) Attempt update, fail
Scope X: Atomic
CICS Application
.NET Application
1) Update and commit
3) Compensate
Process Implementation: Correlation
Routes messages to the correct orchestration instance based on their contents– Doesn’t require the orchestration to block
waiting for a response message
BizTalk Server 2004 Engine
1
2
. . .PO# 5978
Purchase Order
. . .PO# 6013
Purchase Order
. . .PO# 5978
Invoice
. . .PO# 6013
Invoice
ERP Application
BizTalk Server 2004 Other Integration Platform
BPEL Definition
Generated
Process Implementation: The Business Process Execution Language (BPEL)
Web Services
BizTalk Server 2004 Engine
Process Implementation: Aggregating Services
Packaged Application
Unix Application
J2EE Application
CICS Application
AS/400 Application
Web Services Clients
Scalability Support: Host Instances
Multiple host instances containing the same orchestrations can run on different machines– Storing state in multiple MessageBoxes
Requests are automatically load balanced
MessageBox
Machine B
Machine A
Orchestrations
Host Instance
PQ
Orchestrations
RS
Host Instance
Machine C
Orchestrations
Host Instance
PQ
Machine D
Orchestrations
Host Instance
PQ
MessageBox
Machine E
MessageBox
Orchestration
State
Process
For business processes with stable rules:
For business processes with rapidly-changing rules:
Modifiable Business Rules: The Business Rules Engine
MessageBox
Orchestration
State
Process and Rules
Business RulesEngine
Rules
Modifiable Business Rules: Tools
The Business Rule Composer allows a process’s rules to be expressed in a more natural wayExample:– Business process terms :
• Quantity Requested (from an order message)• Maximum Allowed Order Quantity (set to 100)
– Business process rule:• if Quantity Requested is greater than
Maximum Allowed Order Quantity, then send Order Rejected message
Process Monitoring (Technical): Health and Activity Tracking
Health and Activity Tracking (HAT) provides graphical access to information about orchestrations and messages, such as:– When an orchestration starts and ends– When each shape within it is executed– When each of its messages is sent and
received– What’s in each message– Much more
Tool: Health and Activity Tracking tool
BizTalk Server 2004 Engine
Process Monitoring (Business): Business Activity Monitoring
Allows information workers to monitor business processes– And to define what should be monitored
Tracking
Monitored Events and Messages
Microsoft Excel
Other Clients
Business Activity Monitoring (BAM)
Process Monitoring (Business): Tools
For information workers:– BAM Excel Add-in
• Allows creating views of activities with specific milestones and business data
For developers:– Tracking Profile Editor (TPE)
• Allows specifying what events and messages should be monitored
The Result: Business Process Management (BPM)
BizTalk Server 2004 Engine
Business RulesEngine
Business Activity Monitoring (BAM)
Service
Service
Service
Modifiable business
rules
Business process
implementation
Process monitoring
Communication with other
applicationsScalability
support
Conclusions
A service-oriented world is inevitable, but it implies:– Connections to non-SOAP services– Services for building business processes
BizTalk Server 2004 is a foundation for building, managing, and monitoring business processes– In the world today– In the service-oriented world to come
About the Speaker
David Chappell is Principal of David Chappell is Principal of Chappell & Associates Chappell & Associates in San in San Francisco, California. David has been the keynote speaker for Francisco, California. David has been the keynote speaker for conferences in the U.S., Europe, Latin America, and the Middle conferences in the U.S., Europe, Latin America, and the Middle East, and heEast, and he’’s also delivered keynotes at many ins also delivered keynotes at many in--house events. house events. His seminars have been attended by tens of thousands of His seminars have been attended by tens of thousands of developers and decision makers in thirtydevelopers and decision makers in thirty--five countries. five countries. DavidDavid’’s books on enterprise software technologies have been s books on enterprise software technologies have been published in ten languages, and more than 100 of his articles hapublished in ten languages, and more than 100 of his articles have ve appeared in various publications. He is Series Editor for Addisoappeared in various publications. He is Series Editor for Addisonn--WesleyWesley’’s s Independent Technology GuidesIndependent Technology Guides, and his most recent , and his most recent book, book, Understanding .NETUnderstanding .NET, was published in this series in 2002. , was published in this series in 2002. DavidDavid’’s consulting clients have included HP, IBM, Microsoft, s consulting clients have included HP, IBM, Microsoft, Stanford University, and others. He has also met with and adviseStanford University, and others. He has also met with and advised d a broad range of organizations including Deutsche Bank, a broad range of organizations including Deutsche Bank, Singapore Airlines, and the Industrial and Commercial Bank of Singapore Airlines, and the Industrial and Commercial Bank of China. China. David holds a B.S. in Economics and an M.S. in Computer David holds a B.S. in Economics and an M.S. in Computer Science, both from the University of WisconsinScience, both from the University of Wisconsin--Madison. He has Madison. He has also participated in Executive Education at the Wharton School oalso participated in Executive Education at the Wharton School of f Business.Business.