Chapter 11. Integrating Line-of-Business Applications

 <  Day Day Up  >  

Thus far in this book we have focused on the frontend of the portal, examining the needs of human users working interactively through their web browsers. The most visible part of the portal, the frontend serves the business goals of the portal by helping organizations work together more closely, sharing information, creating transactions, and interacting in many ways. But a portal is much more than its frontend. The portal must consolidate information from multiple, disparate sources and provide ways for applications to interoperate . This chapter delves into addressing a different set of business goals: making applications talk to one another.

To really connect businesses, government, individuals, and nonprofit organizations, a portal must do more than serve human users. It must provide a similarly rich set of services to other computers as well. Just as a portal is used to standardize interfaces and facilitate data integration, it can support integration of heterogeneous systems through synchronous and asynchronous connections. This is called enterprise application integration (EAI). EAI solutions are distributed applications ”that is, applications that run on multiple computers that communicate by means of standard protocols and interfaces. For instance, a retail distributed application runs on a cash register, the store's application servers, and the enterprise resource-planning system at corporate headquarters. Distributed applications meet similar business goals as other applications:

  • Satisfy the functional requirements of business users.

  • Include all necessary security mechanisms such as secure communication, authentication, and authorization.

  • Provide performance that meets the needs of users.

  • Be available when the users need the system.

  • Allow management and monitoring by administrators.

  • Be maintainable by using industry best practices for coding and documentation, and putting functions where they can be found by programmers.

In addition to meeting these goals, distributed applications must be suitable for long-running transactions and for loose coupling of systems in large, complex solutions and, as a result, they often cross organizational boundaries on multiple hardware and software platforms. Therefore, we must add some goals that are unique to distributed applications: [1]

[1] Microsoft, Application Architecture for .NET: Designing Applications and Services. See Microsoft .NET Architecture Center at msdn.microsoft.com/architecture/.

  • Build services rather than include all functionality in a single application.

  • Use message-based techniques to provide robustness and scalability.

  • Allow asynchronous as well as synchronous communication.

  • Communicate with other services with the minimum amount of coupling.

Although services perform the same functions as other applications, they expose their functionality through a services interface. Because the implementation details of a service are irrelevant to an application that uses it, the dependence among components is reduced. You can have multiple development teams working on services independently, and they can choose the hardware and software platform that suits their needs best.

Unfortunately, the services architecture forces developers to factor in additional considerations that are not present in a homogeneous, synchronous application. They must be concerned about managing data concurrency, dealing with service failures or downtime, and communication issues such as protocol, data schema, and authentication.

These goals can be served by either developing a customer solution or embracing an EAI platform. EAI can be an enabling technology for building your portal. You can use it as the glue that binds legacy transactional systems together rather than rewrite them to conform to your latest enterprise architecture. For instance, if you are using SAP as your enterprise resource planning (ERP) solution, you may want to enable it for the portal. With EAI, you can build an alternative interface to the system that you make available via your web portal. Customers can inquire on order status, and suppliers on inventory levels. EAI products such as Microsoft BizTalk Server contain connectors for SAP that can access data in your ERP system. The philosophy behind this approach is "if it ain't broke, don't fix it." The result can be significant savings of development time and cost, as well as reduced technical risk. Another advantage of this approach is that it minimizes the additional performance burden on legacy systems by offloading much of the processing for these interfaces, which occurs on new servers provisioned for this purpose.

Another use of EAI in the portal is to create an online marketplace , or business-to-business (B2B) system. The same type of system is needed for business-to-government (B2G) and government-to-government (G2G) systems; but in this chapter, we use the B2B shorthand for all three. In a business-to-business portal, many types of transactions are supported. Suppliers must be able to check their inventory with a customer and initiate purchasing transactions to maintain optimum inventory levels. Distributors should be able to manage and orchestrate their transactions with suppliers and shipments to customers. Many of these transactions are automatically triggered by events, such as orders to maintain predetermined stock levels.

Nearly every organization has a need for integration outside its organizational boundaries. You can start by looking at the flow of money to and from an organization. Even small companies can have large numbers of customers and suppliers. An information technology reseller, for instance, may have 1,000 suppliers and offer 50,000 distinct products or services. Its customer list may be in the tens of thousands. While it is possible to establish each of these electronic trading relationships on a case-by-case basis, this effort can quickly become prohibitively expensive and time consuming for all concerned. Similarly, a manufacturer may have hundreds of companies in its sales channel. A government tax agency must deal with all tax-paying corporations and individuals, and of course these taxpayers spend a significant amount of time calculating their tax liability and making payments. Nonprofit organizations need integration with suppliers for publications , event-planning companies, and with their members . What all parties need is an infrastructure that lends itself to quick and simple integration (Figure 11.1).

Figure 11.1. Business-to-Business Architecture

graphics/11fig01.gif


New technology provides a vital link for integration in the portal, especially web standards. The dominant approaches to integration in the past, such as Electronic Data Interface (EDI), were effective but were also costly to implement and maintain. As a result, only large players who could afford the integration investment used these technologies. With XML and web services, the same quality of service is available for a much larger group of users at a reasonable price.

This chapter shows how the Microsoft portal platform supports enterprise application integration, workflow, and orchestration. Our focus is on Office, InfoPath, and BizTalk. We examine how transactions are initiated, workflow is automated, and messaging traffic coordinated in an e-business portal.

There are essentially three elements in an integration scenario. First is some means of data entry to create the transaction. After defining some integration terms and concepts, we look at several options for capturing this data from users or systems. Second is the automation of workflow around the transaction, such as routing for approval. Third is a system for managing the transactions and ensuring their integrity.

 <  Day Day Up  >  


Building Portals, Intranets, and Corporate Web Sites Using Microsoft Servers
Building Portals, Intranets, and Corporate Web Sites Using Microsoft Servers
ISBN: 0321159632
EAN: 2147483647
Year: 2004
Pages: 164

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net