The open source educational model - Introduction
The aforementioned problems associated with the current CSSE educational model in Australian universities beg the question: what is the better alternative?
In recent years, OSSD has seen spectacular successes, evolving from a seemingly idealistic philosophy driving ”home-grown” projects to an established and successful development paradigm that produces high quality software such as the Linux OS kernel, the Apache webserver, BIND, MySQL, Perl, PHP etc. OSSD, as claimed by OHara and Kay [JS03], can serve as ”a channel, method and technology to learn and teach computer science”. OSSD has the potential to expand group work beyond the classroom to include much larger projects and more distributed teams, as well as introducing students to larger science/engineering communities. We see this as the main benefit that this software development paradigm has over the current educational model in CSSE courses at Australian universities. Hence, our main goal is to derive an educational model from OSSD philosophy and practices to overcome the limitations of the existing model, in order to produce high quality professionals that meet the employers expectations.
Eric S. Raymond, president of the Open Source Initiatives 1 , wrote a classic article on OSS: ”The Cathedral and the Bazaar” [S.00]. In this article, Raymond summarised his OSSD experiences into 19 lessons for software programmers, which have become the recommended practices of this paradigm. These lessons, when applied in a university environment, will be very beneficial to CSSE education. Faber [D.02] attempts to use some of Raymonds recommendations as a basis to form an open source educational model for university CSSE courses that consist of the following practices:
- Problem-based learning
- Working through texts, working through drafts
- Encouraging risk-taking, inquisitiveness and invention
- Handing off projects and mentoring new students
- User testing
- Converting drafts to final products
- Collaborative development
- Rewarding and building from failure
Although Fabers proposed model has most advantages of OSS education, its structure might be ineffective and confusing for those who are used to the conventional model, e.g the current CSSE educators and students. Since this demographic is familiar with the SDLC, with which both OSSD and proprietary software development paradigms comply, we will present our proposed model in phases corresponding to the SDLC to make comparisons between the two models more intuitive.
Making projects open-source
The core requirement to implement our proposed educational model at universities is to make student projects open-source. Documentation, codes and even binaries of such projects can be put under a public license that preserves the open-source definitions, which can be based on an existing license such as the GNU GPL, LGPL, MPL, etc. They can be organised in an online repository similar to sourceforge.net, the largest repository for open-source developers. The benefits of this are tremendeous, including:
- Providing a great knowledge resource for CSSE students
- Maintaining student projects, preserving good ideas and implementations
- Inviting contributions from experienced academics from other institutions or industry developers.
- Creating work experience reference for graduates resumes.
- Establishing a strong CSSE community
- Providing the general public with free software products.
We will elaborate on those in the upcoming sections.
- « Previous: Current educational model
- » Next: Starting a project, requirements analysis and design