icrosoft created BizTalk Server to address the applications and systems integration problems that businesses face. Redmond used XML as the common platform for data translation, process definition, and communication. The BizTalk Server consists of a number of data-mapping tools, communication and messaging tools, and adapters that support third-party product integration.
BizTalk Server supports the defining and changing of business processes through BizTalk Orchestration, which enables messaging and the integration of application components. BizTalk Server also supports the development of application logic, using an application design tool. To orchestrate processes, BizTalk uses XLANG, an XML-based language that can describe a business process sequence and the association and binding of application services to specific process elements.
BizTalk Orchestration Architecture
To orchestrate a process, you need to be able to aggregate software components mapped to individual processes, binding the components to process steps, and defining the rules and conditions that determine which component methods a business process must invoke and which action steps it should perform. You also need to be able to aggregate steps in a process, binding them together so they behave like transactions.
The BizTalk Orchestration Designer lets you design these detailed business processes and bind them to application services programmatically. The Designer is a Visio add-in that facilitates developing business process flow diagrams, called XLANG schedule drawings. The schedule drawings show the process flow and the specific actions that the process performs. The actions represent messages that the process must send or receive.
The XLANG schedule drawings also show named ports, which are specific locations that can send and receive messages to carry out the actions represented in the process flow. You map these ports to applications services, which can include COM components, Windows scripting components, Message Queuing services, and BizTalk Messaging services. XLANG schedule drawings also let you define how data flows from the business process inputs to various actions within the process. It also lets you specify parameter inputs to the process orchestration that can be passed on to other defined actions in the process.
To activate the orchestrated processes, you compile the XLANG schedule drawing into an XLANG schedule. The XLANG schedule is an XML-based representation of the orchestrated process that describes the interactions, the interaction sequence, and the binding of application services to the defined actions in the process.
The XLANG Scheduler Engine, a COM+ application service, manages the activation and execution of each instance of an XLANG schedule. The Scheduler Engine may invoke an XLANG schedule multiple times. Each invocation carries its own messages and data but follows the same business process flow, and is subject to the same decision trees and business rules as any other instance of that schedule.
One of the key benefits of using BizTalk Orchestration is the ability to automate long-running, asynchronous processes using loosely coupled applications across various platforms. As Web services applications become ubiquitous across multiple platforms, they are ideal candidates for aggregation in support of orchestrated business processes.