BAB 5
IMPLEMENTASI DAN PENGUJIAN
Setelah melalui tahap analisis dan perancangan, tahap selanjutnya untuk pengembangan perangkat lunak adalah tahap implementasi dan pengujian sistem. Untuk mengetahui
apakah implementasi perangkat lunak tersebut berhasil atau tidak, perlu dilakukan pengujian. Berikut hasil implementasi dan pengujian aplikasi yang telah dibangun.
5.1. Implementasi Sistem
Sesuai dengan hasil analisis dan perancangan sistem yang telah dilakukan, maka dibuatlah implementasi perancangan menjadi sistem perekomendasian soal-soal
platform UVa Online Judge dengan teknik recommendation engine ke dalam bentuk program.
5.1.1. Spesifikasi perangkat keras dan perangkat lunak yang digunakan
Penulis menggunakan kombinasi perangkat keras pengujian dataset dengan spesifikasi: 1.
Processor Server Intel Xeon 3.1 GHz 2.
Memory RAM 8 GB 3.
Kapasitas Harddisk 1 TB Spesifikasi perangkat lunak yang digunakan untuk pengkodean:
1. Windows 8
2. Notepad++ v6.5.1
3. C .NET
Universitas Sumatera Utara
Spesifikasi perangkat lunak yang digunakan untuk host datasets: 1.
Ubuntu Linux Server 14.04 LTS 2.
Apache Web Server, MySQL, PHP 5.1.2.
Tampilan Utama Menu Problem Category Halaman menu problems category ini menampilkan soal-soal yang ada pada arsip UVa
online judge yang sudah dikategorikan. Tampilannya dapat dilihat pada gambar 4.1.
Gambar 5.1 Tampilan halaman menu problem category
5.1.3. Implementasi rekomendasi next-solved problems soal-soal kompetisi
Setelah melalui tahapan perancangan sistem, maka data pengguna dan data soal-soal akan diproses. Pemrosesan data setiap pengguna ini berupa data keseluruhan
submissions yang pernah dilakukan terhadap soal yang tersedia di platform UVa online judge. Sedangkan data soal-soal berupa data semua soal yang tersedia berupa deskripsi
dan berkas soal dalam bentuk PDF dan HTML, juga keseluruhan submissions seluruh pengguna terdaftar terhadap soal tertentu. Langkah-langkah yang dilakukan dapat
dilihat pada bagian 3.2 spesifik ke subbagian Problemsets Processing dan User’s
Submissions Statistics.
Universitas Sumatera Utara
5.1.4. Tampilan Menu Profil Pengguna
Gambar 5.2 Tampilan menu profiles pengguna dan pengguna lain
Dari halaman menu utama, pengguna dapat memilih menu Profiles untuk melihat profil pengguna secara detail. Di menu ini pengguna dapat melihat detail dirinya sendiri
maupun pengguna lain yang sudah ditambahkan sebelumnya. Fitur yang ada di menu ini antara lain, detail submissions yang pernah dibuat, progress tracker bertujuan untuk
melihat preferensi total soal yang pernah dicoba, soal yang sudah pernah diselesaikan. Tampilannya dapat dilihat pada Gambar 5.2.
5.1.5. Tampilan menu live submissions dari semua pengguna
Gambar 5.3 Tampilan menu live submissions dari semua pengguna
Universitas Sumatera Utara
Pada menu ini, pengguna dapat melihat submissions dari seluruh pengguna secara live events. Artinya, setiap solusi yang dikumpulkan submit di platform UVa akan secara
langsung tampil di menu ini. Jadi, ketika kita sudah mengumpulkan solusi dari satu soal yang sedang kita coba, status submissions akan tampil sesegera mungkin dengan status
kode, waktu eksekusi, waktu pengumpulan, dan informasi lainnya. Tampilannya dapat dilihat pada Gambar 5.3.
5.1.6. Tampilan pengelompokan next-solved problems berdasarkan volume soal dan
book chapter
Gambar 5.4 Tampilan next-solved problems berdasarkan pengelompokan
soal berdasarkan volume soal dan book chapter
Pada Gambar 5.4, pengguna dapat memilih soal-soal yang dikelompokkan berdasarkan beberapa kategori:
1. Kategori berdasarkan volume soal, setiap volume rata-rata berisi 100 soal,
dengan jumlah soal yang terindeks sebanyak 4526 soal. 2.
Kategori buku competitive programming 1
st
Edition tahun 2010, dengan jumlah soal terindeks sebanyak 550 soal.
Universitas Sumatera Utara
3. Kategori buku competitive programming 2
nd
Edition tahun 2011, dengan jumlah soal terindeks sebanyak 1298 soal.
4. Kategori buku competitive programming 3
rd
Edition tahun 2013, dengan jumlah soal terindeks sebanyak 1655 soal.
5.1.7. Tampilan pengelompokan next-solved problems berdasarkan volume soal dan
book chapter serta terurut berdasarkan distinct accepted user dacu
Gambar 5.5 Tampilan pengelompokan next-solved berdasarkan volume,
chapter book, dan distinct accepted users
Pada Gambar 5.5, pengguna dapat memilih soal berdasarkan kategori soal yang sudah disediakan dan mengurutkannya berdasarkan nilai dacu. Semakin tinggi nilai dacu
suatu soal berarti semakin direkomendasikan soal tersebut untuk diselesaikan terlebih dahulu. Atau bisa juga dengan memersonalisasikan kategori soal dengan fokus pada
kategori teknik tertentu, misal, pengguna ingin memokuskan diri pada teknik dynamic programming atau pada soal-soal string processing.
5.1.8. Tampilan next-solved problems berdasarkan Competitive Programming 3
rd
Edition dan terutut berdasarkan dacu Pada Gambar 5.6, menu all problems ini menampilkan keseluruhan soal yang
sebelumnya sudah dipilih di kategori competitive programming 3 – chapter book. Di
menu ini keseluruhan soal yang berjumlah 1655 dan diindeks berdasarkan kategori
Universitas Sumatera Utara
competitive programming 3
rd
edition ditampilkan ke layar. Tampilan soal terurut ini menjadi rekomendasi ke pengguna untuk memilih soal yang selanjutnya diselesaikan
saat berlatih next-solved problems.
Gambar 5.6 Tampilan next-solved problems berdasarkan Competitive
Programming 3
rd
Edition dan terutut berdasarkan nilai dacu
5.2. Pengujian Sistem