2. Selma Ayse Ozel / AWERProcedia Information Technology & Computer Science (2012) 715-720
the Internet to e o e the o ld’s largest source of information which is used by millions of people every day.
Rapidly changing technology and evolving market conditions have changed the education system as well. More
educational opportunities have emerged with fewer budgets. As a result of this, distance education tools have
increased.
Distance education, which is also called distance learning, has come into being for centuries however some
recent definitions have focused on it as a new development, involving advanced technology [1]. One of the best
definition of distance education has been provided by Mugridge [2], as it is a fo of edu atio i hi h the e
is normally a separation between teacher and learner; and thus one in which other means –the printed and
written word, the telephone, computer conferencing or teleconferencing, for example– are used to bridge the
ph si al gap . As the I te et has e o e the o ld’s la gest i fo atio sou e a d it allo s o u i atio
between millions of people all around the world, the Internet based distance education has become popular.
Moodle [3] is a free web application that allows educators to create effective online learning sites, and
students to follow these online sites easily and effectively. Because of these properties, Moodle has become one
of the most popular Web based distance education tools [3]. Moodle enables lecturers to share lecture notes, to
assign homework, to make quizzes, to create discussion forums, etc. easily and effectively over the Web. It gives
an opportunity to lecturers for online lesson delivery. Students use Moodle to participate classes from
everywhere, and they can submit their assignments easily to their lecturers.
As computer technology is used everywhere, computer programming courses have become popular. Today,
too many distance education programs, that include computer programming based courses, exist all over the
world. The aim of this study is to include an online compiler into the Moodle distance education tool for easy
grading of programming assignments that are submitted by students. In the current version of Moodle software,
an online compiler facility, that can satisfy our needs, does not exist [4]. In this study, we explain how our online
compiler works, and how much it helps to lecturers during grading of assignments.
2. Our Moodle-Based Web Site and Online Compiler Facility
Our Moodle-based Web site allows lecturers to load lecture notes and assignments, to do online exams, and
to compile the submitted programming assignments. Additionally, students can follow the course content, load
their homework, and discuss anything about the course with the instructor and other students using discussion
forums. These facilities, except the online compiler, are standard for Moodle system. In this study, we included
an online compiler into our Moodle-based Web site by modifying the source codes of the Moodle system. For
this purpose, we employed the GCC [5] system which is a package that is designed as a part of the GNU Project
and includes C, C++, Objective C, Fortran, Java, Ada, Modula-3, Pascal, and Go compilers.
Our Web site works as follows: after logging into our system [6] by entering username and password,
students should select the course that they will submit their homework. As an example, if a student chooses
Data “t u tu es Ve i Yapıla ı ou se f o the e olled ou se list, the ou se o te t is displa ed as sho i
Figure 1.
716
3. Selma Ayse Ozel / AWERProcedia Information Technology & Computer Science (2012) 715-720
Fig. 1. Content of the Data Structures Course and Selecting an Assignment
In Figure 1, students can submit thei ho e o k li ki g the Ho e o k Öde li k. Le tu e s a see
the su issio s a d a ha ge the o te t of the assig e t li ki g the Ho e o k Öde li k i Figu e
1. After clicking this link, a page similar to Figure 2 is displayed for lecturers.
Fig. 2. Content of the Homework (for Lecturers)
Whe the le tu e li ks o “ee su issio s öde gö de isi e ak li k o Figu e , the all
submissions done by the students for this assignment are listed as shown in Figure 3. In this figure, name (ad),
surname (soyad), and a link to the submitted source code file fo ea h stude t a e displa ed. If see the o te t
öde içe ik gö ü tüle utto is li ked the , the o te t of the sou e ode, the a e of the stude t ho
submitted the source code, and the date of submission are listed as shown in Figures 4 and 5.
717
4. Selma Ayse Ozel / AWERProcedia Information Technology & Computer Science (2012) 715-720
Fig. 3. List of the Submitted Assignments
At the e d of the o te t of the sou e ode, the e is a Co pile De le utto as sho i Figu e . If this
button is clicked then the C compiler of the GCC system is executed to compile the displayed source code as the
code is written in C language. If the source code requires some input that should be entered from the keyboard,
all the necessary input are written into a te t file efo eha d, a d this file is i luded usi g Add Input File
Gi iş Dos ası Ekle optio . If the sou e ode e ui es so e i put files to u , the are also included by using
Add Re o d File Ka ıt Dos ası Ekle optio i Figu e . Afte i ludi g the i put files, Co pile De le utto
is clicked and the results of the compilation process are shown as in Figure 6. According to Figure 6, compilation
is su essful, a d the ode a e u li ki g the Ru P og a ı Çalıştı utto o Figu e . If an error
occurs during the compilation, then an error message is written to the Web page in Figure 6. After the code is
executed, the results produced are displayed as shown in Figure 7, and the lecturer can check the results and
grade it easily.
Fig. 4. Content of the Selected Assignment
718
5. Selma Ayse Ozel / AWERProcedia Information Technology & Computer Science (2012) 715-720
Fig. 5. Content of the Selected Assignment - 2
Fig. 6. Compilation of the Selected Assignment
Fig. 7. Execution of the Selected Assignment
3. Experimental Evaluation
Our proposed method was tested on the Moodle Web page of Data Structures course in the Computer
Engineering Department of Çuku o a University [6]. Our Moodle Web site was run on the Linux server of our
Engineering Faculty. In this experiment, the effect of using our online C compiler on grading is tested. For this
purpose, 57 source files which are submitted by different students for the same assignment were compiled on
the server by using the GCC compiler under Moodle. The time needed for the compiling process is compared
with the time of the compiling submissions by lecturers (i.e., without using the online compiler). On the average,
one assignment takes 50 seconds with compiling under Moodle. The same assignment takes approximately 3
719
6. Selma Ayse Ozel / AWERProcedia Information Technology & Computer Science (2012) 715-720
minutes if our online compilation system is not used since in this case, lecturer first downloads the source code,
then opens the code and compiles using any C compiler on his/her local computer. For 57 source codes, it takes
2850 seconds, namely 47.5 minutes to compile and run assignments with online compiling on Moodle system.
On the other hand, all 57 submissions take 10260 seconds, namely 171 minutes with manual compilation. It
corresponds to 2 hours 51 minutes. All the calculations are done by assuming that lecturers do this process
without any intervention.
4. Conclusion
In this study an online compiler is included into our Moodle based distance education system to decrease the
time and effort needed for grading of the programming assignments. In the standard Moodle system, such
facility does not exist. We included GCC compiler system by updating the source codes of the Moodle system.
According to our experimental evaluation, online compiler provides considerable reduction in time required for
grading process of programming assignments
Acknowledgements
The authors thank to Alpe Şe ki for his help in the implementation of including input files for the compiler.
References
[1]. D. No th, Ha e Video o ’t T a el, Ca adia Busi ess, No. 68 4, (1993) 43.
[2]. I. Mugridge, Distance Education and the Teaching of Science, Impact of Science on Society, No. 41 4, (1991) 313-320.
[3]. Moodle System, 2011. available at http://moodle.org/.
[4]. Moodle Plugin Directory, 2011. available at http://moodle.org/plugins/
[5]. GCC System, 2011. available at http://gcc.gnu.org/.
[6]. Çuku o a U i e sit Depa t e t of Co pute E gi ee i g Moodle-based Distance Education Web Site, 2011. available at
http://mmf.cu.edu.tr/mkaya/moodle/
720