knowledge base in a specific subject - in some sense,
a counterpart of the classic public libraries that help
students to increase independence and activity in the
educational process as well as to individualize it.
Also, open source projects provide wide variety of
choices of technical aspects such as programming
languages, development technologies and
methodologies even within a specific topic because,
usually, there are a number of different competing
projects that use different technical approaches for
implementing the same functionality or a product of
the same kind. This variety and freedom of choice
improve motivation and responsibility of students
quite in line with the principles of open education.
3 PRACTICAL OPEN
EDUCATION IN SOFTWARE
ENGINEERING
In the recent years, open-source software
development projects became an important part of
the educational process at the System Programming
sub-faculties of the two Russian top-ranked
universities - Moscow State University and Moscow
Institute of Physics and Technology (Phystech).
Under the established collaboration schema, all
specialized classes and practical sessions at these
sub-faculties are driven by employees of the Institute
for System Programming of the Russian Academy of
Sciences (ISPRAS), the leading Russian research &
development government organization in the field of
software engineering. High-year students come to
ISPRAS premises to perform their research and
development practice and learn special courses
while taking all the other general classes at their
“alma-mateur”.
A few years ago we [ISPRAS] decided to
introduce a requirement for students to participate in
at least one public open source project that they can
choose at their own. Also, we changed classical
system of theoretical software engineering classes
and practical sessions to a more flexible system
under the principles of open education. Each student
is assigned a personal mentor from employees of
ISPRAS who keeps in close touch with the student,
answers his/her personal questions and advises
useful informational sources. One mentor may serve
no more than 4 students. Participation in the real life
open-source projects supplements theoretical
courses and classic practical sessions that are based
on pre-selected model examples and tasks. The main
new stages of the new system include:
Choice of an open-source development project.
The project must have a public infrastructure
(usually at http://sourceforge.net) and be active
(that is there should be on-going developments).
Students may also join any open-source projects
that are performed at ISPRAS itself. Students
evaluate various projects by themselves, mentors
just check if the final choice meets all the
necessary requirements.
Acquaintance with the project. Students study
their selected projects on their own with the
focus on those aspects important for their
personal educational path and for the specific
courses at the sub-faculty. At the end of this
phase, students make presentations (more
correctly seminars or defenses) of their projects
to the classmates and mentors where they can be
asked any questions by the audience. Mentors
ensure that the students can make
correspondence between the theoretical
information taken from courses with specific
practical aspects of their projects by proper
questions. Additionally, students are asked to
prepare written reports with a defined structure.
Practical tasks. Mentors prepare a number of
tasks for students with some points assigned to
each task. Students may choose a number of
tasks to do to reach a defined target in terms of
these points. Students perform regular
presentations of their work similarly to the
presentations at the acquaintance phase.
Usually, students do particular improvements in
their projects such as analysis of existing and
elaboration of new specific requirements for the
project’s product, performing architectural design of
their possible implementation and finally
implementing them in code, testing and writing
corresponding documentation. The criterion for
success of such activities is inclusion of the changes
and improvements into the real project mainline.
Mentors encourage students to directly collaborate
with the real project team and use feedback of the
team as indicators of successful direction of their
work. This strongly improves students’ motivation
as the feedback from external parties is perceived by
students as more objective than by the internal
people.
However, participation in the real open-source
projects alone is not enough for implementing all the
principles of open education. It is the continuous
comparison of the practice in the project work with
the theory being studied in parallel that drives the
effective educational process. So it is this symbiosis
CREATING OPEN EDUCATIONAL ENVIRONMENT BASED ON OPEN-SOURCE SOFTWARE PROJECTS
237