Operator menginputkan NIM Mahasiswa Sistem Mengecek Status Pemilih
Muncul pesan hak pilih sudah digunakan Hak pilih
sudah digunakan
Sistem membuka halaman buka bilik
ya
tidak Operator
Sistem
Operator Membuka bilik Sistem Mengecek Status Bilik
Muncul pesan bilik masih digunakan
Bilik sedang digunakan
Sistem menampilkan halaman pemilih di bilik
suara ya tidak Operator Sistem Sistem membuka halaman buka bilik
Pemilih memilih kandidat Sistem menyimpan pilihan pemilih Sistem mencetak pilihan pemilih Data berhasil disimpan
Muncul Pesan Error ya tidak Pemilih Sistem Pemilih menghubungi operator Pemilih memasukkan hasil cetakan ke kotak
suara
Admin membuka halaman hasil vote
Sistem menampilkan hasil pemilu
Data akan dicetak
Sistem mencetak hasil pemilu tidak
ya Admin
Sistem
3.2.2 Diagram Sequence Bilik (UI) Operator Remote Server Bilik (Client) Server Bilik (Server) Sample Server Implement OpenUI(Pemilih, tps, jumlah kandidat) OpenUI(Pemilih, tps, jumlah kandidat) BilikI(Pemilih, tps, jumlah kandidat) return return return return Operator BilikI(Pemilih, tps, jumlah kandidat)
Gambar 3.7 Diagram Sequence Buka Bilik Suara
CekNim (UI) Remote Server Utama Serverpemilu (Client) ServerPemilu (Server) Sample Server Implement GetDataPemilih dariiNIM(NIM) GetDataPemilih dariiNIM(NIM) GetDataPemilih dariiNIM(NIM) return return return return Operator GetDataPemilih dariiNIM(NIM) PemilihDAO return GetDataPemilih( NIM)
Halaman vote Server Pemilu (Client)
Server Pemilu (Server)
Server Pemilu
implement Vote DAO
Boolean Vote (NIM, Kandidat,tps
prodi) Boolean Vote(NIM,
Kandidat,tps
prodi) BooleanVote
(NIM, Kandidat,tps
prodi) Boolean Vote
(NIM, Kandidat,tps prodi) return return return return Pemiih
Gambar 3.9 Diagram Sequence Pilih Kandidat
CekNim (UI) Remote Server Utama Serverpemilu (Client) ServerPemilu (Server) Sample Server Implement skorTotalPerKan didat() skorTotalPerKan didat() skorPerKandidat () return return return return Operator skorlPerKandidat () KandidatDAO return skorTotalPerKan didat()
3.2.3 Desain Database 3.2.3.1 Database Model Kandidat noKandidat :Varchar (5) nimPresiden :Varchar (10) namaPresiden :Varchar (50) prodiPresiden: :Varchar (50) nimWapres :Varchar (10) namaWapres :Varchar (50) prodiWapres :Varchar (50) Foto :Varchar (50) Panitia Nama :Varchar (50) Nim :Varchar (10) Username :Varchar (50) Password :Varchar (10) Jabatan :Varchar (50) Pemilih NIM :Varchar (10) NamaPemilih :Varchar (100) StatusVoting :Varchar (100) Prodi: :Varchar (50) Skor TPS ID TPS :Varchar (10) NoKandidat :Varchar (50)
Skor Pemiih :Varchar (50)
Gambar 3.11 Model database
3.2.3.2 Normalisasi
1. Tabel Pemilih
nim (PK) namaPemilih statusVoting Prodi
1NF (First Normal Form)
Pada tabel Pemilih, data setiap atribut memiliki satu nilai tunggal dalam satu baris.
2NF (Second Normal Form)
namaPemilih, statusVoting, prodi bergantung penuh pada nim.
3NF (Third Normal Form)
Pada tabel Pemilih sudah memenuhi 2NF.
Pada tabel Pemilih tidak memuat kebergantungan transitif, karena atribut bukan kunci tidak bergantung pada atribut bukan kunci lainnya.
2. Tabel Kandidat
noKandidat (PK)
nimPresiden namaPresiden prodipresiden nimWapres namaWapres prodiWapres Foto
1NF (First Normal Form)
Pada tabel Kandidat, data setiap atribut memiliki satu nilai tunggal dalam satu baris.
2NF (Second Normal Form)
nimPresiden, namaKandidat, prodiKandidat, nimWapres, namaWapres, prodiWapres bergantung penuh pada noKandidat, foto.
3NF (Third Normal Form)
Pada tabel Kandidat sudah memenuhi 2NF.
Pada tabel Kandidat tidak memuat kebergantungan transitif, karena atribut bukan kunci tidak bergantung pada atribut bukan kunci lainnya.
3. Tabel Panitia
nim Nama Password username Jabatan
1NF (First Normal Form)
Pada tabel panitia, data setiap atribut memiliki satu nilai tunggal dalam satu baris.
2NF (Second Normal Form)
Pada tabel panitia sudah memenuhi 1NF.
3NF (Third Normal Form)
Pada tabel panitia tidak memuat kebergantungan transitif, karena atribut bukan kunci tidak bergantung pada atribut bukan kunci lainnya.
4. Tabel Skor TPS
idTPS noKandidat Prodi pemilih
1NF (First Normal Form)
Pada tabel Skor TPS, data setiap atribut memiliki satu nilai tunggal dalam satu baris.
2NF (Second Normal Form)
Pada tabel Skor TPS sudah memenuhi 1NF.
idTPS dan noKandidat merupakan primary key dari tabel Kandidat dan TPS
3NF (Third Normal Form)
Pada tabel Skor TPS sudah memenuhi 2NF.
Pada tabel Skor TPS memiliki primary key dari kedua tabel yang direlasikan yaitu tabel TPS dan tabel Kandidat.
3.2.3.3 Model Fisikal (Struktur Tabel Dalam Dbms)
1. Tabel Pemilih
Atribut Tipe Panjang Kendala
Nim Varchar2 10 Primary Key
namaPemilih Varchar2 50 Not Null
statusVoting Varchar2 5 Not Null
Prodi Varchar2 50 Not Null
2. Tabel Kandidat
Atribut Tipe Panjang Kendala
noKandidat Varchar2 5 Primary Key
nimPresiden Varchar2 10 Not Null
namaPresiden Varchar2 50 Not Null
Prodipresiden Varchar2 50 Not Null
nimWapres Varchar2 10 Not Null
namaWapres Varchar2 50 Not Null
prodiWapres Varchar2 50 Not Null
Foto Varchar2 50 Not Null
3. Tabel panitia
Atribut Tipe Panjang Kendala
nim Varchar2 10 Primary Key
Nama Varchar2 50 Not Null
Password Varchar2 10 Not Null
Jabatan Varchar2 10 Not Null
4. Tabel Skor TPS
Atribut Tipe Panjang Kendala
idTPS Varchar2 10 Foreign Key
noKandidat Varchar2 5 Foreign Key
3.2.4 Desain Tampilan
Kolom lokasi file data pemilih
Kolom tampilan isi data pemilih
Buka file
Tambah Data
Waktu mulai vote
simpan
Waktu selesai vote
Gambar 3.13 Desain antar muka Setting waktu pemungutan suara
Foto kandidat
cetak
Foto kandidat
Skor Skor
Foto kandidat
Tambah Data
Kolom data kandidat
Gambar 3.15 Desain antar muka tambah data kandidat capres-cawapres BEMU
Foto kandidat
Edit data kandidat
Kolom data kandidat
Nomor kandidat
Hapus data kandidat
Kolom data kandidat
Foto kandidat
Gambar 3.17 Desain antar muka Hapus data kandidat Capres-cawapres BEMU
Fotob Kandidat Foto Kandidat
Pilih
Kolom pencarian
Kolom hasil Pencarian
Cek status
Gambar 3.19 Desain antar muka cek status pemilih
Pilihan Bilik
Data Pemilih Buka Bilik
3.2.5 Desain Topologi Jaringan SWITCH Bilik 2 Bilik 3 Bilik 4 Bilik 1 Server Operator
Gambar 3.21 Topologi jaringan sistem ePemilu
Topologi pada gambar diatas menggunakan 4 bilik yang nantinya akan digunakan pemilih menggunakan hak pilihnya, 4 bilik tersebut dihubungkan ke komputers srver dimana data diproses dan disimpan, serta komputer operator yang akan digunakan operator untuk mengecek status hak pemilih serta membukakan bilik. Komputer komputer tersebut dihubungkan melalui switch.
3.2.6 Algoritma
3.2.6.1. Login Operator. 1. Mulai.
2. Operator memasukkan Username. 3. Operator memasukkan Password. 4. Sistem menerima masukan Username. 5. Sistem menerima masukan Password. 6. Operator menekan button Login.
7. Sistem mencocokkan data Username dan Password yang dimasukkan dengan data yang ada dalam database.
- Jika masukan benar, maka akan masuk ke Frame HomeOperator.
- Jika masukan salah, maka akan muncul pesan “Masukkan
Username dan Password dengan Benar”.
8. Selesai.
3.2.6.2. Mengaktifkan bilik suara. 1. Mulai.
2. Operator memilih bilik yang akan diaktifkan. 3. Sistem menerima masukan IP Address. 4. Operator menekan button OK.
5. Sistem mencocokkan data IP pada bilik.
- Jika masukan benar, maka sistem akan mengaktifkan bilik. - Jiika masukan salah, maka sistem tidak akan mengaktifkan
bilik. 6. Selesai.
3.2.6.3. Memvalidasi Kehadiran. 1. Mulai.
3. Sistem menerima masukan nim.
4. Sistem mencocokkan NIM pada database.
- Jika masukan benar, maka sistem akan menampilkan data mahasiswa dengan NIM tersebut.
- Jika masukan salah, maka sistem tidak akan menampilkan data mahasiswa dengan NIM tersebut.
5. Operator memilih NIM pada TabelDaftarHadir. 6. Operator menekan button OK.
7. Sistem akan mengupdate statusVoting menjadi true berdasarkan parameter NIM tersebut.
8. Selesai.
3.2.6.4. Login KPU. 1. Mulai.
2. Ketua PANITIA memasukkan Username. 3. Ketua PANITIA memasukkan Password. 4. Sistem menerima masukan Username. 5. Sistem menerima masukan Password. 6. Ketua PANITIA menekan button Login.
7. Sistem mencocokkan data Username dan Password yang dimasukkan dengan data yang ada dalam database.
- Jika masukan benar, maka akan masuk ke Frame HomeKPU.
- Jika masukan salah, maka akan muncul pesan “Masukkan
Username dan Password dengan Benar”.
8. Selesai.
3.2.6.5. Melihat Hasil Vote. 1. Mulai.
3. Sistem mencocokkan data berdasarkan parameter idKandidat ke dalam database.
4. Sistem menampilkan skor sesuai dengan parameter. 5. Selesai.
3.2.6.6. Mencetak Laporan Hasil Vote. 1. Mulai.
2. Sistem menampilkan halaman Frame HasilVote. 3. Ketua PANITIA menekan button Cetak.
4. Sistem mengambil nilai dari parameter idKandidat.
5. Sistem mencocokkan data berdasarkan parameter idKandidat ke dalam database.
6. Sistem menampilkan skor sesuai dengan parameter. 7. Ketua PANITIA menekan button Print.
8. Sistem mencetak laporan hasil vote. 9. Selesai.
3.2.6.7. Memilih Calon Presiden BEM. 1. Mulai.
2. Pemilih memilih radio button pada salah satu kandidat presiden BEM.
3. Sistem menerima masukkan pilihan vote. 4. Pemilih menekan button Pilih.
5. Sistem menampilkan halaman verifikasi.
- Jika menekan button Ya, maka sistem akan mengambil nilai dari parameter noKandidat, dan akan mengupdate skorTPS + 1.
- Jika menekan button Tidak, maka sistem akan menampilkan halaman Frame HalamanVote.
53
BAB IV
Implementasi dan Analisa
4.1Diagram Kelas