Aplikasi E-Voting Berbasis Client-Server (Contoh kasus Pemilihan Ketua umum di Forum Warga Betawi Ciracas)

(1)

SKRIPSI

Diajukan untuk Menempuh Ujian Akhir Sarjana Program Strata Satu Jurusan Teknik Informatika

Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia

ANJAR FEBRIANTO

10104070

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

UNIVERSITAS KOMPUTER INDONESIA

BANDUNG


(2)

(CONTOH KASUS PEMILIHAN KETUA UMUM

DI FORUM WARGA BETAWI CIRACAS)

ANJAR FEBRIANTO

10104070

Menyetujui,

LEMBAR PENGESAHAN

Pembimbing I

Andri Heryandi, S.T NIP. 41277006007

Ketua Jurusan Teknik Informatika

Mira Kania Sabariah, S.T., M.T. NIP. 41277006008


(3)

(CONTOH KASUS PEMILIHAN KETUA UMUM

DI FORUM WARGA BETAWI CIRACAS)

ANJAR FEBRIANTO

10104070

Penguji II

Andri Heryandi, S.T NIP. 41277006007

Penguji III

Irawan Afrianto, S.T NIP. 41277006009 Penguji I

Dian Dharmayanti, S.T NIP. 41277006005


(4)

Perihal : Plagiat Tugas Akhir

Saya yang bertanda tangan dibawah ini :

Nama

: Anjar Febrianto

NIM

:

10104070

Judul Tugas Akhir

:

Menyatakan bahwa saya tidak melakukan tindakan meniru, mengkopi atau

menjiplak tugas akhir/karya ilmiah yang telah ada. Apabila saya terbukti melakukan

kegiatan tersebut, maka saya bersedia untuk menerima sanksi uyang diberikan sesuai

dengan ketentuan yang ditetapkan dan berlaku di Jurusan Teknik Informatika

Universitas Komputer Indonesia (UNIKOM).

APLIKASI E-VOTING BERBASIS CLIENT-SERVER

(CONTOH KASUS PEMILIHAN KETUA UMUM DI

FORUM WARGA BETAWI CIRACAS)

Mengetahui,

Yang Memberi Pernyataan

(Anjar Febrianto)

Materai


(5)

i

Di Forum Warga Betawi Ciracas Jakarta)

Oleh :

ANJAR FEBRIANTO

10104070

E-Voting adalah penggunaan teknologi komputer pada pelaksanaan voting. Salah satu pilihan teknologi komputer yang digunakan untuk implementasi e-voting adalah dengan menggunakan arsitektur client-server. Jadi penggunaan all-computer-based voting system diharapkan mampu menggantikan proses voting manual.

Tujuan yang ingin dicapai dari pembuatan Aplikasi e-voting ini adalah dapat membantu petugas panitia dalam mengkalkulasi jumlah pemilih dan menghitung hasil pemilihan secara cepat dan akurat.

Dalam proses pembangunan aplikasi e-voting ini menggunakan Metodologi Penelitian observasi dan studi literatur. Untuk teknik analisis data menggunakan metode dan paradigma perangkat lunak secara metode waterfall yang merupakan salah satu teknik analisis data sedangkan untuk merancang aplikasi ini digunakan metode perancangan berorientasi objek dengan menggunakan Unifed Modelling Language (UML), UML merupakan sebuah bahasa yang telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem perangkat lunak berbasis objek.

Setelah melalui tahapan sesuai dengan metode pengembangan yang dipilih maka dalam pengimplementasian aplikasi e-voting ini memiliki tindak lanjut pengujian sistem yang terdiri dari pengujian alpha dimana pengujian ini menggunakan metode pengujian black box yang berfokus pada persyaratan fungsional perangkat lunak dan pengujian betha yaitu pengujian lapangan dengan pengolahan data statistik sebagai nilai akurasi hasil pilihan.

Kata kunci: pemilihan elektronik, voting, client, server, client-server, uml, pemodelan berorientasi objek


(6)

ii

Forums Warga Betawi Ciracas Jakarta)

by :

ANJAR FEBRIANTO

10104070

E-Voting is the use of computer technology in the implementation of the voting. One of the computer technology used for the implementation of e-voting is to use client-server architecture. So the use of all-computer-based voting system is expected to replace the manual process of voting.

Who want to achieve the goal of making e-voting application is able to help officers in the committee calculates the number of voters and the election results quickly and accurately.

In the process of development of e-voting application is using Research Methodology observation and study literature. Techniques for data analysis methods and software paradigm in the waterfall method is a technique for data analysis while designing the application to use this method of object-oriented design using Unifed Modeling Language (UML), UML is a language that has become standard in the industry for visualization, designing and documenting the software-based system object.

Once through the stages of development in accordance with the method selected in the application pengimplementasian e-voting has a follow-up test system that consists of alpha testing where this test using a black box testing method that focuses on functional requirements and software testing Betha field testing with the processing statistical data as the accuracy of the option value. Keyword: electronic voting, voting, client-server, uml

Keyword : electronic voting, voting, client, server, uml, unified modelling language


(7)

iii

Assalamu’alaikum Warahmatullahi Wabarakatuh

Segala puji bagi Allah SWT, Tuhan Yang Maha Mulia dan Maha Perkasa, Sang Maha Pencipta, Yang Tunggal dalam Dzat, yang tidak ada sekutu bagi-Nya., yang pertama dan tanpa permulaan, yang terakhir dan tanpa ada akhir Yang memberikan hikmah kejadian yang luar biasa dalam menapaki kehidupan kehambaan.. Shalawat beserta salam semoga senantiasa selalu terlimpah curah kepada makhluk-Mu yang paling utama, utusan-Mu yang paling mulia, yaitu Nabi Muhammad SAW beserta para keluarga, para kerabat, pengikutnya serta para ahlul bait di dunia dan akhirat.

Dengan segala akal, pikiran, jiwa serta totalitas yang penulis miliki dan berkat arrahman-arrahim-Nya penulis dapat menyelesaikan Tugas Akhir pada jenjang S-I Universitas Komputer Indonesia (UNIKOM) ini dengan baik. Adapun judul yang diambil yaitu ”APLIKASI E-VOTING BERBASIS

CLIENT-SERVER (CONTOH KASUS PEMILIHAN KETUA UMUM DI FORUM

WARGA BETAWI CIRACAS)”.

Adapun penyusunan Tugas akhir ini adalah sebagai prasyarat utama untuk memenuhi syarat kelulusan Program Pendidikan Strata 1 jurusan Teknik Informtika di Universitas Komputer Indonesia.

Penulis Menyadari dengan segala ketawadhuan banyak sekali terdapat kekurangan dan keterbatasan, dan jauh dari kesempurnaan karena kami sempurna


(8)

iv

harapkan agar nantinya bisa mendekati kesempurnaan.

Dalam penulisan skripsi ini, penulis banyak menerima bantuan dan dukungan dari berbagai pihak. Oleh karena itu pada kesempatan ini, penulis ingin mengucapkan terima kasih yang setulus-tulusnya kepada:

1. Kedua orang tuaku Bapak dan Ibu atas semua perhatian, dukungan serta do’a dan kasih sayangnya yang tak terhingga.

2. Adik-adikku Didit dan Refa serta keluarga yang telah memberikan dukungan moril maupun materil selama ini

3. Bapak Ir. Eddy Suryanto Sugoto Msc., selaku Rektor Universitas Komputer Indonesia.

4. Bapak Prof. Dr. Ir. Ukun Sastraprawira, Msc., selaku Dekan Fakultas Teknik dan Ilmu Komputer.

5. Ibu Mira Kania Sabariah, S.T., M.T. selaku Ketua Jurusan Teknik Informatika.

6. Ibu Tati Harihayati. M. S.T., M.T, selaku Dosen Wali IF-2.

7. Bapak Andri Heryandi, S.T. selaku Dosen pembimbing yang telah memberikan waktu dan kesempatan yang lebih, serta bantuan kepada penulis dalam penyusunan tugas akhir ini.

8. Seluruh Dosen Teknik Informatika yang telah memberikan pendidikan kepada penulis.


(9)

v semua nasihat spiritualnya.

11. Semua teman-teman mahasiswa UNIKOM terutama kelas IF-2 Chaos angkatan 2004 yang selalu belajar dan bercanda bersama selama ini.

12. Semua teman-teman Pondok Al-Misbar dan Forum WARBECI yang banyak membantu.

Akhirul kalam penulis mengharapkan mudah-mudahan skripsi ini dapat bermanfaat dan menjadi keberkahan buat semuanya. Amiin Yaa Raabbal’alamiin.

Wassalamu'alaikum Warahmatullahi Wabarakatuh

Bandung, Februari 2009

Penulis


(10)

1 1.1. Latar Belakang

Voting telah menjadi salah satu metode untuk mengambil keputusan penting dalam kehidupan manusia. Voting digunakan mulai dari tingkat masyarakat terkecil, yaitu keluarga, sampai dengan sebuah negara. Voting digunakan untuk menghimpun aspirasi dari seluruh elemen masyarakat, dan kemudian menemukan jalan keluar yang dianggap paling baik untuk menyelesaikan permasalahan. Dalam sebuah negara yang menganut sistem politik demokrasi, voting digunakan untuk mengambil keputusan negara yang sangat krusial, antara lain adalah untuk memilih wakil-wakil rakyat, atau untuk memilih pemimpin negara yang baru. Oleh karena itu, voting membutuhkan prosedur pelaksanaan yang dapat menjamin kerahasiaan dan keabsahan dari hasil pelaksanaan voting tersebut.

Perkembangan teknologi informasi saat ini telah membawa perubahan yang besar bagi manusia, termasuk untuk melaksanakan voting. Penggunaan teknologi komputer pada pelaksanaan voting ini dikenal dengan istilah electronic voting atau lazim disebut e-Voting. Pengertian E-Voting secara umum adalah penggunaan teknologi komputer pada pelaksanaan voting, pilihan teknologi komputer yang digunakan dalam implementasi dari e-voting sangat bervariasi, seperti penggunaan smart card untuk otentikasi pemilih, penggunaan internet


(11)

sebagai sistem pemungutan suara, penggunaan touch screen sebagai pengganti kertas suara, dan masih banyak lagi pilihan teknologi yang digunakan.

Forum Warga Betawi Ciracas (WARBECI) adalah suatu organisasi perkumpulan warga betawi yang ada di daerah Kecamatan Ciracas Jakarta Timur. Forum WARBECI ini tentunya memiliki anggota yang tidak sedikit, selama ini proses pemilihan ketua umum diruang lingkup Forum WARBECI masih dilaksanakan secara manual. Proses voting dilakukan di daerah cabang atau blok masing-masing, setelah itu hasil voting akan di gabungkan dengan blok lain, setelah hasil pemilihan sudah terkumpul semua baru dilakukan perhitungan suara. Proses pemilihan menual ini dinilai kurang efektif dan efisien karena menghabiskan banyak waktu, oleh karena itu dirasa perlu untuk membangun sebuah aplikasi e-Voting untuk melakukan pemilihan ketua umum di Forum WARBECI Jakarta.

Salah satu cara yang cukup mudah dan efisien dalam pembangunan aplikasi e-voting pemilihan adalah dengan menggunakan arsitektur client-server. Sistem ini menjadi sebuah implementasi yang lazim dalam jaringan komputer. Ada beberapa metode arsitektur lain misalnya peer-to-peer dan client-queue-client, tetapi metode arsitektur client-server memiliki lebih banyak keunggulan, satu diantaranya adalah kemudahan dalam pengorganisasian data dan informasi. Jadi penggunaan all-computer-based voting system diharapkan mampu menekan biaya pengeluaran dalam proses voting.


(12)

1.2. Identifikasi Masalah

Berdasarkan uraian pada latar belakang masalah, maka masalah yang timbul dalam mengerjakan tugas akhir ini adalah:

1. Proses voting yang manual yang menghabiskan banyak biaya dan waktu. 2. Bagaimana membangun sebuah sistem voting yang mudah penggunaannya. 1.3. Maksud dan Tujuan

Aplikasi ini dibangun dengan maksud membangun sebuah aplikasi e-voting yang berarsitektur client-server dengan contoh kasus adalah proses pemilihan Ketua umum di Forum WARBECI. Tujuan yang ingin dicapai dari pembangunan aplikasi ini adalah :

a. Membantu petugas panitia dalam mengkalkulasi jumlah pemilih yang ikut serta didalam pemilihan.

b. Membantu petugas panitia pemilihan dalam melakukan perhitungan secara cepat dan mengurangi resiko terjadinya kecurangan.

1.4. Batasan Masalah

Batasan masalah dibuat bertujuan untuk membatasi permasalahan yang akan diselesaikan. Adapun batasan masalah dalam penerapan aplikasi e-voting adalah sebagai berikut :

1. Otentifikasi pemilih agar tidak terjadi kesalahan dalam proses pemilihan. 2. Penanganan keamanan yang akan di bahas adalah:

a. Data pemilih yang sudah tercatat di database.

b. Kerahasiaan pemilih dalam melakukan voting/pemilihan. 3. Aplikasi e-voting ini berbasis Client-Server.


(13)

4. Aplikasi ini dibangun menggunakan Netbeans 6.5 sebagai IDE (Integrated Development Environment) dan untuk database menggunakan MySQL 5.

1.5. Metodologi Penelitian

Metodologi penelitian yang digunakan dalam penulisan tugas akhir ini adalah metode penelitian deskriptif. Metode deskriptif bertujuan untuk membuat deskripsi secara sistematis, faktual, dan akurat mengenai fakta-fakta dan sifat-sifat populasi daerah tertentu [5]. Dalam pelaksanaannya terdiri dari dua tahap, yaitu: 1.5.1 Tahap pengumpulan data

Tahap pengumpulan data yang digunakan dalam penelitian ini adalah sebagai berikut:

a. Studi Literatur

Pengumpulan data dengan cara mengumpulkan literatur, jurnal, paper dan bacaan-bacaan yang ada kaitannya dengan judul penelitian. b. Observasi.

Teknik pengumpulan data dengan mengadakan penelitian dan peninjauan langsung terhadap permasalahan yang diambil.

1.5.2 Tahap pembuatan perangkat lunak.

Tahap pengembangan sistem menggunakan metode incremental yang sudah dikembangkan dari Waterfall Model (gambar 1.1), karena metode incremental terdiri dari tahap-tahap yang memberikan kemudahan yaitu mampu mengakomodasi perubahan secara fleksibel dan produk yang dihasilkan pada increment pertama bukanlah prototype, tapi produk yang bisa berfungsi dengan spesifikasi dasar.


(14)

Tahapan-tahapan yang terdapat dalam model waterfall sebagai berikut: a. System / Information Engineering

Merupakan bagian dari sistem yang terbesar dalam pengerjaan suatu proyek, dimulai dengan menetapkan berbagai kebutuhan dari semua elemen yang diperlukan sistem dan mengalokasikannya kedalam pembentukan perangkat lunak.

b. Analisis

Merupakan tahap menganalisis hal-hal yang diperlukan dalam pelaksanaan proyek pembuatan perangkat lunak.

c. Design

Tahap penerjemahan dari data yang dianalisis kedalam bentuk yang mudah dimengerti oleh user.

d. Coding

Tahap penerjemahan data atau pemecahan masalah yang telah dirancang keadalam bahasa pemrograman tertentu.

e. Testing

Merupakan tahap pengujian terhadap perangkat lunak yang dibangun. f. Maintenance

Merupakan tahap akhir dimana suatu perangkat lunak yang sudah selesai dapat mengalami perubahan atau penambahan sesuai permintaan user.


(15)

Gambar 1.1 Skema incremental model yangmerupakan pengembangan dari metode waterfall [1]

1.5. Sistematika Penulisan

Berikut adalah sistematika penulisan dari laporan penelitian tugas akhir ini yang dibagi menjadi 5 (lima) bagian atau bab, yaitu :

BAB I PENDAHULUAN

Bab ini menerangkan secara umum mengenai latar belakang permasalahan serta penyebab timbulnya permasalahan, identifikasi masalah, batasan masalah, maksud dan tujuan penelitian serta sistematika penulisan.

BAB II LANDASAN TEORI

Bab ini berisi teori-teori pendukung yang berkaitan dengan topik yang dibahas dalam tugas akhir.

BAB III ANALISIS DAN PERANCANGAN

Bab ini berisi analisis dalam membangun sistem yang dibangun mulai dari analisis masalah, analisis prosedur, analisis basis data, analisis kebutuhan


(16)

fungsional dan analisis kebutuhan non fungsional. Pada perancangan berisi mengenai perancangan data, perancangan menu, perancangan antarmuka BAB IV IMPLEMENTASI

Bab ini berisi hasil implementasi dari hasil analisis dan perancangan disertai juga dengan hasil pengujian dari sistem yang dibangun.

BAB V KESIMPULAN DAN SARAN

Bab ini berisi kesimpulan tentang keseluruhan dari pembangunan sistem dan saran tentang sistem yang dibangun. 


(17)

8 2.1. E-Voting

2.1.1. Definisi E-Voting

1. E-Voting adalahsuatu metoda pengumpulan suara dengan menggunakan

perangkat elektronik

2. Remote voting adalah suatu cara/metoda pemberian suara pemilih pada

suatu tempat dimana saja, seperti di rumah, di kantor atau dijalan, artinya dilokasi mana saja asal ada kesempatan bisa melakukan pemilihan suara.

3. Supervised voting adalah suatu proses pemilihan suara (memberikan

suara) yang diawasi oleh petugas/pejabat pemilihan umum (KPU).

4. Remote electronic voting adalah pemilihan suara pada suatu tempat

dengan menggunakan perangkat elektronik, tanpa pengawasan petugas/pejabat pemilihan umum (KPU)

5. Internet Voting adalah pemilihan suara melalui media internet, bisa

dimana saja seperti dirumah , diperjalanan atau di tempat yang sudah disediakan

2.1.2. Macam-Macam Teknologi Voting

Ada enam macam teknologi voting yang umum digunakan yaitu: 1. Kertas Suara/ Surat Pemilihan (Paper Ballots)

Tekonologi ini adalah teknologi yang pertama dalam peradaban umat manusia dalam berdemokrasi, dimana kertas suara dijadikan dasar untuk


(18)

menghitung suara pemilih. Cara melakukan pemilihan adalah pemilih mengambil kertas suara yang sudah disediakan dalam bentuk formulir, nama-nama calon dan gambarnya sudah tercetak, setelah itu pemilih tinggal menusuk atau mencoblos photo atau symbol calon pilihannya dan memasukkannya kedalam suatu kotak suara yang sudah disediakan oleh petugas. Selanjutnya team atau anggota panitia akan melakukan penghitungan suara.

2. Lever Machines

Teknologi berikutnya (Technological advance) adalah Lever Machines yang dimulai diperkenalkan pada tahun 1892. Teknologi ini tidak terdapat dokumen suara. Pemilih memasukkan suara dalam suatu tempat dengan memilih daftar calon dan mengumpulkan masing-masing calon terpilih. Suara dicatat dan dihitung dengan Lever Machines

3. Punchcards

Teknologi punchcard, pertama kali dipakai untuk menghitung suara dengan menggunakan komputer yang dimulai pada tahun 1964. Dalam sistem ini, suara dicatat dengan memilih lubang-lubang padu kartu atau kertas komputer dan selanjutnya komputer akan membaca kartu suara. Kartu suara adalah sebagai dokumen suara pemilih yang tercatat.

Ada dua tipedari sistem punchcard yaitu kotak nomor dicetak pada kartu suara, dimana setiap kotak untuk pemilihan suara. Dan yang lainnya disebut Datavote yang mempunyai lubang-lubang pemilih yang menyatakan nama-nama kandidat atau memilih kandidatnya dengan cara melubangi kertas punchcard yang dicetak pada kartu suara.


(19)

4. Marksense Form

Teknologi ini dinamakan optical scan yang dimulai digunakan pada tahun 1980. Pada sistem ini pemilih menggunakan bentuk kertas dan menulis pada kotak atau bentuk oval berikut arah panah untuk mengarahkan calon pemilih. Jika suara sudah lengkap ditulis kemudian dibaca oleh komputer. Tulisan pemilih ditempatkan pada suatu tempat perhitungan dan selanjutnya akan dibaca melalui proses optical scanning dan langsung dihitung dengan bantuan mesin penghitung. Kira-kira 25 persen dari seluruh Negara telah menggunkan alat dengan cara seperti ini. Pada tahun 1992 telah meningkat dua kali lipat penggunaannya dan terus meningkat pemakainya

5. Electronic Voting

Teknologi electronic voting dimulai pada tahun 1970 yang disebut teknologi pencatatan langsung secara elektronik atau lebih dikenal dengan istilah DRE (direct recording electronic). Cara memilih dengan sistem ini adalah dengan memilih kandidat yang sudah tercetak pada layar komputer. Pemilih hanya menekan tombol pada display atau pada alat atau piranti yang mirip.

Contoh dari electronic voting adalah dengan menekan tombol suara pemilih langsung disimpan pada suatu piranti memori atau pada sirkit memori non volatile. Jika peralatan pemilihan menggunakan keyboard tulisan suara akan dicatat secara elektronik. Salah satu bentuk electronic voting electronic voting yang sedang dikembangkan adalah Internet Voting.


(20)

6. Remote Voting

Remote voting adalah suatu tempat pemungutan suara yang letaknya berjauhan atau pada tempat yang berbeda, teknologi ini bias menggunakan kertas yang dikirim melalui surat suara atau kartu suara, atau menggunakan suatu perangkat dengan kata lain bagaimana dokumen suara bisa dikirim ke suatu tempat untuk dihitung ditempat yang lain, cara ini tidak ada bedanya dengan pemungutan suara melalui surat , jadi remote voting adalah pemungutan suara dari tempat yang berbeda hanya saja cara atau media yang berbeda atau perangkat yang digunakan bisa berbeda-beda.[3]

2.1.3. Teknik Pengiriman E-Voting

Pengiriman E-voting dapat dilakukan dengan berbagai metoda atau dengan berbagai perangkat elektronik yang menjadi sarana pendukungnya.seperti contoh dibawah ini. Dalam gambar 2.1 adalah ilutrasi pengiriman E-voting dengan multi flatform artinya dengan sarana/ divice yang berbeda.


(21)

Gambar 2.1 Arsitektur pengiriman e-voting

1. Pemilih dapat memberikan suara melalui Internet

Dengan menggunakan bentuk web yaitu berupa halaman web di internet maka dapat mengirimkan input data dalam bentuk alphanumeric. Data yang dikirim sudah di enkripsi terlebih dahulu untuk menghindari dari penyadapan atau perubahan data.


(22)

2. Pemilih dapat memberikan suara melalui telepon

Dalam pesawat telepon terbaru menggunakan sistim digital , pada tombol-tombol nya berbasis angka., tetapi dapat mengidentifikasi pernyataan yes atau no atau satu, dua ,tiga.

Gambar 2.3 Telepon Digital

3. Pemilih dapat memberikan suara melalui pesan Text SMS

Pemilih diberikan dokumen petunjuk, user name dan PIN terlebih dahulu. Selanjutnya, sebelum mengirimkan pilihannya, pemilih juga diminta untuk memberikan nomor identitas atau nomor KTP sebagai salah satu usaha untuk mencegah pencurian identitas oleh orang lain. Jika pemilih sudah memberikan suara sebelumnya, tentu saja akan ditolak oleh sistem. Setelah mengirimkan SMS dengan format tersebut, pemilih akan mendapatkan SMS balasan berisi konfirmasi bahwa pilihan mereka telah diterima.


(23)

Gambar 2.4 Telepon seluler

4. Pemilih dapat memberikan suara melalui TV digital dengan menggunakan remote control TV digital.

Gambar 2.5 Remote TV digital

5. Pemilih dapat memberikan suara melalui surat dan dikirim melalui

post


(24)

6. Pemilih dapat memberikan suara melalui Kios (bilik suara )

Pemilih menyalurkan suaranya dengan cara datang ke suatu tempat yang sudah disediakan oleh panitia dan pemilih menyalurkan suaranya di bilik suara yang tertutup agar hasil pilihannya tidak diketahui oleh orang lain. Cara pemilihan seperti ini di sudah tidak asing lagi di Indonesia sudah.

Gambar 2.7 Kios (bilik suara)

2.2. Sistem

2.2.1. Analisis Sistem

Analisis sistem (sistem analis) merupakan tahapan yang sangat kritis dan penting karena kesalahan dalam tahap ini dapat mempengaruhi tahapan selanjutnya, Analisa sistem didefinisikan sebagai berikut :

“Penguraian dari suatu sistem informasi yang utuh kedalam bagian-bagian komponennya dengan maksud untuk mengidentifikasikan dan mengevaluasi permasalahan-permasalahan, kesempatan-kesempatan, hambatan-hambatan yang terjadi dan kebutuhan-kebutuhan yang diharapkan sehingga dapat diusulkan perbaikan-perbaikannya”.


(25)

Dalam tahap analisis terdapat langkah-langkah sebagai berikut: a. Identify yaitu mengidentifikasi masalah.

b. Understand yaitu memahami kerja dari sistem yang ada. c. Analyze yaitu menganalisis sistem.

d. Report yaitu membuat laporan hasil analisis.

2.2.2. Desain Sistem

Desain sistem didefinisikan sebagai berikut :

“Penggambaran, perencanaan dan pembuatan sketsa atau pengaturan dari beberapa elemen yang terpisah ke dalam satu kesatuan yang utuh dan berfungsi”. a. Tujuan Desain Sistem.

Desain sistem memunyai maksud dan tujuan sebagai berikut: 1. Untuk memenuhi kebutuhan kepada pemakai sistem.

2. Untuk memberikan gambaran yang jelas dan rancang bangun yang lengkap kepada pemrogram komputer dan ahli-ahli teknik yang terlibat.

Sasaran-sasaran yang harus dicapai agar desain sistem mencapai tujuan: 1. Desain sistem harus berguna, mudah dipahami dan nantinya mudah

digunakan.

2. Desain sistem harus dapat mendukung tujuan utama perusahaan.

3. Desain harus efektif dan efisien mendukung pengolahan transaksi yang, pelaporan manajemen dan mendukung keputusan yang akan dilakukan oleh manajemen, termasuk tugas-tugas lainnya yang tidak dapat dilakukan oleh komputer.


(26)

4. Desain sistem harus dapat mempersiapkan rancang bangun yang terinci untuk masing-masing komponen yang meliputi data dan informasi, simpanan data, metode-metode, prosedur-prosedur, orang-orang, perangkat keras, perangkat lunak dan pengendalian intern.

2.2.3. Model Perancangan Sistem

Langkah awal yang dilakukan dalam membangun sistem adalah dengan menentukan model sistem yang akan digunakan. Berikut ini akan dijelaskan mengenai model sistem waterfall. Dalam penelitian ini model sistem yang digunakan adalah model sistem waterfall dengan struktur seperti pada gambar 2.8 Berikut ini :

Gambar 2.8 Model Sistem Waterfall

Model sistem ini menuntut cara yang teratur dari suatu rangkaian yang mendekati perkembangan software, yang dimulai dengan suatu tingkatan kemajuan-kemajuan melalui analisa, perancangan, pengkodean, pengujian dan pemeliharaan. Model tersebut meliputi kegiatan aktifitas sebagai berikut :

System Engineering

System Analysis

Design

Coding

Testing


(27)

a. System/Information Engineering

Merupakan bagian dari sistem yang terbesar dalam pengerjaan suatu proyek, dimulai dengan menetapkan berbagai kebutuhan dari semua elemen yang diperlukan sistem dan mengalokasikannya kedalam pembentukan perangkat lunak.

b. System Analysis

Merupakan tahap menganalisis hal-hal yang diperlukan dalam pelaksanaan proyek pembuatan perangkat lunak.

c. Design

Perancangan berdasarkan analisis data kedalam bentuk gambaranaplikasi yang dibuat.

d. Coding

Menerapkan hasil perancangan dari aplikasi yang dibangun kedalam bahasa pemrograman tertentu.

e. Testing

Pengujian terhadap aplikasi yang dibangun. f. Maintenance

Tahap akhir dimana suatu perangkat lunak yang sudah selesai dapat mengalami perubahan-perubahan atau penambahan sesuai dengan permintaan user.

2.2.4. Alat Pengembangan Sistem

Untuk dapat melakukan langkah-langkah sesuai dengan yang diberikan oleh metodologi pengembangan sistem yang terstruktur, maka dibutuhkan alat


(28)

untuk melaksanakannya. Alat-alat yang digunakan dalam suatu metodologi umumnya berupa suatu gambar, diagram, atau grafik. Selain berbentuk gambar, alat-alat yang digunakan juga ada yang tidak berupa gambar atau grafik, seperti misalnya kamus data (data dictionary), pseudocode, serta formulir-formulir untuk mencatat dan menyajikan data, seperti :

1. Bagan Alir Informasi, bagian yang menggambarkan arus informasi berupa laporan, formulir, dan dokumen yang keluar atau masuk dari bagian – bagian tertentu dalam sistem.

2. Bagan Alir Sistem (System Flowchart), merupakan bagan yang menunjukkan arus pekerjaan secara keseluruhan dari sistem, yang menjelaskan urutan – urutan dari prosedur – prosedur yang ada didalam sistem.

3. Bagan Hubungan Database (Relational Database), dimaksudkan untuk mengidentifikasikan kebutuhan dan hubungan dari file – file database yang digunakan.

2.3. Software Pendukung

2.3.1. Netbeans 6.5

Netbeans sebagai IDE ditujukan untuk memudahkan pemrograman Java. Dalam Netbeans, pemrograman dilakukan berbasiskan visual dan event driven. Seperti IDE lain, misalnya Borland Delphi dan Microsoft Visual Studio. Untuk membuat dialog atau User Interface, kita tidak perlu membuat teks program secara manual baris per baris, tetapi cukup klik pada component pallete. Teks program akan dihasilkan secara otomatis.


(29)

Untuk memakai Netbeans IDE maka kita harus terlebih dahulu mempunyai driver JDK yang akan mendukung pembuatan perangkat lunak dengan menggunakan Netbeans IDE, maka sebelum menginstall Netbeans terlebih dahulu kita harus menginstal driver JDK. Netbeans yang dipakai pada pengembangan perangkat lunak ini adalah Netbeans 6.5 dan JDK 1.6.[12]

2.3.2. MySQL

MySQL adalah perangkat lunak Relational Database Management System (RDBMS) yang didistribusikan secara gratis dibawah lisensi GPL (General Public License). Dimana setiap orang bebas untuk menggunakannya, tapi tidak boleh dijadikan produk turunan yang bersifat Closed Source atau komersial.

MySQL sebenarnya merupakan turunan salah satu konsep utama dalam database sejak lama, yaitu SQL (Structure Query Language). SQL adalah sebuah konsep pengoperasian database, terutama untuk pemilihan atau seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis.

Keandalan suatu sistem database (DBMS) dapat diketahui dari cara kerja Optimizer-nya dalam melakukan proses perintah-perintah SQL, yang dibuat oleh user maupun program-program aplikasinya. Sebagai database server, MySQL dapat dikatakan lebih unggul dibanding database server lainnya dalam query data. Hal ini terbukti untuk query yang dilakukan oleh single user, kecepatan query MySQL bisa sepuluh kali lipat lebih cepat dari PostgreSQL dan lima kali lebih cepat dibanding Interbase.


(30)

2.4. Unified Modeling Language (UML)

Unified Modelling Language (UML) adalah sebuah bahasa yang berdasarkan grafik/gambar untuk memvisualisasi, menspesifikasikan, membangun, dan pendokumentasian dari sebuah sistem pengembangan software berbasis OO (Object-Oriented). UML sendiri juga memberikan standar penulisan sebuah sistem blue print, yang meliputi konsep bisnis proses, penulisan kelas-kelas dalam bahasa program yang spesifik, skema database, dan komponen-komponen yang diperlukan dalam sistem software.[10]

Meskipun UML adalah suatu standard dari Object Management Group (OMG), UML tidak hanya untuk memodelkan aplikasi perangkat lunak yang berorientasi objek. UML adalah suatu bahasa grafik yang dirancang untuk menjadi sangat fleksibel dan customizable. Hal ini memungkinkan kita untuk membuat beraneka jenis model, termasuk model untuk mengerti proses-proses bisnis, workflow, urutan dari query, aplikasi, database, arsitektur, dan lainnya[9].

Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax/semantik. Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan berbagai diagram piranti lunak. Setiap bentuk memiliki makna tertentu, dan UML syntax mendefinisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan. Notasi UML terutama diturunkan dari 3 notasi yang telah ada sebelumnya: Grady Booch OOD (Object-Oriented Design), Jim Rumbaugh OMT (Object Modeling Technique), dan Ivar Jacobson OOSE (Object-Oriented Software Engineering). [10]


(31)

2.4.1. Sejarah UML

Pendekatan analisa & rancangan dengan menggunakan model OO mulai diperkenalkan sekitar pertengahan 1970 hingga akhir 1980 dikarenakan pada saat itu aplikasi software sudah meningkat dan mulai komplek. Jumlah yang menggunakaan metoda OO mulai diuji cobakan dan diaplikasikan antara 1989 hingga 1994, seperti halnya oleh Grady Booch dari Rational Software Co., dikenal dengan OOSE (Object-Oriented Software Engineering), serta James Rumbaugh dari General Electric, dikenal dengan OMT (Object Modelling Technique).[11]

Secara resmi bahasa UML dimulai pada bulan oktober 1994, ketika Rumbaugh bergabung Booch untuk membuat sebuah project pendekatan metoda yang uniform/seragam dari masing-masing metoda mereka. Saat itu baru dikembangkan draft metoda UML version 0.8 dan diselesaikan serta di release pada bulan oktober 1995. Bersamaan dengan saat itu, Jacobson bergabung dan UML tersebut diperkaya ruang lingkupnya dengan metoda OOSE sehingga muncul release version 0.9 pada bulan Juni 1996. Hingga saat ini sejak Juni 1998 UML version 1.3 telah diperkaya dan direspons oleh OMG (Object Management Group), Anderson Consulting, Ericsson, Platinum Technology, ObjectTime Limited, dll serta di pelihara oleh OMG yang dipimpin oleh Cris Kobryn.[10]

UML adalah standar dunia yang dibuat oleh Object Management Group (OMG), sebuah badan yang bertugas mengeluarkan standar-standar teknologi object-oriented dan software component. [11]


(32)

2.4.2. Konsep Dasar UML

Dari berbagai penjelasan rumit yang terdapat di dokumen dan buku-buku UML. Sebenarnya konsepsi dasar UML dapat dirangkum dalam tabel berikut ini :

Tabel 2.1 Abstraksi Konsep Dasar UML

Major Area View Diagrams Main Concepts

Structural static view class diagram Class, association,

generalization, dependency, realization, antarmuka use case view use case

diagram

Use case, actor, association, extended, include, use case general-ization Implementation view, deployment view Component diagram Component, antarmuka, dependency, realization Deployment diagram Mode, component, dependency,location Dynamic State machine view State chart

diagram

State event, transition, action Activity view Activity

diagram

State, activity,

complemention, transition, fork, join

Interaction view Sequence diagram

Interaction, object, message, activation

Collaboration diagram

Collaboration, interaction, collaboration role, message Model

management

Model managent view

Class diagram Package, subsistem, model

Extensibility All All Constraint, stereotype, tagget values

Abstraksi konsep dasar UML yang terdiri dari structural classification, dynamic behavior, dan model management, bisa kita pahami dengan mudah apabila kita melihat tabel diatas dari Diagrams. Main concepts bisa kita pandang


(33)

sebagai term yang akan muncul pada saat kita membuat diagram. Dan view adalah kategori dari diagaram tersebut.

2.4.3. Diagram-diagram UML 1. Use Case Diagram

Use case diagram menggambarkan sebuah fungsi yang dibutuhkan oleh sebuah sistem. Dalam hal ini ada kondisi yang agak beda, yaitu disini tingkah laku dan domain sistem. Sebuah use case merepresentasikan sebuah interaksi antara pengguna dengan sebuah sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, membuat sebuah daftar aktifitas, dan sebagainya.

2. Class Diagram

Class merupakan inti dari pengembangan dan desain berorientasi objek, karena nantinya class ini akan menghasilkan sebuah objek. Class menggambarkan keadaan (atribut/property) suatu sistem dan metode/fungsi yang ada pada sistem tersebut.

Class diagram menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti pewarisan, asosiasi, dan lain-lain. Class memiliki tiga domain yaitu : Nama (dan stereotype), Atribut dan Metode. Atribut dan metode dapat memiliki salah satu sifat berikut :

1. Private, tidak dapat dipanggil diluar class yang bersangkutan

2. Protected, hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak yang mewarisinya.


(34)

3. SequenceDiagram

Sequnce diagram, secara khusus, menjabarkan behavior sebuah scenario tunggal. Diagram tersebut menunjukan sejumlah objek contoh dan pesan-pesan yang melewati objek-objek ini di dalam use case.

4. Activity Diagram

Activity Diagram adalah teknik untuk mendeskripsikan logika prosedural, proses bisnis dan aliran kerja dalam banyak kasus. Activity Diagram mempunyai peran seperti halnya flowchart, akan tetapi perbedaannya dengan flowchart adalah activitydiagram bisa mendukung perilaku paralel sedangkan flowcahrt tidak bisa.

5. Deployment Diagram

Deployment/physical diagram menggambarkan detail bagaimana komponen di-deploy dalam infrastruktur sistem, di mana komponen akan terletak (pada mesin, server atau piranti keras apa), bagaimana kemampuan jaringan pada lokasi tersebut, spesifikasi server, dan hal-hal lain yang bersifat fisikal

Sebuah node adalah server, workstation, atau piranti keras lain yang digunakan untuk men-deploy komponen dalam lingkungan sebenarnya. Hubungan antar node (misalnya TCP/IP) dan requirement dapat juga didefinisikan dalam diagram ini.

2.5. Basis Data

2.5.1. Pengertian Basis Data

Basis Data merupakan kumpulan data yang (arsip) yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa


(35)

pengulangan (redudansi) yang tidak perlu, untuk memenuhi berbagai kebutuhan. Atau bisa diartikan sebagai kumpulan file/tabel/arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronis.

a. Database Manajemen Sistem (DBMS)

Pengelolaan basis data secara fisik tidak dilakukan oleh pemakai secara langsung, tetapi ditangani oleh sebuah perangkat lunak atau sistem yang khusus atau spesifik. Sistem ini yang akan menentukan bagaimana data diorganisasi, disimpan, diubah dan diambil kembali Disamping itu sistem ini juga menerapkan mekanisme pengaman data, pemakaian data secara bersama, pemaksaan keakuratan atau konsistensi data dan sebagainya. Perangkat lunak yang termasuk DBMS misalnya dBase II+, dBase IV, FoxBase, RBase, MS-Access dan Borland-Paradox atau Borland-Interbase, MS-SQL Server, CA-Open Ingres, Oracle, Informix dan Sybase.

b. Tujuan Basis Data

Basis Data pada prinsipnya ditujukan untuk pengaturan data agar terdapat kemudahan dalam pengambilan kembali data tersebut. Berikut ini terdapat beberapa tujuan dari Basis Data diantaranya yaitu :

1. Kecepatan dan kemudahan (Speed) 2. Efisiensi ruang penyimpanan (Space) 3. Keakuratan (Accuracy)

4. Ketersediaan (Avaibility) 5. Kelengkapan (Completeness)


(36)

6. Keamanan (Security) 7. Kebersamaan (Sharability)

c. Pengguna Basis Data

Pengguna basis data yang dibedakan berdasarkan cara mereka berinteraksi terhadap sistem diantaranya yaitu :

1. Programmer Aplikasi (Application Programmer)

Pemakai yang berinteraksi dengan basis data dengan menggunakan Data Manipulation Language (DML) untuk membuat aplikasi dengan menggunakan bahasa pemrograman.

2. User Khusus (Specialized User)

Pemakai yang membuat program aplikasi basis data untuk keperluan tertentu atau khusus.

3. User Mahir (Casual User)

Pemakai yang berinteraksi dengan sistem tanpa membuat modul program. 4. User Umum (Naïve User)

Pemakai berinteraksi dengan aplikasi basis data yang telah dibuat atau disediakan oleh sistem.

2.6. Object Oriented Programming (OOP)

OOP merupakan terobosan baru dalam pemrograman setelah pemrograman prosedural, pemrograman modular dan pemrograman abstraksi data. Ada beberapa konsep utama OOP antara lain :


(37)

Pemrograman berorientasi-objek menekankan konsep berikut:

1. Class : kumpulan atas definisi data dan fungsi-fungsi dalam suatu unit untuk suatu tujuan tertentu. Sebagai contoh 'class of dog' adalah suatu unit yang terdiri atas definisi-definisi data dan fungsi-fungsi yang menunjuk pada berbagai macam perilaku/turunan dari anjing.

2. Objek : membungkus data dan fungsi bersama menjadi suatu unit dalam sebuah program komputer; objek merupakan dasar dari modularitas dan struktur dalam sebuah program komputer berorientasi objek.

3. Abstraksi : kemampuan sebuah program untuk melewati aspek informasi yang diproses olehnya, yaitu kemampuan untuk memfokus pada inti. Setiap objek dalam sistem melayani sebagai model dari "pelaku" abstrak yang dapat melakukan kerja, laporan dan perubahan keadaannya, dan berkomunikasi dengan objek lainnya dalam sistem, tanpa mengungkapkan bagaimana kelebihan ini diterapkan. Proses, fungsi atau metode dapat juga dibuat abstrak, dan beberapa teknik digunakan untuk mengembangkan sebuah pengabstrakan.

4. Enkapsulasi : memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari sebuah objek dengan cara yang tidak layak; hanya metode dalam objek tersebut yang diberi ijin untuk mengakses keadaannya. Setiap objek mengakses interface yang menyebutkan bagaimana objek lainnya dapat berinteraksi dengannya.


(38)

Objek lainnya tidak akan mengetahui dan tergantung kepada representasi dalam objek tersebut.

5. Polimorfisme : melalui pengiriman pesan. tidak bergantung kepada pemanggilan subrutin, bahasa orientasi objek dapat mengirim pesan; metode tertentu yang berhubungan dengan sebuah pengiriman pesan tergantung kepada objek tertentu di mana pesa tersebut dikirim. Contohnya, bila sebuah burung menerima pesan "gerak cepat", dia akan menggerakan sayapnya dan terbang. Bila seekor singa menerima pesan yang sama, dia akan menggerakkan kakinya dan berlari. Keduanya menjawab sebuah pesan yang sama, namun yang sesuai dengan kemampuan hewan tersebut. Ini disebut polimorfisme karena sebuah variabel tungal dalam program dapat memegang berbagai jenis objek yang berbeda selagi program berjalan, dan teks program yang sama dapat memanggil beberapa metode yang berbeda di saat yang berbeda dalam pemanggilan yang sama. Hal ini berlawanan dengan bahasa fungsional yang mencapai polimorfisme melalui penggunaan fungsi kelas-pertama.

6. Inheritance - Mengatur polimorfisme dan enskapsulasi dengan mengijinkan objek didefinisikan dan diciptakan dengan jenis khusus dari objek yang sudah ada, objek-objek ini dapat membagi (dan memperluas) perilaku mereka tanpa haru mengimplementasi ulang perilaku tersebut.


(39)

Dengan menggunakan OOP maka dalam melakukan pemecahan suatu masalah kita tidak melihat bagaimana cara menyelesaikan suatu masalah tersebut(terstruktur) tetapi objek-objek apa yang dapat melakukan pemecahan masalah tersebut. Sebagai contoh anggap kita memiliki sebuah departemen yang memiliki manager, sekretaris, petugas administrasi data dan lainnya. Misal manager tersebut ingin memperoleh data dari bagian administrasi maka manager tersebut tidak harus mengambilnya langsung tetapi dapat menyuruh petugas bagian administrasi untuk mengambilnya. Pada kasus tersebut seorang manager tidak harus mengetahui bagaimana cara mengambil data tersebut tetapi manager bisa mendapatkan data tersebut melalui objek petugas administrasi. Jadi untuk menyelesaikan suatu masalah dengan kolaborasi antar objek -objek yang ada karena setiap objek memiliki job description nya sendiri.


(40)

31 BAB III

ANALISIS DAN PERANCANGAN SISTEM

3.1 Analisis Sistem

Analisis sistem bertujuan untuk mengidentifikasi permasalahan-permasalahan yang ada pada sistem. Analisis ini diperlukan sebagai dasar bagi tahapan perancangan sistem. Analisis sistem meliputi identifikasi masalah, spesifikasi aplikasi, spesifikasi pengguna dan lingkungan operasi.

3.1.1 Analisis Masalah

Berdasarkan latar belakang masalah yang ada, maka dapat diketahui masalah – masalah yang terjadi di Forum WARBECI adalah sebagai berikut :

1. Masalah akses untuk bisa melaksanakan e-voting seperti ketersediaan jaringan internet dan infrastruktur yang lain.

2. Masalah ketersediaan software (peranti lunak). Bagaimana mengusahakan peranti lunak yang tidak mahal atau gratis.

3. Masalah tampilan dari software tersebut. Bagaimana tampilan tersebut memudahkan seorang yang awam dengan komputer untuk melaksanakan e-voting.


(41)

3.1.2 Ruang Lingkup Masalah

Ruang lingkup masalah yang dibahas dalam membangun aplikasi ini yaitu pemberian layanan teknologi e-voting untuk suatu pemilihan di Forum WARBECI.

Fitur-fitur utama aplikasi ini adalah sebagai berikut: a. Pengolahan data yang bersifat dinamis.

b. Memberikan kemudahan bagi petugas pemilihan untuk melakukan penghitungan suara.

c. Tampilan dibangun dengan menarik, dinamis dan interaktif sehingga memberikan kemudahan kepada pengguna.

3.1.3 Analisis Sistem Yang Sedang Berjalan

Prosedur merupakan urutan dari langkah-langkah yang terjadi atau yang dilakukan dalam suatu sistem. Prosedur sistem yang sedang berjalan di forum Warga Betawi Ciracas adalah sebagai berikut:

a. Prosedur pendaftaran pemilih, b. prosedur pendaftaran kandidat. c. prosedur pemilihan.

d. prosedur hitung hasil pemilihan.

3.1.3.1Prosedur Registrasi Pemilih

Pada Gambar 3.1 digambarkan aktivitas calon pemilih dan petugas saat proses pendaftaran pemilih. Berikut penjelasan dari gambar 3.1:


(42)

1. Calon pemilih memberikan data pemilih dan persyaratan-persyaratan pendaftaran pemilih kepada petugas pendaftaran.

2. Persyaratan pemilih akan dicek oleh petugas apakah persyaratan tersebut sudah terpenuhi atau belum. Jika persyaratan belum terpenuhi maka petugas akan mengembalikan dokumen tersebut kepada calon pemilih dan pemilih akan melengkapi persyaratan tersebut untuk mendaftarkannya lain waktu, jika persyaratan sudah terpenuhi maka petugas akan mencatat data pemilih baru. 3. Setelah data pemilih baru selesai dicatat, maka petugas akan memberikan kartu

suara kepada pemilih yang telah terdaftar sebagai pemilih baru. 4. Petugas akan mencatat data pemilih baru ke dalam arsip pemilih.


(43)

3.1.3.2ProsedurPendaftaran Kandidat (Calon Ketua)

Pada Gambar 3.2 digambarkan aktifitas petugas dan kandidat dalam proses pendaftaran kandidat atau calon ketua. Berikut penjelasan dari gambar 3.2:

1. Setiap kandidat diharuskan menyerahkan data ke petugas pendaftaran kandidat.

2. Panitia akan mengecek apakah data tersebut apakah sudah lengkap dan sesuai dengan persyaratan atau belum. Jika data tersebut belum sesuai dengan persyaratan maka data tersebut akan dikembalikan kepada kandidat, jika data tersebut sudah sesuai dengan persyaratan maka panitia akan memproses data kandidat.

3. Petugas akan memberikan surat registrasi kepada calon kandidat yang syarat-syaratnya sudah terpenuhi.

4. Calon kandidat yang mendapat surat registrasi akan mengisi surat registrasi tersebut dan akan mengembalikan ke petugas pendaftaran sebagai bukti bahwa kandidat tersebut siap dan bersedia mengikuti aturan-aturan yang ada.

5. Jika kandidat tidak mengembalikan surat registrasi tersebut sampai batas waktu yang ditentukan maka kandidat tersebut tidak akan di regsitrasi oleh petugas dan gagal menjadi kandidat.


(44)

Gambar 3.2 Activity Diagram Pendaftaran Kandidat

3.1.3.3ProsedurPemilihan

Pada gambar 3.3 digambarkan aliran data dalam proses pemilihan. Berikut penjelasan dari gambar 3.3 :

1. Pemilih memberikan kartu pemilih kepada petugas.

2. Petugas akan memeriksa kartu pemilih tersebut, jika kartu pemilih tidak sesuai petugas akan mengembalikan kartu pemilih kepada pemilih, jika kartu pemilih sesuai maka pemilih dapat menyalurkan suaranya.

3. Petugas memberikan kertas suara kepada pemilih, kemudian pemilih masuk kedalam tempat pemungutan suara (TPS) dan menyalurkan suaranya.

4. Setelah selesai memilih, pemilih memsaukkan kertas suara kedalam kotak suara kemudian petugas akan memberikan tanda bahwa pemilih sudah menyalurkan suaranya


(45)

Gambar 3.3 Activity Diagram Pemilihan

3.1.3.4Prosedur Penghitungan Suara

Gambar 3.4 dibawah menggambarkan aktivitas petugas, saksi dan pemilih dalam proses penghitungan suara. Berikut penjelasan dari gambar 3.4:

1. Petugas menghitung setiap kertas suara yang sudah dipilih.

2. Saksi akan memeriksa kertas suara tersebut apakah sah atau tidak. Jika sah maka petugas akan mencatat hasil pilihan tersebut, jika tidak sah maka kertas suara tidak dihitung.

3. Petugas dan saksi akan menghitung hasil pemilihan dan mencatat hasil pemilihan tersebut.

4. Petugas akan menggabungkan hasil pemilihan dari setiap daerah dan kemudian petugas menghitung hasil dari seluruh pemilihan dan mencatatnya ke dalam arsip hasil pemilihan.


(46)

Gambar 3.4 Activity Diagram Penghitungan Suara

3.1.4 Analisis Kebutuhan Fungsional 3.1.4.1 Unified Modelling language (UML)

Analisis sistem yang dilakukan menggunakan metode UML (Unified Modeling Language). Analisis sistem ini menggunakan adaptasi metode Coad-Yourdon. Tahap-tahap analisis tersebut sebagai berikut :

1. Identifikasi Aktor 2. Identifikasi use-case

3. Pembuatan use-casediagram

4. Pembuatan sequencediagram untuk memperjelas masing-masing use-case 5. Pembuatan activity diagram untuk memperjelas use-case


(47)

3.1.4.2 Pemodelan UseCase 3.1.4.2.1 Identifikasi Aktor

Aktor yang terlibat dalam sistem yang akan dibangun yaitu administrator, petugas dan pemilih. Pemakai disini merupakan orang yang menggunakan sistem.

3.1.4.2.2 Identifikasi Use Case

Aplikasi Sistem E-Voting memiliki 21 use-case yang terlibat antara lain sebagai berikut :

1. Use-case login petugas 2. Use-case login pemilih 3. Use-Case mengelola petugas 4. Use-Case tambah petugas 5. Use-Case ubah petugas 6. Use-Case hapus petugas 7. Use-case mengelola pemilih 8. Use-case tambah pemilih 9. Use-case edit pemilih 10.Use-case hapus pemilih 11.Use-case mengelola kandidat 12.Use-case tambah kandidat 13.Use-case ubah kandidat 14.Use-case hapus kandidat

15.Use-case mengelola jadwal pemilihan 16.Use-case tambah jadwal

17.Use-case ubah jadwal 18.Use-case hapus jadwal 19.Use-case voting 20.Use-case lihat score


(48)

3.1.4.2.3 Diagram Use Case

Diagram use case memperlihatkan hubungan-hubungan yang terjadi antara aktor dengan use case dalam system. Salah satu manfaat dari diagram use case adalah untuk komunikasi. Calon pengguna Aplikasi e-voting dapat mengamati diagram use case untuk mendapatkan pemahaman yang utuh tentang sistem yang dibangun.

Use case diagram Aplikasi E-Voting dapat diliihat jelas pada gambar 3.5 dan penjelasan dari masing-masing use case adalah sebagai berikut :


(49)

Penjelasan dari masing-masing use case adalah sebagai berikut: 1. Use case login petugas

Use Case Login Petugas memperlihatkan bagaimana sistem melakukan autentifikasi pengguna untuk dapat menggunakan aplikasi. Untuk lebih jelasnya penjelasan use case login dapat dilihat pada diagram sekuen gambar 3.6.

Tabel 3.1 Deskripsi Use Case Login Petugas

DESKRIPSI USE CASE

Use Case Login Petugas

Tujuan Akhir Aktor dapat login ke dalam sistem Kondisi Awal Aktor belum dapat login ke dalam sistem Kondisi Akhir Sukses Aktor masuk ke halaman utama

Kondisi Akhir Gagal Terdapat kesalahan username atau password Aktor Utama Petugas

Aktor Tambahan Admin

Pemicu Include Case

Aliran Utama Aktor Sistem

1. Aktor memasukkan username dan password

4. Masuk halaman utama petugas

2. Sistem melakukan

pemeriksaan username dan password

3. Sistem menamppilkan halaman utama petugas


(50)

Alternatif Data username dan password yang dimasukkan user tidak valid:

Alt.4. Sistem menampilkan pesan kesalahan

Gambar 3.6Diagram Sekuen Login Petugas

2. Use-case login pemilih

Use Case Login Pemilih memperlihatkan bagaimana aplikasi e-voting melakukan autentifikasi pemilih untuk dapat menggunakan aplikasi. Untuk lebih jelasnya penjelasan use case login pemilih dapat dilihat pada diagram sekuen gambar 3.7.

Tabel 3.2 Deskripsi Use Case Login Pemiliih

DESKRIPSI USE CASE

Use Case Login Pemilih

Tujuan Akhir Aktor dapat login ke dalam sistem Kondisi Awal Aktor belum dapat login ke dalam sistem Kondisi Akhir Sukses Aktor masuk ke halaman utama


(51)

Aktor Utama Pemilih Aktor Tambahan

Pemicu - Include Case None

Aliran Utama Aktor Sistem

1. Aktor

memasukkan Id pemilih dan nama

4. Masuk halaman utama pemilihan

2. Sistem melakukan pemeriksaan id pemilih dan nama.

3. Sistem menamppilkan halaman utama pemilihan

Alternatif Data id pemilih yang dimasukkan aktor tidak valid: Alt.4. Sistem menampilkan pesan kesalahan


(52)

3. Use Case Kelola Petugas

Use Case Pengolahan Data Petugas memperlihatkan bagaimana admin melakukan pengolahan data petugas. Untuk lebih jelasnya penjelasan use case pengolahan data petugas dapat dilihat pada diagram sekuen gambar 3.8.

Tabel 3.3 Deskripsi Use Case Kelola Petugas

DESKRIPSI USE CASE

Use Case Kelola Petugas

Tujuan Akhir Pengolahan data petugas

Kondisi Awal Data petugas mengalamai perubahan sehingga harus diolah sesuai kebutuhan

Kondisi Akhir Sukses Data petugas berhasil di olah

Kondisi Akhir Gagal Data petugas gagal diolah karena terdapat kesalahan

Aktor Utama Admin

Aktor Tambahan -

Pemicu - Include Case Login

Aliran Utama Aktor Sistem

1. Aktor mengolah data pemilih sesuai dengan kebutuhan.

2. Sistem menyimpan pengolahan data petugas 3. Menampilkan data


(53)

Alternatif 2.1 Hasil pengolahan data petugas gagal disimpan karena terjadi kesalahan

Gambar 3.8 Diagram Sekuen Kelola Petugas

4. Use Case Tambah Petugas

Use Case Tambah petugas memperlihatkan bagaimana petugas melakukan penambahan data petugas. Untuk lebih jelasnya penjelasan use case tambah data petugas dapat dilihat pada diagram sekuen gambar 3.9.

Tabel 3.4 Deskripsi Use Case Tambah Petugas

DESKRIPSI USE CASE

Use Case Tambah Petugas

Tujuan Akhir Petugas menambah data petugas Kondisi Awal Admin telah login dengan sukses Kondisi Akhir Sukses Admin berhasil menambah petugas Kondisi Akhir Gagal Admin gagal menambah data petugas

Aktor Utama Admin


(54)

Pemicu - Include Case Login

Aliran Utama Aktor Sistem

1. Aktor menambahkan data petugas baru

2. Sistem melakukan pengecekan data petugas 3. Sistem menyimpan data

petugas baru

Alternatif 3.1Sistem gagal menyimpan penambahan data petugas 4.1 Sistem menampilkan pesan kesalahan

Gambar 3.9 Diagram Sekuen Tambah Petugas 5. Use Case Ubah Petugas

Use Case Ubah Petugas memperlihatkan bagaimana admin melakukan perubahan data petugas. Untuk lebih jelasnya penjelasan use case ubah petugas dapat dilihat pada diagram sekuen gambar 3.10.

Tabel 3.5 Deskripsi Use Case Ubah Petugas


(55)

Use Case Ubah Petugas

Tujuan Akhir Admin mengubah data petugas Kondisi Awal Admin telah login dengan sukses Kondisi Akhir Sukses Admin berhasil mengubah data petugas Kondisi Akhir Gagal Admin gagal mengubah data petugas

Aktor Utama Admin

Aktor Tambahan -

Pemicu - Include Case Login

Aliran Utama Aktor Sistem

1. Aktor mengubah data petugas

2. Sistem melakukan pengecekan data petugas 3. Sistem menyimpan data

petugas yang telah dirubah

Alternatif 3.1Sistem gagal menyimpan pengubahan data petugas 4.1 Sistem menampilkan pesan kesalahan


(56)

6. Use Case Hapus Petugas

Use Case Hapus Petugas memperlihatkan bagaimana admin melakukan penghapusan data petugas. Untuk lebih jelasnya penjelasan use case hapus petugas dapat dilihat pada diagram sekuen gambar 3.11.

Tabel 3.6 Deskripsi Use Case Hapus Petugas

DESKRIPSI USE CASE

Use Case Hapus Petugas

Tujuan Akhir Admin menghapus data petugas Kondisi Awal Admin telah login dengan sukses Kondisi Akhir Sukses Admin berhasil menghapus data petugas Kondisi Akhir Gagal Admin gagal menghapus data petugas

Aktor Utama Admin

Aktor Tambahan -

Pemicu - Include Case Login

Aliran Utama Aktor Sistem

1. Aktor menghapus data petugas

3. Aktor memilih ”Ya”

2. Sistem menampilkan pesan konfirmasi 4. Sistem menghapus data

petugas Alternatif 4.1 Sistem menampilkan pesan kesalahan


(57)

Gambar 3.11Diagram Sekuen Hapus Petugas

7. Use Case Kelola Pemilih

Use Case Pengolahan DataPemilih memperlihatkan bagaimana petugas melakukan pengolahan data pemilih. Untuk lebih jelasnya penjelasan use case pengolahan data pemilih dapat dilihat pada diagram sekuen gambar 3.12.

Tabel 3.7 Deskripsi Use Case kelola Pemilih

DESKRIPSI USE CASE

Use Case Kelola Pemilih

Tujuan Akhir Pengolahan data pemilih

Kondisi Awal Data pemilih mengalamai perubahan sehingga harus diolah sesuai kebutuhan

Kondisi Akhir Sukses Data pemilih berhasil di olah

Kondisi Akhir Gagal Data pemilih gagal diolah karena terdapat kesalahan Aktor Utama Petugas

Aktor Tambahan Admin

Pemicu - Include Case Login


(58)

1. Aktor mengolah data pemilih sesuai dengan kebutuhan.

2. Sistem menyimpan pengolahan data pemilih 3. Menampilkan data

pemilih yang diolah

Alternatif 2.1 Hasil pengolahan data pemilih gagal disimpan karena terjadi kesalahan

Gambar 3.12Diagram Sekuen Kelola Pemilih

8. Use Case Tambah Pemilih

Use Case Tambah Pemilih memperlihatkan bagaimana petugas melakukan penambahan data pemilih. Untuk lebih jelasnya penjelasan use case tambah data pemilih dapat dilihat pada diagram sekuen gambar 3.13.

Tabel 3.8 Deskripsi Use Case Tambah Pemiliih

DESKRIPSI USE CASE

Use Case Tambah Pemilih


(59)

Kondisi Awal Petugas telah login dengan sukses Kondisi Akhir Sukses Petugas berhasil menambah pemilih Kondisi Akhir Gagal Petugas gagal menambah data pemilih Aktor Utama Petugas

Aktor Tambahan Admin

Pemicu - Include Case Login

Aliran Utama Aktor Sistem

2. Aktor menambahkan data pemilih baru

4. Sistem melakukan pengecekan data pemilih 5. Sistem menyimpan data

pemilih baru

Alternatif 5.1Sistem gagal menyimpan penambahan data pemilih 4.1 Sistem menampilkan pesan kesalahan


(60)

9. Use Case Ubah Pemilih

Use Case Ubah Pemilih memperlihatkan bagaimana petugas melakukan perubahan data pemililh. Untuk lebih jelasnya penjelasan use case ubah pemilih dapat dilihat pada diagram sekuen gambar 3.14.

Tabel 3.9 Deskripsi Use Case Ubah Pemilih

DESKRIPSI USE CASE

Use Case Ubah Pemilih

Tujuan Akhir Petugas mengubah data pemilih Kondisi Awal Petugas telah login dengan sukses Kondisi Akhir Sukses Petugas berhasil mengubah data pemilih Kondisi Akhir Gagal Petugas gagal mengubah data pemilih Aktor Utama Petugas

Aktor Tambahan Admin

Pemicu - Include Case Login

Aliran Utama Aktor Sistem

1. Aktor mengubah data pemilih

2. Sistem melakukan pengecekan data pemilih 3. Sistem menyimpan data

pemilih yang telah dirubah

Alternatif 3.1Sistem gagal menyimpan pengubahan data pemilih 4.1 Sistem menampilkan pesan kesalahan


(61)

Gambar 3.14Diagram Sekuen Ubah Pemilih

10.Use Case Hapus Pemilih

Use Case Hapus Pemilih memperlihatkan bagaimana petugas melakukan penghapusan data pemilih. Untuk lebih jelasnya penjelasan use case hapus pemilih dapat dilihat pada diagram sekuen gambar 3.15.

Tabel 3.10 Deskripsi Use Case Hapus Pemilih

DESKRIPSI USE CASE

Use Case Hapus Pemilih

Tujuan Akhir Petugas menghapus data pemilih Kondisi Awal Petugas telah login dengan sukses

Kondisi Akhir Sukses Petugas berhasil menghapus data pemilih Kondisi Akhir Gagal Petugas gagal menghapus data pemilih Aktor Utama Petugas

Aktor Tambahan Admin


(62)

Include Case Login

Aliran Utama Aktor Sistem

2. Aktor menghapus data pemilih

5. Aktor memilih ”Ya”

3. Sistem menampilkan pesan konfirmasi 6. Sistem menghapus data

pemilih Alternatif 4.1 Sistem menampilkan pesan kesalahan

Gambar 3.15Diagram Sekuen Hapus Pemilih

11.Use Case Kelola Kandidat

Use Case Pengolahan Data kandidat memperlihatkan bagaimana petugas melakukan pengolahan data kandidat. Untuk lebih jelasnya penjelasan use case pengolahan data kandidat dapat dilihat pada diagram sekuen gambar 3.16.

Tabel 3.11 Deskripsi Use Case kelola Kandidat

DESKRIPSI USE CASE

Use Case Kelola Kandidat

Tujuan Akhir Pengolahan data kandidat


(63)

diolah sesuai kebutuhan Kondisi Akhir Sukses Data kandidat berhasil di olah

Kondisi Akhir Gagal Data kandidat gagal diolah karena terdapat kesalahan Aktor Utama Petugas

Aktor Tambahan Admin

Pemicu - Include Case Login

Aliran Utama Aktor Sistem

1. Aktor mengolah data kandidat sesuai dengan kebutuhan.

2. Sistem menyimpan pengolahan data kandidat 3. Menampilkan data

kandidat yang diolah Alternatif 2.1 Hasil pengolahan data kandidat gagal disimpan

karena terjadi kesalahan


(64)

12.Use Case Tambah Kandidat

Use Case Tambah Kandidat memperlihatkan bagaimana petugas melakukan penambahan data kandidat. Untuk lebih jelasnya penjelasan use case tambah data kandidat dapat dilihat pada diagram sekuen gambar 3.17.

Tabel 3.12 Deskripsi Use Case Tambah Kandidat

DESKRIPSI USE CASE

Use Case Tambah Kandidat

Tujuan Akhir Petugas menambah data kandidat Kondisi Awal Petugas telah login dengan sukses Kondisi Akhir Sukses Petugas berhasil menambah kandidat Kondisi Akhir Gagal Petugas gagal menambah data kandidat Aktor Utama Petugas

Aktor Tambahan Admin

Pemicu - Include Case Login

Aliran Utama Aktor Sistem

1. Aktor menambah kandidat baru

2. Sistem melakukan pengecekan terhadap data kandidat

3. Sistem menyimpan data kandidat baru

Alternatif 3.1Sistem gagal menyimpan penambahan data kandidat 4.1 Sistem menampilkan pesan kesalahan


(65)

Gambar 3.17Diagram Sekuen Tambah Kandidat

13.Use Case Ubah Kandidat

Use Case Ubah Kandidat memperlihatkan bagaimana petugas melakukan perubahan data kandidat. Untuk lebih jelasnya penjelasan use case ubah kandidat dapat dilihat pada diagram sekuen gambar 3.18.

Tabel 3.13 Deskripsi Use Case Ubah Kandidat

DESKRIPSI USE CASE

Use Case Ubah Kandidat

Tujuan Akhir Petugas mengubah data kandidat Kondisi Awal Petugas telah login dengan sukses Kondisi Akhir Sukses Petugas berhasil mengubah data kandidat Kondisi Akhir Gagal Petugas gagal mengubah data kandidat Aktor Utama Petugas

Aktor Tambahan Admin


(66)

Include Case Login

Aliran Utama Aktor Sistem

1. Aktor mengubah data kandidat

2. Sistem melakukan pengecekan data kandidat 3. Sistem menyimpan data

kandidat yang telah dirubah

Alternatif 3.1Sistem gagal menyimpan pengubahan data kandidat 4.1 Sistem menampilkan pesan kesalahan

Gambar 3.18 Diagram Sekuen Ubah Kandidat

14.Use Case Hapus Kandidat

Use Case Hapus Kandidat memperlihatkan bagaimana petugas melakukan penghapusan data kandidat. Untuk lebih jelasnya penjelasan use case hapus kandidat dapat dilihat pada diagram sekuen gambar 3.19.

Tabel 3.14 Deskripsi Use Case Hapus Kandidat

DESKRIPSI USE CASE


(67)

Tujuan Akhir Petugas menghapus data kandidat Kondisi Awal Petugas telah login dengan sukses

Kondisi Akhir Sukses Petugas berhasil menghapus data kandidat Kondisi Akhir Gagal Petugas gagal menghapus data kandidat Aktor Utama Petugas

Aktor Tambahan Admin

Pemicu - Include Case Login

Aliran Utama Aktor Sistem

1. Aktor menghapus data kandidat

3. Aktor memilih ”Ya”

2. Sistem menampilkan pesan konfirmasi 4. Sistem menghapus data

kandidat Alternatif 4.1 Sistem batal menghapus data kandidat

4.2 Sistem menampilkan pesan kesalahan


(68)

15.Use Case Kelola Jadwal Pemilihan

Use Case Pengolahan Jadwal Pemilihan memperlihatkan bagaimana petugas melakukan pengolahan data jadwal pemilihan. Untuk lebih jelasnya penjelasan use case pengolahan data jadwal pemilihan dapat dilihat pada diagram sekuen gambar 3.20.

Tabel 3.15 Deskripsi Use Case Kelola Jadwal Pemilihan

DESKRIPSI USE CASE

Use Case Kelola Jadwal Pemilihan

Tujuan Akhir Pengolahan data jadwal pemilihan

Kondisi Awal Data jadwal pemilihan mengalamai perubahan sehingga harus diolah sesuai kebutuhan

Kondisi Akhir Sukses Data jadwal pemilihan berhasil di olah

Kondisi Akhir Gagal Data jadwal pemilihan gagal diolah karena terdapat kesalahan

Aktor Utama Petugas Aktor Tambahan Admin

Pemicu - Include Case Login

Aliran Utama Aktor Sistem

1. Aktor mengolah data jadwal pemilihan sesuai dengan kebutuhan.

2. Sistem menyimpan pengolahan data jadwalpemilihan


(69)

pemilihan yang diolah Alternatif 2.1 Hasil pengolahan data jadwal pemilihan gagal

disimpan karena terjadi kesalahan

Gambar 3.20Diagram Sekuen Kelola Jadwal Pemilihan

16.Use Case Tambah Jadwal Pemilihan

Use Case Tambah Jadwal Pemilihan memperlihatkan bagaimana petugas melakukan penambahan data jadwal pemilihan. Untuk lebih jelasnya penjelasan use case tambah data jadwal pemilihan dapat dilihat pada diagram sekuen gambar 3.21.

Tabel 3.16 Deskripsi Use Case Tambah Jadwal Pemilihan

DESKRIPSI USE CASE

Use Case Tambah Jadwal Pemilihan

Tujuan Akhir Petugas menambah data jadwal pemilihan Kondisi Awal Petugas telah login dengan sukses

Kondisi Akhir Sukses Petugas berhasil menambah jadwal pemilihan Kondisi Akhir Gagal Petugas gagal menambah data jadwal pemilihan Aktor Utama Petugas


(70)

Aktor Tambahan Admin

Pemicu - Include Case Login Petugas

Aliran Utama Aktor Sistem

1. Aktor menambah jadwal pemilihan

baru 2. Sistem melakukan

pengecekan terhadap data jadwal pemilihan

3. Sistem menyimpan data jadwal pemilihan baru Alternatif 3.1Sistem gagal menyimpan penambahan data jadwal

pemilihan

4.1 Sistem menampilkan pesan kesalahan

Gambar 3.21Diagram Sekuen Tambah Jadwal Pemilihan

17.Use Case Kelola Ubah Jadwal Pemilihan

Use Case Ubah Jadwal Pemilihan memperlihatkan bagaimana petugas melakukan perubahan data jadwal pemilihan. Untuk lebih jelasnya penjelasan use case ubah jadwal pemilihan dapat dilihat pada diagram sekuen gambar 3.22.


(71)

Tabel 3.17 Deskripsi Use Case Ubah Jadwal Pemilihan

DESKRIPSI USE CASE

Use Case Ubah Jadwal Pemilihan

Tujuan Akhir Petugas mengubah data jadwal pemilihan Kondisi Awal Petugas telah login dengan sukses

Kondisi Akhir Sukses Petugas berhasil mengubah data jadwal pemilihan Kondisi Akhir Gagal Petugas gagal mengubah data jadwal pemilihan Aktor Utama Petugas

Aktor Tambahan Admin

Pemicu - Include Case Login Petugas

Aliran Utama Aktor Sistem

1. Aktor mengubah data jadwal

pemilihan 2. Sistem melakukan pengecekan data jadwal pemilihan

3. Sistem menyimpan data jadwal pemilihan yang telah dirubah

Alternatif 3.1Sistem gagal menyimpan pengubahan data jadwal pemilihan


(72)

Gambar 3.22Diagram Sekuen Ubah Jadwal Pemilihan

18.Use Case Hapus Jadwal Pemilihan

Use Case Hapus Jadwal Pemilihan memperlihatkan bagaimana petugas melakukan penghapusan data jadwal pemilihan. Untuk lebih jelasnya penjelasan use case hapus jadwal pemilihan dapat dilihat pada diagram sekuen gambar 3.23.

Tabel 3.18 Deskripsi Use Case Hapus Jadwal Pemilihan

DESKRIPSI USE CASE

Use Case Hapus Jadwal Pemilihan

Tujuan Akhir Petugas menghapus data jadwal pemilihan Kondisi Awal Petugas telah login dengan sukses

Kondisi Akhir Sukses Petugas berhasil menghapus data jadwal pemilihan Kondisi Akhir Gagal Petugas gagal menghapus data jadwal pemilihan Aktor Utama Petugas

Aktor Tambahan Admin

Pemicu - Include Case Login Petugas


(73)

1. Aktor menghapus data jadwal pemilihan

3. Aktor memilih ”Ya”

2. Sistem menampilkan pesan konfirmasi 4. Sistem menghapus data

jadwal pemilihan Alternatif 4.1 Sistem batal menghapus data jadwal pemilihan

4.2 Sistem menampilkan pesan kesalahan

Gambar 3.23Diagram Sekuen Hapus Jadwal Pemilihan 19.Use Case Voting

Use Case Voting memperlihatkan bagaimana pemilih melakukan proses pemilihan. Untuk lebih jelasnya penjelasan use case voting dapat dilihat pada diagram sekuen gambar 3.24.

Tabel 3.19 Deskripsi Use Case Pemilihan

DESKRIPSI USE CASE

Use Case Voting

Tujuan Akhir Pemilih sukses melakukan pemilihan Kondisi Awal pemilih telah login dengan sukses Kondisi Akhir Sukses Petugas berhasil menyalurkan suaranya


(74)

Kondisi Akhir Gagal Pemilih gagal menyalurkan suara Aktor Utama Pemilih

Aktor Tambahan -

Pemicu - Include Case Login Pemilih

Aliran Utama Aktor Sistem

1. Aktor menyalurkan suara.

2. Sistem melakukan pengecekan terhadap data pemilihan

3. Sistem meng-update data pemilih yang sudah memilih

4. Sistem menyimpan data pemilihan

Alternatif Jika pemilih sudah pernah memilih sebelumnya: 3.1Sistem menampilkan pesan bahwa pemilih sudah

menyalurkan suaranya

Jika system gagal menyimpan data pemilihan 4.1Sistem gagal menyimpan data pemilihan 5.1 Sistem menampilkan pesan kesalahan


(75)

20.Use Case Lihat Hasil Pemilihan

Use Case Lihat Hasil Pemilihan memperlihatkan bagaimana aktor melihat pemilihan. Untuk lebih jelasnya penjelasan use case lihat hasil pemilihan dapat dilihat pada diagram sekuen gambar 3.25.

Tabel 3.20 Deskripsi Use Case Lihat Hasil Pemilihan

DESKRIPSI USE CASE

Use Case Lihat Hasil Pemilihan

Tujuan Akhir Petugas melihat hasil dari pemilihan Kondisi Awal Petugas telah login dengan sukses Kondisi Akhir Sukses Petugas melihat hasil dari pemilihan Kondisi Akhir Gagal Petugas gagal melihat hasil pemilihan Aktor Utama Petugas

Aktor Tambahan -

Pemicu - Include Case Login Petugas

Aliran Utama Aktor Sistem

1. Aktor melihat hasil pemilihan

2. Sistem menampilkan hasil pemilihan


(76)

Gambar 3.25 Diagram Sekuen Lihat Hasil Pemilihan 3.1.4.3 Activity Diagram

Kebutuhan alur kerja (workflow) sebuah proses bisnis dan urutan aktivitas dalam suatu proses dimodelkan dengan activity diagram. Diagram ini sangat mirip dengan flowchart karena kita dapat memodelkan sebuah alur kerja dari satu aktivitas ke aktivitas lainnya atau dari satu aktivitas ke dalam keadaan sesaat (state).

3.1.4.3.1 Login Petugas

Menggambarkan aliran autentifikasi petugas dan admin pada saat akan menggunakan Aplikasi Sistem Voting. Diagram aktivitas login dapat dilihat pada gambar 3.26:


(77)

Gambar 3.26 Activity Diagram Login Petugas 3.1.4.3.2 Manajemen Petugas

1. Activity Diagram Tambah Petugas

Menggambarkan aliran aktivitas admin pada saat penambahan data petugas. Diagram aktivitas tambah petugas dapat dilihat pada gambar 3.27:


(78)

2. Activity Diagram Ubah Petugas

Menggambarkan aliran aktivitas admin pada saat mengubah data petugas. Diagram aktivitas ubah petugas dapat dilihat pada gambar 3.28:

Gambar 3.28 Activity Diagra Ubah Petugas 3. Activity Diagram Hapus Petugas

Menggambarkan aliran aktivitas admin pada saat menghapus data petugas. Diagram aktivitas hapus petugas dapat dilihat pada gambar 3.29:


(79)

3.1.4.3.3 Manajemen Pemilih

1. Activity Diagram Tambah Pemilih

Menggambarkan aliran aktivitas petugas atau admin pada saat penambahan data pemilih. Diagram aktivitas tambah pemilih dapat dilihat pada gambar 3.30:

Gambar 3.30 Activity Diagram Tambah Pemilih 2. Activity Diagram Ubah Pemilih

Menggambarkan aliran aktivitas petugas atau admin pada saat mengubah data pemilih. Diagram aktivitas ubah pemilih dapat dilihat pada gambar 3.31:


(80)

Gambar 3.31 Activity Diagram Ubah Pemilih 3. Activity Diagram Hapus Pemilih

Menggambarkan aliran aktivitas petugas atau admin pada saat menghapus data pemilih. Diagram aktivitas tambah pemilih dapat dilihat pada gambar 3.32:


(81)

3.1.4.3.4 Manajemen Kandidat

1. Activity Diagram Tambah Kandidat

Menggambarkan aliran aktivitas petugas atau admin pada saat menambah data kandidat. Diagram aktivitas tambah kandidat dapat dilihat pada gambar 3.33:

Gambar 3.33 Activity Diagram Tambah Kandidat 2. Activity Diagram Ubah Kandidat

Menggambarkan aliran aktivitas petugas atau admin pada saat mengubah data kandidat. Diagram aktivitas ubah kandidat dapat dilihat pada gambar 3.34:


(82)

3. Activity Diagram Hapus Kandidat

Menggambarkan aliran aktivitas petugas atau admin pada saat menghapus data kandidat. Diagram aktivitas hapus kandidat dapat dilihat pada gambar 3.35:

Gambar 3.35 Activity Diagram Hapus Kandidat 3.1.4.3.5 Jadwal Pemilihan

1. Activity Diagram Tambah Jadwal Pemilihan

Menggambarkan aliran aktivitas petugas atau admin pada saat menambah data jadwal pemilihan. Diagram tambah aktivitas jadwal pemilihan dapat dilihat pada gambar 3.36:


(83)

2. Activity Diagram Ubah Jadwal Pemilihan

Menggambarkan aliran aktivitas petugas atau admin pada saat mengubah data jadwal pemilihan. Diagram aktivitas ubah jadwal pemilihan dapat dilihat pada gambar 3.37:

Gambar 3.37 Activity Diagram Ubah Jadwal Pemilihan 3. Activity Diagram Hapus Jadwal Pemilihan

Menggambarkan aliran aktivitas petugas atau admin pada saat menghapus data jadwal pemilihan. Diagram aktivitas hapus jadwal pemilihan dapat dilihat pada gambar 3.38:


(84)

3.1.4.3.6 Pemilihan

Menggambarkan aliran aktivitas pemilih saat proses pemilihan. Diagram aktivitas pemilihan dapat dilihat pada gambar 3.39:

Gambar 3.39 Activity Diagram Pemilihan 3.1.4.3.7 Hasil Pemilihan

1. Activity Diagram Lihat Hasil Pemilihan

Menggambarkan aliran aktivitas user pada saat melihat hasil pemilihan. Diagram aktivitas lihat hasil pemilihan dapat dilihat pada gambar 3.40:


(85)

Gambar 3.40 Activity Diagram Lihat Hasil Pemilihan 3.1.4.4 Diagram Kelas

Diagram kelas adalah bagian dari entity relationship diagram (ERD) yang digunakan untuk pemodelan basis data. Perbedaannya hanya ERD fokus pada data sedangkan class diagram tidak hanya fokus terhadap data, tetapi juga pada pemodelan sistem.

Diagram kelas pada aplikasi e-voting yang akan dibangun dapat dilihat pada gambar 3.41


(86)

3.1.5 Analisis Kebutuhan Non Fungsional

Analisis kebutuhan non-fungsional merupakan analisis yang dibutuhkan untuk menentukan spesifikasi kebutuhan sistem [1]. Spesifikasi ini juga meliputi elemen-elemen atau komponen-komponen apa saja yang dibutuhkan untuk sistem yang akan dibangun sampai dengan sistem tersebut diimplementasikan. Analisis kebutuhan ini juga menentukan spesifikasi masukan yang diperlukan sistem, keluaran yang akan dihasilkan sistem dan proses yang dibutuhkan untuk mengolah masukan sehingga menghasilkan suatu keluaran yang diinginkan. Kebutuhan non-fungsional terbagi menjadi beberapa analisis yaitu analisis perangkat keras, perangkat lunak dan analisis pengguna.

3.1.5.1Analisis Perangkat Keras

Spesifikasi perangkat keras (hardware) yang dibutuhkan untuk menjalankan aplikasi e-voting ini adalah sebagai beikut:

Komputer Server:

1. Prosesor dengan kecepatan minimal 1,66 GHz. 2. Memory dengan kapasitas minimal 512 MB. 3. Harddisk dengan kapasitas minimal 20 GB. 4. Monitor.

5. Keyboard dan Mouse. 6. Kabel UTP

Komputer Client:

1. Prosesor dengan kecepatan minimal 1 GHz. 2. Memory dengan kapasitas minimal 256 MB.


(87)

3. Harddisk dengan kapasitas minimal 10 GB. 4. Monitor.

5. Keyboard dan mouse. 6. Kabel UTP.

3.1.5.2Analisis perangkat Lunak

Spesifikasi perangkat lunak (software) yang digunakan untuk membangun aplikasi e-voting ini adalah sebagai berikut:

a. Komputer server:

1. Sistem operasi Microsoft Windows XP SP 2 2. JDK (Java Development Kit) 1.6

3. Netbeans IDE 6.5 4. MySQL Server 5.0. b. Komputer Client

1. Windows XP Professional SP2 + 2. JDK (Java Development Kit) 1.6

3.2 Perancangan Sistem

Dalam pembuatan suatu sistem informasi langkah yang perlu dilakukan diantaranya adalah perancangan sistem. Berikut ini akan dibahas bagaimana perancangan dari aplikasi yang akan dibangun dengan menentukan kebutuhan apa saja yang diperlukan dalam pembangunan suatu sistem.


(88)

3.2.1 Perancangan Sistem Secara Umum

Perancangan akan dimulai setelah tahap analisis terhadap sistem selesai dilakukan. Perancangan dapat didefinisikan sebagai penggambaran, perencanaan dan pembuatan sketsa atau pengaturan dari beberapa elemen yang terpisah kedalam satu kesatuan yang utuh dan berfungsi [1]. Tahapan ini menyangkut mengkonfirmasi dari komponen-komponen perangkat lunak dan perangkat keras dari suatu sistem sehingga setelah instalasi dari sistem akan benar-benar memuaskan dari rancang bangun yang telah ditetapkan pada akhir tahap analisis sistem.

3.2.2 Perancangan Basis Data

Perancangan basis data merupakan tahapan untuk memetakan model konseptual ke model basis data yang akan dipakai. Perancangan basis data terbagi menjadi dua yaitu skema relasi dan perancangan struktur tabel.

3.2.2.1 Skema Relasi

Skema relasi merupakan rangkaian hubungan antara dua tabel atau lebih pada sistem database[3]. Gambar 3.48 berikut ini merupakan penjelasan rangkaian database pada aplikasi e-voting yang akan dibangun :


(1)

140

3. Aplikasi e-voting yang dibuat dapat dipelajari ?

Tabel 4.12 Tabel Skala likert Pertanyaan 3 No Keterangan Responden Persentase

1 Sangat setuju 3 37.5%

2 Setuju 3 37.5%

3 Kurang setuju 2 25%

4 Tidak setuju 0 0

4. Aplikasi e-voting yang dibuat mudah digunakan ? Tabel 4.13 Tabel Skala likert Pertanyaan 4 No Keterangan Responden Persentase

1 Sangat setuju 4 50%

2 Setuju 3 37.5%

3 Kurang setuju 1 12.5%

4 Tidak setuju 0 0

5. Tampilan Aplikasi menarik ?

Tabel 4.14 Tabel Skala likert Pertanyaan 5 No Keterangan Responden Persentase

1 Sangat setuju 2 25%

2 Setuju 4 50%

3 Kurang setuju 1 12.5%


(2)

141

6. Aplikasi e-voting yang dibuat tidak membantu petugas pemilihan ? Tabel 4.15 Tabel Skala likert Pertanyaan 6

No Keterangan Responden Persentase

1 Sangat setuju 0 0%

2 Setuju 0 0%

3 Kurang setuju 1 33.33%

4 Tidak setuju 2 66.67%

7. Data yang dihasilkan tidak akurat dan valid?

Tabel 4.16 Tabel Skala likert Pertanyaan 7 No Keterangan Responden Persentase

1 Sangat setuju 0 0%

2 Setuju 0 0%

3 Kurang setuju 3 37.5%

4 Tidak setuju 5 62.5%

8. Aplikasi e-voting yang dibuat tidak dapat dipelajari ? Tabel 4.17 Tabel Skala likert Pertanyaan 8 No Keterangan Responden Persentase

1 Sangat setuju 0 0%

2 Setuju 2 25%

3 Kurang setuju 3 37.5%


(3)

142

9. Aplikasi e-voting yang dibuat sulit digunakan ?

Tabel 4.18 Tabel Skala likert Pertanyaan 9 No Keterangan Responden Persentase

1 Sangat setuju 0 0%

2 Setuju 1 12.5%

3 Kurang setuju 3 37.5%

4 Tidak setuju 4 50%

10.Tampilan Aplikasi tidak menarik ?

Tabel 4.19 Tabel Skala likert Pertanyaan 10

No Keterangan Responden Persentase

1 Sangat setuju 1 12.5%

2 Setuju 1 12.5%

3 Kurang setuju 4 50%

4 Tidak setuju 2 25%

4.2.2.1 Kesimpulan Hasil Pengujian Beta Kesimpulan yang dapat ditarik dari hasil pengujian beta adalah :

1. Aplikasi dapat membantu petugas pemilihan dalam melakukan tugasnya di sebuah pemilihan.

2. Aplikasi cukup menarik, mudah dimengerti dan mudah digunakan baik dari sisi pemilih maupun petugas.

3. Informasi yang dihasilkan cukup akurat dan cukup valid, sehingga dapat membantu proses perhitungan hasil pemilihan.


(4)

143 

 

BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Kesimpulan yang dapat ditarik setelah melakukan analisis dan pengujian terhadap sistem yang dibangun adalah :

1. Aplikasi yang dibuat dapat memberikan kemudahan bagi petugas untuk mengkalkulasi jumlah pemilih yang ikut serta dalam pemilihan karena tidak lagi membuka file atau berkas-berkas mengenai pemilih tersebut 2. Aplikasi ini yang dibuat dapat memberikan kemudahan bagi petugas

dalam melakukan penghitungan suara secara cepat karena setelah proses pemilihan berakhir dapat diketahui hasilnya.

5.2 Saran

Berdasarkan kesimpulan di atas, maka saran yang diharapkan yaitu : 1. Dilakukan suatu pengembangan Aplikasi e-voting yang berbasis

client-server ini sehingga keberadaannya bisa lebih user friendly.

2. Perlu diperhatikan masalah spesifikasi komputer dari client agar aplikasi dapat berjalan dengan baik.


(5)

144   

DAFTAR PUSTAKA

[1] Handout program studi teknik informatika STEI ITB, Rekayasa Perangkat Lunak, 2006.

[2] Information system, foundation of e-bussines, steven alter, Prentice Hall. [3] Rakhmad Azhari, e-Voting, Universitas Indonesia:2005.

[4] Jason Kitcat, Government and ICT Standards:An Electronic Voting Case Study, Troubador Publishing Ltd,Brighton:2004.

[5] Suryabrata, Sumadi, Metodologi Penelitian, Rajawali Pers, Jakarta: 2000 [6] Aviel D.Rubin, Dan S. Wallach, Tadoshi Kohno, Adam Stubbfield,

Analysis of an Electronic Voting System, Technical Report, IEEE Symposium on Security and Privacy:2004.

[7] James Rumbaugh, Ivar Jacobson, and Grady Booch, The Unified Modeling Language Reference Manual, Addison-Wesley, 1999.

[8] Grady Booch, James Rumbaugh, and Ivar Jacobson, The Unified Modeling Language User Guide, Addison-Wesley, 1999.

[9] Ivar Jacobson, Grady Booch, and James Rumbaugh, The Unified Software Development Process, Addison-Wesley, 1999.

[10] Robert A. Maksimchuk and Eric J. Naiburg, UML For Mere Mortals, Addison-Wesley, 2004

[11] (http://www.omg.org)

[12] G.Srihayati dkk, B.Herry Suharto, M. Susilo Wijono, Pemograman Swing Java dengan NetBeans 5, Andi, Yogyakarta, 2007.

[13] Munawar, Pemodelan Visual dengan UML, Graha Ilmu, Yogyakarta, 2005.


(6)

RIWAYAT HIDUP

 

Nama : Anjar Febrianto

Nim : 10104070

Tempat / Tgl Lahir : Jakarta, 16 Februari 1987

Jenis Kelamin : Laki-laki

Alamat : Jln Mustika Ratu Rt.005/04 No.59 Ciracas Jakarta Timur

No Telepon / HP : 085659175019

Email : [email protected]

Pendidikan

1992 – 1998 : SD Islam Yasmin - Jakarta

1998 – 2001 : SLTP Negeri 251 – Jakarta

2001 – 2004 : SMK Negeri 5 – Jakarta

2004 – 2009 : Program Strata Satu Jurusan Teknik Informatika

Fakultas Teknik dan Ilmu Komputer