#TITLE_ALTERNATIVE#
The number of students at the ITB Informatics Engineering Undergraduate Program (S1-IF-ITB) basic programming classes which had exceeded 300 in 2006 has made the assignment grading process very resource intensive. Therefore, automation of source code grading has become an important requirement. Usin...
Saved in:
Main Author: | |
---|---|
Format: | Final Project |
Language: | Indonesia |
Online Access: | https://digilib.itb.ac.id/gdl/view/9149 |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Institution: | Institut Teknologi Bandung |
Language: | Indonesia |
Summary: | The number of students at the ITB Informatics Engineering Undergraduate Program (S1-IF-ITB) basic programming classes which had exceeded 300 in 2006 has made the assignment grading process very resource intensive. Therefore, automation of source code grading has become an important requirement. Using autograder, grading process can be done faster and more objectively. In this final project, an autograder named Phobos will be developed to be capable of grading by blackbox methods and whitebox methods. Blackbox marking is performed on program execution to grade program correctness (percentage of correct test cases) and efficiency (average execution length). Whitebox marking is performed by processing the source code to grade solution complexity (SLoC, cyclomatic complexity) and compliance to typographic standards (average comment lines and length, average identifier name length and indentation check). Since programming languages used in S1-IF-ITB varies, Phobos' marking process is designed to be generic, capable of handling multiple languages and extensible, can easily be developed to handle new languages in the future. In the current development, the languages handled on Phobos are Lisp and Pascal. Source code handling on Phobos is done using a custom built interpreter which addresses programming education aspects, which are infinite loop detection and uninitialized variables. These interpreters had also been modularly designed with the capability to be used as a library to other systems or as an independent programming teaching tool. Phobos is developed with a PHP web interface to achieve accessibility and easy integration to the Learning Management System milestone used in S1-IF-ITB environment. The Phobos autograder engine and interpreters are developed in Java using Antlr parser generator as a library to achieve extensibility and platform independence. Phobos has successfully been tested to grade source codes similar to assignments given in elementary programming courses on Informatics Engineering study program. |
---|