This paper is the intellectual property of the author(s). It was presented at EDUCAUSE '99, an EDUCAUSE conference, and is part of that conference's online proceedings. See http://www.educause.edu/copyright.html for additional copyright information.

A Dynamic and Individualized Web System

Christopher G. Connolly
Villanova University
Villanova, PA

Many universities have striven to provide their students, parents, faculty, staff, and alumni with robust, useful, and informative websites. This paper is designed to evaluate the evolving web-based technologies and will utilize Villanova University�s work for case-study examples of these technologies. The objective of this paper is to provide the reader with a better understanding of what constitutes a truly integrated, dynamic, and individualized web system.

Introduction

Many universities have striven to provide their students, parents, faculty, staff, and alumni with robust, useful, and informative websites. This paper is designed to evaluate the evolving web-based technologies and to provide case-study examples of the latest technologies. By its conclusion, you should have a better understanding of what constitutes a truly integrated, dynamic, and individualized web system.

Villanova University has spent the last twelve months overhauling its static website to a dynamic and individualized web system. At the outset of the project, the term "portal" was adopted by the industry, and its methodologies were found to accurately describe many of the objectives that the University wanted to achieve. This paper will properly define the term "portal" so that one can distinguish between it and an advanced Intranet system. Let us begin by examining the differences among Internet, Intranet, and Portal technologies.

Internet Website

Internet websites are the most basic web technology, usually providing static information through HyperText Markup Language (HTML). HTML Forms, JavaScript, Java, ActiveX, plug-ins, and Common Gateway Interfaces (CGIs) provide means to "liven" a website and provide dynamic, real-time information. However, since the Internet is accessible by consumers worldwide, developers are limited in what new information and systems they can provide without violating the security and privacy of customers.

Intranet Website

Intranet websites provide more robust, useful web-based solutions to specific customers and internal staff through user-based authentication. However, Intranets have some drawbacks. For example, end-users must remember many different usernames and passwords for each Intranet. Perhaps the greatest problem with Intranets is their inherent separation from Internet websites due to security concerns. Thus, end-users must be instructed to utilize Internet websites for public information and Intranet websites for restricted information. This dichotomy causes a development burden because several websites must be maintained, possibly even repeating the same information.

Portals

Portals were designed to organize and customize the plethora of information available on Internet and Intranet websites and to provide a single point of entry. A good portal provides seamless access for non-authenticated end-users until sensitive information is requested, then prompts for a username and password. Authenticated or known users, through the use of cookies, are presented with a more individualized view of the organization�s website.

There are, however, many products on the market today that are simply advanced Intranet websites that take better advantage of information known about the end-user. These portals can fail developers by requiring them to maintain an Internet website for non-authenticated users and a portal for authenticated users. For example, storing a university�s student campus activities schedule in a password-protected portal prevents prospective students from viewing the activities the university has to offer, while placing the activities schedule on the public Internet site prevents university web designers from personalizing the information. One example of personalized information is placing sophomore activities at the top of the schedule when sophomore students view the content.

Unlike Internet and Intranet sites, most portals do not conform to any standard and thus are often proprietary. Although they may provide Application Programming Interfaces (APIs), each provides a different set of APIs. Portals are meant to be a solution for multiple Intranet username/password systems, which are based on many open standards; however, more vendors are offering portal solutions for different functional needs, such as Athletics or the student record system. What is the solution once an organization has several different vendor-based portals?

In-house vs. Commercial Portals

One of the challenges to an organization is determining whether to develop an in-house software solution, out-source, or purchase a commercial solution. The organization must assess the need for a competitive edge over the competition in the technology arena, the ability of an off-the-shelf product to meet those unique needs, and the resources necessary to develop an in-house solution. The Netscape browser is a good example of a technology that meets almost any organization�s unique needs. Most organizations, with the exception of competing browser vendors, gain little to no competitive edge by developing their own custom-built browser. Advanced, underlying technologies such as Web browsers, Java, e-mail, httpd, and LDAP are good examples of open standard solutions that generally should not be developed by organizations that are not specialized in these technologies. However, CGIs and Java Servlets are programming interfaces developed to allow organizations to develop custom applications. Writing a Java Servlet that displays the photographs of the students enrolled in a course by bringing together information from Vendor A�s student record system and Vendor B�s Picture ID Card system is a good example of an in-house application.

Are portals an advanced, underlying technology such as httpd or an applied technology based on existing technologies? The answer is that portals are an applied technology application based on existing technologies. Today, most portals are simply several underlying technologies packaged together. It is important to realize that portals themselves are not unwieldy to develop. The organization must assess its situation to determine whether to develop a portal that will provide a competitive edge over the competition or whether to purchase a commercial solution that will allow it to focus on other issues. Universities should be cautious of commercial portals geared towards universities priced at an incredibly low rate. These companies have realized that university students represent one of the most powerful demographics with respect to advertising. A vendor sells its product to a university at a low cost by displaying advertisements on the portal pages. Vendors may convince a university that portals are too advanced for the university to develop on its own and that commercial or non-advertising portals would cost between $100,000 and $1,000,000. The fact is that all but the smallest universities that lack IT resources may wish to seek a non-advertising solution or develop its own.

Preliminary Steps for Portal Integration

After an organization has decided whether to develop in-house or purchase a commercial portal, the following steps must be completed. Some of these steps come with a commercial product. For each step listed below, an example of how Villanova University approached and resolved that step is provided.

Centralized Usernames and Passwords

It is essential that a system of centralized usernames and passwords exists. There is little point in providing powerful web tools if end-users do not know their usernames and/or passwords.

Villanova University Case Study

Villanova University chose Netscape�s Directory or Lightweight Directory Access Protocol (LDAP) Server for its central repository of usernames and passwords. LDAP is an open standard protocol that is compatible with many commercial and freeware products, reducing development and integration costs. Sun Microsystems provides a Java Naming and Directory Interface (JNDI) for LDAP, supplying an open standard of APIs for our username and password solution. Currently, Villanova�s Remote Access Server (Merrick Radius Server), Netscape Proxy Server, Apache Web Server, IP Registration System, Netscape Usenet News Server, Netscape Messaging Server (E-Mail), Netscape Calendar Server, Microsoft FrontPage, and Novell Servers are linked to the LDAP system. With the exception of the Novell Servers and FrontPage, all of these systems talk natively to LDAP, requiring no code development to integrate. Using either Netscape�s LDAP to Windows NT or Novell�s Netware to Windows NT integration, Villanova plans to integrate its Windows NT environment into its centralized username and password system. Villanova required fewer than 12 months to build and integrate its centralized username and password system.

Centralized Customer Record System

In order for a portal to communicate effectively and efficiently with students, faculty, staff, and alumni it must know as much as possible about each individual. If a university operates on different system for payroll, students, and alumni, it becomes a difficult hurdle for a portal to overcome.

Villanova University Case Study

Villanova worked to centralize its operations into a single database system. SCT�s Banner system was installed five years ago and most departments are now integrated. The IT department�s helpdesk system, University Card system, and Telecommunications billing systems are examples of departments using databases that are not integrated into the central record system because the needed functionality was not offered by the vendor. The helpdesk and University Card systems have been linked with the LDAP system so that information can be retrieved from these systems with minimal effort.

Centralized Repository of Relevant Information about Customers

Although a university may have a centralized customer record system, it is often too complicated to easily develop web content. A relational database solution might have a customer�s information stored in twenty or more tables. Filtering through these tables when attempting to customize the look-and-feel of a webpage for an end-user would be time-consuming both to develop and to execute. In addition, it is likely that the portal will need to store and manipulate its own information that the record system may not be readily able to handle. There are two key issues to consider when centralizing information into a central repository system: what information needs to be warehoused and how is that information kept up-to-date. For example, if the portal records that a student is an Engineering major, how is the information updated for the portal�s centralized repository to reflect that the student transferred to Commerce and Finance. A repository may also be necessary if the centralized record system must be brought down once a day for backups. Most customers want their websites to be up twenty fours hours a day, seven day a week, so it is important that the portal can access its information 24-7. Repositories may be stored in simple database tables, a directory server such as Netware or LDAP, or object-oriented databases.

Villanova University Case Study

Villanova chose LDAP as it central repository for relevant customer information. College, major, class year, permanent address, campus address, phone number, department, and University card photo are just a few examples of the information stored in the LDAP server. Information from the University record system is updated into LDAP in one of two ways, via a nightly sync process or a database event listener. The nightly sync process checks each LDAP account�s information against the information stored in the University record system and updates any necessary information. The database event listener listens to relevant tables in the record system, such as the address table, and fires an event when a change occurs. The triggered event is then processed and the information is checked against LDAP. This process provides real-time updating while the nightly sync process "catches" any changes missed during the day or as a result of downtime.

APIs and Documentation for Repository

In-house developed or commercial Portals should provide an API and Documentation for the information in its storage facility. The API allows a university to customize and tailor the information to its needs. In addition, a properly constructed, object-oriented API can provide a robust and resilient interface. For example, to access a database table requires a raw Structured Query Language (SQL) statement that is not very resilient to future upgrades and modifications. An API with simple getters and setters, such as getUserID(), provides a much easier to use and robust interface to the information. Although the APIs may use standard programming structures such as JNDI or Java DataBase Connectivity (JDBC), the methods provided for each are not standard across portals. Case in point, vendor A�s portal may have a getUserID() method while vendor B�s portal may use a getUsername() method. These discrepancies can be a major hindrance and cause portals to become no more than high-end Intranet products. For in-house developed portals, documentation for the API and the underlying code itself is required.

Villanova University Case Study

Because Villanova developed its own repository using LDAP, it had to develop its own API and Documentation. The API, written for Java programming language, and documentation is made available to any department or college within the University that wishes to use the information. Often the API has been used for non-web related projects, such as configuring end-user Windows machines to reflect their username, location, workgroup, etc. The API is currently in its second generation; it is easier to use and more object-oriented in order to be more resilient to change.

Integrate New Infrastructure

The above steps, including developing or purchasing the portal software, require a significant investment of time and money. The true cost-savings and benefits come into play with the fact that existing and new systems integrate into and take advantage of the new infrastructure. There is more to most universities than their websites. Combining resources like the web, e-mail, e-commerce, and classroom instruction to take advantage of the same individualized, "portaled" repository of information reduces administrative and maintenance costs and presents a more seamless environment for the customer.

For commercial portals, there are specialized and generic portals for integration. A specialized portal is a portal supplied for a specific target market or to extend an existing product. For example, a vendor may enhance its athletic recruitment database system by offering a portal that immediately integrates with its existing database product. However, a registrar’s office will have difficulty utilizing an athletic office’s portal for its own needs. A generic portal is a portal that is intended to be flexible enough to be used for any organization’s needs. A generic portal, however, usually exists outside any of the existing systems of an organization. In this case, an in-house or out-sourced integration between the existing system and the portal is required.

Villanova University Case Study

Villanova has integrated many existing and new systems into its new IT infrastructure. Below is a list of the many system now integrated.

Enabling Individualized Web-based Solutions

After the infrastructure is in place and a portal has been developed or purchased, it is time to evaluate the customers’ needs. Often many IT departments spend so much time and effort on designing the underlying infrastructure that they believe the dynamic websites are just extensions of their infrastructure. However, the opposite is true. The dynamic websites provide the information and tools the customer wants while the infrastructure exists only as a means to support such a rich system. A common feature of a portal’s "My Homepage" is to provide sports updates. From a university point of view, the idea of a sports section seems quite trivial and irrelevant. From a student point of view, customized sports updates are a useful resource for the university web to provide. Universities that make sports updates available will not only increase customer satisfaction and portal usage, but also enable the university to place its own news and events around the sports section, increasing student awareness of campus activities and opportunities.

Villanova University Case Study

Villanova’s most successful portal tool has been its My Classrooms feature. My Classrooms provides a common link to Classroom material and resources that are available on the Internet.  All University courses include an E-Mail Class Distribution List and a Class Discussion Newsgroup for faculty and students to collaborate throughout the semester.  The "killer app" of the My Classrooms feature is the ability to view the photo ID of all the students enrolled in a course. This feature has been extremely well received by faculty members.

Developing and implementing the customer-needed features of a portal is only the first step of a properly deployed portal system. Typically, an IT department represents only a small portion of the workforce of a university. Therefore, it is essential that non-technical users outside the IT department can take advantage of the advanced capabilities of the portal system. The ability to incorporate security and dynamic features using customized HTML tags is one of the simplest methods for end-departments to take advantage of portal technology. A good portal should also be able to work with other existing web servers. It is very rare that an entire university operates on a single web server. Therefore, the portal solution should be extensible enough for other departmental web servers to take advantage of the portal technology.

Villanova University Case Study

Villanova University has taken advantage of Java Taglets, which provide a way to implement customized HTML tags to interact with Java Servlets. This allows HTML developers to add security or dynamic content to their pages with simple HTML tags. It also provides a method to repeat dynamic information efficiently across different pages. For example, the University Library system can display the same dynamic Library News Module on the University homepage as well as on the library homepage.

Conclusion

Dynamic and individualized web systems will become essential for organizations over the next several years as customer expectations grow and as organizations further develop their web-based technologies in order to distinguish themselves from the competition. It is important not to lose sight of the origins of the Web, to provide a seamless, heterogeneous environment to access information, and avoid the "bells and whistles" of a proprietary portal solution. Villanova University has successfully integrated portal technology by constructing and utilizing a solid IT infrastructure.