Článek na konferenci ICEIS 2000, Stafford, UK, červenec 2000

University Information System Fully Based on WWW

Jan Pazdziora, Michal Brandejs
Faculty of Informatics, Masaryk University
Botanicka 68a, 60200 Brno, Czech Republic
adelton@fi.muni.cz, brandejs@fi.muni.cz

Abstract. This paper describes the development of Information System (IS) at Masaryk University in Brno. It supports full range of administrative and information functions in the study area, as well as some processes in research and development activities. Built on a relational database system with WWW server running applications written in scripting language, it ties together many of today's technologies into flexible and extensible tool that gives all University members direct access to information stored in the system. Its only interface is web browser and this uniformity of target client platform coupled with mixture of highly effective software on the server side allowed fast development, resulting in easy access for all types of users.

Keywords. information system, database, direct, university

Goals of the Information System

The need for on-line information system occured with University's focus towards higher mobility of students both among schools of the University, and outside. Reliable and widely accessible information source was asked for, which would give both students and teachers the information they need for studies and work. The information gathered in digital form can also be easily used for management's decisions, internal evaluation and streamlining of the data flow across the organization, creating more transparent environment both for University members and for the public.

Quite a lot of the information needed has already been maintained previously, unfortunately in very unstructured way on many PCs in the individual departments. Such information couldn't be used by anybody else than the local user of the PC, resulting in loss of value and usually also accuracy -- no one could see the errors. By converting the old data to central database or setting up batch transfers from legacy applications, the information can be instantly accessed by many users. The Information System (http://is.muni.cz/) serves as a channel for data flow, keeping the responsibility at the source and delivering the information to the users. The data is still maintained by the local departments (for example course offerings or time schedules), at the same time it can be used globally over the Internet by much broader number of users.

Users and Access Rights

Clearing and compiling personal records of students and University staff resulted in base people database, providing a solid ground for all applications. Any personal record gives the person a chance to be a user of the system. If a user is listed as a teacher of a course, he or she can edit the syllabi of the course, see list of students registered for the course and enter grades, to name a few functions. Students can register for courses or pick a term of exam, see their own grades received, check all personal data the system holds about them. Dull lists of students have turned into thousands of users who can directly access their private records and manipulate them -- for example by registering a course.

Besides access to one's own records, tree-based access rights system allows the local administrators in the schools and departments to set the rights on various objects in such a way that users can work with all data they need to, reflecting their position and administrative tasks in the organization. This fine granularity access control system proved to be effective for maintaining privacy of data and users, while providing usable environment that allows all users to work with the same information they are entitled to in the real world. An object of the access right may be a person (to change personal details of the student, for example), or many kinds of nonpersonal data (course information, schedules).

After the first eleven months of operation, nearly 12,000 users worked with the system, resulting in 5 million HTTP (Hypertext Transfer Protocol) requests for generated pages, most of them authenticated. In total, Masaryk University has over 17 thousand students and over 3 thousand teaching and administrative staff at eight schools (from Humanities to Science), and our statistics shows that most of the full-time students already use the system. The database of people has around 50 thousand personal records and as we are processing the archives of students, this number will certainly grow, because we want our alumni to be able to benefit from the system as do the current students.

WWW Browser -- the Only Interface

World Wide Web is a natural medium for browsing over one billion of HTML (Hypertext Markup Language) pages on thousands of WWW servers. Its use for authenticated internal systems also grows. With IS at Masaryk University, web browser is the only way users can access the data, even the administrative staff. This change from previous terminal based Fox* and remote telnet applications was an important step towards lower maintenance costs of clients, so the technical reason was very strong. However, the impact on typical office worker had also to be considered.

User's Perspective

The CGI (Common Gateway Interface) applications generate output in HTML which defines tags (<FORM>, <INPUT>) that allow creating complex interactive forms. Due to the stateless nature of HTTP, response to certain actions gets slower because for example searching for records after a `Search' button has been hit leads to another request to the server, which processes parameters and generates another output page. From user's subjective point of view, this process that includes redraw of the browser's display may take longer than data search in terminal based fixed screen, even if the actual time involved is the same.

Since the IS uses plain HTML forms, we had to come up with ways of keeping the user's work with the system smooth. The system remembers last values used for certain actions for each user and can use these defaults the next time, saving one trip to the server in most common situations when the user just wants to continue in his or her work after a weekend break. To achieve better response and reliability with actions that change the data, the system also maintains sequence-generated hidden parameters for some pages. This makes it easy to check that particular action was already done (email was sent, records deleted) and it is not rerun again, should the user hit the Reload button in the browser.

The HTML page is not limited in its length, making it possible to output more information in one request, saving keystrokes needed to find the correct screen. The general acceptance of the WWW interface is very good -- the flexibility of HTML forms as compared with 80x25 characters screen outbalances some drawbacks the interface may have.

Development for a Single Platform

WWW browsers are available for most computing platforms and the compatibility of markup and HTML rendering engines is reasonable high. Still, the IS avoids all techniques that would make parts of the system unusable for some users. Thus, the JavaScript callbacks are added to improve certain user interface actions, like filling the form or better positioning on the page, but the pages can be used even with JavaScript turned off or unsupported by the browser -- the system may be less comfortable, but still available. HTTP cookies are not used for the same reason; with the authenticated system, it's easy to achieve better results by keeping the state of the session and user's preferred defaults in form's values and in the database.

With all applications running on the server, an upgrade or bug fix means putting new script to proper directory on the server -- next access to that application will use the new version. This allows gradual development and improvements to be made, while users do not need to change anything on the client side. Users always use the latest versions of applications, benefitting from rapid development, while developers have only one place (the server) to maintain.

The WWW browser currently seems to be the common platform and is reliable even for heavy duty administrative authenticated applications. We~watch closely all trends in the computing field, but none of the evolving technologies (including Java) is stable and widespread enough to be used for our purposes where compatibility for all clients is the main concern. One of the features our users appreciate most is the possibility to access the system from any home computer over dial-up connection or from distant workstation during foreign academic stay. Sacrificing this advantage just for the sake of using the very latest technologies is not the way to go.

Base Applications in the System

Catalogue of Course Offerings

After setting up the database of people which created the user base, Catalogue of course offerings was the next task. Since users at the departments were granted access for the areas of their responsibility, the University-wide database of courses was created as a distributed effort. Displaying the results for many users made many departments to re-thing the structure of courses they offer, leading to better quality study programs even in this early stage -- by simply opening the information to many eyes to check. The courses have mandatory attributes (list of teachers, credit value) as well as freeform attributes defined by individual schools. That allows them to store any additional info needed and to do searches and group actions even on information not directly supported by the primary database structure.

Course Registrations, Grading, Exams

On top of the lists of students and courses, a whole range of applications was built, saving the paperwork and providing direct access for all, without the office workers being necessary as an intermediary. The applications include:

  • course registrations by the students, with immediate access to syllabi, follow-up courses and recommended reading listings, as well as hyperlink access to additional WWW pages the teacher may have set up for the course;
  • direct access to the lists of students registered to his/her course for the teacher, electronic notepads for notes and in-term gradings as well as direct access to the final grading system; the teacher can also communicate with the students of the course directly via email, because the IS maintains an email address for each user (see below);
  • the teacher can set terms of exams with many criteria, students can register on-line, saving them long ways to the campus just to put their name on a paper on a wall next to the teacher's office; link to room and labs reservations is being developed at the moment;
  • having the information on-line allows statistical evaluation of all teachers, courses and departments; of course, the system cannot evaluate the quality of the teaching itself, but there is no longer an argument about some of the facts; course evaluations by the students is being prepared.

Research Support

Some of the information for grant applications or other research activities is also maintained in the system, including the bibliography database, research activities of the individual schools or CVs of teachers. It makes it easier to produce outputs the government and agencies require and helps with routine paperwork.

External Functions

WWW Based Email System

Besides on-line work, a need of off-line communication became very sound, as the new possibilities of cooperation between schools of the University appeared with open flow of information. At some schools, all students and teachers have email account while at some very few have access to it. That's why we've provided each used with an email account in the system. Of course, the user can set up forwarding of his/her email to another favourite address, no one is forced to read the email via WWW browser, while giving every person reliable email address.

Export and Import

The system is designed as modular and extensible. Besides the core CGI applications the system supports export and import of information in many ways.

  • Based on a XML (Extensible Markup Language) template, users can generate HTML, XML or CSV (Comma Separated Values) outputs for reports or brochures.
  • Should the teacher be more comfortable with vi editor or Excel spreadsheet, the grades can be entered externally and imported to the system via HTTP upload.
  • The printed output is either text based, or processed using TeX and dvips to PostScript output, resulting in high quality documents.
  • The system supports printing on printers connected to remote workstations, using the SMB protocol.
  • Remote procedure calls and Win32::OLE Perl module is used to convert proprietary document formats to readable ones.

Development Using Open Source and Commercial Software

The server runs on a four-processor Sun Ultra 450 with 2 GB of RAM. We chose Oracle as the relational database system, both for its reliability and scalability. The size of the data currently exceeds 3 GB. The ConText cartridge for Oracle enables full-text indexes which made it possible to give the users search capabilities on many data sources. The HTTP server is Apache with SSL (Secure Socket Layer) encryption and embedded Perl interpreter (mod_perl).

The application CGI scripts are written in Perl and can be run either as plain CGI scripts or directly in the Apache process. This duality allows rapid but dirty prototype to be built fast, with stable code being interpreted by the embedded interpreter. The applications access the relational database using the DBI (Database Interface) module with DBD::Oracle driver. This join of relational database and text processing scripting language proved to be very effective. The system currently consists of over 300 CGI scripts and over 20 local Perl modules, that encapsulate and unify often repeated operations. Of course, whenever possible we reuse the modules from CPAN (Comprehensive Perl Archive Network) which allows us to focus on our applications instead of reinventing the wheel and reimplementing common protocols (HTTP::Request) or formats (XML::Parser, Compress::Zlib).

Other software packages include q-mail and MySQL for the internal email system, Samba as the SMB printing protocol implementation, or GhostScript that renders output PostScript for non-PostScript printers.

We use open source software wherever it is reasonable. It is supported, documented, and usually well designed to cooperate with other software products. Perl is the ideal tool for gluing these pieces together in a very flexible yet effective way. The fact that the system was built as a combination of many specialized tools, instead of using one product that would claim to be able to do everything, is a big advantage. This way we have direct control over all parts and can fine-tune them to achieve high quality result.

The Future of the Information System

Currently, 75 percent of the original plan was finished during the first year of development. Internet with the WWW technology allowed the users to start using first applications two month after the development started, with continuous updates and new applications being added without a need of upgrades on client side. Previous three years experience with similar (but smaller) system on one of the University's schools, Faculty of Informatics, provided good background and ensured that a small team of professionals can build fine solution (Polis 1992, Tsichritzis 1999) that becomes a backbone of University's study administration.

The core team of developers has four persons, two designers and programmers and two doing the user support, all of them doing the work as only one of their assignments. Another 8 computer science students work on partial subprojects of the system.

We receive many useful comments and suggestions from our users, and many of them we are able to implement within hours. That increases the role of the Information System as a high quality information source, with strong emphasis on local access rights management and flexibility in solving user's requirements. Modular development that brought together high quality software products, often open source, makes this task possible.


Polis, R. I.: Managing Information Technology in Eastern Europe. Proceedings of SOFSEM'92. Brno (1992) 185--196
Tsichritzis, D.: The changing art of Computer Research. http://www.gmd.de/People/Dennis.Tsichritzis/changing.html (1999)