Microsoft BizTalk Orchestration

If you've been reading this column for the past few weeks, you've already read a lot about Microsoft BizTalk Messaging. BizTalk Messaging is one of two Microsoft BizTalk Server functions. It serves as the integration piece, letting businesses easily transmit data and transform that data into the proper format for the business function. This step is the first one in integrated communication. However, for true communication, you also need process. Enter Microsoft BizTalk Orchestration (BTO). BTO provides functionality for creating and orchestrating business processes that span time, organizations, applications, and people.

Today, business processes are tightly integrated with implementation. Developers need to understand the entire process to incorporate the logic into their code. The process logic is tightly bound to the implementation code and often duplicated across multiple programs. In this environment, it's difficult to change a process because doing so directly affects the implementation. To execute any change, a programmer has to get involved, which is extremely inefficient.

With BTO, you can finally separate the implementation code from the process using some simple but powerful tools. BTO uses a standard installation of Microsoft Visio as its front end. In Visio, using BTO's flowchart view and a select set of flowchart shapes, a business analyst can create the business-process flow. He or she doesn't need to know anything about each piece's implementation. A developer then uses two other BTO views: the implementation view and the data flow view. The developer uses the implementation view to bind process activities to implementation shapes such as Microsoft Message Queue Server (MSMQ) queues, COM+ components, Windows Script Host (WSH) scripts, and, of course, BizTalk Server messaging services. The developer then uses the data flow view to flow data in and out of the implementation shapes.

When the visual business process model is complete and the flow chart is saved, Visio compiles the document into XLANG—a new XML-based language, created specifically for describing business processes. The BTO engine executes the XLANG code at runtime.

A significant advantage of BTO is the flexibility it provides. Now, business units, not IT, can make process changes. A business analyst can make a change to the implementation view and recompile the document—no more delays waiting for a developer to be freed up from another project.

Another exciting BTO feature is the ability to wrap loosely coupled business processes—which can span days, weeks, or months and multiple participants—into a single transaction. For example, one process might involve sending multiple purchase orders to a variety of trading partners and receiving shipping acknowledgements from each. With BTO, this process can be wrapped into a transaction so that when all the trading partners send acknowledgements, the system sends an email message to the customer. BTO also lets you include compensating code to handle transaction failures so that, for example, if a trading partner fails to respond in time, the system can send an email message to customer service for follow up. A business analyst would define this process in the implementation view, and no one would need to hand-code a solution that handles the transaction or the transaction failure.

Of course, to keep track of all the processes and transactions, you need to store information about each one. With BTO, the state of all running processes is persisted in an open XML schema and can be stored in any XML-compatible database, which allows simple queries to report on the state of processes.

BTO is an exciting new technology, and I've only scratched the surface of its features. For more information, check out the Microsoft BizTalk white paper.

Please or Register to post comments.

IT/Dev Connections

Las Vegas
September 30th - October 4th

Paul ThurottOur Experts will show you:
• Common SQL Server
Problems
• Best Practices for T-SQL
• SQL Server Integration
Services
• Database Development

Come See Michael Otey & Tim Ford in Person!

Early Registration Now Open

From the Blogs
May 21, 2013
blog

A Common Misconception about MAXDOP

Out of the box, SQL Server is (and has been) able to take advantage of multiple processors/cores without any effort on behalf of administrators....More
May 9, 2013
blog

My ISO 8601-Compliant Signature 2

My family recently just "officially" announced that we're in the process of adopting a child from South Africa. We're quite excited, of course, but there's a ton of paperwork to do—along with the need for gobs of signatures....More
May 8, 2013
blog

Use SSIS for ETL from Hadoop

In this blog post, Mark Kromer walks you through using SSIS as a way to use ETL techniques using Microsoft's Hadoop on Windows (HDInsight) as a source using Hive connectors...More
SQL Server Pro Forums

Get answers to questions, share tips, and engage with the SQL Server community in our Forums.