Biztalk Server 2004 Technical Overview DarmadiKomo

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 25

http://www.microsoft.

com/technet TNTx-xx

BizTalk Server 2004


Technical Overview

Darmadi Komo
Microsoft Corporation

What we will cover:

‹ What is BizTalk
‹ Enterprise Application Integration (EAI)
and BizTalk
‹ Integrating BizTalk with Web Services
‹ Integrating desktop applications with
BizTalk Solutions (Workflow)
‹ Integrating Trading partners (B2B)
‹ Deploying BizTalk Solutions
‹ Securing BizTalk solutions

1
http://www.microsoft.com/technet TNTx-xx

Agenda
‹ BizTalk Basics
‹ BizTalk Application Integration
‹ Implementing Business Processes
‹ Market Momentum and Summary

BizTalk Basics
EAI Technologies
Application 2
XML
Format

Web
Services

BizTalk IIS
Server Server
Application 1 Application 3
Format XML Data

Application 1 Application 2 Application 3 Application 4

2
http://www.microsoft.com/technet TNTx-xx

Basic Enterprise Environment

Typical Enterprise Business Partners


Inventory/ Custom business
logistics applications
Security Supplier
firewall EDI

Financial XML
Systems Supplier hub

xCBL

Customer Enterprise
Relationship Resource Marketplace
Management Planning

EAI B2B

BizTalk Basics
What’s new in Microsoft BizTalk 2004
‹ Standards Support
¾ BPEL4WS, WSDL, XSD, XSLT
‹ Integrated Tools Environment
¾ Unified in Visual Studio .NET 2003
‹ BizTalk Project System
¾ Orchestration, schemas, maps, and pipelines
‹ Web Services Integration and Durability
¾ WSDL, messages, ports, and services
‹ Power Tools for Information Workers
¾ Business Activity Services, Human Workflow Services, Tracking
‹ Faster Partner Configuration
¾ BizTalk Explorer

3
http://www.microsoft.com/technet TNTx-xx

BizTalk Basics
Standards Support
‹ XML foundation
¾ Schema based on W3C XML standard XSD
¾ Schema mapping based on W3C XSLT
‹ Business Process Execution Language for Web
Services (BPEL4WS)
¾ Describes Web service behaviors and processes
‹ Web Services Description Language (WSDL)
¾ XML Web Service support is core BizTalk Server 2004
functionality

BizTalk Basics
BizTalk XML Schemas
XML Schema
---

<xs:element name="Item">
‹ BizTalk uses <xs:complexType>
the XML <xs:sequence>
<xs:element name="Description“ type="xs:string" />
Schema <xs:element name="Quantity" type="xs:int" />
Definition <xs:element name="UnitPrice" type="xs:string" />
An Language
An XML
XML schema
schema defines:
defines: <xs:element name="TotalPrice" type="xs:decimal" />
<xs:element name="ItemID" type="xs:long" />
z Elements
z
(XSD)
Elements
</xs:sequence>
z
z Attributes
Attributes </xs:complexType>
z
z Data
Data types
types </xs:element> XML
---
Instance
z
z Order
Order of
of tags
tags <Item>
z
z Mandatory
Mandatory fields
fields <Description>Description_0</Description>
Multiple <Quantity>10</Quantity>
z
z Multiple occurrences
occurrences
<UnitPrice>UnitPrice_0</UnitPrice>
<TotalPrice>10.4</TotalPrice>
<ItemID>10</ItemID>
</Item>

4
http://www.microsoft.com/technet TNTx-xx

BizTalk Basics
Supported Schema Types
Schema Type Details
XML y Supports native XML message types
y Defined in XML Schema definition
language (XSD)

Flat File y Supports delimited or positional file


formats
Node Structure Start Length
Node Structure
Description Delmited
Description Delmited
Start
00
Length
50
50
y Attribute tags are used to represent
UnitPrice Delmited
UnitPrice Delmited 50
50 10
10 values
Quantity Delmited
Quantity
TotalPrice
TotalPrice
Delmited
Delmited
Delmited
60
60
70
70
10
10
10
10
y Tag information is stored using the
ItemID
ItemID
Status
Delmited
Delmited
Delmited
80
80
99
10
10
11
annotation capabilities of XSD
Status Delmited 99

Property y Special purpose schema type


y Defines promoted property fields
y Property fields can then be accessed by
various BizTalk Server components

BizTalk Basics
BizTalk Project System
Orchestration
Orchestration Schemas
Schemas
Model
Model the
the Business
Business Customer
Define
Define Business
Business Name
Process
Process
Documents
Documents Title Header
Item PO
Record
PO Field1 Status
Item
Status Field2
ItemID Field3 Field1

Qty Field2
Field3
UnitPrice
Date

Pipelines
Pipelines
Maps
Maps
Process
Process Messages
Messages Header Order
PO PO
Status Date
Item Detail
Field1 FieldA
Transform
Transform Data
Data Field2
FieldB

Field3

5
http://www.microsoft.com/technet TNTx-xx

BizTalk Basics
BizTalk Server Projects

BizTalk Basics
BizTalk Solution Stages
Analyst Developer IT Pro
ReceivePOPort
ReceivePO Develop ReceivePOPort
Operation_1
ReceivePO
POMessage
Physical
Architect Operation_1
> Request
<New Operation>
POMessage
and Test
> Request
<New Operation> Environment
ContructInvoice
POInvoiceTransform

ContructInvoice SendInvoicePort
Operation_1
SendInvoice < Request
POInvoiceTransform
<New Operation>
InvoiceMessg
SendInvoicePort
Operation_1
< Request
<New Operation>
SendInvoice

InvoiceMessg

The Business The Developer uses


Analyst creates a BizTalk graphical The IT Professional
graphic development environment deploys the solution to
representation of to create an application the physical hosting
the business that models the business environment
process process

6
http://www.microsoft.com/technet TNTx-xx

Agenda
‹ BizTalk Basics
‹ BizTalk Application Integration
‹ Implementing Business Processes
‹ Market Momentum and Summary

BizTalk Application Integration


Maps
‹ Maps define the correspondence
between records and fields in two
different schemas Data
Data Transformation
Transformation
z
z Perform
Perform computational
computational and
and
other
other data
data operations
operations
z
z Automatically
Automatically inserts
inserts the
the data
data
Source Schema Destination Schema from
from one
one message
message into
into another
another
Record Order
during
during runtime
runtime
PO PO Number Data
Data Translation
Translation
Status Date z
z Change
Change the the format
format of
of data
data
ItemID Item No between
between messages
messages
Qty Quantity z
z Example:
Example: translate
translate to
to and
and from
from
UnitPrice Order Status aa flat
flat file
file and
and anan XML
XML file
file
Date

7
http://www.microsoft.com/technet TNTx-xx

BizTalk Application Integration


Types of Maps
Mapping Operation Usage
Basic y Most common type of
Record Order mapping
PO PO Number y Values simply copied from
Status Date input message to output
ItemID Item No message
Qty Quantity
UnitPrice
y Supports most types of
Order Status
Date
transformations and
translations
Complex y Records can occur multiple
Header Order times for a single message
PO PO (looping)
Status Date
Item Detail
y Used for variable count
Field1 FieldA record mapping
Field2 FieldB
Field3

BizTalk Application Integration


The BizTalk Mapper

BizTalk
BizTalk Mapper
Mapper
z
z Integrated
Integrated within
within
Visual
Visual Studio
Studio .NET
.NET
z
z Becomes
Becomes active
active when
when aa
map
map is
is opened
opened oror added
added to to
aa project
project
z
z Schemas
Schemas must
must bebe part
part of
of
the
the project
project or
or referenced
referenced in in
another
another assembly
assembly

Source
Source Destination
Destination
Map
Map Zone
Zone
Schema
Schema Schema
Schema

8
http://www.microsoft.com/technet TNTx-xx

BizTalk Application Integration


Functoids
‹ Mechanism for performing
operations on mapped data
70+
70+ Predefined
Predefined functoids
functoids
z
z Add
Add and
and modify
modify data
data Source Schema Destination Schema
z
z Change
Change date
date and
and time
time
Record Order
z
z Concatenate
Concatenate fields
fields PO PO Number
z
z Perform
Perform complex
complex Status Date
transformations
transformations ItemID Item No
Custom
Custom functoids
functoids Qty Quantity
Custom UnitPrice
z
z Custom functionality
functionality Order Status
Date Total Price
z
z Use
Use scripting
scripting functoid
functoid
z
z Create
Create in
in Visual
Visual Basic
Basic or
or C#
C#

BizTalk Application Integration


BizTalk Server and InfoPath (Workflow)
‹ InfoPath is an end-user friendly interface for
XML
¾ Streamlines the process of gathering information
¾ Produces and consumes XML
‹ Create Templates and fill out forms
¾ Easy to deploy, maintain, and distribute
¾ Securely send it to partners, suppliers, or customers
regardless of platform
¾ Orchestrate and manage complex business
processes

9
http://www.microsoft.com/technet TNTx-xx

BizTalk Application Integration


BizTalk and InfoPath (Workflow)
‹ InfoPath is a smart client for XML Web
Services
¾ Use InfoPath forms as a Web service front-
end
¾ Connect to secure Web services
¾ Orchestration can be exposed through a Web
service
‹ Collect data for business processes
¾ Data validation and conditional formatting
¾ Work with forms online or offline

BizTalk Application Integration


Example – BizTalk & InfoPath Workflow
Send
Send
Company Product summary
summary mail
mail Summary
Employee Pricing Email
Database Database Attachment
Submit
Submit action
action
to
to be
be taken
taken to
to
BizTalk
BizTalk

Get
Get daily
daily
minimum
minimum prices
prices via
via
XML
XML Web
Web Service
Service Update
Update call
call
Get
Get sales
sales rep
rep reports
reports Call
info
info via
via ADO
ADO BizTalk database
database Reports
Server
Database
Submit
Submit sales
sales
call
call report
report
InfoPath

Update
Update daily
daily Daily
sales
sales Sales
database
database Database

Company
History
Query
Query
Query
Company
Company
history
history

10
http://www.microsoft.com/technet TNTx-xx

BizTalk Application Integration


Example – BizTalk & InfoPath Workflow
‹ Originator: submit
expenses
‹ Approver:
approve, decline,
or assign
expenses

Agenda
‹ BizTalk Basics
‹ BizTalk Application Integration
‹ Implementing Business Processes
‹ Market Momentum and Summary

11
http://www.microsoft.com/technet TNTx-xx

Implementing Business Processes


Messaging
XML Flat XML Flat
File Business Process File

Orchestration

Receive Location Send Port

Receive
Receive Send
Send
Adapter
Adapter Adapter
Adapter

Mapping
Receive
Receive <tag> <tag> Send
Send
Pipeline
Pipeline <tag> <tag> Pipeline
Pipeline

XML

XML XML
MessageBox
Database

Implementing Business Processes


Orchestration
Purchase
Purchase
Order
Order
Handle
Handle Receive
Receive
Approval
Approval Approval
Approval Status
Status
Query
Query Update
Update

Submit
Submit
Request
Request

Approve
Approve

Validate
Validate Status
Status to
to
Email
Email User
User
Unsubmitted
Unsubmitted

Message
Message to
to Call
Call Validate
Validate Change
Change
Email
Email User
User
User
User Schedule
Schedule Status
Status

Send
Send Hold
Hold for
for
Email
Email Approval
Approval

12
http://www.microsoft.com/technet TNTx-xx

Implementing Business Processes


The Orchestration Designer

Port Surface Port Surface


ReceivePO
ReceivePOPort POMessage
Operation_1
> Request

<New Operation> ContructInvoice


POInvoiceTransform
SendInvoicePort

Operation_1
< Request
SendInvoice
<New Operation>
InvoiceMessag

Toolbox
Toolbox

Port
Port Surface
Surface Design
Design Surface
Surface Port
Port Surface
Surface

Implementing Business Processes


Web Service Integration
Consuming
Consuming aa Web
Web Service
Service
To Orchestration
z
z To call
call Web
Web service
service from
from an
an orchestration
orchestration
z
z Can
Can be
be request
request only
only or
or request-response
request-response

Web Service

Publishing
Publishing an
an Orchestration
Orchestration
z
z To
To provide
provide access
access to
to aa business
business process
process Orchestration
z
z Expose
Expose receive
receive ports
ports as
as aa Web
Web methods
methods
z
z Can
Can be
be called
called by
by any
any Web
Web client
client
Web Service

Publishing
Publishing aa Schema
Schema
To Schema
z
z To provide
provide access
access to
to XML
XML schema
schema
z
z Select
Select request
request and
and response
response schemas
schemas
z
z Not
Not tied
tied to
to an
an orchestration
orchestration Web Service

13
http://www.microsoft.com/technet TNTx-xx

Implementing Business Processes


Message Subscription Model
Message
Message properties
properties are
are
used
used to
to determine
determine which
which
Message
Message received,
received,
XML, business
business processes
processes have
have
processed,
processed, and
and
Flat subscribed
subscribed to
to aa message
message
stored
stored in
in the
the Business
Business
message
message database
database Business
Process
Process Business
Process
Process
Receive Location

Receive
Receive
Adapter
Adapter
Bound
Subscribed
Receive
Receive
Pipeline
Pipeline Send
Send Port
Port
MessageBox
Database
Filter
Filter expressions
expressions
are
are configured
configured for
for
orchestration
orchestration
receive
receive shapes
shapes

Implementing Business Processes


Content Based Routing

XML, Receive Location


Flat
Receive
Receive Send
Send Port
Port AA
Adapter
Adapter Send
Send Port
Port BB

Receive
Receive
Pipeline
Pipeline Send
Send Port
Port CC
MessageBox
Database
Filter Port
If Qty > 500 A
Content
Content Based
Based Routing
Routing If Price > 10000 B
If Status == 0 C
z
z Route
Route directly
directly toto aa port
port
z
z Based
Based on a filter expression
on a filter expression
z
z Configured
Configured on
on thethe send
send port
port

14
http://www.microsoft.com/technet TNTx-xx

Implementing Business Processes


Pipelines

Pipeline Processing
Receive
Receive Pipeline
Pipeline Orchestration
Orchestration Send
Send Pipeline
Pipeline
Stages
Stages
XML z Encode
z Encode
z Assemble
z Assemble
z Encrypt
z Encrypt
Stages
Stages
z
z Decode
Decode
Disassemble XML
z
z Disassemble
z
z Convert
Convert
z
z Decrypt
Decrypt Pipeline Components
z
z Validate
Validate
z
z Normalize
Normalize
z
z Transform
Transform

Implementing Business Processes


Pipeline Designer

Pipeline
Pipeline Files
Files

Toolbox
Toolbox

Properties
Properties
Design
Design Surface
Surface

15
http://www.microsoft.com/technet TNTx-xx

Implementing Business Processes


Business Rules Concepts
Term Description
y Condition that governs the conduct of a business
process
Business
y Expression of knowledge or preference
Rule y Guidance system for steering a transaction in a desired
direction
y Collection of definitions for rule conditions and actions
Vocabulary y Assigns a friendly name to the definition
y Version stamped and immutable to preserve integrity
y Logical grouping of rules
Policy
y Published and deployed to a production environment
y Applies rules to facts and evaluates the result
Rules
y Determines what action to take based on the evaluation
Engine y Executes the action
y Invokes a policy and associated rules
Rule-based y Submits and facts to the rule engine
Rule-
Application y Applies the results of the evaluation to the calling
process

Implementing Business Processes


BizTalk Business Rules
‹ Rules allow Information workers ‹ Use business rules to:
to: ¾ Classify requests
¾ Define and own business policies ¾ Trigger notifications
¾ Change policies in real time ¾ Automate approvals
¾ No coding or rebuilding required ¾ Escalate issues
¾ Reroute documents

Business Business
Rules
Event Decisions
Customer y Is customer y If customer id exists, then customer is
Purchase known? known
Order y Is product y If customer is preferred and quantity exists
Request known? on shelf, then product is available
y Is product y If customer is not preferred and quantity+10
available? exists on shelf, then product is available
y Is product low y If quantity on hand < reorder quantity, then
on inventory? product is low on inventory
y If product is low on inventory, then reorder
product

16
http://www.microsoft.com/technet TNTx-xx

Implementing Business Processes


BizTalk Rule Composer
Create Policies
Policies
z
z Create versions
versions of
of
vocabularies
vocabularies
z
z Create
Create vocabulary
vocabulary
definitions
definitions
z
z Compose
Compose policies
policies
z
z Publish
Publish vocabularies
vocabularies
and
and policies
policies

Vocabularies
Vocabularies

Definitions
Definitions
Rule
Rule Composer
Composer

Implementing Business Processes


Trading Partner Integration
‹ Business Activity Services
¾ Configure business processes and trading
partners
¾ Office and Windows SharePoint Services are
the front end
‹ Role Links
‹ SEED Packages
¾ Hub packages
¾ Spoke Packages

17
http://www.microsoft.com/technet TNTx-xx

Summary and Market Momentum


‹ How to create a BizTalk project
‹ BizTalk can be Integrated with Web
Services
‹ InfoPath and Excel can be Integrated
with BizTalk Workflow Solutions
‹ How to Create and Deploy a Business
Solution
‹ Improved Integration to link Trading
Partners

BizTalk 2004 – The Application Integration


Platform Solution on .NET

Business Activity
Monitoring
Management Monitoring
Business Process
Orchestration
System, People, Process

Business Process
Definition

Process Definition

Connectivity

EAI, B2B, Host

18
http://www.microsoft.com/technet TNTx-xx

Enterprise Application Integration


METAspectrum: 2003

Magic Quadrant for WS Major Vendor Influence,


3Q03

Source: Gartner research September 2003

19
http://www.microsoft.com/technet TNTx-xx

MO1

BizTalk Server Adoption


‹ Customers: over 3600 as of March 2004
‹ Over 100 3rd Party BTS 04 adapters
‹ 50% of the Fortune 100
‹
‹
40% of the Global 100
30% of the Fortune 500
3,600+

3500
3000

2500

2000

1500

1000

500

0
01 02 03 04

A Scale-Up & Out Environment -- Achieving


20 Million Messages / Day
‹ Scaling up SQL Server (single
MessageBox database)
¾ The receiving and processing
throughput when the CPU
processors on SQL Server are
scaled up from 1, 2, 4, and 8 CPU
processors.

‹ Scaling out SQL Server


(multiple MessageBox
databases)
¾ The performance impact of
various deployments involving
different numbers of BizTalk
Servers and SQL Servers

‹ Scaling out BizTalk Server in


an orchestration scenario
¾ Multiple BizTalk Servers (receive
and send) are added until the
orchestration server becomes
the bottleneck

‹ Scaling out BizTalk Server in a


messaging scenario
¾ Adding multiple BizTalk Servers
to a deployment until the
MessageBox database in SQL
Server becomes the bottleneck
due to lock contentions

20
Slide 39

MO1 *This needs to be made into a


Growth curve
Miaenn Oleander, 6/18/2004
http://www.microsoft.com/technet TNTx-xx

This document is provided for informational purposes only.


MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT.

© 2004 Microsoft Corporation. All rights reserved.


This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS
SUMMARY. Microsoft, Microsoft Press, Visual Studio, Visual SourceSafe, Windows and Windows NT are either registered trademarks
or trademarks of Microsoft Corporation in the United States and/or other countries. The names of actual companies and products
mentioned herein may be the trademarks of their respective owners.

Next Step
‹ Contact your account manager or
Darmadi Komo at
darmadik@microsoft.com for details
‹ http://www.microsoft.com/biztalk

21
http://www.microsoft.com/technet TNTx-xx

Appendix

BizTalk Adapters

Choosing an Adapter Adapters


z
z Standard
Standard BizTalk
BizTalk adapter
adapter
Financial
Financial System
System
z
z Third-party
Third-party adapter
adapter
z
z Custom
Custom adapter
adapter SCM
SCM

Mainframe
Mainframe

Database
Database

ERP
ERP

CRM
CRM System
System

22
http://www.microsoft.com/technet TNTx-xx

Standard BizTalk Adapters

Included
Included Adapters
Adapters
z EDI
z EDI
zz File
File
zz FTP
FTP
zz HTTP
HTTP
z SMTP
z SMTP
zz SOAP
SOAP
zz SQL
SQL Server
Server

Third Party BizTalk Adapters

23
http://www.microsoft.com/technet TNTx-xx

Custom Adapters
‹ Use Biztalk Adapter SDK to implement
custom adapters
‹ Useful to connect to in-house proprietary
application

BizTalk Adapter Framework


z
z Common
Common way
way to
to create
create and
and implement
implement adapters
adapters
z
z Provides
Provides standard
standard tools
tools for
for managing
managing standard
standard
and
and custom
custom adapters
adapters

24

You might also like