Chapter 30

Incorporating Legacy Systems and Data into an Intranet


It's rare that an intranet has been built entirely from scratch. Intranet designers usually don't have the luxury of creating a logical computing architecture. Instead, they have to take into account existing corporate computing and networking resources. That means attempting to integrate mainframe-based systems, mini-computer-based systems, local area networks, and databases, none of which have been designed with an intranet or TCP/IP in mind. Important corporate information is stored in a variety of databases that are often incompatible-and they have not been integrated into an intranet yet.

That presents a major problem to anyone designing an intranet: how to incorporate all these incompatible systems into their design. As you might imagine, because there are so many different kinds of systems and databases, and because each corporation has designed their intranet differently, there's no single solution-and often, no easy solution, either.

One solution for those who want to give intranet users access to legacy databases is to use the Common Gateway Interface (CGI), a technology that gives access to non-Web-based resources such as databases. CGI scripts-which can be written with a variety of tools, such as the Perl scripting language and the C++ programming language-send the requests to a database, and then return the results in an HTML tagged page.

That solution works, but has drawbacks. One is that the CGI scripts are generally written for a very specific situation-a specific Web page querying a specific database. Often, intranets need greater flexibility, or have a variety of legacy databases that need to be accessed. In that case, several technologies can be used. One that may prove to be very popular is the use of the Structured Query Language (SQL), which is a way of accessing databases. SQL is based on a client/server model. The database acts as a server, and a variety of clients can query the database. With SQL, a database query from the Web goes to intermediate software-and possibly an intermediate server as well-that translates the query into the SQL language. That SQL query is then sent to the database, which returns the data, which is eventually put into HTML format.

Databases aren't the only legacy system that needs to be incorporated into an intranet. Others are local area networks (LANs) or the Systems Network Architecture (SNA), a suite of protocols used to connect IBM mainframe systems. There are a number of ways that an existing LAN can be incorporated into an intranet. The simplest, of course, is to install TCP/IP technology on all the workstations on the LAN, and to install intranet-based servers, routers, and other similar technologies. However, there may be times when the LAN needs to keep its existing technology. In that instance, bridges can be used that will allow data to be passed between the intranet and the LAN. Similarly, a TCP/IP to SNA gateway can be used to connect the mainframe to the intranet.

Incorporating Legacy Data into an Intranet

One of the biggest problems facing many intranet administrators is that they must incorporate systems and databases that were created without TCP/IP in mind-what are called legacy systems. These systems and databases may be mainframe-based, minicomputer-based, or LAN-based. They can be incorporated into an intranet in a variety of ways. Pictured on this page are some of the possibilities.

  1. One of the most common ways of incorporating legacy system data into an intranet is to allow people to search through the legacy database using the Common Gateway Interface (CGI). CGI scripts can be written so that someone can fill out a form on a Web page, and the script translates the information on the form into a format that can be understood by the database. The results of the query are then delivered back to the Web browser after the CGI script has formatted the results with HTML so they are readable by the Web browser.
  2. One possible way of connecting to a legacy IBM mainframe system is to enable direct access through the use of tn3270 terminal emulation software, which runs on individual desktop machines connected to the company intranet. An SNA gateway sits between the mainframe and the TCP/IP based intranet. The terminal emulation software encapsulates a 3270 data stream in TCP/IP packets. The gateway strips off the TCP and IP headers and wraps the data in the appropriate SNA protocol. To the user, it appears as though they are sitting at a dedicated 3270 terminal.
  3. Another choice is to retrieve the most popular data from the legacy system and place it in static HTML formatted pages on an intranet Web server. When an individual wants the information, they simply type in the URL for the static page and retrieve it. This solution works fine for information that is static, meaning not frequently updated, such as quarterly financial reports. However, it will not work for information that is frequently updated.
  4. As noted above, access via CGI scripts can be problematic because they are often written to interact with one specific resource on the mainframe, such as one specific database. A workaround solution is to create a CGI program that takes input from a Web page form and translates it into the language used by a 3270 terminal. The translated data stream is then sent on to the mainframe computer. To the mainframe, the incoming information appears to come from a terminal rather than from a web browser. Terminals can interact with any resource on the mainframe.
  5. Information sent back by the mainframe computer is marked up with HTML tags and then returned to the Web browser for viewing by the user. The CGI program also adds special buttons to replicate the many function keys available on a 3270 terminal. This approach is useful because it allows interaction with all resources on the mainframe through a Web browser.