Dice Coefficient Similarity Analisis Sistem

Algoritma Rabin-Karp sebagai berikut : 1 function RabinKarp string s[1..n], string sub[1..m] 2 hsub :-hashsub[1..m] 3 hs :- hashs[1..m] 4 for i from 1 to n 5 if hs – hsub 6 if s[ i..i+m-1] – sub 7 return i 8 hs :- hash s[i+1..i+m] 9 return not found Alsasian, 2006

2.4 Dice Coefficient Similarity

Dice Coefficient Similarity digunakan untuk menghitung kesamaan dari dokumen. Rumus dari Dice Coefficient Similarity adalah : 2 | X ∩ Y | D X , Y = ————— 3 | X | + | Y | Dimana: X : Nilai Dokumen 1 Y : Nilai Dokumen 2 Dice Coefficient adalah rumus umum untuk menghitung kemiripan dokumen dengan mengalikan 2 jumlah nilai hash yang sama antara dokumen pertama dengan nilai hash dokumen kedua kemudian membaginya dengan jumlah nilai hash dokumen pertama dengan nilai hash dokumen kedua. BAB 3 ANALISIS DAN PERANCANGAN

3.1 Analisis Sistem

Analisis sistem merupakan tahap awal dalam melakukan penelitian. Tujuan dari analisis sistem adalah untuk mengetahui masalah-masalah yang ada dalam pembuatan sistem. Analisis sistem merupakan teknik pemecahan masalah dengan menggambarkan proses-proses yang ada dalam sistem untuk mendapatkan keluaran yang sesuai dengan kebutuhan user.

3.1.1 Analisis Masalah

Analisis masalah sistem dirancang menggunakan cause-and-effect analisis.

3.1.1.1 Cause-and-Effect analisis

Cause-and-Effect analisis adalah teknik menentukan sebab dan efek dari masalah yang dipelajari. Efek dapat menjadi gejala dari masalah yang lebih berakar yang pada akhirnya harus dianalisis sebab dan akibat sehingga tidak menghasilkan gejala masalah lain. Seperti terlihat pada tabel 3.1. Tabel 3.1 Cause-and-Effect Analysis Cause-and-Effect Analysis System Improvement Objective Problem or Opportunit Cause and Effects System Objective System Constraint Pada umumnya deteksi kemiripan file misalnya skripsi masih dilakukan secara manual 1. Diperlukan sistem pendeteksi kemiripan file. 2. Deteksi kemiripan antar file secara manual menghabiskan banyak waktu. Diperlukan sistem yang dapat mendeteksi kemiripan kata dalam file teks. Tidak tersedianya sistem pendeteksi kemiripan file teks dengan algoritma Rabin-Karp menggunakan stemming Nazief dan Adriani Diagram Ishikawa fishbone diagram sering disebut diagram sebab akibat. Diagram ini membantu mengidentifikasi, mengeksplorasi dan menggambarkan masalah dengan mengikutsertakan sebab dan akibat dari permasalahan dalam visual grafis. Dengan diagram ishikawa ini proses pencapaian sistem akan sangat terbantu. Masalah utama dari sistem yang akan dirancang pada skripsi ini adalah bagaimana membuat sebuah sistem pendeteksi kemiripan file dengan algoritma Rabin Karp dan stemming Nazief dan Adriani. Di bawah ini adalah diagram ishikawa untuk analisis permasalahan sistem: Gambar 3.1 Diagram Ishikawa untuk Analisis Permasalahan Sistem Pada diagram ishikawa gambar 3.1, masalah utama ditunjukkan pada segi empat yang berada paling kanan bagian kepala diagram ishikawa. Aspek ditunjukkan pada segiempat yang dihubungkan ke ke garis utama garis horizontal menuju bagian kepala, sedangkan sebab – akibat ditunjukkan dalam bentuk tanda panah horizontal kecil pada masing – masing kategori masalah.

3.1.2 Analisis Persyaratan Requirement Analysis

Analisis Persyaratan berguna untuk menentukan syarat-syarat yang diperlukan untuk membuat sebuah sistem. Analisis persyaratan sebuah sistem dapat dikelompokkan menjadi 2 bagian yaitu, analisis fungsional dan analisis non-fungsional.

3.1.2.1 Analisis Fungsional Sistem

Analisis fungsional sistem merupakan kegiatan pelayanan yang harus dimiliki oleh sistem. Dapat berupa input, output, proses atau data yang tersimpan. Pada fase ini dapat diketahui hal-hal apa saja yang dapat dilakukan oleh sistem, seperti: Kata di-stem mengunakan stemming Nazief dan Adriani Kemudian dihitung nilai hash menggunakan Algoritma Rabin-Karp Algoritma stemming Nazief dan Adriani Algoritma Rabin-Karp File berekstensi .pdf Membutuhkan sistem pendeteksi kemiripan file Pengguna Metode Deteksi tingkat kemiripan file teks berbentuk skripsi Mesin Prosedur 1. Sistem hanya mampu mendeteksi file berekstensi pdf. 2. Sistem dapat membaca file skripsi berekstensi pdf yang akan dibandingkan yang diinput user dan kemudian disimpan ke database. 3. Sistem dapat melakukan proses preprocessing dengan stemming Nazief dan Adriani. 4. Sistem dapat melakukan proses perhitungan persentase kemiripan dengan algoritma Rabin Karp. 5. Sistem dapat menampilkan hasil persentase perhitungan kemiripan.

3.1.2.2 Analisis Non Fungsional Sistem

Analisis non fungsional sistem adalah karakteristik yang menentukan kepuasan sebuah sistem seperti performa, kemudahan penggunaan, anggaran biaya, efisiensi dan dokumentasi yang mampu bekerja tanpa mengganggu fungsionalitas sistem lainnya. Analisis non fungsional sistem dari sistem yang dibangun yaitu dari segi performa adalah sistem dapat mendeteksi file teks yang berbentuk skripsi dengan baik. Dari segi kemudahan penggunaan adalah sistem yang ditampilkan user friendly dan menarik sehingga user mudah menggunakan sistem dan tidak mendapatkan kesulitan dalam mempelajari sistem. Dari segi anggaran biaya adalah sistem memiliki kemampuan bekerja dengan baik tanpa harus mengeluarkan biaya tambahan untuk perangkat keras dan perangkat lunak. Dari segi efisiensi adalah sistem tidak memerlukan waktu yang cukup lama dalam pemrosesan. Dari segi dokumentasi adalah sistem dapat menyimpan file yang sudah diproses.

3.1.3 Pemodelan Sistem dengan Use Case

Pemodelan sistem dilakukan untuk memperoleh gambaran secara jelas mengenai objek- objek apa saja yang akan berinteraksi dengan sistem dan juga hal-hal apa saja yang harus dilakukan sistem agar berfungsi dengan baik menurut fungsionalitasnya. Pada penelitian ini dilakukan analisis dan perancangan sistem pendeteksi kemiripan file teks yang berbentuk skripsi dengan algoritma Rabin Karp dan stemming Nazief dan Adriani.

3.1.3.1 Diagram Use Case

Pada sistem ini, Use case diagram digunakan untuk pemodelan fungsional sistem. Diagram use case merupakan diagram yang mendeskripsikan interaksi tipikal antara para pengguna sistem dengan sistem. Masing-masing diagram use case memiliki actor, use case, sequence diagram dan hubungan antar mereka. Pada sistem ini actor sebagai pengguna user dan yang dapat menginput file untuk dideteksi tingkat kemiripannya dengan file lain yang ada di database sistem seperti pada Gambar 3.2. User «extends» System Membandingkan Skripsi Melihat Daftar Skripsi Stemming Nazief dan Adriani Algoritma Rabin-Karp Dice Coefficient Similarity «extends» «extends» Gambar 3.2 Use Case Diagram Pada diagram use case yang ditunjukkan pada Gambar 3.2 diatas user juga dapat berperan sebagai admin. User menginputkan file yang akan dibandingkan dengan file yang ada di database sistem, dimana hanya file yang berekstensi .pdf yang dapat diproses sistem. Kemudian sistem memproses file dengan algoritma yang dipakai.

3.1.3.2 Use Case Membandingkan Skripsi

Berikut ini merupakan tabel dokumentasi naratif dari use case membandingkan skripsi : Tabel 3.2 Dokumentasi Naratif Use Case Membandingkan skripsi Nama Use Case Membandingkan skripsi Aktor AdminUser Deskripsi Use Case ini berfungsi untuk membandingkan skripsi menggunakan algoritma Rabin Karp dan stemming Nazief dan Adriani Pre Condition Skripsi yang akan dibandingkan sudah diinput, sistem telah dieksekusi Normal Flow Kegiatan Aktor Respon Sistem Langkah 1: User menginputkan nim dan judul skripsi yang akan dibandingkan Langkah 3: User menekan tombol pilih skripsi Langkah 5: User memilih skripsi yang akan dibandingkan Langkah 7: User menekan tombol bandingkan untuk memulai proses Langkah 2: Sistem menyimpan ke database dan menampilkan nim dan judul skripsi yang baru diinput Langkah 4: Sistem menampilkan file dialog Langkah 6: Sistem menyimpan lokasi skripsi dan menginputnya untuk dibandingkan Langkah 8: Sistem melakukan proses perbandingan dengan algoritma Rabin Karp dan stemming Nazief dan Adriani Langkah 9: Sistem menampilkan persentase kemiripan skripsi yang diinput dengan skripsi yang sudah tersimpan di database sistem Past Condition User dapat melihat hasil perhitungan kemiripan skripsi

3.1.3.3 Activity Diagram Membandingkan Skripsi

Activity Diagram untuk use case Membandingkan Skripsi dapat dilihat pada gambar 3.3: USER SISTEM Menekan tombol “pilih skripsi” Isi skripsi ditampilkan Memproses skripsi dengan stemming Nazief dan Adriani Membentuk Hash menggunakan algoritma Rabin- Menginput nim dan judul skripsi yang akan dibandingkan Menyimpan nim dan judul ke database Menekan tombol “Masukkan” Menampilkan nim dan judul yang baru diinput Menekan tombol “proses” Gambar 3.3 Activity Diagram Membandingkan Skripsi

3.1.3.4 Use Case Algoritma Stemming Nazief dan Adriani

Tabel dokumentasi naratif dari use case algoritma stemming Nazief dan Adriani dapat dilihat pada tabel 3.3. Tabel 3.3 Dokumentasi Naratif Use Case Algoritma Stemming Nazief dan Adriani Nama Use Case Algoritma Stemming Nazief dan Adriani Aktor Sistem Deskripsi Use Case ini berfungsi untuk melakukan proses stemming kata Menampilkan hasil persentase kemiripan antar file skripsi Menampilkan nilai Hash hasil perhitungan Menekan tombol “Masukkan ke database” Memasukkan nilai hash yang didapat ke database Menghitung nilai kemiripan antar skripsi dengan membandingkan nilai hash skripsi yang baru diinput dengan skripsi yang sudah disimpan di database menggunakan algoritma Nazief dan Adriani Pre Condition User sudah mengklik tombol proses pada sistem Normal Flow Kegiatan Aktor Respon Sistem Langkah 1: User menginput file Langkah 2: Sistem mengambil kata Langkah 3: Sistem menghapus partikel –lah, -kah, -pun. Langkah 4: Sistem menghapus kata ganti milik –ku, -mu, -nya. Langkah 5: Sistem menghapus akhiran -i, -an. Langkah 6: Sistem menghapus awalan se-, ke-, di-, ter-, ber-, pe-, me-, per-. Langkah 7: Sistem memeriksa apakah kata merupakan kata dasar Past Condition Sistem memperoleh kata dasar

3.1.3.5 Activity Diagram Algoritma Stemming Nazief dan Adriani

Acitvity Diagram dari use case algoritma Stemming Nazief dan Adriani dapat dilihat pada gambar 3.4. USER SISTEM Gambar 3.4 Activity Diagram Algoritma Stemming Nazief dan Adriani

3.1.3.6 Use Case Algoritma Rabin-Karp

Tabel dokumentasi naratif dari use case algoritma Rabin-Karp dapat dilihat pada tabel 3.4. Input File Menghapus partikel -lah, -kah, -pun Menghapus kata ganti milik –ku, -mu, -nya Menghapus akhiran –i, -an Menghapus awalan se-, ke-, di-, ter-, ber-, pe-, per-, me- Memeriksa apakah kata dasar Mengambil kata Tabel 3.4 Dokumentasi Naratif Use Case Algoritma Rabin-Karp Nama Use Case Algoritma Rabin-Karp Aktor Sistem Deskripsi Use Case ini berfungsi untuk mendapat nilai hash Pre Condition User sudah menekan tombol proses pada sistem Normal Flow Kegiatan Aktor Respon Sistem Langkah 1: User menginput file skripsi Langkah 5: User dapat melihat nilai hash file skripsi yang diinput Langkah 2: Sistem membentuk gram Langkah 3: Sistem membentuk hash Langkah 4: Sistem menyimpan nilai hash ke database Past Condition Sistem menampilkan nilai hash

3.1.3.7 Activity Diagram Algoritma Rabin-Karp

Acitvity Diagram dari use case Algoritma Rabin-Karp dapat dilihat pada gambar 3.5. USER SISTEM Gambar 3.5 Activity Diagram Algoritma Rabin-Karp

3.1.3.8 Use Case Dice Coefficient Similarity

Tabel dokumentasi naratif dari use case Dice Coefficient Similarity dapat dilihat pada tabel 3.5. Tabel 3.5 Dokumentasi Naratif Use Case Dice Coefficient Similarity Nama Use Case Dice Coefficient Similarity Aktor Sistem Deskripsi Use Case ini berfungsi untuk menghitung persentase kemiripan Input file skripsi Menekan tombol proses Membentuk Gram Membentuk hash Menyimpan nilai hash ke database Menampilkan nilai hash file Pre Condition User sudah berada di Form Kemiripan Normal Flow Kegiatan Aktor Respon Sistem Langkah 1: User melihat form kemiripan pada sistem Langkah 2: Sistem mengambil nilai hash Langkah 3: Sistem menghitung persentase kemiripan skripsi dengan rumus Dice Coefficient, rumus umum untuk menghitung kemiripan dokumen, yaitu dengan mengalikan 2 jumlah nilai hash yang sama antara dokumen pertama dengan nilai hash dokumen kedua kemudian membaginya dengan jumlah nilai hash dokumen pertama dengan nilai hash dokumen kedua. Langkah 4: Sistem menyimpan nilai persentase file skripsi ke database. Langkah 5: Sistem menampilkan presentase kemiripan file skripsi. Past Condition Sistem menampilkan persentase kemiripan antar skripsi pada Form Kemiripan

3.1.3.9 Activity Diagram Dice Coefficient Similarity

Acitvity Diagram dari use case Dice Coefficient Similarity dapat dilihat pada gambar 3.6. USER SISTEM Gambar 3.6 Activity Diagram Dice Coefficient Similarity Mengambil nilai hash Menghitung persentase kemiripan skripsi dengan rumus Dice Coefficient Similarity 2 | X ∩ Y | D X , Y = ————— | X | + | Y | Menyimpan nilai hasil persentase ke database Melihat form kemiripan pada sistem Menampilkan persentase kemiripan file skripsi pada Form Kemiripan

3.1.3.10 Use Case Melihat Skripsi

Tabel dokumentasi naratif dari use case melihat skripsi dapat dilihat pada tabel 3.6. Tabel 3.6 Dokumentasi Naratif Use Case Melihat Skripsi Nama Use Case Melihat skripsi Aktor AdminUser Deskripsi Use Case ini berfungsi untuk melihat daftar skripsi yang sudah diproses menggunakan algoritma Rabin Karp dan stemming Nazief dan Adriani dan sudah disimpan di database Pre Condition User sudah berada pada tampilan daftar skripsi Normal Flow Kegiatan Aktor Respon Sistem Langkah 1: User melihat daftar skripsi yang sudah disimpan ke database Langkah 2: User mengklik judul skripsi yang akan dilihat Langkah 3: Sistem menampilkan Judul Skripsi, isi skripsi dan nilai hash yang sudah disimpan di database Past Condition Sistem menampilkan data skripsi

3.1.3.11 Activity Diagram Melihat Skripsi

Acitvity Diagram dari use case Melihat skripsi dapat dilihat pada gambar 3.7. USER SISTEM Gambar 3.7 Activity Diagram Melihat Skripsi

3.1.4 Analisis Proses Sistem

Analisis proses pada sistem dapat digambarkan dengan Sequence Diagram. Sequence Diagram berfungsi menunjukkan hubungan statis antara actor dan lifeline. Sequence Diagram untuk sistem pendeteksi tingkat kemiripan file teks menggunakan algoritma Rabin-Karp dan stemming Nazief dan Adriani dapat dilihat pada gambar 3.8. Melihat daftar skripsi yang sudah disimpan ke database Mengklik judul skripsi yang akan dilihat Menampilkan judul skripsi, isi skripsi dan nilai hash yang sudah disimpan ke database Sistem Stemming Nazief dan Adriani Algoritma Rabin-Karp Dice Coefficient Simillarity kemiripan Cek_Kamuskata Del_Inflection_Suffixeskata Del_Derivation_Suffixeskata Del_Derivation_Prefixeskata hapus_spasiteks pembentukan_gramteks, kgram pembentukan_hashgram diceh1, h2 hitung_hash_samahash1, hash2 Gambar 3.8 Sequence Diagram Sistem

3.1.5 Flow Chart

Flow chart adalah diagram alir proses .

3.1.5.1 Flow Chart Algoritma Rabin-Karp

Flow Chart untuk algoritma Rabin-Karp dapat kita lihat pada gambar 3.9 berikut: Mulai Selesai Tentukan Gram Bentuk Gram Bentuk Hash Gambar 3.9 Flow Chart Algritma Rabin-Karp

3.1.5.2 Flow Chart Algoritma Stemming Nazief dan Adriani

Flow Chart untuk algoritma Stemming Nazief dan Adriani dapat kita lihat pada gambar

3.10 berikut ini: