Case Studies

BizTalk 2006 Integration and Best Practices Provides Scalability and Resiliency

Project at a Glance

RDA set the standard on implementing and deploying BizTalk integration solutions for this worldwide IT firm by creating the first production implementation to establish a pattern that could be copied for future integration solutions. This enabled our client's development team to utilize this flexible product to its fullest capacity.



About Our Client

RDA's client is a worldwide information technology consulting services and solutions company.


Background

Our client runs a call center which needs to communicate electronically with a dispatching service. This service is currently exclusively used internally, but in the long term will be available to customers who want to outsource this service. The call center is supported by a different set of software platforms which required an application to be developed which would broker communications between them.


Solution Detail

Our client's Business Enabling Technology Team (BETT) requested that RDA leverage its extensive experience with Microsoft BizTalk Server to help them set up an internal BizTalk development practice able to implement and deploy BizTalk integration solutions following a set of best practice guidelines supplied by RDA. RDA created a first production implementation for the company to establish a pattern that could be leveraged and copied in other solutions over time. RDA used BizTalk Server 2006 to link up the BMC Remedy call center application to its Service Request Management System (SRMS) dispatching center communications application.

As part of the knowledge transfer and training phase of the project, RDA assembled a set of best practices and standards leveraging Microsoft and RDA joint experience. Deliverables included a client-specific development process document and a best practices training session/presentation. These deliverables enabled our client's development team to take responsibility for updates and support of the application after the initial release.


Benefits

RDA provided a set of best practices and patterns that our client can leverage on projects to more effectively and productively develop future integration solutions using BizTalk 2006.

Our client was pleased with the flexibility of the product, mainly the orchestration designer portion, where it "handled everything we threw at it," from incorporating 3rd party-DLLs, using XPath, complex schemas, complex maps, error handling, etc. It was flexible enough to incorporate all of their design-time changes. Additionally, dynamic alerting provides our client with much more visibility into system issues than encountered previously.

Another nice feature is the run-time flexibility of having the various components of the solution distributed among various hosts, providing scalability and resiliency.


Technically Speaking

The implemented interface performs five separate operations:
  • Create dispatch
  • Cancel dispatch
  • Update dispatch
  • Validate availability (heartbeat)
  • Service request update

The interface was developed using a combination of Web services for the BMC Remedy call center application and the HTTP transport protocol for the SRMS dispatching system. All operations were performed asynchronously. An intermediary message (common view) was used to separate out the distinct endpoints and make it possible for different systems to be added to this interface in the future.

In addition, an error handling mechanism was implemented to route errors to appropriate administrators, perform system logging, and manage messages, allowing them to be resubmitted or terminated. Any error triggered within the system (at the port or orchestration level) triggers the failed message routing feature of BizTalk 2006, which initiates an orchestration to process error messages.

The error handling mechanism is available through different means of connectivity (direct port bindings, Web service, and file shares). This level of flexibility allows systems wholly outside the BizTalk sphere to interact with it so that it can provide notification services to a host of applications and aggregate error handling into a single, service-oriented interface. To generate an appropriate error message, the type of error and error message is captured. From this information the system determines what action to take via access to an SSO-based configuration store, whether it is an email error message to present the administrator, a simple entry to a log, publishing to a SharePoint site, or any combination of all of these.

BizTalk Configuration: The system leverages four dual processor BizTalk Servers sharing a common two node clustered SQL Server in an Active/Passive configuration using the following components:
  • Microsoft SQL Server 2005
  • Microsoft BizTalk Server 2006
  • HTTP and Web Service protocols
  • ESB guidance and reusable components from Microsoft Patterns and Practices

Transactional Volume: 5,000 messages per hour