digilib@itb.ac.id +62 812 2508 8800

2008 TA PP RONNY 1-COVER.pdf
PUBLIC Ena Sukmana

2008 TA PP RONNY 1-BAB 1.pdf
PUBLIC Ena Sukmana

2008 TA PP RONNY 1-BAB 2.pdf
PUBLIC Ena Sukmana

2008 TA PP RONNY 1-BAB 3.pdf
PUBLIC Ena Sukmana

2008 TA PP RONNY 1-BAB 4.pdf
PUBLIC Ena Sukmana

2008 TA PP RONNY 1-BAB 5.pdf
PUBLIC Ena Sukmana

2008 TA PP RONNY 1-BAB 6.pdf
PUBLIC Ena Sukmana

2008 TA PP RONNY 1-PUSTAKA.pdf
PUBLIC Ena Sukmana

Jumlah mahasiswa peserta mata kuliah pemrograman dasar pada Program Studi Sarjana Teknik Informatika ITB (S1-IF-ITB) yang mencapai lebih dari 300 mahasiswa sejak tahun 2006 telah membuat proses penilaian tugas program mahasiswa sangat menghabiskan sumber daya. Dengan demikian, otomasi penilaian terhadap source code serahan tugas siswa menjadi kebutuhan penting dalam proses pengajaran pemrograman. Dengan penilai otomatis (autograder), penilaian dapat dilakukan dengan lebih cepat dan objektif. Dalam Tugas Akhir ini, akan dibuat suatu autograder diberi nama Phobos yang dirancang untuk mampu menilai secara blackbox dan whitebox. Penilaian blackbox dilakukan terhadap eksekusi program untuk menilai ketepatan program (persentase kasus uji benar) dan efisiensi (rata-rata panjang eksekusi). Penilaian whitebox dilakukan dengan memproses source code untuk menilai aspek kompleksitas solusi (SLoC, kompleksitas siklomatik) dan ketaatan pada standar tipografi (rata-rata jumlah baris dan panjang komentar, rata-rata panjang nama identifier, dan ketepatan indentasi). Bahasa pemrograman yang digunakan pada lingkungan S1-IF-ITB beragam, sehingga proses penilaian dalam Phobos juga dirancang untuk bersifat generik, yaitu dapat menangani lebih dari satu bahasa pemrograman dan dapat dikembangkan untuk menangani bahasa pemrograman lain di masa mendatang. Dalam pengembangannya kini, Phobos telah mampu menangani source code dalam bahasa Pascal dan Lisp. Penanganan source code pada Phobos dilakukan dengan interpretasi menggunakan modul interpreter yang telah dibangun secara khusus dalam Tugas Akhir ini untuk proses penilaian. Interpreter Phobos dirancang secara khusus dengan memperhatikan aspek-aspek pengajaran pemrograman, yaitu untuk mendeteksi kesalahan seperti infinite loop dan variabel yang tidak diinisiasi. Interpreter Phobos dirancang secara moduler agar dapat juga digunakan sebagai library untuk sistem lain atau sebagai alat bantu latihan pemrograman mandiri. Phobos dikembangkan dengan antarmuka berbasis web menggunakan platform PHP agar diperoleh aksesibilitas dan integrasi yang mudah terhadap Learning Management System milestone yang telah digunakan di lingkungan lab programming S1-IF-ITB. Autograder engine dan interpreter Phobos dikembangkan menggunakan Java dengan generator parser Antlr sebagai library untuk memperoleh ekstensibilitas and independensi terhadap platform. Phobos telah diuji untuk menilai source code serahan tugas yang serupa dengan tugas pemrograman dalam mata kuliah pemrograman dasar pada S1-IF-ITB.