Abstrak
Pemrograman dasar merupakan ilmu yang wajib dikuasai oleh setiap mahasiswa FILKOM, namun
berdasarkan hasil kuesioner didapatkan bahwa 76% mahasiswa FILKOM lebih tertarik pada mata kuliah
selain pemrograman dasar. Terdapat beberapa hal yang menyebabkan mahasiswa menjadi kurang
tertarik pada mata kuliah pemrograman dasar, terbatasnya sumber materi yang bisa diperoleh dan teknik
pembelajaran yang kurang bervariasi. Maka pada penelitian ini akan mengembangkan sebuah sistem
pembelajaran pemrograman java yang atraktif berbasis website dengan mengadaptasi metode
gamification dan IOE-Behavior. Metode gamification diterapkan pada sistem pembelajaran ini melalui
beberapa fitur yaitu, fitur yang memungkinkan pengguna satu menantang pengguna lain (challenge),
fitur penghargaan bagi pengguna yang mencapai kondisi tertentu, fitur level dan experience point.
Sedangkan metode IOE-Behavior diterapkan pada fitur pemeriksaan kode java yang memungkinkan
sistem untuk memeriksa kode java secara otomatis dengan membandingkan input yang dimasukan dan
output yang dihasilkan. Sistem ini dikembangkan dengan menggunakan metode SDLC dengan model
waterfall. Pada tahap akhir sistem ini diuji dengan menggunakan metode black-box testing dan white-
box testing dengan hasil pengujian sebesar 100% valid.
Kata kunci: sistem pembelajaran, gamification, ioe-behavior, waterfall, pemrograman java
Abstract
Basic programming is a knowledge that must be mastered by every FILKOM student, but based on the
result of the questionnaire found that 76% of FILKOM students are more interested in other subject.
There are several things that cause students to be less interested in the basic programming courses, the
limited source of material that can be obtained and learning techniques that are less varied. Therefore,
this research will develop an attractive web-based java learning system by adapting the gamification
and IOE-Behavior methods. Gamification method wass applied to this learning system through several
features, feature that allows user one challenge other user (challenge), reward feature for user reaching
certain condition, level feature and experience point. While the IOE-Behavior method was applied to
the java code check feature that allows the system to check the java code automatically by comparing
input and output results. This system was developed using SDLC method with waterfall model. In the
final stages the system was tested using black-box testing and white-box testing methods with 100%
valid test results.
Keywords: learning management system, gamification ioe-behavior, waterfall, java programming
IF p not null
temp_case as new array
explode p as case
FOREACH case as c
IF c not null
push c to array temp_case
END IF
END FOREACH
push temp_case to array test_case
END IF
END FOREACH
data.param_case = question.param_case
END IF
key_out as string
user_out as string
FOR i=0 until 5
randoming as new array
key_proc = proc_open java key_file with key_pipes as pipe
IF is_resource = key_proc
IF question.param_type is random
FOR j=0 until question.param_count Gambar 3. Rancangan Antarmuka Menambah
fwrite key_pipes.0 with test_case.i.j Pertanyaan
END FOR
ELSE
FOR j=0 until question.param_count Rancangan antarmuka pengguna untuk
CALL FUNCTION random_value as randomval
push randomval to array randoming halaman mengajukan tantangan dapat dilihat
fwrite key_pipes.0 with randomval melalui Gambar 4, halaman tersebut meminta
END FOR
END IF konfirmasi pengguna dalam mengajukan
fclose keypipes.0 tantangan kepada pengguna lain.
key_out = stream_get_contents from key_pipes.1
delete white spaces on key_out
fclcose key_pipes.1
END IF
user_proc = proc_open java user_file with user_pipes as pipe
IF is_resource = user_proc
IF question.param_type is random
FOR j=0 until question.param_count
fwrite user_pipes.0 with test_case.i.j
END FOR
ELSE
FOR j=0 until question.param_count
fwrite user_pipes.0 with randoming.j
END FOR
END IF
fclose user_pipes.0
user_out = stream_get_contents from user_pipes.1
user_error = stream_get_contents from user_pipes.2
delete white spaces on user_out
fclcose user_pipes.1
END IF Gambar 4. Rancangan Antarmuka Halaman
add user_out to data.result Mengajukan Tantangan
add user_error to data.error
PRINT user_out and key_out Halaman mengerjakan latihan materi yang
IF key_out = user_out
add "True" to data.answer terdapat pada Gambar 5 menampilkan
ELSE penjelasan soal beserta form source code yang
add "False" to data.answer
END IF akan dimasukkan oleh aktor yang digunakan
END FOR untuk menjawab dan tombol “submit answer”
DB insert to exercise with array data
END test_java digunakan untuk memastikan jawaban yang
dimasukkan dengan benar.
3.2.2. Perancangan Antarmuka
Perancangan antarmuka pengguna
merupakan proses pembuatan rancangan
tampilan sistem yang akan dibangun agar
pengguna dapat berinteraksi dengan sistem
pembelajaran. Gambar 3 merupakan rancangan
antarmuka pengguna untuk halaman menambah
pertanyaan, pada halaman ini pengguna dapat
melakukan penambahan pertanyaan baru untuk
sistem pembelajaran, selain itu pengguna juga
dapat melakukan proses percobaan kode java.
Fakultas Ilmu Komputer, Universitas Brawijaya
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer 1497
}else{
for($j=0; $j<$question['param_count'];$j++){
$randoming = $this->random_value();
fwrite($key_pipes[0], $randoming."\n");
echo $randoming;
$data['param_case'] .= $randoming .
"!!**??CASE??**!!";
if (($j+1)==$question['param_count']) {
echo "<br><hr>"; }else{ echo "<br>"; } } }
$data['param_case'] .= "!!**??PARAM??**!!";
fclose($key_pipes[0]);
$key_out = stream_get_contents($key_pipes[1]);
$error = stream_get_contents($key_pipes[2]);
echo $key_out."<br><hr>"; echo $error."<br><hr>";
$data['result'] .= $key_out . "!!**??RESULT??**!!";
$data['error'] .= $error . "!!**??ERROR??**!!";
fclose($key_pipes[2]); fclose($key_pipes[1]); } }
$this->m_question->add_log($data); }
Gambar 5. Rancangan Antarmuka Halaman
Mengerjakan Latihan Materi 3.3.2. Implementasi Antarmuka
Berikut ini adalah hasil implementasi dari
3.3. Implementasi
perancangan antarmuka yang telah dilakukan pada
Tahapan implementasi yang dilakukan tahap sebelumnya. Gambar 6 merupakan
terdiri dari penjelasan tentang spesifikasi implementasi antarmuka pada halaman menambah
lingkungan pengembangan sistem, batasan- pertanyaan, Gambar 7 adalah hasil implementasi
batasan implementasi, implementasi algoritma, antarmuka pada halaman mengajukan tantangan,
sedangkan Gambar 8 adalah hasil implementasi
implementasi basis data dan implementasi
antarmuka pada halaman mengerjakan latihan materi.
antarmuka pengguna.
Menjalankan compile
2 7 7 1 2
kode java
Mengerjakan latihan
7 24 29 6 7
materi
4. KESIMPULAN
Kesimpulan yang dapat diambil dari
seluruh proses yang telah dilakukan dalam
penelitian ini adalah sebagai berikut:
1. Hasil perancangan dari penelitian yang
dilakukan adalah sebuah website yang
menerapkan metode gamification dan IOE-
Behavior dengan hasil pengujian black-box
dan white-box 100% valid.
2. Hasil penerapan metode gamification pada
sistem yaitu fitur level setiap member yang
akan bertambah sesuai dengan
meningkatnya exp, penghargaan yang
diberikan kepada member ketika mencapai
kondisi tertentu, serta fitur yang
memungkinkan member untuk menantang
member lain di dalam sistem pembelajaran
pemrograman java.
3. Hasil penerapan metode IOE-Behavior pada
sistem pembelajaran pemrograman java
adalah sistem dapat memeriksa kode sumber
java yang dimasukan oleh member
dibandingkan dengan kunci kode sumber
java yang telah tersedia didalam sistem.
5. DAFTAR PUSTAKA
SOMMERVILE, IAN. 2011. Software
Engineering. Ninth Edition. New York:
Addison – Wesley.
ELVA, ROCHELLA. 2012. ”Semantic Clone
Detection Method IOE-Behavior”.
Department of EECS, University of
Central Florida.
ROMDHONI, WIBOWO. 2014. Penerapan
Gamification Pada Aplikasi Interaktif
Pembelajaran SQL Berbasis Web.
Institut Teknologi Sepuluh November .
Surabaya.