I have recently joined a university where we have set-up their IT infrastructure using open source software (OSS) technologies. Some of these are described below:
Website: We are using Joomla deployed on Linux as the base platform for our website. We have enhanced the out-of-the-box version of Joomla with a USD 100 template from ICETheme. This has cut away the effort required to customize the look-and-feel of the website. We have also extended the feature set of Joomla using third-party plugins.
All the content of our website is now managed through the Joomla administration panel. This has drastically cut down the effort required to update & maintain the content.
Directory Server: We are using OpenDJ (LDAP technology) with GOsa for the user interface and Linux as the operating system for our directory services. All users of our IT services have their accounts registered in the directory server.
The directory server provides a single point of authentication for most of our applications. A user simply has to update their password on the directory server and their password is updated on the associated applications.
Timetabling Server: We are using Unitime to create a schedule for all the classes held in the university. We define the lectures and labs that are to be held, set of students (student-section) that are grouped together and are common for a given set of classes, teachers assigned to each lecture and lab, their preferences and global university preferences (such as a time-slot where we wish to avoid holding classes across the university) along with the number of class rooms that are available.
Once this data is fed into the application it generates a timetable that has no clashes for a given instructor, classroom and student-section.
Learning Management System: We are using Moodle for our Learning Management System. All students, teachers, courses are first created in our directory server from where Moodle pulls their data.
Once a course is created in Moodle teachers can share their lectures, take quizzes, conduct assignments and upload grades for the students registered in that course.
In addition to the out-of-the-box feature-set of Moodle we have enhanced it by integrating the following third-party plugins:
- BigBlueButton: This enables us to conduct virtual classes via video-conferencing making each course a platform for a virtual class room.
- Virtual Programming Lab: This extends Moodle by embedding a compiler in it for a number of programming languages allowing the teacher to conduct assignments, quizzes and exams that involve evaluation of source code.