26 BAB III ANALISIS DAN PERANCANGAN Analisis dan perancangan berfungsi untuk mempermudah, memahami dan menyusun perancangan pada bab selanjutnya, selain itu juga berfungsi untuk memberikan gambaran dan solusi pada penelitian ini. Metode yang digunakan untuk pengembangan sistem pada penelitian ini adalah SDLC (Software Development Life Cycle) yaitu proses mengembangkan atau mengubah suatu sistem perangkat lunak dengan menggunakan model-model dan metodologi yang digunakan orang untuk mengembangkan sistem perangkat lunak sebelumnya. Sedangkan untuk perancangan sistem menggunakan metode Object Oriented Desain (OOD). 3.1 Analisis Pada bagian ini akan dilakukan analisis terhadap metode Naive Bayesan pada aplikasi spam filtering berbasis java desktop untuk mengklasifikasikan email. Analisis yang dilakukan pada penelitian ini adalah analisis pada metode Naive Bayesan. Apakah metode atau algoritma tersebut memiliki akurasi yang tinggi dalam melakukan klasifikasi atau pemilahan email yang spam dan non spam. Hasilnya digunakan untuk mengidentifikasi dan mengevaluasi hasil implementasi dan pengujian yang akan dibahas pada bab berikutnya. Dari proses analisis akan dapat dihasilkan berbagai macam saran perbaikan terhadap sistem yang dapat dijadikan dasar dalam perancangan aplikasi spam filtering.
27 3.3.1 Analisis Masalah Mengingat fasilitas email yang murah dan kemudahan untuk mengirimkan ke berapapun jumlah penerimanya maka beberapa pihak tertentu memanfaatkannya dengan mengirimkan email berisi promosi produk atau jasa, pornografi, virus, dan content-content yang tidak penting ke ribuan pengguna email. Email-email inilah yang biasanya disebut dengan spam mail. Dampak buruk yang paling utama dari adanya spam mail adalah terbuangnya waktu dengan percuma untuk menghapus spam mail dari inbox satu persatu. Meskipun berbagai perangkat lunak email filtering banyak tersedia, namun masalah spam mail juga semakin berkembang. Berbagai upaya telah dilakukan untuk mengatasi permasalahan spam. Pada mulanya proses penyaringan email spam dilakukan dengan pendekatan rule-based. Email akan dikategorikan sebagai spam menurut aturan-aturan tertentu seperti kemunculan kata, alamat pengirim, dan struktur header. 3.3.2 Analisis Kebutuhan Sistem Kebutuhan sistem yang digunakan dalam membangun aplikasi spam filtering dengan menggunakan metode Naive Bayesan terdiri dari dua jenis yaitu Perangkat Keras (Hardware) dan perangkat lunak (Software) sebagai berikut : 3.3.2.1 Hardware (Perangkat Keras) Kebutuhan perangkat keras (Hardware) yang diperlukan untuk dapat menjalankan perangkat lunak adalah sebagai berikut :
28 1. Laptop Acer 4732z 2. RAM 1 GB. 3. Hardisk 160 GB. 4. Mouse. 5. Memory 1 GB. 3.3.2.2 Software (Perangkat Lunak) Software adalah program-program yang memerintahkan komputer untuk melakukan suatu tugas. Software yang digunakan untuk pengembangan perangkat lunak dan pembuatan laporan ini adalah : 1. Microsoft Windows 7, sebagai sistem operasi. 2. Microsoft Internet Explorer, Mozilla Firefox, sebagai browser. 3. Netbeans sebagai IDE untuk menjalankan Java 4. Microsoft Office sebagai aplikasi pengolahan data untuk penulisan laporan. 5. MySQL sebagai penyimpanan Database 3.3.3 Analisis Algoritma Sistem Klasifikasi Email Algoritma sistem merupakan gambaran umum dari proses kategori spam dan non spam, disini akan dilakukan proses pencocokan antara kata-kata penting yang mewakili kata kunci yang ada dalam tabel. Pembuatan tabel kata kunci dilakukan untuk membuat program kategori spam dan non spam ini dilakukan agar mendapatkan hasil yang baik. Dimulai dari start dengan cara mengumpulkan spam sample terus melakukan tokenizing lalu memasukan email uji, setelah itu lakukan klasifikasi email dengan menggunakan metode Naive Bayesan.
29 Kemudian bila spam besar dari ham maka hasilnya spam dan jika tidak hasilnya Ham, itu semua tertera di label memuat hasil dan selesai. Gambar 3.1 Algoritma Sistem Klasifikasi Email 3.2 Perancangan Berdasarkan hasil analisis maka gambaran arus data terhadap sistem yang dirancang sebagai berikut: 3.2.1 Use Case Diagram Use case diagram adalah gambaran umum serta keseluruhan sistem dimana pengguna yaitu user. User bisa mengolah data email dan melakukan relasi
30 tambahan untuk menjalankan fungsinya, setelah itu user bisa membuat token email. Kemudian user bisa melakukan klasifikasi email dan bisa melihat hasil dari pemilahan email tersebut. Gambar 3.2 Use Case Diagram Pada use case diagram ini user dapat melakukan diantaranya mengelola data email, membuat token email, klasifikasi email dan melihat hasilnya. Dimulai dari user dapat mengelola data email dan melakukan include atau relasi ke membuat token email, lalu user melakukan klasifikasi setelah itu melakukan extend dari melihat hasil ke klasifikasi email. Kemudian user bisa melihat hasil klasifikasi atau pemilahan email tersebut termasuk ke dalam spam atau non spam.
31 3.2.2 Activity Diagram Activity diagram menggambarkan sebuah keadaan dimulai (start state) yang menampilkan halaman menu dengan beberapa pilihan seperti gambar diatas. Dan sebagai pengguna bisa memilih tampilan menu kemudian melihat proses yang terjadi, setelah itu selesai. Pada activity diagram pertama user melakukan start dan masuk ke sistem dan melakukan penyimpanan data lalu sistem juga bisa menghapus data email. User bisa membuat token email dan bisa melakukan klasifikasi email terus menandai email dalam sistem, disitu user bisa melihat hasil spam dan melihat hasil ham setelah itu selesai. Gambar 3.3 Activity Diagram
32 3.2.3 Class Diagram Diagram ini memperlihatkan himpunan kelas-kelas, antarmuka-antarmuka, kalaborasi-kalaborasi. Class Diagram menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti containment, pewarisan dan asosiasi. Class diagram ini akan menunjukan objek-objek yang terdapat pada aplikasi ini. Gambar 3.4 Class Diagram Pada perancangan class diagram di sini terdapat tiga tabel utama dalam aplikasi klasifikasi Naive Bayesan, pada tabel Naive Bayesan terdapat komponen antara lain email, token, klasifikasi dan hasil. Pada tabel email terdapat dari, untuk, isi, tanggal, tambah email, perbaiki email dan hapus email dan pada tabel tokenizer terdapat token, frekuensi, tambah token, hitung peluang. Dari ketiga
33 tabel tersebut bisa melakukan proses kerja didalam aplikasi klasifikasi Naive Bayesan 3.2.4 Perancangan Tabel Data yang digunakan dalam pembangunan perangkat lunak ini disimpan dalam sebuah database MySQL yang terdiri dari 2 tabel yaitu tabel yang berfungsi untuk menyimpan data contoh spam (tabel email samples) dan tabel pembelajaran komentar spam (table tokens). Struktur tabel yang terdapat dalam database aplikasi spam filtering adalah sebagai berikut : 1. Tabel email samples a. Nama Tabel : email samples b. Fungsi : Menyimpan data contoh spam c. Primary Index : Id No Nama Field Jenis Ukuran Keterangan 1 Id Int 11 Identitas Email Sampe 2 Pengirim Varchar 100 Nama Pengirim 3 Penerima Varchar 100 Nama Penerima 4 Isi Email Text - Isi Email 5 Tipe Varchar 1 Tipe Email Tabel 3.1 Tabel Email Samples 2. Tabel knowledge_base a. Nama Tabel : Tokens b. Fungsi : Pembelajaran komentar spam c. Primary Index : Id
34 No Nama Field Jenis Ukuran Keterangan 1 Id Int 11 Identitas Token 2 Token Varchar 50 Token 3 Jumlah Int 11 Jumlah Token 4 Tipe Tinyint 3 Tipe Token Tabel 3.2 Tabel Tokens 3.2.5 Interface Berikut adalah rancangan rancangan antarmuka dari aplikasi spam filter berbasis java desktop yang akan direkayasa. 3.2.6 Proses Klasifikasi Email Gambar 3.5 Proses Klasifikasi Email Pada form proses klasifikasi terdapat menu file dan process, ini merupakan menu untuk melakukan klasifikasi email spam dan non spam dengan algoritma
35 bayesan. Pada menu file terdapat menu sample email dan exit, sedangkan di menu process terdapat menu classifiying email dan tokenizer. 3.2.7 Tokenizer Didalam tokenizer kita bisa menyimpan token dan ham spam, disini dalam proses tokenizer kita akan mencari isi token spam dan ham. Setelah proses selesai kita akan mengetahui jumlah satistic token ham dan token spam. Jadi secara singkat disini kita mengisi ham dan spam, lalu melakukan proses tokenizing dan menyimpannya di menu save. Gambar 3.6 Tokenizer 3.2.8 Sample Email Dalam penelitian ini kita koleksi sample email yang telah kita pindahkan ke notepad untuk di klasifikasikan, didalam form sample email ada beberapa menu utama, disini pertama kita bisa memilih tipe file, apakah spam, ham atau bukan. Setelah itu kita bisa menjalankan aplikasi tersebut dengan perintah yang kita
36 inginkan yang telah terdapat didalam aplikasi tersebut, seperti: menu tambah, ubah tak terklasifikasi, ubah terklasifikasi dan hapus email. Menu-menu tersebut dapat kita jalankan sesuai dengan fungsinya masing-masing. Gambar 3.7 Sample Email 3.2.9 Form Add Samples Pada rancangan form add samples terdapat beberapa menu di antaranya menu pengirim, menu penerima, isi, save dan reset. Menu menu tersebut bisa digunakan oleh user untuk menambahkan sample email sesuai dengan fungsinya masing - masing. Pada menu pengirim di situ kita isikan alamat pengirim dan pada menu penerima kita isikan alamat penerima, setelah itu pada isi kita isikan contoh email yang telah kita cari sample nya, lalu kita save data tersebut.
37 Gambar 3.8 Form Add Samples 3.2.10 Interface Klasifikasi Gambar 3.9 Interface Klasifikasi Interface klasifikasi ini adalah tampilan goal dari aplikasi yang penulis buat, disini terdapat menu muat email, klasifikasi dan tutup. Pada tampilan goal ini kita bisa melihat proses hasil dari klasifikasi email, di sini terdapat jumlah berapa
38 email tersebut yang termasuk ke dalam spam dan non spam setelah melakukan uji coba pada aplikasi filter spam tersebut.