By automating the grading of the student's task with GitHub and Travis CI, advantages such as improvement in performance and reduction in time required for scoring can be obtained



By using GitHub's educational support tool " GitHub Classroom " and the continuing integration tool " Travis CI " that can automatically move scoring programs in cooperation with GitHub, the period from submission of student work to feedback Shane Wilson 's experience story that the student' s grades have been improved by shortening the time required for grading evaluation by shortening it is published on the official blog of GitHub.

How GitHub Classroom and Travis CI improved students' grades - The GitHub Blog
https://github.blog/2019-02-12-how-github-classroom-and-travis-ci-improved-students-grades/

Shane seems to have introduced GitHub Classroom and Travis CI in C ++ Object Oriented Programming class at Ulster University. Mr. Wilson firstly prepared a repository as a template in GitHub Classroom and prepared "README (instruction)" "empty C ++ class" "test" there. The test is a code for checking whether the student's code properly performs a specific action. When the due date comes, the test is executed on the code written by the student, and the partial points are decided by the number of the tests which can be cleared properly It is a mechanism to give.

In addition, it seems that in order to make a mechanism for feedback at the timing when the student issues a problem, I created a file such as ".travis.yml" as Travis CI setting file in the above repository. The contents of ".travis.yml" are as follows.

[code] language: cpp

compiler:
- gcc

script:
- make test [/ code]


By linking with Travis CI, Travis CI runs at the time students upload codes or create pull requests to the repository, the set codes are automatically executed and fed back to students. The figure is as follows.



According to Ms. Shane, the student seems to be grateful that feedback is early. Students are able to deepen their understanding of the code as they can know the success / failure as soon as the test is executed each time the code is written. Shane also says that if the test fails, it is good to give out information about "what is likely to be wrong".

Furthermore, it is stated that by using the above-mentioned automatic scoring mechanism, the student's overall performance has improved greatly. In the past, only 51% of the students passed the first assignment, but in the system using GitHub Classroom and Travis CI the passing rate of the assignment was over 87%. In addition, it seems that the satisfaction level of the student has also increased.

Also, Mr. Shane says that the time it takes to score gradually decreases. In the past it took 4 weeks to 6 weeks to review and evaluate the student's code, but I was able to reduce it from a few days to a week by introducing an automatic scoring mechanism.

Because GitHub also provides student activity information, you can also gain new opportunities to help students. For example, Shane said that students struggling with the task found that they did not upload codes until the deadline. Besides, you can get information on what day of the week and when the code is uploaded frequently.



Although this automatic score system has problems such as students needing to learn Git and Travis CI can not detect all bugs, in addition to improving grades, it is easy to respond to the increase in the number of students Shane has concluded that there are many things that can be obtained, etc., and it is worth building the structure.

in Note,   Software,   Web Service, Posted by log1d_ts