BizTalk Technology - download.microsoft.comdownload.microsoft.com/.../BizTalktechnology17aug.pdf ·...

43
BizTalk Technology August 2006 Alan Smith

Transcript of BizTalk Technology - download.microsoft.comdownload.microsoft.com/.../BizTalktechnology17aug.pdf ·...

BizTalk Technology

August 2006

Alan Smith

About Alan Smith

BizTalk Consultant• Long history of Microsoft development• Working for KnowIT Consulting in Stockholm• Architect, developer, and mentor roles

BizTalk Trainer• Delivering BizTalk Server courses at Informator• Delivering advanced “BizTalk Deep Dive” courses for QuickLearn

BizTalk MVP• Active in BizTalk Server developer community• Publish “The Bloggers Guide to BizTalk”• Run BizTalk User Group Sweden (BUGS)

What Is BizTalk Server?

Business Intelligence Tools• Business Activity Monitoring (BAM) provides real time and aggregated views of

business data• Business Rules Engine allows complex business decisions to be abstracted form

the business process

Business Process Workflow Engine• BizTalk Orchestration Engine supports complex business processes• Persistence of orchestration state enables long running transactions and robust

recovery from system failures

Integration Server• Adapters provide communication with other systems• Protocols (FTP, SMTP, POP3), databases (SQL Server, Oracle, DB2), applications

(SAP, Tibco, SharePoint, Siebel)

Publish Subscribe Messaging Hub• Message box database implemented on SQL Server• Strong support for guaranteed delivery• Configurable message tracking

BizTalk Server Timeline•Artifacts developed using

numerous toolsBizTalk Server 2000

•Improvements made to several features

BizTalk Server 2002

•Complete rewrite of product•Built on .net 1.1•Visual Studio Development Tools•Massive improvements in all areas

BizTalk Server 2004

•Built on .net 2.0Big improvements in massaging engine

•New Administration console•BAM Improvements

BizTalk Server 2006

•Integration with WCF and WF•Integrated support for RFID devices•Support for EDI documents and AS2 transactions•Integrated support for office 2007 and SharePoint

BizTalk Server 2006 R2

•Includes “BizTalk Solution Designer?•Includes new BizTalk mapper

interface?BizTalk Server

V Next

BizTalk Server 2006 Licensing Options

Enterprise Edition

• $29,999 (210,000 SEK) per processor

• Complete EAI, B2B, and Business Process Management functionality

• Includes all current and new application and technology adapters

• Unlimited scale-out, scale-up and clustering

• Includes Host Integration Server Enterprise Edition

Standard Edition

• $8,499 (60,000 SEK) per processor

• Complete EAI, B2B, and Business Process Management functionality

• Includes all current and new application and technology adapters

• Limited to two CPUs on a single server

• Limited to five internal applications

• Includes Host Integration Server Enterprise Edition

Developer Edition

• $499 (3,500 SEK) per user

• Complete EAI, B2B, and Business Process Management functionality

• Includes all current and new application and technology adapters

• Included in MSDN Universal Subscription

• Limited to designing, development and testing solutions

BizTalk Server in the Microsoft Product Line

Integration vs BPM

Message Based Integration• “BizTalk Server is passive w ith respect to the business processes,

and acts as a service to route messages between systems. Messages may be tracked, but no business relevant processes are im plem ented in the m essage engine.”

Business Process Management• “BizTalk Server is active w ith respect to the business process.

Business processes are implemented within BizTalk Server, and consume the services provided by other systems. Business process decisions are implemented using the Business Rules engine, and business activity monitoring is used store business relevant information and provide users with a view of the business processes.”

Administration Tools

BizTalk Server High Level ArchitectureBizTalk Server 2006

Messaging Engine

SQL Server 2005

SQL Server Notification

Services

SQL Server Database Engine

SQL Server Analysis Services

Orchestration Engine

Business Rules Engine

Business Activity Monitoring (BAM)

Business Activity Services (BAS)

Human Workflow Services (HWS)

Internet Information Server

HTTP Receive Adapter

SOAP Receive Adapter

BAM Portal

Windows SharePoint Services

BAS Site HWS Site

BizTalk Server Administration

Console

Business Rules Deployment Wizard

BAM Tracking Profile Editor

Business Intelligence Tools

Orchestration Designer for

Business Analysts

Microsoft Office Excel BAM Addin

Business Rules Composed

BAM Deployment Tool

Health and Activity Tracking Tool

Administration Tools

BizTalk Server Low Level ArchitectureBizTalk Server 2006

Messaging Engine

SQL Server 2005

Orchestration EngineBizTalk Server Administration

Console

Management Database

Message Box Database

Tracking Database

Credentials Database

Health and Activity Tracking Tool

Adapters

Developing BizTalk ApplicationsSchemas

•Schemas represent the message definitions for XML messages interchanged between BizTalk Server and other systems and applications•Full support for industry standard XSD format•Graphical schema editor used in Visual Studio•Flat file schemas can be used to translate text based files to and from XML documents

Maps•Maps are used to transform XML documents form one format to another•Graphical design interface provided in Visual Studio•Maps can be extended using custom XSLT or .net code

Pipelines•Pipelines are used to process messages entering and leaving BizTalk Server•Messages can be encrypted, compressed, validated, and batch interchanges split into individual messages•Graphical design interface provided in Visual Studio

Orchestrations•Orchestrations represent business processes implemented in BizTalk Server•Graphical orchestration designer provided in Visual Studio•Orchestrations are persisted to message box database to provide recovery form system failure•Orchestrations can feature long running transactions, compensation, nested scopes, message correlation•.net assemblies can be called directly from orchestrations to extend process functionality

Adapters•Wide range of build in adapters•Downloadable application adapters included in BizTalk license•Vast range of third party and adapters available•Adapters can be developed in .net code, several open source samples available

Demo: BizTalk Development Environment

In this demo:• Create message schemas• Create a map• Create a basic orchestration• Deploy a BizTalk application

BizTalk Server Administration

BizTalk Server Administration Console• New for BizTalk Server 2006• A multi-server BizTalk environment can be maintained

form a remote location• BizTalk artifacts can be organized into applications• Exporting in importing of applications as MSI files• Exporting in importing of application configuration as XML

files

BTSTask.exe• Command line tool for scripted deployments

Demo: BizTalk Development Administration

In this demo:• Create an application• Create a receive port• Create a send port• Configure message subscription

Scenario 1: Processing Batch Text Files

Text based batch files are submitted to BizTalk Server by placing them in a file location

The File Adapter is configured to monitor the file location and process any text files placed there

BizTalk Server w ill split the batch m essage into it’s individual item s, and process each item as an individual message

If a batch contains any messages that contain errors, these individual messages will be routed to a separate location, with the messages in the remainder of the batch being processed as normal

The messages that contained errors can be fixed, and resubmitted to BizTalk for processing

FTP ServerBizTalk Server

FTP Adapter File Server

File Adapter

File AdapterFlat File Receive

Pipeline

Message Box Database

Text Based Flat File

Message Subscription

Failed Message Subscription

Scenario 1: Architecture

Processed Messages

Failed Messages

Text Batch

Multiple XML Messages

Scenario 1: Development

The artifacts to be used in the message stream are developed in Visual Studio• The flat-file schema wizard is used to generate the flat file schema using a sample file• A flat file pipeline is developed to translate the flat file into an XML document

The artifacts are deployed to BizTalk Server for testing

• The BizTalk assembly is signed with a strong name key• The BizTalk assembly is deployed to an application hosted by BizTalk Server

The messaging channel is configured and started

• The BizTalk Administration Console is used to configure the send ports and receive ports that make up the message channel

• The ports are configured to route error messages to a specific location• The BizTalk Administration Console is used to start the application, which will ensure

the ports are started in the correct order

Scenario 1: Demo

In this demo:• Process batch files• Implement recoverable interchange processing• Subscribe to failed messages

Scenario 1: BizTalk Features Used

Flat File Schema Wizard•The Flat file schema wizard is used to generate the flat file schema from a sample instance of a

document•Using the flat file schema wizard can allow days of development work to be completed in hours

Recoverable Interchange Processing• If any messages in the batch contain errors, the individual messages are suspended instead of the

entire batch•The recoverable interchange processing feature is configured from the administration console

Subscribing to Failed Messages•The receive port is configured to generate error information in the event of a failed message•A send port is configured to subscribe to these failed messages and route them to a destination

location•These messages can them be repaired and resubmitted to the message channel

BizTalk Applications•The scenario is deployed to a separate application in BizTalk Server, allowing it to be deployed and

managed as a separate entity•The application can be exported to setup file (MSI file), and imported on a test or production server

Scenario 2: Expenses Claim Workflow

Expense reports are filled out using Microsoft Office InfoPath 2003

The InfoPath forms are then sent be email to a mail address

BizTalk Server uses the POP3 adaptor to monitor the mailbox for new emails, and submit the expense repots as BizTalk messages

For each expense report, a new orchestration instance is created to manage the expense claim approval process

The Windows SharePont Services (WSS) adapter is used to send the expenses claim message to a SharePoint InfoPath forms library

A manager will approve or deny each expenses claim by opening and editing the InfoPath form in SharePoint

BizTalk Server uses the Windows SharePont Services (WSS) adapter to receive and process the modified InfoPath forms

The orchestration will examine the status of the claim. If the claim is approved, a payment request is sent to the accounting application

The employee who filled out the claim is notified of the approval status

Exchange Server

BizTalk Server 2006

POP3 Adapter

Windows SharePoint

Services

WSS Adapter

WSS Adapter

Expense Reports

Scenario 2: Architecture

Pending Expense Reports

Processed Expense Reports

Expenses Processing Orchestration

WSS Adapter

Scenario 2: DevelopmentDevelop artifacts in Visual Studio

• Schemas are developed to represent the expense claim message, response message and payments request message• Maps are developed to transform the messages between formats• The Expenses Claim orchestration is developed to model the business process• Pipelines are developed to process the inbound and outbound messages

Deploy BizTalk Application• Visual Studio is used to deploy the application to BizTalk Server

Design InfoPath forms• Microsoft Office InfoPath 2003 is used to create a form for filling in the expense claim, and a form for approving the

expenses claim• Both of these forms are designed using the ExpenseReport XSD schema generated in Visual Studio• The data restrictions set in the expenses claim schema are used in to InfoPath form to validate the input data• When the InfoPath form is filled out, it will be saved as an XML document that can be processed by BizTalk Server as a

message

Publish InfoPath forms to SharePoint• The InfoPath forms are published to SharePoint as document libraries, specifying fields to use as columns• A view is created so that BizTalk can receive expense claims that have the status of approved or denied

Configure and Start the BizTalk application• A receive port is created using the POP3 adapter to monitor the mailbox where the expense claims will be sent• Ports using the Windows SharePoint Services adapter are created to integrate with the document libraries• The send and receive pots are bound to the expenses processing orchestration• The application is started using the BizTalk Administration Console

Scenario 2: Demo

In this demo:• Edit expense reports using InfoPath• Send expense reports via email• Use SharePoint document libraries to approve expense claims

Scenario 2: BizTalk Features Used

BizTalk Orchestration Engine• The BizTalk orchestration designer in Visual Studio is used to create the business process

workflow graphically• The BizTalk orchestration engine is used to host the long running claim approval process• BizTalk Server persists the orchestration state to the message box database allowing active

processes to survive a system shutdown• Message correlation is used to route the expense claim responses to the correct running

expense claim process• Decision logic placed in the orchestration decides whether to send the payments request to

the accounting application

POP3 Adapter• The POP3 adapter is used to monitor the mail box for new expense claims• The expense claim messages are sent as InfoPath forms added as email attachments

Windows SharePoint Services (WSS) Adapter• The WSS adapter is used to receive and send messages to and from the SharePoint InfoPath

form libraries• Office Integration in the WSS adapter adds processing instructions to the XML messages so

they will be treated as InfoPath forms by SharePoint

Human Workflow in BizTalk Server

The combination of using BizTalk Server,

InfoPath, and SharePoint allows

basic human workflow to be implemented in

business processes.

BizTalk Server

InfoPathWindows

SharePoint Services

Scenario 3: Business Activity Monitoring

In order approval application has been developed and deployed to a production BizTalk Server

The business process is to be monitored using the Business Activity Monitoring (BAM) features in BizTalk Server 2006

BAM will be used to provide a real-time view of the numbers of orders that have been submitted, approved, and rejected

A BAM Alert will be used to alert a manager if the number of orders waiting approval reaches a certain threshold

The results of the order processing activities will be displayed in real time in a web based console

The console will also provide an interface for querying the orders that have been processed

BizTalk Server 2006

BAM Portal

Scenario 3: Architecture

Order Processing Orchestration

Business Analyst Tools

Visio Orchestration Designer for

Business Analysts

Microsoft Office Excel 2003

Professional

Developer Tools

BizTalk Server 2006 Tracking Profile Editor

BAM Deployment Tool

BAM Databases

Order Activity View

Order Aggregation View

BAM Interceptor

Scenario 3: Development

Business Analyst Role• Define the milestones and key performance indicators using Visio

orchestration designer for business analysts (ODBA)• Devine the BAM activities and BAM views using the BAM addin for Microsoft

Office Excel

Developer Role• Deploy the BAM activities and views to BizTalk Server using the BAM

deployment tool• Link the order processing business process to the deployed BAM activity using

the BizTalk Tracking Profile Editor• Deploy the tracking profile to BizTalk Server

Manager Role• Use the BAM portal to monitor the order processing business process• Use the BAM portal to create alerts to notify staff when certain conditions

occur

Scenario 3: Demo

In this demo:• Monitor business process using BAM• Use BAM activity search• Add a BAM alert to business process

Scenario 3: BizTalk Features Used

Business Activity Monitoring• Business activity monitoring is used to provide real time information regarding the orders

being processed by the order processing orchestration• The BAM configuration and deployment does not affect the running business process, and

can be deployed and modified whilst the application is running in production

BAM Tools• The orchestration designer for business analysts is used to define the milestones and key

performance indicators• The BAM addin for Excel is used to define the BAM activities and BAM views• The BAM deployment tool (BM.exe) is used to deploy the activities and views to BizTalk

Server• The Tracking Profile Editor is used to link the business process with the BAM activity

BAM Portal• The BAM portal is used to provide a web based interface for business users to query the

BAM data and view activity aggregations

BAM Alerts• BAM alerts are used to notify business users when certain conditions in the order processing

business process occur

In the Near Future…

BizTalk Server 2006 R2• Integration with .net 3.0 technologies (Windows Workflow

Foundation, Windows Communication Foundation)• Integrated support for RFID devices• Support for EDI documents and AS2 transactions

RFID Services Platform• "We are committed to this space because it's an important

technology for our customers and our partners, We're committed to providing the technology that our customers want and that our partners need to RFID-enable their solutions. You'll see us bringing innovation to this space." - JavedSikander - Microsoft program manager for industry solutions

Going Further…

• www.microsoft.com/biztalk - BizTalk homepage• msdn.microsoft.com/biztalk – BizTalk developer center• “Understanding BizTalk Server 2006” – Dave Chappell - introductory white

paper on BizTalk Server 2006 available on msdn.microsoft.com/biztalk• www.biztalkgurus.com – BizTalk community site• BizTalk Server 2006 Virtual Labs on MSDN• “The Bloggers Guide to BizTalk” – Free e-book containing over 350 articles

On the web

• 5 day developer course (MOC)• 2 day administration course (MOC)• 5 day advanced “BizTalk Deep Dive” (QuickLearn)• 5 day BizTalk & SOA course (QuickLearn)

Courses

• SOA & Business Process Conference - October 3rd to 6th - Redmond

Conferances

Contact Information

• Blog: geekswithblogs.net/asmith