An Overview of Microsoft BizTalk Server

Microsoft BizTalk Server has been around for quite a few years and now appears to have reached a level of maturity that makes it far more attractive as part of an enterprise-wide solution.

 

The following then is a brief overview of some of the areas where BizTalk is commonly used and just a few of the things it brings to the table.

 

Common Enterprise Usage

Most enterprises are looking to BizTalk to solve a particular problem. In many scenarios, this problem is concerned with trying to get unrelated and disconnected systems to exchange data in a standard, consistent, and reliable way. Often enterprises need to automate and streamline manual or inefficient processes in order to achieve a competitive advantage. Whether you are implementing an integration solution or a workflow automation solution, the tools that BizTalk provides allow an architect to design reliable and robust applications faster than is often achievable by developing a customised solution from scratch using standard development tools and languages. With this in mind, it is important to understand what BizTalk achieves well, and what it does not, in order to fully realise any efficiency that this technology can bring.

 

In other scenarios, organisations are using BizTalk orchestrations to connect and route messages to services within service- oriented (SOA) environments. Often, the web services within the organisation may be managed within different groups or even external parties. In these cases, orchestrations provide an excellent way to expose higher-level business functionality by calling, transforming, and routing messages between decoupled web services.

 

The BizTalk Server Engine

The diagram below shows the basic message path through BizTalk.

 

 

 

A message is received via a receive adapter. Different adapters provide different communication mechanisms, so a message might be acquired by accessing a Web service, reading from a file, or in some other way. The message is then processed through a receive pipeline. This pipeline can contain various components to do things such as converting the message from its native format into an XML document, validating a message’s digital signature, and more. The message is then deliv- ered into a database called the MessageBox, which is implemented using SQL Server.

 

The logic that drives a business process is implemented as one or more orchestrations, each of which consists of executable code. Each orchestration creates subscriptions to indicate the kinds of messages it wants to receive. When an appropriate message ar- rives in the MessageBox, that message is dispatched to its target orchestration, which takes whatever action the business process requires. The result of this processing is typically another message, produced by the orchestration and saved in the MessageBox.

 

This message, in turn, is processed by a send pipeline, which may convert it from the internal XML format used by BizTalk Server to the format required by its destination, add a digital signature, and more. The message is then sent out via a send adapter, which uses an appropriate mechanism to communicate with the application for which this message is destined.

 

Key Capabilities

Electronic Data Interchange (EDI) Services is a documented and accepted set of standards for exchanging electronic documents between organisations. EDI is traditionally used within legacy applications that have been implemented prior to the XML standard from the World-Wide Web Consortium (W3C). EDI documents are text-based in nature and have a variety of document speci- fications depending on the data to be exchanged and the industry that uses them. BizTalk Server provides mechanisms for parsing these EDI documents into XML as well as connectivity to legacy data sources such as value-added networks and proprietary dial-up services.

 

Business Activity Monitoring (BAM) and Business Activity Services (BAS) provide the infrastructure to perform application instrumentation and metric reporting. BAM enables your application to provide business-level data that is much more relevant than the default system-level information that is available in the base product.

 

Examples of this type of data are:

  • Number of purchase orders processed
  • Number of transactions failed last week/last month
  • Total volume of messages received from a supplier

BAS, on the other hand, provides a simple yet powerful way to display metric data from BAM and other system-level sub-services using Microsoft SharePoint Portal Services. Most organisations will integrate the BAS portal into an existing SharePoint infrastructure rather than build an entire SharePoint site around BAS itself.

 

Pipelines provide a way to examine, verify, and potentially modify messages as they are received from and sent to BizTalk. They allow you to deconstruct messages that contain multiple documents and/or header information into a format that is more logical to the application or business user. Pipelines are applied to ports and are either a send pipeline or a receive pipeline depending on the directional flow of the message (see diagram). Pipelines provide the necessary infrastructure for pipeline components or components that are executed within the various stages of a pipeline. Pipelines and pipeline components are unique constructs that only exist within the context of a BizTalk solution, and as such are generally unique to solutions that use BizTalk.

 

The Business Rule Engine (BRE) is a facility where business rules can be modelled using a simple GUI and called from within the BizTalk Server environment. The BRE is designed to allow for versioning and modification of implemented business rules without having to change the processes within BizTalk that use them. Most solutions use the BRE to implement things that require frequent updates such as a discount policy percentage or calculations that are updated frequently as a result of legal or government regulations.

 

By implementing this technology, your business can achieve the following benefits:

  • gain reliable, secure and immediate access to your partners, processes and information
  • integrate systems, employees and trading partners quickly and easily
  • automate and optimise business-critical processes
  • build connected, adaptable systems
  • implement flexible, scalable application solutions
  • improve your business insight and competitiveness
  • reduce your costs
  • Your Business, Connected