Now that you have examined the requirements for an application integration environment, it is useful to examine some of the products that will help you address your application integration needs. This chapter discusses the Microsoft technologies that you can use to achieve effective application integration, and how they map to the capabilities described in this guide.
Microsoft provides many products that you can apply to solve application integration problems, including BizTalk Server, SQL Server™, Host Integration Server (HIS), and Microsoft Operations Manager (MOM). In addition, Microsoft delivers numerous technologies as part of the Microsoft Windows Server™ operating system, including Internet Information Services (IIS), the Active Directory directory service, Message Queuing (also known as MSMQ), the Microsoft .NET Framework, and various XML technologies.
BizTalk Server 2004 is the main server product used to address application integration. BizTalk Server delivers specific integration technologies, such as mapping and orchestration, and in addition uses many of the underlying services provided by the operating system, SQL Server, and Microsoft Windows SharePoint™ Services.
You can also use numerous other Microsoft technologies individually to solve application integration problems, including SQL Server, HIS, MOM, and the many services and features of the Windows Server 2003 operating system itself.
The remainder of this chapter introduces each of these Microsoft technologies and products, shows when you might consider using them, and details the tradeoffs that you should consider when using them.
BizTalk Server enables you to define business processes that connect systems, people, and trading partners through manageable business processes. BizTalk Server builds on the Windows Server operating system and the .NET Framework.
You can use the following BizTalk Server features as part of your application integration environment:
Automation of business processes allows you to reduce human involvement in certain parts of your environment.
Business Activity Monitoring (BAM) gives information workers a real-time view of running business processes with Microsoft Office tools such as Microsoft Excel.
Real-time tracking enables you to follow the real-time progress of documents and processes in your BizTalk Server applications.
Integration with the Microsoft Visual Studio .NET development system increases developer productivity through a common development environment, and inheriting all the capabilities of Visual Studio .NET and the .NET Framework.
Integration with the Microsoft Office InfoPath™ information gathering program enhances information worker productivity by making the most of tools they already know how to use (specifically, applications in the Office suite). InfoPath is a Microsoft Office System program that provides an information worker–friendly front end to BizTalk Server 2004 for entering XML and consuming Web services.
Single sign-on provides unified authentication between heterogeneous systems and applications (both those based on Windows and those that are not based on Windows).
Human-based workflow integrates people and processes with a single orchestration engine.
Support for Business Process Execution Language (BPEL) simplifies crossplatform interoperability for process orchestration with standards developed in conjunction with other industry leaders.
Support for Web services provides ground-up support for Web services standards such as Web Services Description Language (WSDL) and Universal Description, Discovery, and Integration (UDDI). Referencing and building Web services for orchestration is a simple process in the integrated development environment.
Business rules enable you to dynamically change business processes to maximize organizational flexibility.
Host Integration Server 2000 enables users running Windows operating systems to share resources on mainframes and AS/400 systems without requiring system administrators to install resource-heavy Systems Network Architecture (SNA) protocols on their computers or to install specialized software on the host computers.
HIS provides data integration components, which provide desktop or server-based applications with direct access to host data, including relational and nonrelational mainframe data and AS/400 data, through open database connectivity (ODBC), OLE DB, and Component Object Model (COM) automation controls.
HIS is typically used in application integration to provide components that allow Web-based or Windows-based applications to communicate directly with host-based systems. For example, a BizTalk Server–based application integration solution can use HIS to Web-enable a host-based application. In addition, HIS also provides a bridging technology between IBM's MQ Series messaging system and Microsoft Message Queuing.
SQL Server often forms an integral part of an application integration environment, providing databases that you need to integrate, but also providing services that you can use directly in application integration. Two of the most important services are Data Transformation Services (DTS) and SQL Server Analysis Services.
Data Transformation Services (DTS) is a group of services delivered by SQL Server 2000 that provide the ability to automate routines that extract, transform, and load data from heterogeneous sources. DTS can extract, transform, and load heterogeneous data using OLE DB, ODBC, or text-only files into any supported OLE DB database or multidimensional store. DTS also automates data transformation by allowing the user to import or transform data automatically on a regularly scheduled basis.
You can access and manipulate DTS operations through interfaces that allow their programs to interact at multiple points during the progression of data transformations. DTS packages can be saved as code in the Visual Basic development system. DTS provides high-throughput parsing and data transformation that is suitable for specific point-to-point integration requirements.
SQL Server 2000 Analysis Services is a middle-tier service for online analytical processing (OLAP) and data mining. The Analysis Services system includes a server that manages multidimensional cubes of data for analysis and provides client access to cube information. Analysis Services organizes data from a data warehouse into cubes with precalculated aggregation data to provide fast answers to complex analytical queries. Analysis Services also enables you to create data-mining models from both multidimensional and relational data sources.
OLAP can be used in combination with the PivotTable Service and Excel (or applications from other vendors) to retrieve and present data about the integration application. BizTalk Server uses Analysis Services in exactly this way, providing both administrative- and business activity–focused reporting.
Windows Server 2003 provides operating system services, Web services, and the .NET Framework programming model. Together, these provide an ideal environment for the development of application integration solutions.
Windows Server 2003 can assume various roles in a network environment, including the File and Print role and the Application Server role. Key application integration services provided by Windows Server 2003 include Active Directory, IIS, and Message Queuing.
In addition to providing directory services to the operating system itself, Active Directory also provides APIs that give access to the data stored in a directory for use by custom applications. For example, you can use Active Directory Service Interfaces (ADSI) to manage application resources from within the directory service. Microsoft products such as BizTalk Server typically use Active Directory for authentication and role-based access control.
With ADSI, you can use high-level development tools such as Visual Basic, Microsoft Visual C# , or Microsoft Visual C++ to create directory-enabled applications. ADSI can also be used to access other directory services by accessing each one through its own provider. This means ADSI can be used to integrate multiple directories across disparate platforms, such as Lightweight Directory Access Protocol (LDAP), Novell Directory Services (NDS), or the Microsoft Windows NT version 4.0 Security Account Manager (SAM).
The Windows operating system uses IIS to receive HTTP and SOAP requests, and deliver HTTP and SOAP responses to external applications. IIS also serves as a platform for delivering application integration solutions deployed as Web services.
Microsoft Message Queuing (also known as MSMQ) is a Microsoft implementation of a reliable messaging system. Message Queuing comes with most Microsoft operating systems. Message Queuing provides both a reliable transport (a specific format of message transmission, over a specific TCP port) and physical queues on the server, managed by a queue manager.
Message Queuing supports interoperability with other messaging systems, most notably IBM's MQ Series. These other systems, referred to as foreign messaging systems, can be other Message Queuing systems or non-Message Queuing systems.
BizTalk Server 2004 uses a new technology called BizTalk Message Queuing (MSMQT). MSMQT uses the Message Queuing transport (the same protocol, over the same port), so it interoperates transparently with Message Queuing systems (and thus also with MQ Series systems by using connectivity toolkits).
Microsoft provides full support for XML technologies and has also defined some additional enhancements to XML that can be used with Microsoft technologies.
From a developer's point of view, XML parsers are the fundamental XML component because they act as a bridge between XML documents, seen as a long chain of bytes, and applications that process the XML. Almost all XML applications are built on top of parsers. On Microsoft operating systems, the XML Document Object Model (DOM) is deployed both as a COM component and as managed components.
The parser is responsible for handling XML syntax and, optionally, checking the contents of the document against constraints established in a document type definition (DTD) or schema; the application must understand how to process or display the information. The application is insulated from the details of the XML document, allowing document creators to take advantage of those details without concerning themselves with the application.
By combining XML data with an XSLT transformation style sheet, you can dynamically transform data from one representation to another, and provide a presentation format for the information. XSLT style sheets are similar to cascading style sheets; however, they allow you not only to present XML data, but also to transform it into new data that is tailored specifically to a particular user, media, or client. With XSLT, you can transform data into device-aware or customer-aware information. BizTalk Server uses this technology to convert inbound documents into outbound documents by using XSLT "maps."
A Web service is a programmable entity that gives you a particular element of functionality, such as application logic, and is accessible to any number of potentially disparate systems that use Internet standards such as XML and HTTP. Web services depend heavily on the broad acceptance of XML and other Internet standards to create an infrastructure that supports application interoperability at a level that solves many of the problems that previously hindered such attempts.
A Web service can be used internally by a single application or exposed externally over the Internet for use by a number of applications. Because it is accessible through a standard interface, a Web service allows heterogeneous systems to work together as a single web of computation.
Web services use XML-based messaging as a fundamental means of data communication to help bridge differences between systems that use incongruent component models, operating systems, and programming languages. You can create applications that weave together Web services from a variety of sources in much the same way that you traditionally use components when creating a distributed application.
In the .NET Framework, Web service support is provided by the common language runtime. Many client and server Microsoft applications also either consume or provide Web service interfaces. For example, Microsoft InfoPath 2003 provides a rich-client interface that can use Web services to interoperate with BizTalk Server. BizTalk Server itself is able both to consume existing Web services and to expose business processes as new Web services.
The basic Web service specification does not resolve many architectural problems such as how to route messages, ensure reliable delivery, or coordinate distributed work using compensating transactions. To address these issues, a collection of Web service architecture protocols have been written by Microsoft, IBM, and others that provide additional functionality. Web Services Enhancements (WSE) is one implementation of (or a subset of) these protocols.
Web Services Enhancements version 1.0 for Microsoft .NET is a new library for building Web services using the latest Web services protocols. This version focuses on the basic message-level protocols: WS-Security, WS-Routing (and WS-Referral), and Direct Internet Message Encapsulation (DIME) and WS-Attachments. WSE integrates with ASP.NET Web services, offering a simple way to extend their functionality. BizTalk Server can use these enhancements by adding custom components in the BizTalk Server pipelines to implement WSE security, for example.
Windows SharePoint Services enables you to create Web sites for information sharing and document collaboration. SharePoint sites are made up of Web Parts and ASP.NET–based components. Web Parts are designed to be added to pages and configured by site administrators and users, creating complete page-based applications.
Windows SharePoint Services sites extend file storage, providing communities for team collaboration and making it easy for users to work together on documents, tasks, contacts, events, and other information. Microsoft BizTalk Server uses this infrastructure to enable you to publish the results of Business Activity Monitoring on a Windows SharePoint Services site.
Microsoft Operations Manager 2000 (MOM) is a network monitoring solution that captures and reports events throughout your network. By defining rules, you can automate responses or assign problems to a specific staff member for resolution. MOM displays information about service-level exceptions, open alerts, and computers in the configuration. You can check specific alert and event details, performance data, and monitored computer status.
MOM provides proactive real-time system monitoring for servers and computers throughout the enterprise that are running Windows 2000 and Windows 2003. MOM also displays useful information about computers and their alerts. You can display a view of all computers to see computer properties, alerts, events, performance, computer group membership, and the processing rules applied to each computer in the configuration group.
In addition to monitoring specific aspects of Windows Server operating systems, MOM can also load management packs, which allow it to be extended to monitor various Microsoft server applications.