HOMEABOUTSUCCESS STORIESPENN STATE UNIVERSITY


As visionary developers begin cobbling together a new generation of Internet-savvy client/server applications, the true potential of the World Wide Web as a vehicle for information exchange is beginning to be discovered. But where first-generation Web applications were mainly designed as stand alone systems, companies are now looking for ways to leverage existing application assets and data stores.

"Accommodating the Web is meaningless if you can't preserve existing application and database investments," says Penn State's Peter deVries.

DeVries speaks from experience. As Director of Advance Technology for Penn State University (PSU), he has been entrenched in a massive Internet development project designed to give students and staff members direct access to a wealth of institutional information. Dubbed SWIMS (for Secure Web Instruction Management System), the new system provides a custom search engine, a hypertext listing of suggested academic and advising references, open access to student information systems, an artificial intelligence-based advising service, and a variety of support services for faculty and staff.

Creating the new system and integrating it with the existing application assets hasn't been easy. Complicating issues is an enormous legacy of mainframe databases and transaction processing environments, much of it based on Software AG's ADABAS database and Natural fourth generation language. PSU is a sprawling statewide system of 22 campuses and 76,000 students, plus faculty and administrative staff. All of the data for the entire university system--including student, faculty and administrative records, financial and academic information--is centralized on IBM MVS mainframe systems.

"We have been building mainframe systems for 20 years," deVries says. "As we create client/server and intranet applications, our philosophy is to transition and improve the capabilities of those mainframe systems, not replace them."

ESTABLISHING THE ARCHITECTURE
Initially, staff members within the University's Office of Administrative Systems (OAS) decided to implement a two-tiered client/server system. Personal computers would handle all of the processing requirements for the presentation layer, allowing the mainframe to focus on data access and processing tasks. Unfortunately, the mainframe was quickly becoming overburdened by this combination of new and old systems, to the point where key business applications came to a grinding halt during periods of heavy usage.

DeVries and his colleagues realized they needed to off-load much of the processing requirements from the legacy system if things were to get back on track. Some soul searching ensued in which alternative data access strategies were considered. "Much of the requested data was actually information that the students were requesting on their own behalf, such as course information, grades, and transcripts," explains Ken Blythe, Penn State's Senior Director for Administrative Systems. "What if the university could set up a system that would let the students help themselves to this information in a secure fashion? It would save on administrative expenses, speed information response and take a tremendous load off the university staff."

It was at this point that the skeleton of a three-tiered system began to take shape. The mainframe would stay in the picture as the data server. Web servers would host the primary application logic. And the presentation layer would be a combination of traditional desktop clients and think clients running Web browsers.

SELECTING THE TOOLS
Achieving these ambitious development goals meant finding a software development system that was robust, supported multiple client platforms, and could tie the new tier of Web servers seamlessly with the existing legacy systems. And it had to be fast. The solution came from ParcPlace-Digitalk Inc. with its VisualWave application development environment.

"ParcPlace is the first company with a product that puts a full-blown, object-oriented development environment behind the Web page," Blythe says. "VisualWave enabled us to put our client/server application on the Web with very little effort."

Blythe attributes this ease of implementation, in part, to VisualWave's object-oriented design. Objects are inherently suited to the Web's distributed makeup. Rather than storing data and business functions separately, as most business applications do, objects link them together. Objects are composed of both procedures and data, so they can be combined more flexibly than data or procedures taken separately, as well as readily shared among applications.

"The biggest challenges from a development standpoint were two-fold. The system would have to support 80,000 student users, with peak access rates of 20,000 hits per hour. And it would have to be ready by the next academic year. VisualWave allowed us to rapidly develop an interactive web application to meet this challenge. The new application interfaces with our legacy system for data access and uses a Kerberos-based security system to ease the administrative overhead. It empowers our student body to access administrative records that include class registration, course information, grades, transcripts and faculty and administrative information over the internet. We're excited to be deploying this application with the VisualWave Server."

Ken Blythe,
Senior Director for Administrative Systems
Penn State University

"VisualWave's object-oriented architecture enabled rapid development and provided us with the opportunity to continually expand the system through component reuse," deVries adds. "This was our first major OO project, so the real learning curve came with understanding Smalltalk and the fundamentals of object oriented development. Several developers took a training class from ParcPlace that helped us get up to speed."

ParcPlace Smalltalk is an ANSI-standard programming language that provides the foundation for VisualWave. It contains a library of more than 900 classes and 24,000 methods and includes the characteristics of true object-oriented technology: polymorphism, inheritance, and encapsulation. Designed to speed application development, ParcPlace Smalltalk offers developers support for high-level debuggers and performance analyzers, full execution speed of native machine code, and sophisticated memory management.

For PSU developers, the time spent learning Smalltalk was time well spent, particularly because of the dividends it paid in the area of component reuse. Once developers had created the business logic, they could endlessly expand and modify the interface connections without having to significantly alter the core system. VisualWave allowed them to rapidly build a complete client/server/web system, enabling both Web access and access through traditional client systems such as Macintosh and Windows personal computers. It also allowed them to link to their legacy system for data access, and use a Kerberos-based security system for password protection and authentication.

On the client side, VisualWave streamlined the creation of the user interface and the Web-to-database access mechanisms. "VisualWave automatically generates the HTML and the CGI scripts necessary to execute a client/server application as a Web application," deVries explains. "It allowed us to create an application in one complete graphical environment which is automatically deployable on the Web."

SCALING THE SYSTEM
DeVries makes a distinction between two-tier, client-oriented development tools and three-tier environments such as VisualWave. Two-tier tools pack all the code for the user interface, application logic, and business rules into the client, relying on a database server to retrieve data for processing. Three-tier architectures add an intermediate tier of servers to support application logic and distributed computing services. These middle tier services are shared by many applications. Thus instead of writing the same function or service in every new application, developers can write the function once and place it on a server accessible by all applications. This improves the scalability and reusability of client/server environments.

"Three-tier applications are easier to adapt to the Web's distributed makeup because of their distinct separation between business logic, presentation, and data," deVries explains. "This simplifies the translation into HTML files. Client browsers present the application, while Web servers funnel queries and transactions to an intermediate tier of database and application servers."

Sounds great in theory, but many Web sites run into bottlenecks that can be traced to a single point of threading between the Web server and the mainframe. VisualWave supplies a multi-threaded Common Gateway Interface (CGI), which is used whenever a browser needs to call a service that is external to the Web server.VisualWave sessions provide the ability to deploy interactive, multiscreen client/server applications. These sessions manage application state for each user, enabling a true two-way dialog between the user and the application.

"Many Web applications show their limitations as traffic increases," deVries says. "We're planning to use Distributed Smalltalk to scale the middle tier as the system becomes more popular. We can add Web servers as necessary and distribute the application logic among them using Distributed Smalltalk."

Distributed Smalltalk (DST) provides an integrated set of object-oriented frameworks for the development and deployment of multiuser applications. Fully integrated with VisualWorks and VisualWave, it lets developers build multi-tiered applications that are compliant with the Common Object Request Broker Architecture (CORBA).

Other SWIMS enhancements will involve replacing much of the HTML interface logic with Java applets. "Java will allow more processing and more active participation on the client side," deVries says. "For example, instead of querying a student schedule on the server, the schedule could be downloaded to the client as a Java applet."

PSU is also considering the use of Frost, a VisualWorks add-on that helps Smalltalk developers utilize Java and partition application code among Smalltalk and Java servers. "ParcPlace is a technology leader where Java is concerned," deVries says. "The work they are doing in this area will certainly enable us to improve the SWIMS interface."

INTO THE FUTURE
Part of the Penn State charter is to turn out graduates who understand the technological, environmental, and ethical challenges they will face in a world of accelerating change. That same philosophy is evidently at work among Penn State's administrative staff. By allowing direct student and faculty access to administrative records and services, the SWIMS system has streamlined the university's administrative processes, thereby reducing expenses.

"With VisualWave, we have been able to rapidly create a complete client/server/web system from the ground up," Blythe concludes. "The end product has significantly eased processing requirements for the university's existing legacy system, while preserving a substantial investment in mainframe technology."

© 1997 ParcPlace-Digitalk, Inc. All rights reserved. ParcPlace, Digitalk, VisualWorks, VisualWave, VisualWave Server, Distributed Smalltalk and Frost are registered trademarks of ParcPlace-Digitalk, Inc., or its predecessors or subsidiaries, in the U.S. or in the U.S. and other counties. Unless otherwise noted, all terms marked ™ are trademarks of ParcPlace-Digitalk, Inc. or its predecessors or subsidiaries. Other terms, product names, and corporate names may be trademarks or service marks of other companies.