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

Latihan pemrograman merupakan salah satu bagian proses pembelajaran pemrograman. Untuk melakukan evaluasi terhadap latihan pemrograman, para pendidik umumnya menggunakan sistem penilaian otomatis yang dilakukan dengan teknik black box testing. Evaluasi dengan teknik tersebut dapat menguji perilaku dari sebuah program dan dapat diimplementasi dengan mudah. Namun, terdapat kelemahan berupa sedikitnya ruang kesalahan yang diberikan. Teknik white box testing merupakan alternatif yang dapat digunakan sebagai sistem penilaian otomatis yang lebih toleran atas kesalahan. Salah satu aspek yang dapat digunakan dalam penilaian adalah struktur alur logika dari program yang dapat direpresentasikan sebagai control flow graph. Metode penilaian otomatis seperti ini sudah pernah diajukan sebelumnya, namun masih terdapat kekurangan seperti akurasinya yang masih bisa ditingkatkan, ataupun sistem penilaian masih belum siap digunakan sistem capstone tugas akhir. Dalam tugas akhir ini, dilakukan pembangunan metode untuk mengatasi variasi struktur program serta metode penilaian berbasis struktur control flow graph dengan menghitung graph edit distance menggunakan pendekatan eksak maupun pendekatan aproksimasi dengan juga mencoba memanfaatkan informasi semantik dari ekspresi program. Hasil implementasi merupakan sistem penilaian otomatis dan web service yang bisa digunakan sistem capstone secara langsung. Hasil pengujian menunjukan bahwa hasil metode penilaian otomatis memiliki peningkatan akurasi dibanding metode (Sendjaja dkk., 2021) dalam mendekati nilai manual dengan melihat korelasi, mean absolute error, simpangan baku absolute error, rata-rata perbedaan nilai, dan simpangan baku perbedaan nilai dibandingkan dengan hasil penilaian manual.