What is BizTalk
Microsoft BizTalk can be compared to a switchboard. It’s like a spider that connects a web of applications together. It is used for B2B communication as well as a hub (Service bus) for internal applications in larger companies.
Service bus example
For example, your company has a neat branch-specific or custom built application for entering orders and processing them, built and maintained by a nearby IT company named “Automate”. You also have a financial (bookkeeping) package from “Book$”. Your bank provides account statements in the MT-940 format, and you have a web shop as well that provides XML files for online orders (Also built by those guys at Automate).
Those guys at Automate are quite busy, when you want to change anything, you might have to wait months for them to find a place in their planning. The Book$ bookkeeping package no longer meets your needs and you want to change it for a more extensible package from “ExPack”. ExPack does not support your current CSV format, it only supports XML. So either ExPack or Automate have to do some custom work for you. Then your competitor decides to sell his company including a large customer-base, an offer that you cannot deny! After the deal you own their slick CRM package that integrated nicely with their order-processing and bookkeeping software. You want to keep the CRM, but replace the redundant bookkeeping and order processing with your own.
In order to gradually migrate all these parts, you probably will not like the idea of letting the different vendors build custom import and export tools in their software. Also, looking to the future, you realize that more changes are likely to come. This is when BizTalk comes in handy.
Routing and mapping
BizTalk has different “connectors”, that can be a simple directory where an application can dump or pick up files, or it could be an e-mail client, ftp-client or some fancy web service. Once a message is picked up, it can go through a mapper, that’s a configurable transformation utility that can change the CSV files from your order processing application to xml files for your bookkeeping software. These files can then be routed to their correct destination.
B2B example
The B2B application is usually implemented in large enterprises. For example, when a car-factory receives an order for 100 cars, their system might automatically send out orders to other vendors for screws, nuts, bolts & perfume. (perfume for making them smell like a new cars). These automated orders usually are processed by web services or legacy EDI systems. This saves tons of work (imagine 100’s of typists typing orders for different vendors, putting them in envelopes, and posting them… )
Orchestrations
An orchestration is an implementation of a business process in BizTalk. It has input and output connectors and may have a simple workflow in-between.