-
1
Perancangan Sistem Informasi Lomba Menembak Metal
Silhouette Berbasis Web Menggunakan Framework
Codeigniter
(Studi Kasus : Salatiga Hunting Community)
Artikel Ilmiah
Diajukan kepada
Fakultas Teknologi Informasi
untuk memperoleh Gelar Sarjana Komputer
Peneliti: Aditya Mufti Kurniawan (672014062)
Nina Setiyawati, S.Kom., M.Cs.
Program Studi Teknik Informatika
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
Oktober 2018
-
2
-
3
-
4
-
5
-
6
-
7
-
8
1. Pendahuluan
Olahraga menembak merupakan salah satu cabang olahraga yang
berada
dibawah naungan Komite Olahraga Nasional Indonesia (KONI).
Olahraga
menembak mulai menjadi cabang olahraga yang diresmikan pada
tahun 1950.
Kemudian pada tanggal 17 Juli 1960 organiasasi yang telah
menaungi olahraga
menembak adalah dengan dibentuknya nama Persatuan Menembak
Sasaran dan
Berburu Seluruh Indonesia (PERBAKIN) [1].
Pada tahun 2016 telah berdiri klub olahraga menembak di Salatiga
yang
dinamakan Salatiga Hunting Community. Salatiga Hunting Community
itu sendiri
adalah klub olahraga menembak yang berfokus pada bidang berburu
dan tembak
metal silhouette dengan menggunakan unit senapan angin (air
rifle). Klub ini
merupakan salah satu klub yang berada dibawah naungan PERBAKIN
dan
KONI. Selain itu, Salatiga Hunting Community juga telah
dikukuhkan oleh
Pengurus Cabang (Pengcab) PERBAKIN Kota Salatiga melalui Surat
Keputusan
Nomor : 01/SKCP/PCP/Sal/V/2016.
Dalam agenda tahunan, klub Salatiga Hunting Community bersama
KONI
Kota Salatiga telah memiliki peranan penting dengan menjadi juri
perlombaan
menembak metal silhouette di Kota Salatiga. Salah satu
kekurangan yang ada di
perlombaan tersebut adalah manajemen perlombaan yang
penilaiannya masih
ditulis tangan dan pengumpulan rekap nilai masih menggunakan
Microsoft Excel
sehingga mengakibatkan belum adanya distribusi informasi yang
efisien mengenai
data perlombaan berupa kelas pertandingan, waktu pelaksanaan,
biaya
perlombaan, penilaian perlombaan, data atlet, dan tidak dapat
dilihatnya history
lomba tahunan setiap peserta.
Berdasarkan permasalahan yang ada, maka yang menjadi rumusan
masalah adalah bagaimana merancang sistem informasi yang dapat
mengelola
data perlombaan, data atlet, dan melihat history lomba tahunan
setiap user dengan
studi kasus klub Salatiga Hunting Community dengan menggunakan
Framework
CodeIgniter.
Tujuan dari penelitian ini adalah melakukan pembangunan
Sistem
Informasi lomba tembak metal silhouette berbasis web menggunakan
Framework
CodeIgniter, karena CodeIgniter mempunyai dokumentasi dan
pustaka yang
lengkap dengan berbagai kebutuhan, misalnya: koneksi, database,
email, session,
cookies, keamanan, dan manipulasi gambar. Saat mengunduh telah
disediakan
panduan penggunaan, serta referensi dokumentasi komponen,
mempunyai kinerja
yang baik, dan mudah untuk dipelajari dan dikembangkan. Fitur
Model View
Controller (MVC) dapat memudahkan dan mempercepat pengguna
untuk
mengembangkan aplikasi, karena desain yang lebih
terstruktur[2].
2. Tinjauan Pustaka
Terdapat beberapa penelitian mengenai sistem informasi lomba
berbasis
web yang telah dilakukan sebelumnya. Salah satunya adalah
penelitian yang
berjudul Sistem Informasi Pengelolaan Kompetisi Burung Kicau di
SKM Kicau
Berbasis Web yang membahas tentang pengelolaan sistem informasi
kompetisi
-
9
burung kicau di SKM kicau berbasis web menggunakan metodologi
prototype.
Hasil yang didapatkan dari penelitian tersebut yaitu, dapat
membantu petugas
dalam mengelola data registrasi lebih cepat dan akurat, serta
mampu mengurangi
kesalahan dalam laporan pengiriman.[3].
Penelitian kedua adalah penelitian yang berjudul Sistem
Informasi Komite
Olahraga Nasional Indonesia Berbasis Web Menggunakan
Framework
CodeIgniter membahas tentang perancangan informasi pendataan
atlet dan
pendataan perolehan medali atlet untuk mempermudah mengatur
proses
pemberian kompensasi pada atlet berprestasi. Sistem ini dibangun
dengan
menggunakan Framework CodeIgniter karena mempunyai dokumentasi
yang
sangat memadai untuk menjelaskan setiap fungsi yang ada pada
library dan
helper dan MySQL sebagai database sistem. Manffat dari sistem
informasi ini
yaitu dapat membantu atlet dalam mencari informasi tentang
pertandingan pekan
olahraga nasional, pengunjung atau masyarakat dapat mengetahui
informasi
tentang atlet yang mengikuti pekan olahraga nasional, dan hasil
seleksi atlet yang
ikut pekan olahraga nasional jadi lebih cepat berdasarkan
perolehan medali [4].
Dari kedua penelitian sebelumnya, sistem informasi berbasis web
yang telah
dirancang dan dibuat mampu mempermudah peserta lomba dalam
melakukan
registrasi, serta mempermudah juri untuk melakukan pendataan
perlombaan,
pendataan atlet atau peserta lomba, dan data riwayat pemenang
lomba. Oleh
karena itu, sistem informasi dibangun menggunakan bahasa PHP
karena memiliki
fitur yang dinamis dan menggunakan MySQL sebagai manajemen basis
data
karena dapat diintegrasikan dengan berbagai bahasa pemrograman
dan memiliki
fitur keamanan yang baik. Dalam pembangunan sistem informasi,
dibutuhkan
sebuah metode. Sama dengan penelitian pertama, sistem informasi
berbasis web
dibangun menggunakan metode prototype karena menghemat waktu
dalam
pengembangan sistem.
Jika dibandingkan pada penelitian sebelumnya, penelitian ini
berfokus pada
registrasi dan daftar peserta, jadwal pertandingan, penjurian,
dan hasil
pertandingan. Sehingga, informasi berita tidak dibahas dalam
bahasan ini. Selain
itu pada penelitian kedua membahas mengenai kompensasi kepada
atlet yang
berprestasi. Sedangkan penelitian yang dilakukan peneliti tidak
membahas
mengenai kompensasi kepada atlet yang berprestasi.
Sistem informasi adalah suatu sistem dalam suatu organisasi
yang
mempertemukan kebutuhan pengolahan transaksi harian yang
mendukung fungsi
operasi organisasi yang bersifat manajerial dengan kegiatan
strategi dari suatu
organisasi untuk dapat menyediakan kepada pihak luar tertentu
dengan informasi
yang diperlukan untuk pengambilan keputusan.[5].
Web adalah suatu metode untuk menampilkan informasi di internet,
baik
berupa teks, gambar, suara maupun video yang interaktif dan
mempunyai
kelebihan untuk menghubungkan (link) satu dokumen dengan dokumen
lainnya
(hypertext) yang dapat diakses melalui sebuah browser.[6].
CodeIgniter adalah sebuah framework yang digunakan untuk
membuat
sebuah aplikasi berbasis web yang disusun dengan menggunakan
bahasa PHP. Di
dalam CI terdapat beberapa macam kelas (class) yang berbentuk
library dan
-
10
helper. Keduanya berfungsi untuk membantu pemrogram (programmer)
dalam
mengembangkan aplikasinya.[7].
Framework CodeIgniter dipilih karena memiliki keunggulan, yaitu
gratis
dibawah lisensi Apache/ BSD/ style open source license. Selain
itu, sistem juga
menggunakan MVC (Model, View, Controller) yang membedakan antara
logika
dan presentasi/ tampilan dan juga compatible dengan PHP versi 4
dan 5.
Framework CodeIgniter juga memiliki dokumentasi dan pustaka yang
lengkap
dengan berbagai kebutuhan, misalnya: koneksi, database, email,
session, cookies,
keamanan, dan manipulasi gambar.
3. Metode Penelitian
Tahapan yang dilakukan dalam penelitian ini dapat dilihat pada
Gambar 1.
Gambar 1 Tahapan Penelitian
Tahapan penelitian diawali dengan identifikasi masalah. Pada
tahap ini,
penelitian dilakukan dengan melakukan tanya jawab dengan ketua
dan anggota
klub. Berdasarkan hasil wawancara didapatkan informasi bahwa
Klub Salatiga
Hunting Community membutuhkan sistem informasi mengenai lomba
menembak
metal silhouette.
Tahap selanjutnya adalah perancangan. Metode yang digunakan
adalah
Prototyping. Prototyping Model adalah metode yang digunakan
untuk
mendefinisikan serangkaian sasaran umum bagi perangkat lunak
serta
mengidentifikasikan kebutuhan input, pemrosesan, ataupun output
detail [8].
Tahapan -tahapan yang dilakukan dapat dilihat pada Gambar 2.
-
11
Gambar 2 Model Prototype[8]
Tahap-tahapan dalam model prototype sebagai berikut:
1. Pegumpulan Kebutuhan Panitia dan juri perlombaan yang pada
penelitian ini adalah pengguna dan
pengembang aplikasi, sedangkan peserta hanya sebagai pengguna.
Panitia dan juri
bersama-sama mendefinisikan format seluruh perangkat lunak,
mengidentifikasikan semua kebutuhan, dan garis besar sistem yang
akan
dibangun. Kebutuhan pada aplikasi yang akan dibangun adalah
dapat membuat
sistem informasi mengenai data perlombaan berupa kelas
pertandingan, waktu
pelaksanaan, biaya perlombaan, dan penilaian perlombaan, data
atlet, dan melihat
history pemenang lomba tiap tahun yang dapat ditampung dalam
bentuk aplikasi.
2. Membangun Prototyping Membangun prototyping dengan membuat
pembangunan sistem yang
dilakukan dengan proses pembangunan UML diagram yang meliputi
use case
diagram, activity diagram dan relasi antar tabel. UML yang telah
dibuat nantinya
akan dilanjutkan dengan pengimplementasian. Tahapan yang
terakhir pada
metode prototyping adalah evaluasi prototype. Pada evaluasi
prototype nantinya
akan dilakukan pengujian sistem dan melakukan analisis terhadap
hasil pengujian
tersebut. Pengujian yang dilakukan bertujuan untuk mengetahui
apakah sistem
telah memenuhi kebutuhan yang dianalisis pada tahap pertama.
Pengujian aplikasi
tersebut menggunakan blackbox testing.
Pembangunan sistem ini akan menggunakan Unified Modelling
Language
(UML). UML bersifat scalability, yaitu objek lebih mudah dipakai
untuk
menggambarkan sistem yang besar dan komplek. UML juga bersifat
dynamic
modelling, yaitu model dapat digunakan untuk pemodelan sistem
dinamis dan real
time.[9].
Use case diagram merupakan diagram yang menjelaskan manfaat
sistem,
jika dilihat dari sudut pandang orang atau sesuatu yang berada
di luar sistem yang
sedang dibangun (aktor). Jenis diagram ini dapat digunakan untuk
menangkap
requirements sistem dan untuk memahami bagaimana sistem
seharusnya
bekerja.[10]. Use case diagram sistem ditunjukkan pada Gambar
3.
-
12
Gambar 3 Use Case Diagram
Gambar 3 menunjukkan use case diagram yang akan digunakan
pada
aplikasi Sistem Informasi Lomba Tembak Metal Silhouette. Dalam
use case
terdapat empat user yaitu Administrator, juri, user, dan
masyarakat atau calon
peserta. Administrator disini merupakan panitia perlombaan pada
bidang humas
yang memiliki akses penuh dalam menginputkan dan mengelola
informasi lomba.
Kemudian juri bertugas memberi penilaian kepada peserta lomba.
User adalah
peserta lomba yang bisa melakukan pendaftaran lomba, melihat
informasi
pemenang di sistem informasi dan mengikuti perlombaan yang telah
didaftarkan.
Sedangkan masyarakat atau calon peserta hanya bisa melakukan
registrasi lomba
untuk menjadi peserta dan melihat informasi pemenang.
-
13
Gambar 4 Activity Diagram Penilaian Lomba
Gambar 4 menjelaskan adanya proses penilaian lomba yang
dilakukan
oleh super user. Super user yaitu tim juri yang akan memberikan
penilaian.
Aktivitas dimulai dari super user melihat kategori lomba yang
akan dinilai dan
selanjutnya memilih daftar kategori lomba yang akan dinilai.
Setelah super user
memilih kategori lomba, maka akan tampil daftar peserta yang
akan mengikuti
lomba. Super user melakukan input nilai dari peserta. Setelah
selesai melakukan
input nilai, maka akan disimpan kedalam database dan selanjutnya
akan tampil
nilai peserta. Informasi pemenang akan ditampilkan berdasarkan
nilai tertinggi
dan aktivitas selesai. Berikut akan dijelaskan class diagram
yang ditunjukkan
pada gambar dibawah ini:
Juri
-
14
Gambar 5 Class Diagram Lomba
Gambar 5 merupakan class diagram yang akan digunakan dalam
pembuatan aplikasi. Gambar tersebut menunjukkan relasi antar
class yang
terdapat controller di setiap class nya. Relasi dari setiap
class di atas akan
digunakan untuk pembuatan relasi antar tabel di data base.
3. Evaluasi Prototyping
Evaluasi Prototyping dilakukan oleh juri dan panitia
perlombaan
apakahprototypingyang telah dibangun sudah sesuai dengan
kebutuhan panitia
dan juri perlombaan. Pada tahap ini dilakukan evaluasi terhadap
sistem penjurian.
Dalam sistem penjurian dilakukan dengan menjumlahkan semua hasil
dari
tembakan yang mengenai sasaran yaitu 15 target dan 1 target
lisan. Jika tembakan
mampu mengenai target, maka akan mendapatkan nilai 10. Jika
tidak maka akan
mendapatkan nilai 0. Target lisan merupakan target bonus
berbentuk lingkaran
yang sistem penilaiannya jika tembakan yang mengenai sasaran
semakin ke
tengah, maka nilai yang didapatkan semakin tinggi. Nilai dalam
target lisan
berkisar antara 0-10.
3. Mengkodekan Sistem Dalam tahap ini prototyping yang sudah
disepakati diterjemahkan ke
dalam bahasa pemrograman yang sesuai yaitu Bahasa Pemrograman
PHP
(Hypertext Preprocessor) dengan Framework CodeIgniter.
4. Menguji Sistem dan Pengujian Kode
-
15
Pengujian kode dilakukan untuk memastikan apakah fungsi-fungsi
didalam
sistem sudah berjalan dengan baik atau belum. Teknik pengujian
yang dilakukan
yaitu pengujian Black Box yang berfokus pada persyaratan
fungsional sistem.
5. Evaluasi Sistem Pengguna mengevaluasi apakah sistem yang
sudah jadi sudah sesuai
dengan yang diharapkan. Pada tahapan ini akan dijelaskan di bab
selanjutnya.
6. Menggunakan Sistem Perangkat lunak yang telah diuji dan
selanjutnya akan digunakan oleh
panitia dan juri perlombaan.
Tahapan terakhir adalah Penulisan Artikel Ilmiah.
4. Hasil dan Pembahasan
Hasil dari penelitian ini adalah sistem informasi. Hal ini agar
dapat
mempermudah user dalam melakukan pendaftaran lomba dan melihat
informasi
hasil lomba secara online. Serta dapat memudahkan juri untuk
melakukan input
penilaian. Aplikasi ini dibangun dengan menggunakan Framework
CodeIgniter.
Pada aplikasi ini terdapat empat pengguna yaitu peserta lomba
yang dapat
melakukan registrasi lomba, mengikuti lomba, dan melihat history
hasil lomba
tiap tahun, masyarakat atau calon peserta lomba yaitu pengguna
yang hanya dapat
melihat informasi pemenang lomba dan melakukan registrasi lomba,
juri
perlombaan yang akan memberikan penilaian dan informasi
pemenang, kemudian
yang terakhir adalah Administrator yaitu panitia dalam bidang
humas yang
bertugas memberikan informasi perlombaan dan konfirmasi
pembayaran lomba.
Sebelum masuk ke aplikasi, peserta diharuskan login terlebih
dahulu. Jika
belum mempunyai akun, peserta bisa melakukan registrasi. Form
login dan
register ditunjukkan pada Gambar 6.
Gambar 6 (a) Form Register (b) Login Peserta
Gambar 6 merupakan form register dan login peserta. Jika peserta
belum
mempunyai akun, maka dapat melakukan registrasi terlebih dahulu.
Registrasi
meggunakan verifikasi email, jika email belum terverifikasi,
maka peserta tidak
bisa melakukan login. Jika peserta sudah mendaftar dan melakukan
verifikasi
email, maka peserta dapat melakukan login. Setelah login,
peserta masuk pada
halaman dashboard. Halaman dashboard terlihat pada Gambar 7.
-
16
Gambar 7 Halaman Dashboard Peserta
Gambar 7 menunjukkan halaman dashboard. Halaman dashboard
terdiri
dari informasi peserta, daftar lomba yang akan diikuti, dan
grafik hasil perolehan
nilai lomba pertahun. Peserta dapat melakukan registrasi lomba
yang telah
disediakan dari Administrator. Selain itu, peserta juga dapat
memilih kelas
pertandingan yang akan diikuti. Dalam kelas lomba terdiri dari
nama lomba,
biaya, tanggal pelaksanaan, dan tanggal batas pendaftaran.
Daftar kelas
pertandingan ditunjukkan pada Gambar 8.
Gambar 8 Daftar Kelas Pertandingan
Gambar 8 menunjukkan daftar kelas pertandingan yang tersedia.
Daftar
kelas pertandingan terdiri dari nama lomba, tanggal pelaksanaan,
batas waktu
pendaftaran, dan biaya pendaftaran. Pendaftaran akan ditutup
jika melewati batas
waktu pendaftaran yang telah ditentukan. Jika peserta sudah
melakukan
pendaftaran, maka action berubah menjadi “Sudah Daftar”.
Kemudian, peserta
akan melakukan konfirmasi pembayaran untuk mendapatkan nomor
peserta.
Konfirmasi pembayaran ini ditunjukkan pada Gambar 9.
-
17
Gambar 9 Konfirmasi Pembayaran
Gambar 9 menunjukkan konfirmasi pembayaran dari peserta.
Tabel
konfirmasi pembayaran terdiri dari nama lomba, tanggal
pelaksanaan, biaya, dan
status. Status terdiri dari “Belum Bayar”, “Menunggu
Konfirmasi”, dan “Sudah
Bayar”. Peserta melakukan konfirmasi pembayaran dengan
melampirkan bukti
transaksi. Jika sudah dilampirkan, maka status akan berubah
menjadi “Menunggu
Konfirmasi”.Administrator selanjutnya akan melakukan konfirmasi
dan
melakukan input nomor peserta dan status berubah menjadi “Sudah
Bayar”. Kode
program konfirmasi pembayaran oleh peserta ditunjukkan pada kode
program 1.
Kode Program 1 Konfirmasi Pembayaran Oleh Peserta
1. public function tambah() { 2. $valid =
$this->form_validation; 3.
$valid->set_rules('gambar','required', 4. array( 'required'
=> 'Gambar harus diisi')); 5. if($valid->run()) { 6.
$config['upload_path'] = './assets/upload/konfirmasi/'; 7.
$config['allowed_types'] = 'gif|jpg|png|svg|jpeg'; 8.
$config['max_size'] = '1000'; // KB 9.
$this->load->library('upload', $config); 10. if(!
$this->upload->do_upload('gambar')) { 11. }else{ 12.
$upload_data = array('uploads' =>$this->upload->data());
13. // Image Editor 14. $config['image_library'] = 'gd2'; 15.
$config['source_image'] =
'./assets/upload/konfirmasi/'.$upload_data['uploads']['file_name'];
16. $config['new_image'] =
'./assets/upload/konfirmasi/thumbs/';
17. $config['create_thumb'] = TRUE; 18. $config['quality'] =
"100%"; 19. $config['maintain_ratio'] = TRUE; 20. $config['width']
= 360; // Pixel 21. $config['height'] = 360; // Pixel 22.
$config['x_axis'] = 0; 23. $config['y_axis'] = 0; 24.
$config['thumb_marker'] = ''; 25.
$this->load->library('image_lib', $config); 26.
$this->image_lib->resize(); 27. $i = $this->input; 28. 29.
$data = array( 'id_reg'=> $i->post('id_reg'), 30.
'gambar'=> $upload_data['uploads']['file_name'], 31.
'pembayaran'=> 'Menunggu Konfirmasi'); 32.
$this->m_konfirmasi_pembayaran->edit($data); 33. }} // End
masuk database 34. $data = array( 'title' => 'Tambah Data
konfirmasi_pembayaran', 35. 'konfirmasi_pembayaran' =>
$konfirmasi_pembayaran, 36. 'isi'
=>'pengguna/konfirmasi_pembayaran'); 37.
redirect('pengguna/konfirmasi_pembayaran'); 38. }
-
18
Kode Program 1 merupakan controller untuk melakukan
konfirmasi
pembayaran dalam bentuk unggahan gambar bukti tranksaksi. Jika
gambar bukti
transaksi sudah diunggah, maka status pembayaran akan menjadi
“menunggu
konfirmasi” dan akan dikonfirmasi oleh Administrator. Konfirmasi
pembayaran
pada halaman Administrator ditunjukkan pada Gambar 10.
Gambar 10 Tampilan Konfirmasi Pembayaran pada Halaman
Administrator
Gambar 10 menunjukkan konfirmasi pembayaran dari Administrator.
Tabel
konfirmasi pembayaran terdiri dari no, nama pendaftar, kelas
perlombaan,
tanggal, biaya, nomor peserta, status, bukti transaksi, dan
action. Administrator
akan mendapatkan pemberitahuan jika ada peserta yang sudah
melakukan
konfirmasi pembayaran dan Administrator akan melakukan
konfirmasi
pembayaran dan memberikan nomor peserta secara otomatis. Nomor
peserta yang
sudah dimasukkan akan masuk kedalam peserta lomba yang akan
dinilai oleh juri.
Kode program view konfirmasi pembayaran oleh Administrator
ditunjukkan pada
kode Program 2.
Kode Program 2 View Konfirmasi Pembayaran Oleh Administrator
1. 2. 3. 4. No 5. Nama Pendaftar 6. Kelas Perlombaan 7. Tanggal
8. Biaya 9. Nomor Peserta 10. Status 11. Bukti Transaksi 12. Action
13. 14.
-
19
Kode Program 2 merupakan view dari konfirmasi pembayaran
oleh
Administrator. Di dalam view ini terdapat tabel daftar peserta
yang sudah
membayar maupun yang belum membayar. Selain tabel juga terdapat
form
konfirmasi pembayaran. Proses konfirmasi pembayaran dilakukan
oleh controller.
Kode program controller konfirmasi pembayaran ditunjukkan pada
Kode Program
3.
Kode Program 3 Controller Konfirmasi Pembayaran Oleh
Administrator
Kode Program 3 merupakan controller dari konfirmasi pembayaran
oleh
Administrator. Setelah Administrator melakukan konfirmasi, maka
nomor peserta
akan diisi secara otomatis, dan data peserta akan masuk ke dalam
daftar peserta
lomba yang akan dinilai oleh juri. Juri merupakan salah satu
entitas yang ada di
dalam aplikasi ini. Juri dapat melakukan pengelolaan penlaian
peserta. Dengan
adanya sistem inormasi ini, maka pekerjaan juri menjadi lebih
dimudahkan.
Dalam penyimpanan ke database dilakukan oleh model konfirmasi
pembayaran
25.
-
20
oleh Administrator. Model konfirmasi pembayaran oleh
Administrator
ditunjukkan pada Kode Program 4.
Kode Program 4 Model Konfirmasi Pembayaran Oleh
Administrator
Kode Program 4 merupakan model dari konfirmasi pembayaran
oleh
Administrator. Model berisi kode program untuk menyimpan,
merubah, dan
menghapus data yang ada di database. Juga terdapat fungsi untuk
memasukkan
nomor lomba secara otomatis kedalam database. Jika sudah
mendapatkan nomor
peserta, maka data akan ditampung di tabel peserta lomba. Gambar
peserta lomba
ditunjukkan pada Gambar 11.
Gambar 11 Daftar Peserta Lomba Kelas Benchrest PCP
Gambar 11 menunjukkan daftar peserta lomba yang terdiri dari
nomor
peserta, nama peserta, klub asal, kota asal, dan action. Juri
akan memilih peserta
lomba dan melaukan penilaian.Gambar form penilaian ditunjukkan
pada Gambar
12.
1. public function tambah($data) {
2. $this->db->insert('daftar_lomba',$data);
3. }
4. public function edit($data) {
5. $this->db->where('id_reg',$data['id_reg']);
6. $this->db->update('daftar_lomba',$data);
7. }
8. public function delete($data) {
9. $this->db->where('id_reg',$data['id_reg']);
10. $this->db->delete('daftar_lomba',$data);
11. }
12. public function get_nomor_lomba($id_lomba){
13. $no_lomba = $this->db->query("SELECT
COALESCE(nomor_lomba,0) as
saat_ini,COALESCE(nomor_lomba+1,1) as selanjutnya FROM
`daftar_lomba` where
id_lomba = $id_lomba ORDER BY `daftar_lomba`.`nomor_lomba` DESC
limit 1");
14. foreach ($no_lomba->result() as $no_lomba ) {
15. }
16. return $no_lomba->selanjutnya;
17. }
-
21
Gambar 12 Form Penilaian
Gambar 12 menunjukkan form penilaian yang akan dimasukkan oleh
juri.
Dalam mengisi form penilaian, juri harus menekan tombol mulai
penilaian, yang
jika ditekan akan muncul timer selama 10 menit. Jika waktu
habis, maka form
penilaian tidak dapat diisi lagi dan otomatis menghitung hasil
lomba. Jika belum
habis dan peserta sudah melakukan semua tembakan, maka juri
harus menekan
“Hitung nilai” terlebih dahulu untuk menghitung nilai. Total
nilai adalah jumlah
dari nilai 1- 15 ditambah dengan nilai target lisan. Kode
program perhitungan
penilaian ditunjukkan pada Kode Program 5.
Kode Program 5 Perhitungan Penilaian dan Timer Menggunakan
JavaScript.
1.
2. function hitung() {
3. var n1 = document.getElementById('nilai1').value;
4. var n2 = document.getElementById('nilai2').value;
5. var n3 = document.getElementById('nilai3').value;
6. var n4 = document.getElementById('nilai4').value;
7. var n5 = document.getElementById('nilai5').value;
8. var n6 = document.getElementById('nilai6').value;
9. var n7 = document.getElementById('nilai7').value;
10. var n8 = document.getElementById('nilai8').value;
11. var n9 = document.getElementById('nilai9').value;
12. var n10 = document.getElementById('nilai10').value;
13. var n11 = document.getElementById('nilai11').value;
14. var n12 = document.getElementById('nilai12').value;
15. var n13 = document.getElementById('nilai13').value;
16. var n14 = document.getElementById('nilai14').value;
17. var n15 = document.getElementById('nilai15').value;
18. var tl = document.getElementById('target_lisan').value;
19. var hasil = parseInt(n1) + parseInt(n2) + parseInt(n3) +
parseInt (n4) +
parseInt(n5) + parseInt(n6) + parseInt(n7) + parseInt(n8)
20. +parseInt(n9) + parseInt(n10) + parseInt(n11) +
parseInt(n12) +
parseInt(n13) + parseInt(n14) + parseInt (n15) +
parseInt(tl);
21. if(!isNaN(hasil)){
22. document.getElementById('jumlah_nilai').value = hasil;
23. }
24. }
-
22
Kode Program 5 merupakan fungsi hitung dan timer penilaian.
Perhitungan
didapatkan dengan menjumlahkan semua nilai yang diperoleh. Timer
dibuat
dengan perhitungan mundur selama 10 menit. Saat waktu habis,
form penilaian
tidak dapat diisi lagi dan melakukan perhitungan nilai secara
otomatis. Hasil dari
penilaian dimasukkan kedalam daftar hasil nilai lomba.Daftar
hasil nilai lomba
ditunjukkan pada Gambar 13.
Gambar 13 Daftar Penilaian Lomba Multirange PCP
Gambar 13 menunjukkan hasil dari kelas lomba Multirange PCP.
Disini
hanya diambilkan contoh dari lomba Miltirange PCP karena semua
kelas
pertandingan mempunyai sistem penilaian yang sama, perbedaan
hanya terdapat
25. //TIMER OTOMATIS
26.
27. var awal = new Date().getTime();
28. var akhir = awal + 600000;
29. var countDownDate = akhir;
30. function mulai(){
31. document.getElementById("target_lisan").value = 0;
32. var nil = document.getElementsByClassName("nil");
33. for(var i = 0;i
-
23
dalam kelas lomba. Informasi pemenang lomba dapat dilihat oleh
peserta dan
masyarakat umum. Hasil nilai pada halaman peserta ditunjukkan
pada Gambar 14.
Gambar 14 Hasil Nilai Perlombaan
Gambar 14 menunjukkan hasil nilai perlombaan pada halaman
peserta.
Peserta dapat melihat hasil penilaian lomba dan history lomba
tahunan tiap
peserta atau peserta. Administrator juga dapat melihat informasi
nilai yang
dilengkapi dengan grafik sebagai grafik nilai peserta. Informasi
nilai pada
halaman Administrator akan ditampilkan pada Gambar 15.
Gambar 15 Informasi Nilai pada Halaman Administrator
Gambar 15 menunjukkan informasi nilai peserta pada halaman
Administrator. Dari grafik tersebut sudah terlihat peserta yang
mendapatkan nilai
tertinggi sampai nilai terrendah.
Dari pembangunan aplikasi yang dengan dilakukan dengan
framework
CodeIgniter didapatkan bahwa Framework CodeIgniter merupakan
sebuah
framework berbasis PHP yang mengorganisasi file menjadi 3 (tiga)
kelompok,
yaitu model yang merupakan kelompok file yang mengatur
konfigurasi
database, view yang merupakan kelompok file yang mengatur
tampilan, dan
controler yangmerupakan kelompok file yang menghubungkan
file-file model
dengan file - file view[2].
Proses penulisan kode pemrograman lebih cepat dan terstruktur
dengan
konsep Model-View-Controller (MVC). Dalam konsep tersebut, dapat
mengakses
database dengan lebih mudah, view berfungsi dalam hal tampilan,
dan controller
-
24
memiliki fungsi-fungsi yang mengatur jalannya aplikasi serta
menghubungkan
model dan view.
Tahap selanjutnya dalam pembuatan sistem ini adalah pengujian
sistem.
Pengujian sistem ini akan menggunakan black box testing. Black
box testing
merupakan pengujian yang terfokus pada keperluan fungsional dari
aplikasi.
Blackbox memungkinkan pengembang software untuk membuat
himpunan
kondisi input yang akan melatih seluruh syarat-syarat fungsional
suatu program.
Tabel 1 Hasil Pengujian Blackbox
Fungsi yang
diuji
Kondisi Output yang
diharapkan
Output yang
dihasilkan
sistem
Status
pengujian
Login Peserta,
Juri, dan
Administrator
Username dan
password benar
Sukses login Sukses login Valid
Username dan
password salah
maupun kosong
Gagal login Gagal login Valid
Registrasi
perlombaan
Form diisi dengan
benar
Sukses tambah
data
Sukses tambah
data
Valid
Konfirmasi
pembayaran
oleh peserta
Form diisidengan
benar
Sukses ubah
data
Sukses ubah data Valid
Konfirmasi
pembayaran
oleh
administrator
Konfirmasi dengan
benar
Sukses ubah
data
Sukses ubah data Valid
Input nomor
peserta
Form diisi dengan
benar
Sukses tambah
data
Sukses tambah
data
Valid
Tambah
penilaian
Form diisi dengan
benar
Sukses tambah
data
Sukses tambah
data
Valid
Edit Penilaian Form diisi dengan
benar
Sukses ubah
data
Sukses ubah
data
Valid
Hapus
Penilaian
Konfirmasi dengan
benar
Sukses hapus
data
Sukses hapus
data
Valid
Tampil
informasi
pemenang
Data ditampilkan
dengan benar
Sukses tampil
data
Sukses tampil
data
Valid
Tabel 1 merupakan tabel hasil pengujian blackbox pada aplikasi
sistem
informasi Perlombaan Menembak Metal Silhouette di Salatiga.
Dalam pengujian
semua fungsi ini berjalan dengan baik dan status pengujian
menunjukkan secara
valid. Selanjutnya pengujian kedua dengan memberikan pertanyaan
kepada
anggota klub Salatiga Hunting Community yang pernah menjadi
panitia
perlombaan dan anggota KONI Kota Salatiga sebagai juri
perlombaan. Pengujian
ini dilakukan untuk mengetahui sejauh mana aplikasi mampu
membantu juri, dan
panitia dalam memberikan sistem informasi lomba menembak metal
silhouette.
Dengan menentukan beberapa pilihan yang ada pada aplikasi yaitu
fitur,
-
25
kemudahan, dan tampilan aplikasi. Pertanyaan diberikan kepada
dua puluh
responden, terdiri dari sepuluh orang panitia dan sepuluh orang
juri. Hasil dari
jawaban responden dilihat pada Tabel 2.
Tabel 2 User Acceptance Test
No. Pertanyaan Hasil
STS TS C S SS
1 Apakah semua fitur dapat diakses dengan baik? 2 18
2 Apakah sistem membantu kerja panitia dan juri dalam
mengelola data perlombaan?
1 19
3 Apakah sistem sudah dapat mendokumentasikan hasil
lomba tiap tahun?
20
Tabel 2 menunjukkan hasil pertanyaan pengguna pada pengujian
sistem
informasi lomba menembak metal silhouette. Jawaban yang
disediakan
diantaranya : STS = Sangat Tidak Setuju, TS = Tidak Setuju, R =
Ragu-ragu, S =
Setuju dan SS = Sangat Setuju. Untuk mengukur presentase
perhitungan
menggunakan skala likert. Nilai presentase yang dibutuhkan
diantaranya: 0% -
19,99% = STS, 20% - 39,99% = TS, 40% - 59,99% = R, 60% - 79,99%
= S, dan
80% - 100% = SS yang dapat dilihat pada Tabel 3.
Tabel 3 Persentase Perhitugan Menggunakan Skala Likert
No Pertanyaan Jumlah %
1 Apakah semua fitur dapat diakses dengan baik? 20 98%
2 Apakah sistem membantu kerja panitia dan juri dalam mengelola
data perlombaan?
20 99%
3 Apakah sistem sudah dapat mendokumentasikan history perlombaan
tiap tahun?
20 100%
Berdasarkan hasil pengujian diatas, pada pertanyaan pertama 18
responden
menjawab sangat setuju dan 2 responden menjawab setuju sehingga
berdasarkan
kriteria interpretasi pada Tabel 3 dengan skor 98% dapat
disimpulkan responden
sangat setuju bahwa semua fitur dari sistem informasi lomba
menembak metal
silhouette dapat diakses dengan baik. Pada pertanyaan kedua 19
responden
menjawab sangat setuju dan 1 responden menjawab setuju sehingga
berdasarkan
kriteria interpretasi pada Tabel 3 dengan skor 99% dapat
disimpulkan responden
sangat setuju bahwa sistem sudah membantu kerja panitia dan juri
dalam mengelola
data perlombaan. Pada pertanyaan ketiga 20 responden menjawab
sangat setuju
sehingga berdasarkan kriteria interpretasi pada Tabel 3 dengan
skor 100% dapat
disimpulkan bahwa sistem informasi lomba menembak metal
silhouette sudah dapat mendokumentasikan history perlombaan tiap
tahun. Hasil ini memperihatkan bahwa
proses pembangunan sudah sesuai dengan yang diharapkan oleh
panitia dan juri
perlombaan.
-
26
5. Kesimpulan
Berdasarkan penelitian yang dilakukan, aplikasi sistem informasi
perlombaan
menembak Metal Silhouette di Salatiga berbasis web telah
dibangun menggunakan
bahasa pemrograman PHP dengan framework CodeIgniter. Penggunaan
framework
CodeIgniter dapat membantu membantu pembangunan web dengan
efisien karena
fitur dan kelas-kelas yang telah disediakan. Code Igniter yang
berbasis MVC
membuat proses penulisan kode program lebih cepat dan
terstruktur, sehingga dapat
memudahkan untuk melakukan pengembangan selanjutnya. Sistem
Informasi ini
sangat membantu juri dan panitia untuk mengelola data
perlombaan, data atlet, dan
dapat melihat history lomba tahunan setiap atlet/ user. Selain
itu, user juga dapat
terbantu dalam melakukan perlombaan dan melihat daftar history
tiap lomba yang
telah diikuti dengan mudah.
Untuk penelitian selajutnya, sistem informasi lomba menembak
metal
silhouette di Salatiga dapat dikembangkan dengan dalam aplikasi
berbasis android.
Sehingga masyarakat atau peserta dapat lebih dimudahkan untuk
melakukan
pendaftaran lomba. Pengembangan sistem informasi lomba menembak
metal
silhouette di Salatiga dengan menambahkan informasi mengenai
lokasi latihan
menembak, aturan mengenai perlombaan, dan berita perlombaan juga
dapat
dibangun.
6. Daftar Pustaka [1] Perbakin. 2014. Sejarah Perbakin.
http:perbakin-
kotamalang.or.id/?page_id=114. Diakses tanggal 1 Agustus 2018
Pukul 18.30
WIB.
[2] Mulya, Andi. 2014. Penerapan Codeigniter Framework Dalam
Pengembangan
Sistem Informasi Sidang Keliling (Studi Kasus : Badan Peradilan
Agama).
Skripsi. Diterbitkan. Fakultas Sains dan Teknologi. Universitas
Negeri Syarif
Hidayatullah: Jakarta
[3] Reza, Dewa. 2014. Sistem Informasi Pengelolaan Kompetisi
Burung Kicau di
SKM Kicau Berbasis Web. Skripsi. Tidak Diterbitkan. Fakultas
Teknik dan Ilmu
Komputer. Universitas Komputer Indonesia: Bandung.
[4] Anindiarto, dkk. 2008. Sistem Informasi Komite Olahraga
Nasional Indonesia
Berbasis Web Menggunakan Framework CodeIgniter. Tugas Akhir.
Diterbitkan.
Fakultas Matematika dan Ilmu Pengetahuan Alam. Universitas
Sebelas Maret:
Surabaya.
[5] Jogiyanto. 2003. Sistem Teknologi Informasi. Andi Offset :
Yogyakarta.
[6] Yuhefizar. 2013. Membangun Toko Online Itu Mudah. Yogyakarta
: Graha Ilmu
[7] Riyanto. 2011. Membuat Sendiri Aplikasi Ecommerce dengan PHP
dan MySQL
Menggunakan Codeigniter dan JQuery. Yogyakarta : Andi.
[8] Pressman. 2001. Software Enginering : A Practitioner's
Approach. Amerika
Serikat : R.S. Pressman and Associates.
[9] Anandhata, Wisnu. 2013. Aplikasi Manajemen Operasi Pada Unit
Dagang Pupuk
Organik Berbasis Web Menggunakan CakePHP. Salatiga:Program Studi
Teknik
Informatika FTI UKSW.
[10] Nugroho. 2010. Mengembangkan Aplikasi Basis Data
Menggunakan C# + SQL
Server, Yogyakarta : Andi Offset.