LINUX GAZETTE
[ Prev ][ Table of Contents ][ Front Page ][ Talkback ][ FAQ ][ Next ]

"Linux Gazette...making Linux just a little more fun!"


SAGU, Free Software for Academic Administration

By Cesar Brod


Cesar Brod

Cesar Brod got first involved with Linux in 1993 when he needed a "Unix" that he could use in his computer in order to emulate problems he was having in a System V based machine. Cesar has been in the computer industry since 1980, working for companies such as NCR, BASF, Tandem/Compaq and ACI, most of the time providing software and hardware system support for these companies' customers and working with pre-sales. In 1998 Cesar decided he had got enough of big cities and moved with his wife and three daughters back to a very small city in the south of Brazil, Arroio do Meio, where he had spent the best of his childhood in the late 60s. In 1999 Cesar proposed his services to Univates, a University in the neighboring city of Lajeado, where he is now the IT Manager and coordinates software development. Cesar is also one of the coordinators of the Free Software Project of the State of Rio Grande do Sul.

In 1999 I was hired by Univates to head their IT department. The major problem they had at the time was their proprietary-software based academic/administrative/financial system, which clearly would not be able to handle the data of the new students that would be enrolled in the coming term. The easy alternative would be to buy a proprietary solution, but the amount of customization that would be required and the prohibitive cost of the software forced our community-owned University to search for alternatives. Being a Linux user since 1993, I was already thinking we could build a new system, totally based on free software. A PHP tutorial at the 1999 LinuxWorld Expo, and some conversations with people already using PHP were the necessary information I needed to produce a development plan that was approved by the rectors.

In the beginning of 2000 we started the writing of SAGU, using the same ER (Entity-Relationship) model used by the old system. From the beginning, SAGU was conceived to have a web-based (browser) user interface, so the user would be platform independent - we already had a plan to migrate the user desktop to Linux. We started the development using the MySQL database server, and as in that time, MySQL didn't have transaction support, we migrated the development to PostgreSQL. As we didn't have previous experience with MySQL or PostgreSQL we decided SAGU should also be database independent, so we created a structure (actually, a PHP program) called common.php, which would handle database connections - if we ever needed to change to another database, the only program we would change was common.php. Later, after a visit by Mr. Rasmus Lerdorf to our University, we decided we would stick to PostgreSQL and created a new transactional/presentation base for SAGU and all of our free software projects, called MIOLO, but this is another article...

SAGU stands for Sistema Aberto de Gestão Unificada, which translates into English to Open Unified Management System. In a nutshell, SAGU automates all the relationships between the students and their educational institution, from the moment the student enrolls for the entrance exam until after he/she graduates.

SAGU went live on July 2000. The first production version was developed in less than six months by a group of three developers. SAGU subsystems try to mimic the functions of the educational institution, so, it has modules that handle the entrance exam (optical reading of the student answers, classification, classroom assignment) the enrollment process (which courses the student may choose for a given term, prerequisites), the academic data (grades, academic history), financial and accounting data (payments, credits, scholarship, interface with the banks and other accounting/ERP systems) and reporting tools.

Now, SAGU is being rewritten using Object Orientation techniques, and all of the database transactions and presentation logic is going to be handled by MIOLO (MIOLO is the Portuguese word for the inside part of a bread).

More information on SAGU, along with the source code, can be obtained at http://sagu.codigoaberto.org.br . Unfortunately, for English readers (most of you, I believe) most of the information is in Portuguese. There is an effort on porting it to English, being coordinated by Kaziro in Sweden, in order to have SAGU working for some schools in South Africa - isn't it the true beauty of Free Software? Kaziro can be contacted at kaziro@spray.se .  If you are in the educational area, you may also be interested in knowing our GNUTECA project, which is being alpha-tested in one of our libraries. GNUTECA is a free software for library administration, including materials catalog, loan and collaboration system. It is compatible with library standards (MARC) and provides a good migration path for users of the CDS/ISIS system to the free software world. GNUTECA info can be found at http://gnuteca.codigoaberto.org.br.

Cesar will be giving a talk about SAGU at the Linux Showcase, 5 November 2001, at 1:30pm. At 8pm, he will be hosting a BoF session on Brazilian free software. See http://www.linuxshowcase.org/


Copyright © 2001, Cesar Brod.
Copying license http://www.linuxgazette.net/copying.html
Published in Issue 72 of Linux Gazette, November 2001

[ Prev ][ Table of Contents ][ Front Page ][ Talkback ][ FAQ ][ Next ]