BAB 3 PERANCANGAN SISTEM 3.1 Rancangan Perangkat Keras. Sistem Evoting adalah sebuah perangkat keras yang dapat dipergunakan sebagai alat untuk memilih suatu pilihan dengan cara menekan tombol-tombol yang tersedia di dalam perangkat keras menggunakan mikrokontroller. Keluarga mikrokontroller adalah Flexis JM60 USB merk Freescale. Flexis JM USB menggunakan processor HC9S08JM60 atau MC9S08JM60. Untuk menjalankan mikrokontroller ini menggunakan kode program dengan bahasa C atau C++. 3.1.1 Diagram Blok Sistem. Gambar 3.1 Diagram blok sistem Blok-blok dalam sistem yaitu Tombol, JM60, PC, dan SQL. Blok Tombol berfungsi untuk menentukan pilihan, blok JM60 adalah board dapat mengambil data dari tombol pilihan dan mengirimkan datanya melalui USB. Blok PC adalah aplikasi program menampilkan bentuk evoting. Blok SQL adalah untuk menyimpan hasil database. 19
20 3.1.2 Modul-modul Sistem dan Cara Kerjanya. KBI (Keyboard Interrupts) : tempat tombol, ada 4 buah. Cara kerja, KBI melakukan 2 bit yaitu 0 dan 1. Bila bit 1 akan mengirim ke processor JM60. Kemudian JM60 memberi perintah untuk melakukan pengiriman ke Full Speed USB 2.0. Diagram blok KBI sebagai berikut: Gambar 3.2 Diagram blok Keyboard Interrupts 3.2 Rancangan Peranti Lunak. Membuat sebuah program aplikasi sistem evoting dengan menggunakan Visual Basic 2008. Visual Basic 2008 mengisi kode program dengan bahasa Visual Basic, bahasa C# dan bahasa C++ tetapi untuk aplikasi sistem evoting dengan menggunakan bahasa Visual Basic. Ini menambahkan SQL (Select Query Language) Server Compact 3.5 untuk tempat menyimpan database. SQL bekerja sama Visual Basic bekerja secara arus 2 arah komunikasi yaitu input dan output. Input digunakan mengisi data sedangkan Output digunakan memberi laporan hasil. Kelebihan SQL yaitu kemudahan kinerja pengelolaan database dalam berputar cepat misal menambah data, menghapus data, dan meng-update-kan data atau menyimpan data.
21 3.2.1 Diagram Alir Program Utama. Gambar 3.3 Diagram alir program utama
22 Gambar 3.4 Bentuk aplikasi program sistem Evoting Setelah program dijalankan maka sistem akan menginisialisasi sistem login, tanggal dan jam, kemudian meminta pengguna untuk melakukan login. Bila passwordnya tidak OK maka harus mengulang login kembali. Bila login berhasil maka pilihan menu lainnya dapat berjalan lebih lanjut. (a) Sebelum login (b) Setelah login Gambar 3.5 Layar pilihan menu
23 Gambar 3.6 Layar Login Pengguna saat login dapat memilih jabatan sebagai berikut: admin, ketua, staf, dan pengawas. Sehingga kemudahan bagi pengguna membaca layar login tersebut. Tabel 3.1 Icon perintah Icon Arti menambah mengurangi menyimpan refresh mencetak Pada setiap layar akan terlihat icon-icon di atas, sehingga kemudahan bagi pengguna untuk melakukan perintah.
24 3.2.2 Diagram-diagram Alir Rutin pendukung. Gambar 3.7 Diagram alir prosedur Daftar Pemilih Gambar 3.8 Layar Daftar Pemilih
25 Ada layar Daftar Pemilih nomor pemilih secara otomatis digenerate oleh sistem Daftar Pemilih. Admin dapat memasukan nama, nomor KTP, dan jenis kelamin. Sistem ini otomatis memasukan tanggal pendaftar, dan waktu pendaftar. Nanti pada waktu pemilih dan status itu digenerate oleh sistem Panggilan. Bila admin telah mengisi data daftar pemilih tersebut waktu pemilih dikosongkan dan status secara otomatis ditulis belum hingga sistem panggilan akan mengisi waktu pemilih dan mengubah status dari belum ke sudah jika pemilih telah melakukan memilih. Admin tidak dapat menghapus data orang lain sehingga aman. Gambar 3.9 Diagram alir prosedur Panggilan
26 Gambar 3.10 Layar Panggilan Layar panggilan bagi pengguna mudah membaca status pemilih. Bila ada yang belum memilih maka admin langsung melakukan klik nomor pemilih pada sel data table itu. Gambar 3.11 Layar Rekapitulasi
27 Layar rekapitulasi ada 5 perintah yaitu menambah, mengurangi, menyimpan data, refresh dan mencetak. Laporan data dicetak dalam grafik bentuk pie dapat dilihat di bawah ini: Gambar 3.12 Data laporan rekapitulasi Gambar 3.13 Diagram alir prosedur Pengaturan TPS
28 Gambar 3.14 Layar pengaturan TPS Admin mengisi data yaitu nomor TPS, alamat, tempat, tanggal, waktu mulai, waktu akhir dan jumlah undangan. Admin dapat menambah atau mengurangi data, setelah menambah atau mengurangi data, admin melakukan update atau simpan data. Gambar 3.15 Diagram alir prosedur Ubah Login
29 Gambar 3.16 Layar Ubah Login Admin dapat mengubah data tersebut setelah login berstatus Ok. Jika login tidak berstatus Ok, maka admin tidak berhak mengubah data login. Data login dapat diubah yaitu username, password dan jabatan kecuali ID. Karena ID otomatis digenerate oleh sistem ini untuk memberi nomor urutan. Gambar 3.17 Konfirmasi Admin Untuk Ubah Login Ketika ingin mengedit data (ubah dan tambah pengguna) maka admin perlu memasukkan passwordnya.
30 3.2.3 Database SQL Gambar 3.18 Database SQL berbentuk tabel Ada 4 buah table yaitu: login, pemilih, rekapitulasi, dan TPS. Pada setiap table terdapat fungsi-fungsi untuk menjaga integritas data (fill, getdata()), menghitung jumlah pendaftar, dan lain-lain. Relasi dari table rekapitulasi ke tabel TPS yaitu field Nomor TPS. Ini menggunakan Microsoft SQL Server Compact 3.5 disimpan dengan format ekstensi.sdf.
31 Pada SQL langkah-langkah membuat tabel database yaitu: 1. Membuat table login pada SQL sebagai berikut: 2. Membuat table pemilih pada SQL sebagai berikut:
32 3. Membuat table rekapitulasi pada SQL sebagai berikut: 4. Membuat table TPS pada SQL sebagai berikut: Primary key berfungsi sebagai kunci utama sedangkan Unique berfungsi sebagai field yang unik. Bagaimana mengembangkan aplikasi berbasis database secara garis besar, langkah-langkah membangun aplikasi berbasis database adalah: 1. Membuat database beserta tabel yang akan digunakan
33 2. Membuat koneksi antara aplikasi dengan database. Secara manual, dibuat dengan pengkodeann maupun visual. 3. Membuat data source. Hal ini berguna untuk mengakses database melalui dataset. 4. Membuat dataset, hal inipun berguna untuk mengakses data source yang merupakan perwakilan dari database yang sebenarnya. 5. Membuat Dataa Adapter atau Table Adapter, yaitu perintah SQL (select, insert, update, delete) yang berguna mengelola database. 6. Mengelola database tersebut melalui antarmuka aplikasi. Seperti menampilkan, menambah, mengubah, dan menghapus record di dalam database. 3.3 Rancang Bangun. Gambar 3.19 Rancang Bangun digambarkan denah pemilihan umum modern
34 Pertama-tama pemilih menemui ketua panitia untuk didaftarkan, setelah itu, pemilih menunggu perintah panggilan dari ketua panitia. Gambar 3.20 Aplikasi Panggilan berstatus disable Saat pemilih siap maka ketua melakukan pemilihan nomor urutan lalu melakukan klik Panggil kemudian pemilih dapat melakukan vote. Bila validasi kotak tombol panggil berstatus disable krn pemilih sudah memilih. Sedangkan validasi kotak tombol panggil berstatus enable maka pemilih belum memilih. Lihat gambar tombol panggil berstatus enable di bawah ini: Gambar 3.21 Aplikasi Panggilan berstatus enable
35 Pemilih saat di tempat vote menekan tombol A, B, C atau D dan sistem akan menyimpan data tombol ke dalam database SQL. Setelah pemilih melakukan vote, jari pemilih dicelupkan di dalam tinta. Tinta bertanda bahwa pemilih telah berstatus sudah memilih.