28
BAB 3 ANALISIS DAN PERANCANGAN PROGRAM
Perancangan program aplikasi dalam skripsi ini menggunakan aturan linear sequential (waterfall). Metode ini terdiri dari empat tahapan yaitu, analisis, perancangan, pengkodean/pembuatan, dan percobaan/implementasi (Pressman, 2001: 29). Tahap analisis, perancangan dan pembuatan akan dibahas dalam Bab 3 ini, sedangkan tahap percobaan atau implementasi akan dilanjutkan di Bab 4.
3.1
Analisis Masalah Spam mail yang semakin besar jumlahnya dapat menyebabkan berbagai macam gangguan dan kerugian baik itu bagi pihak yang mempunyai e-mail ataupun bagi pihak lain yang dirusak nama baiknya melalui spam mail tersebut. Kecenderungan pemalsuan alamat pengirim sudah semakin meresahkan. Pesaing-pesaing bisnis memanfaatkan ini untuk merusak citra pesaingnya. Misalnya perusahaan A ingin menjatuhkan nama perusahaan B, maka ia dapat membayar spammer untuk menyebarkan spam mail atas nama perusahaan B sehingga citra perusahaan B menjadi buruk. Ada juga spam mail yang tanpa kita sadari berisi virus sehingga dapat menggangu sistem yang ada pada perangkat keras kita. Kuota e-mail kita pun dapat berkurang e-mail penting yang harusnya kita terima menjadi terhambat penerimaannya karena kuota e-mail kita yang habis.
29
3.2
Usulan Pemecahan Masalah Setelah melihat masalah yang dapat ditimbulkan oleh spam mail dan mempelajarinya, maka diputuskan untuk merancang suatu program aplikasi yang dapat mengklasifikasian e-mail dengan cara menyaring setiap e-mail yang diterima, apakah e-mail tersebut adalah spam mail atau bukan yang dilatih dengan beberapa contoh e-mail yang berbeda dengan menggunakan algoritma Bayesian Filtering.
3.3
Perancangan Program Aplikasi 3.3.1
Use Case Diagram Berikut adalah use case diagram dari program spam detection
30
Gambar 3.1 Use Case Diagram Spam Detection 3.3.2
Sequence Diagram
Berikut sequence diagram yang digunakan dalam merancang program aplikasi spam detection
31
Gambar 3.2 Sequence Diagram Melakukan Training
Gambar 3.3 Sequence Diagram Menginput e-mail account
32
Gambar 3.4 Sequence Diagram Check Mail
Gambar 3.5 Sequence Diagram Reply Mail
33
Gambar 3.6 Sequence Diagram Delete Mail
3.4
State Transition Diagram Berikut adalah State Transition Diagram yang terdapat pada program aplikasi spam detection ini.
Gambar3.7 STD modul Option
34
Gambar 3.8 STD modul Main Database
Klik Clear Database
Klik Exit Database empty
Database E
Klik Close Tampilkan menu main
Main Tampilkan menu main
Gambar 3.9 STD modul Database
35
Gambar 3.10 STD modul Mail
Gambar 3.11 STD modul Compose
36
Gambar 3.12 STD modul Address Book
Gambar 3.13 STD modul Help
37
3.5
Perancangan Layar Berikut adalah rancangan layar pada program.
Bayesian Spam Filter X Bayesian Mail View Help Spamiity DB Address Book Check Mail Open Send Mail Delete Mark As Spam Internet Connected Check Message Total Message Daftar Email Yang Diterima 0 Folder Inbox 0 Folder Spam 0
Gambar 3.14 Rancangan Layar Utama Pada rancangan layar utama terdapat 1.
4 buah menu, yaitu Bayesian, mail, view, dan help
2. 7 buah toolbar, yaitu spamicity database, address book, check mail, open, send mail, delete, dan mark as spam. 3. Status koneksi internet apakah sudah terhubung dengan internet atau belum 4. Jumlah total message yang ada pada account user, jumlah message yang terdapat pada folder inbox dan folder spam. 5. Daftar email yang diterima.
38
Bayesian Filtering Database Training Spamicity Database Training History Last Training: Spam Files: Non Spam Files: Training Setting Training Folder For Spam Files: Alamat Folder..
X Blocked Address Database
Browse
Training Folder For non‐spam files: Alamat Folder.. Training Progress:
Browse
Cancel Start
Close
Gambar 3.15 Rancangan Layar Training Pada rancangan layar training terdapat: 1. Training history, tanggal terakhir dilakukannya proses training, jumlah spam file yang ditraining, jumlah non-spam files yang ditraining 2. Training setting, alamat folder spam files yang akan ditraining, alamat folder non-spam file yang akan ditraining 3. Proses training, tombol start untuk memulai proses training, cancel untuk membatalkan 4. Tombol close untuk menutup layar training dan kembali ke halaman utama
39
Bayesian Filtering Database Spamicity Blocked Address Training Database Database Spam Files: Ham Files: Token
Spam Freq
X
Non Spam Freq
Spamici ty
Clear
Clos e
Gambar 3.16 Rancangan Layar Spamicity Database Pada rancangan layar spamicity database terdapat: 1. Jumlah spam files dan non-spam files yang detraining 2. Token-token, spam frequency, non-spam frequency, spamicity yang merupakan hasil dari proses training 3. Tombol clear untuk menghapus hasil proses training 4. Tombol close untuk keluar dari spamicity database dan kembali ke halaman utama.
40
Bayesian Filtering Database Training Spamicity Database Blocked Address Database Blocked Address Clear
X Delete Close
Gambar 3.17 Rancangan Layar Blocked Address Database Pada rancangan layar blocked address database terdapat: 1. Alamat e-mail yang telah diblock oleh user karena mengirimkan spam-mail sehingga semua e-mail yang dikirimkan oleh user tersebut akan otomatis masuk ke folder spam mail. 2. Tombol clear untuk menghapus semua alamat e-mail yang telah diblock 3. Tombol delete untuk menghapus e-mail yang telah diblock satu per satu 4. Tombol close untuk keluar dari blocked address database dan kembali ke halaman utama
41
Address Book Add Edit Name
Delete
Send Mail
Close
Email Address
X
Gambar 3.18 Rancangan Layar Address Book Pada rancangan layar address book terdapat: 1. 5 buah toolbar, yaitu add, edit, delete, send mail, close 2. Add, untuk menambahkan alamat e-mail ke dalam address book Edit, untuk mengubah alamat e-mail yang sudah terdapat dalam address book Delete untuk menghapus alamat e-mail yang tedapat pada address book Send mail untuk mengirimkan e-mail ke alamat yang dipilih Close untuk keluar dari address book dan kembali ke halaman utama 3. Daftar nama dan alamat e-mail.
42
Mail From… Refresh Add Address
Reply Delete
Mark As Spam
X Close
Isi Email
Gambar 3.19 Rancangan Layar Email yang diterima Pada rancangan layar e-mail yang diterima terdapat: 1. Enam buah toolbar, yaitu refresh, add address, reply, delete, mark as spam, close 2. Refresh untuk meload kembali isi email Add address untuk menambahkan alamat e-mail pengirim ke dalam address book Reply untuk membalas e-mail yang diterima Mark as spam untuk memindahkan e-mail ke dalam folder spam Close untuk keluar dari layar e-mail yang diterima dan kembali ke layar utama 3. Isi email.
43
Send Message To: Subject:
X
Send
Isi Email
Gambar 3.20 Rancangan Layar Send Mail Pada rancangan layar send mail terdapat: 1. To berisikan alamat e-mail si penerima 2. Subject berisikan judul e-mail yang akan dikirimkan 3. Tombol send untuk melakukan proses pengiriman e-mail 4. Isi email 5. Tombol close untuk keluar dari layar send mail dan kembali ke layar utama
3.5
Menu Program yang dirancang mempunyai 5 komponen dasar yaitu : 1.
Menu Training Pada menu training dilakukan proses pelatihan e-mail. Langkah awalnya
pemakai harus mengisikan alamat dimana folder yang berisi file spam mail dan folder yang berisi file non-spam mail itu disimpan, atau pemakai dapat menggunakan tombol browse untuk mencari dimana folder-folder tersebut tersimpan. Proses training dilakukan dengan algoritma Bayesian Filtering yaitu
44
dengan membuat database token-token yang terdapat pada folder spam mail dan non-spam mail, kemudian berdasarkan database tersebut dilakukan perhitungan spamicity setiap token yang umum digunakan pada spam mail. 2.
Menu Main Menu main menampilkan daftar e-mail yang diterima, di mana setiap e-
mail tersebut sudah melalui proses training dengan algoritma Bayesian Filtering. E-mail yang masuk ini akan diklasifikasikan ke dalam folder-folder berdasarkan isi e-mail tersebut. Melalui menu ini pemakai dapat membaca, menghapus atau membalas e-mail yang diterima. 3.
Menu Mail Menu mail menampilkan isi e-mail yang diterima oleh pemakai, pemakai
dapat membalas, menghapus atau memberi tanda bahwa e-mail tersebut adalah spam mail. Unit ini dapat dilihat dengan mengklik salah satu e-mail yang terdapat pada Menu main. 4.
Menu Option Menu option berisi alamat SMTP, POP3, UserID, dan Password yang
harus diisi oleh pemakai agar dapat melihat jumlah e-mail yang diterima pemakai. Menu ini juga akan langsung melakukan koneksi ke internet bila komputer pemakai belum terkoneksi ke internet. 5.
Menu Database Menu database menampilkan Spamicity Database yaitu tabel spamicity
hasil pembelajaran algoritma Bayesian Filtering,dan Address Blocking yaitu tabel
45
yang berisikan alamat-alamat e-mail yang diblok karena dikategorikan sebagai alamat yang banyak dipakai oleh para spammers. 6.
Menu Compose Menu compose disediakan bagi pemakai untuk mengetikkan dan
mengirimkan e-mail. Pemakai dapat menyisipkan alamat e-mail tujuan yang disimpan dalam Address Book.
7.
Menu Address Book Menu address book disediakan bagi pemakai untuk menyimpan nama dan
alamat e-mail dari rekan-rekan pemakai. Pemakai juga bisa menambah nama dan alamat baru, menghapus maupun mengedit nama dan alamat e-mail yang sudah ada. 8.
Menu Help Menu help terdiri dari dua bagian yaitu, bagian content yang menjelaskan
isi program aplikasi yang dibuat dan bagian index yang memuat penjelasan tentang pemakaian program aplikasi secara manual.