PERANCANGAN DAN IMPLEMENTASI SISTEM E-PEMILU UNTUK PEMILIHAN KETUA BEM MENGGUNAKAN PHP DAN MYSQL TUGAS AKHIR Diajukan Sebagai Syarat Untuk Memperoleh Gelar Sarjana Strata 1 Fakultas Teknik Universitas Muhammadiyah Malang Oleh : Ahmad Misbahul Khoir 08560387 JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS MUHAMMADIYAH MALANG 2013
LEMBAR PERSETUJUAN PERANCANGAN DAN IMPLEMENTASI SISTEM E-PEMILU UNTUK PEMILIHAN KETUA BEM MENGGUNAKAN PHP DAN MYSQL TUGAS AKHIR Disusun Oleh : AHMAD MISBAHUL KHOIR NIM : 08560387 Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang Pembimbing I Menyetujui, Pembimbing II Eko Budi C., S.Kom, MT Agus Eko Minarno, S.Kom NIP : 108.9504.0330 NIDN : 0729118203
LEMBAR PENGESAHAN PERANCANGAN DAN IMPLEMENTASI SISTEM E-PEMILU UNTUK PEMILIHAN KETUA BEM MENGGUNAKAN PHP DAN MYSQL TUGAS AKHIR Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang Disusun Oleh : Ahmad Misbahul Khoir 08560387 Tugas Akhir ini telah diuji dan dinyatakan lulus melalui sidang majelis penguji pada tanggal 26 April 2013 Penguji I Menyetujui, Penguji II Sofyan Arifianto, S.Si, M.Kom Hardianto Wibowo, S.Kom NIDN : 0721038602 Mengetahui, Ketua Jurusan Teknik Informatika Eko Budi Cahyono, S.Kom, MT NIP: 108.9504.0330
LEMBAR PERNYATAAN Yang bertanda tangan dibawah ini : NAMA : AHMAD MISBAHUL KHOIR NIM : 08560387 FAK. / JUR. : TEKNIK / TEKNIK INFORMATIKA Dengan ini saya menyatakan bahwa Tugas Akhir dengan judul PERANCANGAN DAN IMPLEMENTASI SISTEM E-PEMILU UNTUK PEMILIHAN KETUA BEM MENGGUNAKAN PHP DAN MYSQL beserta seluruh isinya adalah karya saya sendiri dan bukan merupakan karya tulis orang lain, baik sebagian maupun seluruhnya, kecuali dalam bentuk kutipan yang telah disebutkan sumbernya. Demikian surat pernyataan ini saya buat dengan sebenar-benarnya. Apabila kemudian ditemukan adanya pelanggaran terhadap etika keilmuan dalam karya saya ini, atau ada klaim dari pihak lain terhadap keaslian karya saya ini maka saya siap menanggung segala bentuk risiko / sanksi yang berlaku. Mengetahui, Malang, 13 Juni 2013 Dosen Pembimbing Yang membuat pernyataan, (Eko Budi C., S.Kom, MT) (Ahmad Misbahul Khoir) NIP : 108.9504.0330 NIM. 08560387
KATA PENGANTAR Alhamdulillah, puji syukur kehadirat Allah SWT, karena berkat rahmat dan hidayah-nya sehingga penulis akhirnya dapat menyelesaikan Skripsi yang berjudul : PERANCANGAN DAN IMPLEMENTASI SISTEM E-PEMILU UNTUK PEMILIHAN KETUA BEM MENGGUNAKAN PHP DAN MYSQL Tak lupa juga melalui kesempatan yang sangat berharga ini Penyusun menyampaikan ucapan terima kasih yang sebesar-besarnya kepada semua pihak yang telah membantu dan terlibat dalam penyelesaian skripsi ini. Kesempurnaan hanyalah milik Allah, untuk itu Penulis menyadari bahwa apa yang Penulis susun ini jauh dari kata sempurna. Karena itu penulis mengharapkan kritik, saran dan pendapat yang sifatnya membangun. Terima kasih untuk segala perhatiannya. Penulis berharap semoga skripsi ini dapat bermanfaat dan berguna bagi semua pihak. Malang, 13 Juni 2013 Penulis
DAFTAR ISI COVER i LEMBAR PERSETUJUAN.. ii LEMBAR PENGESAHAN iii LEMBAR PERNYATAAN iv ABSTRAKSI... v ABSTRACT... vi LEMBAR PERSEMBAHAN vii KATA PENGANTAR ix DAFTAR ISI... x DAFTAR GAMBAR.. xiv DAFTAR TABEL... xvi BAB I PENDAHULUAN 1.1 Latar Belakang... 1 1.2 Rumusan Masalah 2 1.3 Tujuan Penelitian..... 2 1.4 Batasan Masalah.. 2 1.5 Metodologi Penelitian..... 3 1.6 Sistematika Penulisan... 5 BAB II LANDASAN TEORI 2.1 Demokrasi, Pemilu, dan E-pemilu.. 6 2.1.1 Demokrasi.. 6 2.1.2 Pemilu... 6 2.1.3 E-pemilu. 8
2.2 HTML... 8 2.2.1 Pengertian HTML... 8 2.2.2 CSS. 9 2.2.3 Javascript... 10 2.3 PHP.. 12 2.3.1 Pengertian PHP... 12 2.3.2 Sejarah singkat PHP 12 2.3.3 Kelebihan-kelebihan PHP... 13 2.4 MySQL. 14 2.4.1 Pengertian MySQL.. 14 2.4.2 DDL (Data Definition Language) 15 2.4.3 DML (Data Manipulation Language).. 16 2.5 TCP / IP 17 2.6 Jaringan Client-Server.. 18 BAB III ANALISA DA PERANCANGAN SISTEM 3.1 Analisa Kebutuhan... 21 3.1.1 Bahasa pemrograman yang digunakan... 21 3.1.2 Analisa Sistem Yang Sudah Ada 21 3.1.3 Keamanan Pada Sistem.. 22 3.1.4 Kebutuhan Fungsional 22 3.1.5 Kebutuhan non-fungsional.. 23 3.2 Perancangan sistem.. 24 3.2.1 Arsitektur Sistem. 24 3.2.2 Proses Bisnis dan Alur Pemilihan 25 3.2.3 Flowchart. 26
3.2.4 Usecase dan Activity Diagram... 28 3.2.5 Desain Database.. 35 3.2.6 Desain Interface... 38 BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM 4.1 Implementasi 45 4.1.1 Halaman Login 45 4.1.2 Halaman Menu Home. 46 4.1.3 Halaman Kandidat.. 47 4.1.4 Halaman Monitoring... 51 4.1.5 Halaman Pendaftaran.. 53 4.1.6 Halaman Setting Bilik. 54 4.1.7 Halaman Kertas Suara. 56 4.1.8 Halaman Hasil Perhitungan Suara... 58 4.2 Pengujian Sistem.. 60 4.2.1 Proses pada Halaman Login 60 4.2.2 Proses pada Halaman Home 60 4.2.3 Proses pada Halaman Kandidat... 61 4.2.4 Proses pada Halaman Monitoring... 62 4.2.5 Proses pada Halaman Pendaftaran.. 62 4.2.6 Proses pada Halaman Setting Bilik. 62 4.2.7 Proses pada Halaman Kertas Suara. 63 4.2.8 Proses pada Halaman Perhitungan Suara 63
BAB V PENUTUP 5.1 Kesimpulan... 64 5.2 Saran. 64 DAFTAR PUSTAKA... 65 LAMPIRAN.. 66
DAFTAR GAMBAR Halaman Gambar 2.1 CSS : Inline style sheet... 10 Gambar 2.2 CSS : Embedded style sheet... 10 Gambar 2.3 CSS : Linked style sheet. 10 Gambar 2.4 Client-Server system.. 19 Gambar 3.1 Arsitektur sistem 24 Gambar 3.2 Proses bisnis dan alur pemilihan 25 Gambar 3.3 Flowchart pendaftaran pemilih.. 26 Gambar 3.4 Flowchart pemilihan.. 27 Gambar 3.5 Usecase untuk operator. 28 Gambar 3.6 Activity diagram Mendaftarkan pemilih 29 Gambar 3.7 Activity diagram insert kandidat 30 Gambar 3.8 Activity diagram edit kandidat... 31 Gambar 3.9 Activity diagram hapus kandidat... 32 Gambar 3.10 Activity diagram menampilkan hasil perhitungan. 33 Gambar 3.11 Usecase untuk pemilih. 33 Gambar 3.12 Activity diagram memilih kandidat. 34 Gambar 3.13 Activity diagram daftar 35 Gambar 3.14 Desain database 36 Gambar 3.15 Desain interface Login. 38 Gambar 3.16 Desain interface Home. 38 Gambar 3.17 Desain interface Manajemen kandidat. 39 Gambar 3.18 Desain interface Kandidat baru 40 Gambar 3.19 Desain interface Monitoring bilik.... 41 Gambar 3.20 Desain interface Pendaftaran pemilih... 41 Gambar 3.21 Desain interface Setting bilik... 42 Gambar 3.22 Desain interface Kertas suara... 43 Gambar 3.23 Desain interface Hasil perhitungan suara. 44 Gambar 4.1 Tampilan login 46 Gambar 4.2 Tampilan home 46
Gambar 4.3 Tampilan kandidat.. 47 Gambar 4.4 Tampilan kandidat baru.. 48 Gambar 4.5 Coding : Upload foto.. 49 Gambar 4.6 Coding : Fungsi redirectpage. 49 Gambar 4.7 Tampilan informasi kandidat. 50 Gambar 4.8 Tampilan monitoring bilik suara 51 Gambar 4.9 Coding : Monitoring bilik suara. 52 Gambar 4.10 Tampilan pendaftaran pemilih.. 53 Gambar 4.11 Coding : Mengambil waktu sekarang pada computer.. 54 Gambar 4.12 Tampilan setting bilik... 55 Gambar 4.13 Coding : Session nomer bilik 55 Gambar 4.14 Tampilan kertas suara non-aktif... 56 Gambar 4.15 Coding : CSS blur and no action page. 57 Gambar 4.16 Coding : Javascript auto reload 57 Gambar 4.17 Tampilan kertas suara aktif... 58 Gambar 4.18 Tampilan hasil perhitungan suara. 59
DAFTAR TABEL Halaman Tabel 2.1 Perbandingan VB dengan PHP.. 14 Tabel 3.1 Kebutuhan fungsional 23 Tabel 3.2 Tabel Kandidat.. 37 Tabel 3.3 Tabel Pemilih. 37 Tabel 3.4 Tabel Bilik.. 37 Tabel 3.5 Tabel Admin... 37 Tabel 4.1 Pengujian Halaman Login.. 60 Tabel 4.2 Pengujian Halaman Home.. 61 Tabel 4.3 Pengujian Halaman Kandidat. 61 Tabel 4.4 Pengujian Halaman Kandidat Baru 61 Tabel 4.5 Pengujian Halaman Monitoring. 62 Tabel 4.6 Pengujian Halaman Pendaftaran 62 Tabel 4.7 Pengujian Halaman Setting Bilik 62 Tabel 4.8 Pengujian Halaman Kertas Suara... 63 Tabel 4.9 Pengujian Halaman Hasil Perhitungan... 63
DAFTAR PUSTAKA [1] Hopkins Callum. PHP sessions diambil dari : http://phpmaster.com/phpsessions, diakses 19 Februari 2013. [2] Nugroho Bunafit. 2008. Latihan Membuat Aplikasi WEB PHP dan MySQL Dengan Dreamweaver MX (6,7,2004) dan 8. Gava Media: Yogyakarta. [3] PA Yowana Deby. 2011. Pembangunan Modul Manajemen Kandidat dan Pemilihan Pada CMS E-Voting Quadro 7. Politeknik Telkom Bandung : Bandung. [4] Peranginan Kasiman. 2006. Aplikasi WEB dengan PHP dan MySQL. Penerbit Andi: Yogyakarta. [5] Shalahuddin Muhammad. 2009. Pembuatan Model E-Voting Berbasis WEB (Studi Kasus Pemilu Legeslatif dan Presiden Indonesia). Tesis ITB: Bandung. [6] Stalling William. 2007. Komunikasi dan Jaringan Nirkabel (Edisi Kedua). Erlangga. [7] Yusuf Raka. Pemrograman Berbasis Web 2 (Modul 11) diambil dari : kk.mercubuana.ac.id/files/1544-11-321161401817.pdf, diakses 21 Januari 2013.