E-voting Komisi Pemilihan Raya Politeknik Negeri Batam (Client)
TUGAS AKHIR
Oleh :
Risqi Hekki Lafindi 3311101047
Disusun untuk memenuhi syarat kelulusan Program Diploma III
PROGRAM STUDI TEKNIK INFORMATIKA POLITEKNIK NEGERI BATAM
BATAM 2013 / 2014
ii
HALAMAN PENGESAHAN
E-voting Komisi Pemilihan Raya Politeknik Negeri Batam (Client)
Oleh :
Risqi Hekki Lafindi (3311101047)
Tugas Akhir ini telah diterima dan disahkan sebagai persyaratan untuk memperoleh gelar
Ahli Madya di
PROGRAM STUDI DIPLOMA 3 TEKNIK INFORMATIKA POLITEKNIK NEGERI BATAM
Batam, 23 Januari 2014 Disetujui oleh;
Pembimbing,
Meyti Eka Apriani, MT
NIK. 111081
iii
HALAMAN PERNYATAAN
Dengan ini, saya:
NIM : 3311101047 Nama : Risqi Hekki Lafindi
adalah mahasiswa Teknik Informatika Politeknik Batam yang menyatakan bahwa tugas akhir dengan judul:
E-voting Komisi Pemilihan Raya Politeknik Negeri Batam (Client) disusun dengan:
1. tidak melakukan plagiat terhadap naskah karya orang lain 2. tidak melakukan pemalsuan data
3. tidak menggunakan karya orang lain tanpa menyebut sumber asli atau tanpa ijin pemilik
Jika kemudian terbukti terjadi pelanggaran terhadap pernyataan di atas, maka saya bersedia menerima sanksi apapun termasuk pencabutan gelar akademik.
Lembar pernyataan ini juga memberikan hak kepada Politeknik Batam untuk mempergunakan, mendistribusikan ataupun memproduksi ulang seluruh hasil Tugas Akhir ini.
Batam, 23 Januari 2014
Risqi Hekki Lafindi NIM 3311101047
iv
DAFTAR ISI
HALAMAN PENGESAHAN ... ii
HALAMAN PERNYATAAN ... iii
DAFTAR ISI... iv
DAFTAR TABEL ... vii
DAFTAR GAMBAR ... viii
KATA PENGANTAR ... ix
ABSTRAK ... x
BAB I Pendahuluan ... 1
I.1. Latar Belakang ... 1
I.2. Rumusan masalah ... 1
I.3. Batasan masalah ... 2
I.4. Tujuan penelitian ... 2
BAB II Landasan Teori ... 3
II.1 Komisi Pemilihan Raya (K-Pira) ... 3
II.2 E-Voting ... 4
II.3 HTML ... 4
II.4 PHP ... 5
BAB III Analisis dan Perancangan ... 7
III.1. Deskripsi Umum System ... 7
III.2. Karakteristik Pengguna ... 7
III.3. Kebutuhan Fungsional ... 8
III.4. Kebutuhan Non Fungsional ... 8
III.5. Diagram Use Case ... 8
III.6. Skenario Use Case ... 8
III.6.1. Use Case Login ... 8
III.6.2. Use Case List kandidat ... 9
III.6.3. Use Case Voting ... 9
III.6.4. Use Case Melihat hasil voting ... 9
III.7. Analisis Kelas ... 9
v
III.8.1. Diagram Sequence Login ... 10
III.8.2. Diagram Sequence List Kandidat ... 10
III.8.3. Diagram Sequence Voting ... 11
III.8.4. Diagram Sequence Melihat Info hasil ... 11
III.9. Diagram Kelas ... 12
III.10. Rancangan Kelas Rinci dan Algoritma ... 12
III.10.1. Kelas GUI Login Pemilih ... 12
III.10.2. Kelas GUI List Kandidat ... 13
III.10.3. Kelas GUI Hasil ... 13
III.10.4. Kelas Pemilih ... 14
III.10.5. Kelas kandidat ... 14
III.10.6. Kelas Hasil ... 15
III.11 Antarmuka Client ... 15
III.11.1 Antarmuka Login ... 15
III.11.2 Deskripsi Antarmuka Login ... 15
III.11.3 Antarmuka list kandidat dan voting ... 16
III.11.4 Deskripsi antarmuka list kandidat dan voting ... 16
III.11.5 Antarmuka hasil ... 17
III.11.6 Deskripsi antarmuka hasil ... 17
BAB IV Implementasi dan Pengujian ... 18
IV.1 Implementasi Antarmuka ... 18
IV.1.1 Halaman Login Mahasiswa ... 18
IV.1.2 Halaman Voting ... 19
IV.1.3 Halaman Hasil ... 20
IV.2 Implementasi Fungsi PHP ... 20
IV.3 Implementasi Database ... 21
IV.3.1 Tabel tb_mhs ... 21
IV.3.2 Tabel tb_kandidat ... 22
IV.3.3 Tabel tb_hasil ... 22
IV.4 Pengujian ... 23
IV.4.1 Pengujian Pemilih ... 23
BAB V Kesimpulan dan Saran ... 26
V.1 Kesimpulan ... 26
vi
Daftar Pustaka ... 27 Lampiran
vii
DAFTAR TABEL
Tabel 3.1 Karakteristik pengguna ... 7
Table 3.2 Deskripsi antarmuka login ... 15
Table 3.3 Deskripsi antarmuka hasil ... 16
Table 3.4 Deskripsi antarmuka hasil ... 17
Table 4.1 Halaman login mahasiswa ... 18
Table 4.2 Halaman voting ... 19
Table 4.3 Halaman Hasil Voting ... 20
Tabel 4.4. Fungsi PHP ... 20
Tabel 4.5. Tabel implementasi database tb_mhs ... 21
Tabel 4.6. Tabel implementasi database tb_kandidat ... 22
Tabel 4.7. Tabel implementasi database tb_hasil ... 22
viii
DAFTAR GAMBAR
Gambar 3.1. Deskripsi umum sistem ... 7
Gambar 3.2 Diagram use case ... 8
Gambar 3.3 Analisis kelas ... 9
Gambar 3.4. Sequence Diagram Login ... 10
Gambar 3.5. Sequence diagram daftar kandidat ... 10
Gambar 3.6. Sequence diagram voting ... 11
Gambar 3.7. Sequence diagram hasil ... 11
Gambar 3.8. Diagram kelas ... 12
Gambar 3.9. Antar Muka Login ... 15
Gambar 3.10. Antar Muka List Kandidat dan Voting ... 16
Gambar 3.11. Antar muka hasil ... 17
Gambar 4.1 Antarmuka login mahasiswa ... 18
Gambar 4.2 Antarmuka voting ... 19
ix
KATA PENGANTAR
Segala puji syukur bagi Tuhan Yang Maha Esa atas rahmat dan karunia yang dilimpahkan-Nya sehingga Penulis dapat menyelesaikan pembuatan laporan Tugas Akhir yang berjudul “E-voting Komisi Pemilihan Raya Politeknik Negeri Batam (Client)”. Laporan ini disusun sebagai salah satu syarat kelulusan untuk mata kuliah Tugas Akhir program studi Teknik Infomatika jurusan Teknik Informatika Politeknik Negeri Batam.
Laporan ini tidak akan dapat terselesaikan tanpa bantuan dari berbagai pihak. Oleh karena itu, Penulis ingin menyampaikan terima kasih kepada nama-nama yang tercantum di bawah ini, atas segala bantuan yang diberikan.
1. Bapak Tri Ramadani Arjo, S.ST selaku dosen wali, terima kasih sudah menjadi dosen wali yang baik untuk kami.
2. Bapak Dwi Ely Kurniawan, M.Kom sebagai Dosen Pengampu TA.
3. Ibu Meyti Eka Apriani, MT selaku pembimbing pada sidang Tugas Akhir, terima kasih atas saran dan kritikan dalam penyusunan laporan dan pengembangan website E-Voting ini.
4. Komisi Pemilihan Raya Politeknik Negeri Batam tahun 2013-2014 yang ikut membantu kami melakukan simulasi proses pemungutan suara.
5. Teman-teman seperjuangan angkatan 2011 yang berjuang bersama-sama untuk menyelesaikan Tugas Akhir ini.
6. Berbagai pihak yang tidak bisa disebutkan satu-persatu, yang telah membantu dalam penyusunan laporan dan pengembangan website ini.
Penulis menyadari bahwa laporan ini masih banyak kekurangannya tetapi Penulis berharap semoga laporan ini dapat bermanfaat bagi Penulis, pembaca dan semua pihak yang terkait. Semoga laporan ini mampu memberikan kontribusi bagi perkembangan ilmu pengetahuan khususnya dibidang teknologi.
Batam, 23 Januari 2014
x
ABSTRAK
E-voting Komisi Pemilihan Raya Politeknik Negeri Batam (Client)
Oleh:
Risqi Hekki Lafindi 3311101047
Pemilihan Presiden Mahasiswa (PRESMA) merupakan bagian yang tidak terpisahkan dari suatu Perguruan Tinggi yang memiliki Badan Eksekutif Mahasiswa/setingkat didalamnya. Kondisi saat ini proses pemilihan Presiden Mahasiswa (PRESMA) di Politeknik Negeri Batam masih dilakukan secara konvensional yaitu menggunakan media kertas suara dan penghitungan suara secara manual.
Electronic Voting atau biasa disebut e-voting adalah alat proses demokrasi pada masa depan
untuk melakukan proses Presiden Mahasiswa (PRESMA) dengan memanfaatkan teknologi informasi. Dengan e-voting ini pemungutan suara tidak lagi menggunakan kertas, tetapi dengan media elektronik seperti personal computer(PC) sebagai media pemilihan Presiden Mahasiswa (PRESMA).
Pembuatan model e-voting pada Tugas Akhir ini difokuskan pada sistem berbasis web karena sistem tersebut mudah dalam hal akses dan segi keamanan. Dari segi model pemilih dapat memilih kandidat dengan menggunakan media elektronik dan melihat hasil pemilihan. E-voting Komisi Pemilihan Raya Politeknik Negeri Batam diharapkan dapat membantu penghitungan suara dan proses pemilihan suara secara cepat.
xi
ABSTRACT
E-voting Komisi Pemilihan Raya Politeknik Negeri Batam (Client)
By:
Risqi Hekki Lafindi 3311101047
Student Presidential Election (PRESMA) is part that can't be separated of a university which has a Student Executive Board/ level therein. The current condition of the Student Presidential Election process in State Polytechnic of Batam is still using some conventional media and counting ballots manually.
Electronic Voting or so-called E-Voting is a tool of a democratic process in the future to do the Student Presidential Election (PRESMA) by utilizing information technology. With E-Voting, ballots no longer use paper, but with electronic media such as Personal Computers (PCs) as the media of Student Presidential Election.
The process to make a model of E-Voting in this Final Task is focused on web-based system because the system is easy in terms of access and in terms of security. In terms of the model, voters can choose candidates by using electronic media and see the results of the election. E-Voting of The Great Election Commision in State Polytechnic of Batam is expected to help the counting of votes and the voting process quickly.
Keywords : E-Voting, Student Presidential Election (PRESMA), web, State Polytechnic of Batam.
1
BAB I
Pendahuluan
I.1. Latar Belakang
Pemungutan suara adalah proses atau metode yang digunakan dalam mencari tahu, menentukan dan mengambil keputusan dalam aktivitas tertentu, contohnya mencari tahu antusiasme masyarakat terhadap suatu objek, pengambilan keputusan dalam suatu rapat, jajak pendapat, dan musyawarah.
Masa sekarang ini, Komisi Pemilihan Raya (K-PIRA) Politeknik Negeri Batam, yaitu suatu Komisi yang bertugas menjalankan pemungutan suara untuk menentukan Presiden dan Wakil Presiden Mahasiswa masih menggunakan metode manual dalam melakukan pemungutan suara di kampus. Metode manual yang dimaksud adalah melakukan pemungutan suara dengan menggunakan kertas sebagai wadah pemungutan suara dan contreng/centang sebagai tanda sah-nya pemilihan. Hal itu memungkinkan pemilih untuk mencontreng/mencentang lebih dari sekali dalam satu kertas, sehingga membuat kertas suara gagal atau tidak masuk dalam hitungan sah pemungutan suara.
Dilain sisi, penggunaan kertas dalam pemungutan suara/voting sering sekali menimbulkan kecurangan yang tidak terkontrol, yaitu jumlah pemilih yang tidak sesuai dengan pemilih yang terdaftar dan besarnya golongan yang memilih melebihi ketentuan, belum lagi biaya pengadaan kertas yang mahal dan hanya sekali pakai. Selain itu, proses penghitungan suara dengan media kertas membutuhkan waktu yang relatif lama karena harus membuka kertas pemungutan suara satu per satu.
Seiring dengan perkembangan teknologi, mahasiswa dapat melakukan pemilihan / pemungutan suara dengan menggunakan teknologi website dan mobile. Bukan tidak mungkin dengan bantuan teknologi ini diharapkan sangat membantu operasional pemungutan suara dan meningkatkan efektifitas serta efisiensi dalam pemungutan suara dan perhitungan cepat.
I.2. Rumusan masalah
Rumusan masalah yang akan dibahas dalam Tugas Akhir ini adalah sebagai berikut : 1. Bagaimana membuat aplikasi untuk pemilih sebagai wadah pemungutan suara
2 2. Bagaimana membuat aplikasi untuk pemilih yang mampu menampilkan data hasil
pemungutan suara ?
3. Bagaimana membuat aplikasi untuk pemilih yang dapat merahasiakan data pemilih?
I.3. Batasan masalah
Beberapa batasan masalah yang dibahas dalam Tugas Akhir ini adalah sebagai berikut : 1. Aplikasi ini hanya dilaksanakan pada 1 tempat.
2. User yang dapat memilih merupakan user yang sudah terdaftar dalam server website yang telah di verifikasi oleh petugas K-PIRA.
I.4. Tujuan penelitian
Tujuan dari Tugas Akhir ini adalah :
1. Membuat aplikasi untuk pengguna dalam pemilihan suara sebagai media pengganti kertas.
2. Membuat aplikasi untuk pengguna yang dapat menampilkan hasil perhitungan suara secara cepat berdasarkan hasil pemungutan suara yang di lakukan pemilih. 3. Membuat aplikasi untuk pengguna yang dapat merahasiakan data pemilih dengan
code - generator.
I.5. Sistematika Penulisan
Bab 1 Pendahuluan, Latar Belakang, Rumusan Masalah, Batasan Masalah, Tujuan. Bab 2 Tinjauan Pustaka, rujukan terhadap hasil pengerjaan sebelumnya, studi pustaka yang menunjang pembuatan sistem.
Bab 3 Analisis Dan Perancangan, deskripsi umum sistem, diagram use case,skenario use case, analisis kelas, sequence diagram, diagram kelas, rancangan kelas rinci, algoritma, perancangan antar muka.
Bab 4 Implementasi Dan Pengujian, implementasi kelas, implementasi antarmuka yang mengacu pada analisis, skenario pengujian, hasil rincian pengujian.
Bab 5 Kesimpulan dan Saran, berisi kesimpulan-kesimpulan yang merupakan rangkuman dari hasil implementasi dan saran-saran untuk pengembangan selanjutnya.
3
BAB II
Landasan Teori
II.1 Komisi Pemilihan Raya (K-Pira)
Komisi Pemilihan Raya(K-PIRA) yang berada dalam naungan Politeknik Negeri Batam sebagai suatu komisi yang membantu menyelenggarakan kegiatan rutin setiap tahunnya, yaitu pemilihan Presiden dan Wakil Presiden Mahasiswa yang nantinya akan menjadi Ketua dan Wakil Ketua Badan Eksekutif Mahasiswa (BEM). K-PIRA selama ini menggunakan media kertas sebagai wadah pemungutan suara saat menjalankan kegiatan tersebut.
Hal ini membuat inspirasi yang baik untuk dapat dibuatnya suatu sistem yang terkomputerisasi, yang dapat menggantikan media kertas sebagai wadah pemungutan suara dan dapat lebih efisien dalam melaksanakan pemungutan suara di Politeknik Negeri Batam. Analisa Contoh Kasus Pemungutan Suara pada Pemilihan Presma:
1. K-PIRA melakukan verifikasi terhadap Kandidat untuk dapat dipilih.
2. K-PIRA melakukan verifikasi terhadap Mahasiswa Calon Pemilih agar sesuai dengan kriteria untuk dapat memilih berdasarkan Nomor Induk Mahasiswa(NIM).
3. K-PIRA menetapkan Petugas pada Tempat Pemungutan Suara (TPS) agar dapat mengawasi jalannya pemungutan suara.
4. K-PIRA mencetak kertas pemungutan suara sebagai wadah voting, yang didalamnya terdapat Kandidat untuk dipilih dan tempat untuk memberikan hak suara Pemilih berupa contreng/centang.
5. Pemilih datang ke tempat pemungutan suara.Lalu, registrasi ulang kepada Petugas TPS.Setelah valid maka Pemilih diberikan Kertas Pemungutan Suara dan ke bilik TPS agar aman dari kecurangan,lalu mencontreng Kandidat yang dipilih dan melipat kertas pemilihan serta memasukkannya kedalam kotak pemungutan suara yang telah disediakan.
6. Setelah semua suara terkumpul dan TPS ditutup, maka akan dilakukan penghitungan suara ditempat tersebut ataupun ditempat lain dan memerlukan beberapa saksi yang mewakili setiap Kandidat agar penghitungan suara sah.Proses penghitungan suara secara manual, biasanya menggunakan penulisan tally.
7. Setelah terhitung semua, maka dapat diketahui jumlah suara Pemilih dan siapa Kandidat terpilih. (Sumber : Syahril selaku Ketua Komisi Pemilihan Raya Politeknik (K-PIRA) Negeri Batam).
4 II.2 E-Voting
Pemahaman tentang e-voting lebih mengacu pada proses pemanfaatan perangkat elektronik untuk lebih mendukung kelancaran proses dan juga model otomatisasi yang memungkinkan campur tangan minimal dari individu dalam semua prosesnya (Smith dan Clark, 2005). Di sisi lain i-voting adalah proses serupa dengan e-voting tetapi memanfaatkan jaringan teknologi informasi dengan cakupan area yang lebih luas sehingga basisnya adalah memanfaatkan jaringan internet dan teknologi komunikasi (ibid, 2005). Oleh karena itu, i-voting terkait dengan sistem online[1].
Beberapa Definisi E-voting yaitu :
• E-voting adalah setiap metode pemungutan suara yang dimaksudkan untuk para pemilih
yang dinyatakan atau dikumpulkan dengan cara elektronik. Hal tersebut dapat dikatakan sebagai salah satu cara metode e-voting (Magi, 2007) [1].
• E-voting adalah voting yang mengacu pada penggunaan komputer atau teknologi
pemungutan suara untuk memberikan suara dalam pemilihan (Kahani, 2005)[1].
• E-voting adalah proses pemungutan suara yang memanfaatkan elektronik (Rivest,
2000) [4].
II.3 HTML
HyperText Markup Language (HTML) adalah sebuah bahasa markah yang digunakan
untuk membuat sebuah halaman web, menampilkan berbagai informasi di dalam sebuah penjelajah web Internet dan pemformatan hiperteks sederhana yang ditulis dalam berkas format ASCII agar dapat menghasilkan tampilan wujud yang terintegerasi. Dengan kata lain, berkas yang dibuat dalam perangkat lunak pengolah kata dan disimpan dalam format ASCII normal sehingga menjadi halaman web dengan perintah-perintah HTML. Bermula dari sebuah bahasa yang sebelumnya banyak digunakan di dunia penerbitan dan percetakan yang disebut dengan SGML (Standard Generalized Markup Language), HTML adalah sebuah standar yang digunakan secara luas untuk menampilkan halaman web. HTML saat ini merupakan standar Internet yang didefinisikan dan dikendalikan penggunaannya oleh World Wide Web Consortium (W3C). HTML dibuat oleh kolaborasi Caillau TIM dengan Berners-lee Robert ketika mereka bekerja di CERN pada tahun 1989 (CERN adalah lembaga penelitian fisika energi tinggi di Jenewa) [2]
Kegunaan HTML adalah:
5 2. Membuat Pranala.
3. Mengintegerasikan berkas suara dan rekaman gambar hidup. 4. Membuat form interaktif.
HTML dokumen tersebut mirip dengan dokumen tulisan biasa, hanya dalam dokumen ini sebuah tulisan bisa memuat instruksi yang ditandai dengan kode atau lebih dikenal dengan TAG tertentu. Sebagai contoh jika ingin membuat tulisan ditampilkan menjadi tebal seperti: TAMPIL TEBAL, maka penulisannya dilakukan dengan cara: <b>TAMPIL TEBAL</b>. Tanda <b> digunakan untuk mengaktifkan instruksi cetak tebal, diikuti oleh tulisan yang ingin ditebalkan, dan diakhiri dengan tanda </b> untuk menonaktifkan cetak tebal tersebut. HTML lebih menekankan pada penggambaran komponen-komponen struktur dan format di dalam halaman web daripada menentukan penampilannya. Sedangkan penjelajah web digunakan untuk menginterpretasikan susunan halaman ke gaya built-in penjelajah web dengan menggunakan jenis tulisan, tab, warna, garis, dan perataan text yang dikehendaki ke komputer yang menampilkan halaman web. Salah satu hal Penting tentang eksistensi HTML adalah tersedianya Lingua franca (bahasa Komunikasi) antar komputer dengan kemampuan berbeda [2].
Pengguna Macintosh tidak dapat melihat tampilan yang sama sebagaimana tampilan yang terlihat dalam PC berbasis Windows. Pengguna Microsoft Windows pun tidak akan dapat melihat tampilan yang sama sebagaimana tampilan yang terlihat pada pengguna yang menggunakan produk-produk Sun Microsystems. namun demikian pengguna-pengguna tersebut dapat melihat semua halaman web yang telah diformat dan berisi Grafika dan Pranala [2].
II.4 PHP
PHP merupakan singkatan dari Personal Home Page, sebelum akhirnya dipaksakan menjadi singkatan rekursif dari PHP : Hypertext Preprocessor. Pertengahan tahun 1995 dirilis PHP/FI (FI adalah singkatan dari Form Interpreter) yang memiliki kemampuan dasar membangun aplikasi web, memproses form dan mendukung database MySQL [2].
PHP adalah bahasa pemrograman script yang paling banyak dipakai saat ini. PHP banyak dipakai untuk pemrograman website, walaupun tidak tertutup kemungkinan untuk digunakan untuk pemakaian lain. PHP merupakan salah satu bahasa server side scripting yang disisipkan di antara bahasa HTML untuk membuat halaman web yang dinamis. Dan karena bahasa berbasis server side, maka PHP akan dieksekusi di server, sehingga yang akan
6 dikirimkan ke web browser adalah hasil dalam bentuk HTML dan kode PHP tidak akan terlihat. Salah satu fungsi PHP adalah untuk menerima, mengolah, dan menampilkan data dari dan ke sebuah website. Data yang diterima akan diolah di sebuah program database server dan kemudian hasilnya ditampilkan kembali ke layar web browser sebuah website. Seorang pengguna internet tidak dapat melihat kode program yang ditulis dalam PHP sehingga keamanan dari halaman web menjadi lebih terjamin [2].
Bahasa pemrograman PHP memiliki beberapa kelebihan antara lain [2] :
1. Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak melakukan sebuah kompilasi dalam penggunaannya.
2. Web Server yang mendukung PHP dapat ditemukan di mana-mana dari mulai IIS
sampai dengan Apache, dengan konfigurasi yang relatif mudah.
3. Dalam sisi pengembangan lebih mudah, karena banyaknya milis-milis dan developer
yang siap membantu dalam pengembangan.
4. Dalam sisi pemahaman, PHP adalah bahasa scripting yang paling mudah karena referensi yang banyak.
5. PHP adalah bahasa open source yang dapat digunakan di berbagai mesin (linux, unix,
windows) dan dapat dijalankan secara runtime melalui console serta juga dapat menjalankan perintah-perintah sistem.
7
BAB III
Analisis dan Perancangan
III.1.Deskripsi Umum System
Gambar 3.1. Deskripsi umum sistem
Deskripsi umum sistem ini menjelaskan tentang proses kerja aplikasi E-Voting yaitu: 1. Pemilih yang dapat login adalah user yang sudah di verifikasi oleh petugas. 2. Setelah pemilih login maka pemilih dapat melihat daftar kandidat dan melakukan
voting.
3. Setelah pemilih melakukan voting maka pemilih dapat melihat hasil voting. 4. Pemilih hanya dapat melakukan 1 kali voting.
III.2.Karakteristik Pengguna
Pengguna dari aplikasi adalah pemilih, dimana karakteristik pengguna yang berperan dapat dilihat pada Tabel 3.1 berikut :
Tabel 3.1 Karakteristik pengguna
No Pengguna Hak Akses Tugas
1 Pemilih Aplikasi web dan
web mobile
Melihat daftar kandidat yang dipilih Melakukan voting
8 III.3.Kebutuhan Fungsional
F-001 Aplikasi mampu menampilkan daftar kandidat. F-002 Aplikasi mampu melakukan 1 kali voting. F-003 Aplikasi mampu menampilkan hasil dari voting.
III.4.Kebutuhan Non Fungsional
NF-001 Usability (Aplikasi yang mudah di mengerti oleh user)
NF-002 Security (Aplikasi hanya di gunakan pada user yang sudah di verifikasi admin)
III.5.Diagram Use Case
Gambar 3.2 Diagram use case
III.6.Skenario Use Case III.6.1.Use Case Login Aktor : Pemilih.
Kondisi Awal : Pemilih belum login. Kondisi Akhir : Pemilih sudah login.
Skenario : Pemilih membuka website, kemudian melakukan login dengan memasukan username dan nim, kemudian menekan tombol login.
9 III.6.2.Use Case List kandidat
Aktor : Pemilih.
Kondisi Awal : Tidak ada daftar kandidat yang tersedia. Kondisi Akhir : Tampil daftar kandidat yang tersedia
Skenario : User telah login, kemudian mengklik menu voting. User melihat daftar kandidat yang tersedia.
III.6.3.Use Case Voting Aktor : Pemilih.
Kondisi Awal : Pemilih belum melakukan voting Kondisi Akhir : Pemilih sudah melakukan voting
Skenario : Pemilih telah login, kemudian pemilih memilih kandidat kemudian pemilih melakukan voting.
III.6.4.Use Case Melihat hasil voting Aktor : Pemilih.
Kondisi Awal : Tidak ada info hasil voting yang tersedia Kondisi Akhir : Tampil info hasil voting yang tersedia
Skenario : Pemilih sudah login dan sudah melakukan voting, kemudian akan tampil hasil voting.
III.7.Analisis Kelas
10 III.8.Diagram Sequence
III.8.1.Diagram Sequence Login
Gambar 3.4. Sequence Diagram Login
Setelah pemilih terverifikasi oleh petugas, pemilih dapat melakukan login dengan memasukkan NIM, dan Username yang telah terdaftar dan dapat mengakses menu
Voting.
III.8.2.Diagram Sequence List Kandidat
11 Setelah login akan muncul halaman List daftar kandidat yang akan di pilih. Data kandidat sesuai dengan inputan pada sisi admin.
III.8.3.Diagram Sequence Voting
Gambar 3.6. Sequence diagram voting
Setelah menemukan kandidat yang diinginkan, pemilih dapat melakukan voting secara langsung. Jika sudah memilih, pemilih tidak dapat melakukan voting lagi.
III.8.4.Diagram Sequence Melihat Info hasil
12 Setelah login, pemilih dapat memilih menu hasil, kemudian akan tampil info hasil dari pemilihan (voting).
III.9.Diagram Kelas
Gambar 3.8. Diagram kelas
III.10.Rancangan Kelas Rinci dan Algoritma III.10.1. Kelas GUI Login Pemilih GUI Login pemilih
Id_pemilih Username nim
//tangkap inputan dari textfield simpan ke parameter
perintahnya = "select * from pemilih where username = '$username' and password = '$nim' and stat = 'terverifikasi' and status = ‘unlocked’";
if (respone = benar ) {
session_start();
} else{
echo “Anda Bukan pemilih”; }
13 III.10.2. Kelas GUI List Kandidat
GUI Tampil Kandidat Id_kandidat No_urut Nama_kandidat Nama_file Nim Sts_pemilihan Id_kandidat No_urut Jumlah Kode_unik
//tangkap inputan dari textfield simpan ke parameter
$query = "SELECT * FROM tb_kandidat ORDER BY no_urut ASC "; If(post){
qr= UPDATE tb_pemilih Set sts_pemilihan=sudah WHERE nim =$nim;
qr=UPDATE tb_kandidat Set jumlah = jumlah + 1 WHERE no_urut=$no_urut; If(respone = succes){
Nim=code_generator; Kode_unik=nim;
$qr=INSERT INTO tb_hasil VALUES(kode_unik,id_kandidat); echo “Terima Kasih Anda Sudah Memilih;
} }
III.10.3. Kelas GUI Hasil GUI Hasil
Id_kandidat No_urut
14 III.10.4. Kelas Pemilih
Class Pemilih Id_pemilih NIM Nama password Alamat No_hp stat Stat_pml Stat_mhs
III.10.5. Kelas kandidat Class kandidat Id_kandidat No_urut Nama_kandidat Nama_file jumlah Nama_file Jumlah
qr=mysql_query(“select Sum(jumlah) as TotalPersen FROM tb_kandidat “); Total=$row['TotalPersen'];
qr = mysql_query("SELECT nama_file, jumlah FROM tb_kandidat"); while (){
ValPersen=round($row['jumlah']/$Total*100,2); echo “ValPersen”; }
15 III.10.6. Kelas Hasil
Class Hasil Kode_Unik id_kandidat
15 III.11 Antarmuka Client
III.11.1 Antarmuka Login
Gambar 3.9. Antar Muka Login
III.11.2 Deskripsi Antarmuka Login
Table 3.2 Deskripsi antarmuka login
Id_objek Type Nama Keterangan
Nim Textfield Nim Input field nim
Password Password Password Input field password
16 III.11.3 Antarmuka list kandidat dan voting
Gambar 3.10. Antar Muka List Kandidat dan Voting
III.11.4 Deskripsi antarmuka list kandidat dan voting Table 3.3 Deskripsi antarmuka hasil
Id_objek Type Nama Keterangan
H1 H1 - Calon Presiden Mahasiswa
image Img - Foto calon presma dan
cawapresma
Label Label - Nama kandidat
17 III.11.5 Antarmuka hasil
Gambar 3.11. Antar muka hasil
III.11.6 Deskripsi antarmuka hasil
Table 3.4 Deskripsi antarmuka hasil
Id_objek Type Nama Keterangan
H1 H1 - Hasil pemilihan
image Img - Foto calon presma dan
cawapresma
Label Label - Nama kandidat
Tabel Tabel Grafik Menampilkan grafik hasil pemilihan
18
BAB IV
Implementasi dan Pengujian
IV.1 Implementasi Antarmuka
Implementasi antarmuka Website E-Voting dijelaskan sebagai berikut: IV.1.1 Halaman Login Mahasiswa
Table 4.1 Halaman login mahasiswa
Menu Deskripsi Nama File
Form Login File untuk menangani inputan login pemilih
Login.php
Login File untuk menangani proses seleksi login pemilih
Login_manager.php
19 IV.1.2 Halaman Voting
Table 4.2 Halaman voting
Menu Deskripsi Nama File
Form Voting File untuk menanganin Voting index.php Voting File untuk menangani proses
Voting
voting_manager.php
20 IV.1.3 Halaman Hasil
Table 4.3 Halaman Hasil Voting
Menu Deskripsi Nama File
Hasil File untuk menampilkan hasil Index.php
Gambar4.3 Antarmuka hasil
IV.2 Implementasi Fungsi PHP
Tabel 4.4. Fungsi PHP
Nama Fungsi Deskripsi Nama File Fisik
Koneksi database File untuk
menghubungkan website dengan database
config.php
Halaman utama File untuk menangani halaman
Utama
Index.php
Form login pemilih File untuk menangani inputan data login pemilih
21 Login pemilih File untuk menangani
proses
seleksi login pemilih
Login_manager.php
Logout pemilih File untuk menangani proses logout pemilih
Logout.php
Pemrosesan pemilihan File untuk menangani proses pemilihan
Voting_manager.php
IV.3 Implementasi Database IV.3.1 Tabel tb_mhs
Tabel 4.5. Tabel implementasi database tb_mhs
Nama Field Tipe Panjang Kunci Atribut
id_mhs Int 11 PK Not null
Nim Varchar 100 Unique Not null
Nama Varchar 100 Not null
Password Varchar 200 Not null
Jurusan Varchar 100 Not null
No_hp Varchar 20 Not null
Sts_mhs Varchar 50 Not null
Sts_pml_mhs Varchar 50 Not null
Sts_pml_ver Varchar 50 Not null
Sts_voting Varchar 50 Not null
22 IV.3.2 Tabel tb_kandidat
Tabel 4.6. Tabel implementasi database tb_kandidat
Nama Field Tipe Panjang Kunci Atribut
Id Int 11 PK Not null
Nama_pasangan Varchar 100 Not null
url_image Varchar 150 Not null
Visi_misi Varchar 200 Not null
IV.3.3 Tabel tb_hasil
Tabel 4.7. Tabel implementasi database tb_hasil
Nama Field Tipe Panjang Kunci Atribut
id Int 11 PK Not null
Kode_unik_mhs Varchar 100 Unique Not null
Kandidat_pil Varchar 150 Not null
23 IV.4 Pengujian
IV.4.1 Pengujian Pemilih
Tabel 4.8. Tabel pengujian
No Nama Proses Skenario Uji Data Uji Target Validasi
1 Login - Pemilih belum di verifikasi.
- Pemilihan masih di tutup.
- Pemilih memasukan data ke form login. - Pemilih mengklik
tombol “masuk”.
Nim : 3311101047 Password : 3311101047
Login tidak berhasil dan muncul pesan kesalahan
2 Login - Pemilih sudah di verifikasi.
- Pemilihan masih di tutup.
- Pemilih memasukan data ke form login. - Pemilih mengklik
tombol “masuk”.
Nim : 3311101047 Password : 3311101047
Login berhasil dan muncul pesan bahwa pemilihan masih ditutup.
Nim : 3311101047 Password : 3311101049
Login gagal dan muncul pesan kesalahan
24 3 Login - Pemilih sudah di
verifikasi. - Pemilihan sudah
dibuka.
- Pemilih memasukan data ke form login. - Pemilih mengklik
tombol “masuk”.
Nim : 3311101047 Password : 3311101047
Login berhasil dan muncul form voting
4 Voting - Pemilih mengklik salah satu kandidat
Memilih kandidat no.urut 1 Pemilihan berhasil dan muncul pesan dan kode unik pemilihan yang
ter-generated secara otomatis bahwa sudah
memilih. Kemudian pemilih logout secara
otomatis
5 Login hasil - Pemilih sudah memilih
- Pemilih sudah di verifikasi.
Nim : 3311101047 Password : 3311101047
Login berhasil dan muncul hasil pemilihan
25 - Pemilihan sudah
ditutup.
- Pemilih memasukan data ke form login. - Pemilih mengklik
tombol “masuk”. 6 Logout - Pemilih mengklik
tombol “keluar”
Pemilih berhasil keluar dan kembali ke form
login
26
BAB V
Kesimpulan dan Saran
V.1 Kesimpulan
1. E-voting dapat terbantu proses pemungutan suara dari mulai proses pemilihan hingga perhitungan suara secara terkomputerisasi.
2. E-voting hanya dapat menangani pemilihan yang dilakukan oleh Komisi Pemilihan Raya(K-Pira).
3. E-voting dapat diakses di pc pada saat pemilihan.
V.2 Saran
Sebagai langkah pengembangan aplikasi ini pada masa yang akan datang, maka saran yang dapat diberikan adalah:
1. Diperlukan sistem yang dapat membuat password user, secara acak atau generated password, untuk meningkatkan keamanan pengguna.
27
Daftar Pustaka
1. Priyono, Edi dan Fereshti Nurdiana Dihan.(2010)” E-voting: Urgensi Transparansi dan Akuntabilitas”, Universitas Muhammadiyah Solo.
2. Sibero, Alexander F.K.” Kitab Suci WEB PROGRAMING”, Mediakom, Yokyakarta, 2011.
3. Leman(1998). Metodologi Pengembangan Sistem Informasi. Jakarta:PT Elex Media Komputindo.
4. Rivest, Ronald L. (2000) : Electronic Voting, Massachusetts Institute of Technology, United States.