42
BAB IV
PENGUJIAN dan ANALISIS
Pada bab ini akan dibahas mengenai pengujian dan analisis dari sistem presensi berbasis smart card. Tujuan pengujian adalah untuk mengetahui apakah sistem yang dirancang dapat memberikan hasil sesuai dengan spesifikasi, sedangkan analisis digunakan untuk meneliti penyebab perilaku sistem.
4.1 Pengujian RFID Tag dan Reader ID-12
Pengujian mengenai keterbacaan RFID tag dan kemampuan baca dari RFID reader ID-12 yang digunakan dalam merancang modul sistem presensi. Salah satu masukan dari database sistem presensi akan didapat dari hasil pembacaan RFID tag yang dimiliki
pengguna.
4.1.1. Pengujian RFID tag
Metode pengujian yang dilakukan adalah dengan menanamkan program sederhana pada mikrokontroler untuk membaca RFID tag dan mengeluarkan data hasil pembacaan tersebut melalui komunikasi serial. Gambar 4.1 menunjukkan diagram alir mengenai metode pengujian yang dilakukan.
Tabel 4.1 Hasil Pengujian Pembacaan RFID tag.
Masing-masing tag yang digunakan dalam perancangan diberikan nomor urut untuk mempermudah dalam pembacaan datanya. Dari hasil pengujian yang dilakukan didapat bahwa RFID reader ID-12 berhasil membaca semua RFID tag yang digunakan dalam perancangan.
4.1.2. Pengujian Jarak Baca RFID Reader
Pengujian berikutnya dilakukan dengan mengukur jarak baca maksimal saat data dari RFID tag terbaca dengan benar oleh RFID reader. Untuk metode pengujian yang dilakukan hampir sama dengan metode sebelumnya. Dapat dilihat pada Gambar 4.2, kali ini yang diukur adalah jarak maksimal pembacaaan yang dapat dilakukan RFID reader ID-12 kepada semua tag yang digunakan dalam perancangan. Masing-masing tag yang digunakan diuji satu per satu mulai jarak baca 1-13cm, sesuai dengan datasheet RFID reader ID-12 [11] memiliki jarak baca maksimal 12 cm.
4.2 Pengujian Konversi Data Serial ke TCP/IP
Pengujian ini bertujuan untuk mengetahui apakah modul serial to TCP/IP converter bekerja dengan baik. Diagram alir metode pengujian yang dilakukan dapat dilihat pada Gambar 4.3. Metode pengujian yang dilakukan adalah dengan menghubungkan mikrokontroler ke modul konverter melaui komunikasi serial dan modul konverter ke komputer dengan kabel LAN. Lalu dibuat program sederhana untuk mengirimkan data serial dari mikrokontroler sebagai masukan modul konverter, kemudian data keluaran dari modul konverter dibaca menggunakan program hyperterminal pada PC. Susunan perangkat keras untuk pengujian dapat dilihat pada Gambar 4.4.
Gambar 4.3. Diagram Alir Pengujian Modul Konverter.
Mikrokontroler mengirimkan data serial berupa teks “TES KONVERSI DATA SERIAL->TCP/IP” sebagai masukan modul konverter, keluaran hasil konversi akan dibaca
Gambar 4.4. Susunan perangkat keras saat pengujian dilakukan.
Gambar 4.5. Hasil Pengujian Modul Serial to TCP/IP Converter
4.3 Pengujian Pengiriman Data melalui Wifi
Komunikasi wifi yang dirancang menggunakan access point untuk melakukan komunikasi secara nirkabel. Metode pengujian yang dilakukan adalah dengan mengatur alamat IP dari access point yang akan digunakan, lalu mengatur access point yang akan ditempatkan di modul sistem presensi sebagai client dari access point yang ditempatkan di sisi server.
Data yang dikirim
Data yang diterima Pengaturan hyperterminal Modul serial to
Kemudian access point di sisi client diberi masukan berupa data presensi yang sudah dikonversi ke dalam format TCP/IP, lalu pada PC melalui program HyperTerminal dibaca data yang diterima oleh access point di sisi server. Diagram alir metode pengujian yang dilakukan dapat dilihat pada Gambar 4.6.
Gambar 4.6. Diagram Alir Pengujian Komunikasi Wifi
Gambar 4.7. Hasil pembacaan HyperTerminal di sisi Server 4.4 Pengujian Enkripsi DES Pada mikrokontroler ATmega32
Pengujian enkripsi data dengan metode Data Encryption Standard (DES) yang diaplikasikan pada mikrokontroler ATmega32. Metode pengujian yang dilakukan adalah dengan menanamkan program enkripsi DES pada mikrokontroler. Detil program enkripsi DES yang ditanamkan dapat dilihat pada lampiran [A]. Hasil pengujian dapat dilihat pada Gambar 4.8.
Gambar 4.8. Hasil Pengujian Enkripsi DES Informasi kelas
Protokol komunikasi
Data tag yang terbaca
Berdasarkan pengujian yang dilakukan, terdapat linker error pada saat program dikompilasi. Hal ini dikarenakan enkripsi dengan metode DES memerlukan memori yang cukup besar untuk prosesnya, dari hasil pengujian dapat diketahui memori RAM yang dibutuhkan untuk proses DES sebesar 2408 bytes sedangkan memori RAM internal yang dimiliki Atmega32 adalah 2048 bytes. Dengan demikian metode enkripsi DES tidak mampu untuk diaplikasikan pada mikrokontroler ATmega32 karena keterbatasan memory RAM yang dimiliki.
4.5 Pengujian program server
Pada sistem presensi ini, terdapat dua kelompok pengguna yang dapat login ke dalam program server sistem presensi (use case diagram pada Gambar 1.1). Untuk pengujian program server akan dibagi menjadi tiga bagian, yang pertama saat pengguna melakukan proses login ke dalam program server, berikutnya adalah saat pengguna login sebagai admin dan yang terakhir adalah saat pengguna login sebagai dosen.
4.5.1. Pengujian Proses Login
Pengujian untuk login ke dalam program sistem presensi diperlukan untuk memastikan proses login berhasil sehingga pengguna dapat mengakses berbagai pilihan menu pada server. Gambar 4.8 adalah form untuk login ke server sistem presensi. Metode pengujian yang dilakukan adalah dengan mencoba login ke dalam sistem presensi menggunakan nama pengguna yang terdaftar dan tidak terdaftar dalam database login.
Pada saat program server sistem presensi dijalankan, program akan meminta verifikasi nama dan kata kunci dari pengguna. Hanya pengguna yang terdaftar dalam database yang dapat melakukan login ke dalam program server sistem presensi. Daftar
pengguna terdapat pada tabel ‘login’ dalam database sistem presensi , dapat dilihat pada Gambar 4.10.
Gambar 4.10. Tabel ‘login’ dalam Database Sistem Presensi
Pada Gambar 4.10 terlihat bahwa tidak semua pengguna yang terdaftar dalam database memiliki IDTag. Hal ini dikarenakan keterbatasan jumlah tag yang tersedia.
Idealnya semua pengguna yang terdaftar dan posisinya sebagai dosen akan memiliki IDTag yang unik. Isi dari kolom IDTag adalah data dari tag yang dipegang oleh masing-masing dosen. Tag ini yang nantinya akan digunakan dosen untuk melakukan presensi. Gambar 4.11 akan menunjukkan diagram alir pengujian login server.
Dari hasil pengujian login server dapat dilihat bahwa program yang dirancang berjalan baik untuk membedakan pengguna yang terdaftar dan tidak terdaftar pada database sistem presensi. Jika pengguna yang tidak terdaftar berusaha melakukan login
dengan memasukkan sembarang nama pengguna dan kata kunci, maka program akan menampilkan pesan kesalahan. Hal yang sama juga terjadi jika pengguna yang terdaftar memasukkan kata kunci yang tidak sesuai.
Gambar 4.11 Diagram Alir Pengujian Login server.
Berikut ini potongan program yang digunakan untuk membuka koneksi ke database dan query yang digunakan untuk memperoleh data dari tabel login.
SqlConnection UGIcon = new SqlConnection();
UGIcon.ConnectionString = "Server=ONNE\\SQLEXPRESS;
Database=trial_1; User Id=onne_trial; password=onnetrial" UGIcon.Open
SqlCommand cmd = new SqlCommand("SELECT
[ID/SandiDosen],Posisi,Nama, Password,KodeDosen FROM Login
WHERE (Nama='" + tbNama.Text + "' or KodeDosen='" +
tbNama.Text + "') and Password='" + tbPass.Text + "' Collate SQL_Latin1_General_CP1_CS_AS", UGIcon);
Bagian connection string merupakan bagian yang digunakan untuk inisialisasi koneksi ke database. Isi dari connection string disesuaikan dengan konfigurasi dari program Microsoft SQLServer 2005 yang digunakan dalam perancangan. Pada potongan program diatas SqlCommand berisikan query yang digunakan untuk mengambil data dari tabel login jika nama dan kata kuncinya sesuai. Pernyataan default SQLServer bersifat case-insensitive. Dengan kata lain SQL server tidak mampu membedakan huruf kecil dan
huruf besar. Sehingga dapat menyebabkan kesalahan saat verifikasi kata kunci apabila pengguna menggunakan huruf kecil dan huruf besar dalam kata kuncinya. Untuk mengatasi kemungkianan kesalahan itu, dalam perancangan digunakan kata kunci Collate SQL_Latin1_General_CP1_CS_AS agar SQL server mampu membedakan huruf besar dan
huruf kecil.
4.5.2. Pengujian Terima Data TCP/IP
Gambar 4.12. Capture Data yang Terbaca di Server. Tabel 4.4. Hasil Pengujian Penerimaan Data TCP/IP.
Nomor Tag Keberhasilan (%)
1 10/10 = 100%
2 10/10 = 100%
3 10/10 = 100%
4 10/10 = 100%
5 10/10 = 100%
6 10/10 = 100%
7 10/10 = 100%
8 10/10 = 100%
4.5.3. Pengujian untuk Menampilkan Informasi Perkuliahan
Saat pengguna login sebagai admin, maka akan ditampilkan pilihan menu lengkap dari server sistem presensi (diagram alir pada Gambar 3.2). Pilihan menu yang ditampilkan antara lain adalah data mata kuliah, yang menampilkan informasi seputar perkuliahan yang dibuka dalam suatu semester termasuk daftar mahasiswa yang mengambil kelas mata kuliah tersebut. Gambar 4.13 akan menunjukkan lebih jelas mengenai tampilan pada saat pengguna login sebagai admin.
Gambar 4.13. Tampilan saat Login sebagai Admin
Untuk metode pengujian yang dilakukan adalah dengan login sebagai admin lalu melakukan prosedur untuk melihat informasi seputar perkuliahan, mulai dari detil mata kuliah, jadwal perkuliahan, dan melihat mahasiswa yang mengambil suatu mata kuliah. Pengujian dilakukan 10 kali untuk mata kuliah yang berbeda. Hasil percobaan dapat dilihat pada Tabel 4.5.
Tabel 4.5 Hasil Percobaan Menampilkan Informasi Perkuliahan
Mata kuliah
Dari 10 kali percobaan yang dilakukan untuk masing-masing mata kuliah, ada beberapa mata kuliah yang tidak menampilkan peserta mata kuliah tersebut. Hal ini dikarenakan pada database sistem presensi, data mengenai peserta mata kuliah tersebut masih kosong atau belum dimasukkan. Sehingga saat dilakukan prosedur untuk menampilkan data, yang tertampil hanyalah tabel kosong. Berikut ini adalah potongan program query sql yang digunakan untuk menampilkan daftar kelas perkuliahan.
String sqlString = "SELECT a.KodeMK, a.NamaMK, a.SKS, b.Nama AS Pengajar1, ISNULL(c.Nama, 'tidak ada') AS Pengajar2 FROM infoMataKuliah AS a LEFT OUTER JOIN login AS b ON a.SandiDosen1 = b.[ID/SandiDosen] LEFT OUTER JOIN login AS c ON a.SandiDosen2 = c.[ID/SandiDosen]";
Kode 4.2. Potongan Program Informasi Perkuliahan.
Digunakan kata kunci left outer join untuk operasi Join dimana akan menampilkan semua isi tabel di sisi kiri, walaupun data di pasangan joinnya yg disisi kanan nilainya tidak sama ataupun bernilai null. Hal ini diperlukan karena ada beberapa mata kuliah yang diampu lebih dari satu dosen (asumsi dalam perancangan ini bisa terdapat dua dosen pengajar untuk satu mata kuliah).
Dari sisi tampilan, digunakan datagridview yang dihubungkan dengan SQL server untuk menampilkan tabel yang diperlukan dalam perancangan. Untuk mengisi datagridview, digunakan dataset karena ada lebih dari satu tabel yang akan digabungkan
untuk ditampilkan dalam datagridview. Potongan program berikut merupakan program yang digunakan untuk menampilkan dan mengisi datagridview.
using (SqlDataAdapter dataAdapter_MK1 = new
SqlDataAdapter(sqlString, conn))
{ using (SqlCommandBuilder commandBuilder_MK1 = new SqlCommandBuilder(dataAdapter_MK1))
4.5.4. Pengujian untuk Mencetak Informasi Perkuliahan
Pengujian ini dilakukan untuk menguji apakah pilihan menu untuk mencetak data dapat berjalan baik. Metode pengujian yang dilakukan adalah dengan melakukan prosedur untuk mencetak informasi seputar jadwal perkuliahan. Gambar 4.14 merupakan hasil pengujian untuk mencetak informasi mengenai jadwal perkuliahan.
Terdapat kolom yang masih kosong pada beberapa mata kuliah. Karena informasi yang terdapat pada database mengenai mata kuliah tersebut belum lengkap. Dalam hal ini adalah informasi seputar jadwal perkuliahan, untuk melengkapi informasi tersebut dapat dilakukan melalui pilihan menu edit jadwal perkuliahan.
Gambar 4.14. Print Preview untuk Jadwal Perkuliahan
4.6 Pengujian sistem secara keseluruhan
1. Menempatkan modul sistem presensi di tempat terpisah dari server sistem presensi. Asumsi jarak yang penempatan adalah sejauh 50 m, pemilihan jarak disesuaikan dengan radius dari access point yang digunakan dalam perancangan.
2. Dosen melakukan presensi untuk membuka koneksi dengan server sistem presensi. Presensi dilakukan dengan mendekatkan tag ke modul presensi.
3. Beberapa mahasiswa melakukan presensi dengan cara yang sama.
4. Dosen melakukan presensi lagi untuk menutup koneksi dengan server sistem presensi.
5. Admin melakukan pengecekan terhadap data hasil presensi yang dilakukan dosen dan mahasiawa.
Gambar 4.15 Hasil Pengujian Keseluruhan