BAB 3
ANALISIS DAN PERANCANGAN
3.1 Analisis Sistem
Analisis sistem adalah sebuah teknik pemecahan masalah yang menguraikan sebuah sistem menjadi bagian-bagian komponen dengan tujuan mempelajari seberapa bagus bagian-bagian komponen tersebut bekerja dan berinteraksi untuk meraih tujuan mereka. Analisis sistem merupakan pembelajaran sebuah sistem dan komponen-komponennya sebagai prasyarat desain sistem, spesifikasi sebuah sistem baru dan diperbaiki. Analisis sistem bisa juga disebut sebuah istilah yang secara kolektif mendeskripsikan fase-fase awal pengembangan sistem (Whitten, 2004).
3.2 Desain Sistem
Information System design atau desain sistem informasi didefenisikan sebagai tugas yang fokus pada spesifikasi solusi detail berbasis komputer. Dapat juga disebut physical design. Jika analisis sistem menekankan pada masalah bisnis, maka sebaliknya desain sistem fokus pada segi teksnis atau implementasi sebuah sistem
3.3 Analisis Masalah
Pengucapan yang sama namun berbeda makna. Data yang digunakan di dalam bahasa melayu langkat sebagai contoh :Abah:Babah; di keluarga-keluarga tertentu dipergunakan untuk menyebut Ayah. Adapun sistem yang ingin dikembangkan memakai bantuan Algoritma Manber, serta ditambah dengan Fingerprint dan jacquard coefficient untuk mencari presentase similiritas kata. Untuk mencari dan menelaah awal dari masalah ini, diperlukan suatu diagram grafis yakni diagram Ishikawa, sehingga dapat dikembangkan masalah tersebut oleh sebab maupun akibat dari permasalahan sistem tersebut. Diagram Ishikawa adalah sebuah alat grafis yang digunakan untuk mengidentifikasi, mengeksplorasi dan menggambarkan suatu masalah, sebab dan akibat dari masalah itu (Whitten, 2004). Pemodelan diagram Ishikawa dapat dilihat pada pemodelan gambar dibawah ini :
USER
- Kosa Kata Bahasa Melayu
METHOD
Belum adanya ditemukan pencarian persamaan
yang dihubungkan oleh garis ke tulang utama (garis horizontal yang terhubung ke kepala ikan). Selanjutnya tulang-tulang kecil yang diwakili oleh garis panah yang mengarah ke tulang-tulang kategori masalah menunjukkan sebab akibat yang muncul pada permasalahan tersebut.
3.4 Pemodelan Sistem
Permodelan sistem adalah dilakukan untuk memperoleh gambaran yang lebih jelas tentang objek apa saja yang akan berinteraksi dengan sistem serta hal-hal apa saja yang dilakukan oleh sebuah sistem sehingga sistem dapat berfungsi sesuai dengan baik sesuai dengan fungsionalitasnya. Pemodelan ini sendiri menggunakan usecase dan activity diagram, Usecase digunakan untuk menggambarkan sebuah sistem.
3.4.1 Use Case
Menurut Whitten, Bentley dan Dittman (2004) yang berpendapat bahwa Diagram usecase mengindentifikasi dan menggambarkan fungsi-fungsi sistem dengan menggunakan alat yang disebut usecase. Usecase menggambarkan fungsi-fungsi sistem dari sudut pandangan pengguna eksternal dan dalam sebuah cara dan terminologi yang mereka pahami. Usecase merupakan hasil penyusunan kembali lingkup fungsionalitas menjadi banyak pernyataan fungsionalitas sistem yang lebih kecil.
Gambar 3.2 Use case Diagram
kata tersebut di-input-kan maka sistem akan me-load data json dari kata bahasa indonesia, kemudian diproses sehingga didapatlah hasil berupa persamaan makna antara bahasa indonesia dan melayu beserta hasil presentase dari kedua kata atau kalimat tersebut. Dapat dilihat pada gambar 3.1 dan diberikan narasi usecase pada tabel 3.1
Tabel 3.1 Narasi Use Case
Nama Pencarian Makna Bahasa Indonesia dan Melayu
Aktor User
Deskripsi Dalam pencarian makna Bahasa Indonesia dan Melayu menggunakan algoritma Manber dan Presentase menggunakan jacquard coefficient
Alur Dasar Diperlukan sebuah input dari user untuk sistem memproses tugas yang diberikan oleh user.
Alur Alternatif User wajib meng-input kata dengan Bahasa Indonesia Pra Kondisi User meng-input-kan kata
Pasca Kondisi User mendapatkan hasil berupa makna
3.4.2 Activity Diagram
Activity Diagram secara grafis digunakan untuk menggambarkan rangkaian aliran aktifitas baik proses bisnis atau usecase. Diagram ini juga dapat digunakan untuk memodelkan action yang akan dilakukan saat sebuah operasi dieksekusi, dan memodelkan hasil dari action tersebut. (Whitten, Bentley, dan Dittman, 2004).
Gambar 3.3Activity Diagram
Tabel 3.2 Narasi Diagram activity
Nama Activity Diagram
Actor User
Deskripsi Activity Diagram menggambarkan tentang tahap dari proses eksekusi sistem yang dilakukan oleh user.
Kondisi Awal User diberikan interface awal
Alur Dasar Kegiatan User Respon Sistem
1. input kata
2. Menekan tombol Cari 3. Hasil
1. Sistem memberikan tampilan masukkan kata. 2. Sistem me-load makna yang bersumber dari json 3. sistem memproses kata tersebut.
3.4.3 Sequence Diagram
Sequence Diagram adalah secara grafis menggambarkan bagaiman objek berinteraksi dengan suatu sama lain melalui pesan pada eksekusi sebuah usecase atau operasi. Diagram ini mengilustrasikan bagaimana pesan terkirim dan diterima diantara objek dan dalam sekuensi apa. (Whitten, Bentley dan Dittman, 2004).
Adapun bentuk ataupun gambaran dari tampilan pencarian yang akan dibuat dapat dilihat pada gambar 3.4, dan narasi sequence diagrampada tabel 3.3 berikut:
Gambar 3.4 Sequence Diagram
Tabel 3.3 Narasi Sequence Diagram
Nama Diagram Sequence
Aktor User
Deskripsi Diagram sequence mengilustrasikan alur sistem dalam urutan waktu penggunaan system
Kondisi Awal Sistem awal hanya menampilkan menu input-an kata yang nantinya akan diproses oleh sistem.
Alur Dasar Kegiatan
User
1. User meng-input-kan kata
2. Menerima hasil pencarian persamaan makna
1. Meng-input-kan kata kedalam sistem untuk diproses.
2. Memvalidasi makna kata.
3. Mengambil makna kata pada teks.
4. Menampilkan makna kata pada menu proses.
5. Memproses input dari user.
Kondisi Akhir Mendapatkan hasil
pencarian makna.
listHash[] ← int[ngram.length];
for(i ← 0; i < ngram.lenght; i++){
text[] ← ngram.toArray();
for (i ← 0; i <ngram.length; i++){
ngram1[] ← countNGram(word1, n)
hash1[] ← hash(ngram1, prime_base, n)
ngram2[] ← countNGram(word2, n)
hash2[] ← hash(ngram2, prime_base, n)
manber_value ← intersection(hash1, hash2) / union(hash1,
hash2)
Flowchartmerupakan langkah awal pembuatan program. Dengan adanya flowchart urutan proses kegiatan menjadi lebih jelas. Jika ada penambahan proses maka dapat dilakukan lebih mudah. setelah flowchart selesai disusun, selanjutnya menerjemahkannya ke bentuk program dengan bahasa pemrograman.
3.6.1 Flowchart Algoritma Manber
START
3.7 Deteksi Kemiripan Teks Secara Manual
Berikut ini merupakan contoh penghitungan manual dari pendeteksian kemiripan teks pada penjiplakan jenis Disguised Plagiarism, yaitu:
Teks Uji : abah. Teks Banding : babah
Gram : 2
1. Rangkaian N-Gram dengan nilai N=2 Teks Uji : ab ba ah
Teks Banding : ba ab ba ah
2. Menentukan nilai hash dengan memasukkan rangkaian gram kedalam fungsi hash. Teks Uji :
= 194 + 98
Maka didapatkan hasil dari teks Banding adalah : 293 | 292 | 293 | 298 |
3. Memilih fingerprint dari nilai hash yang memenuhi persyaratan, yaitu dengan nilai pembagi P =1.
4. Menghitung similaritas, yaitu dengan menggunakan rumus (2.3) sehingga didapatkan hasil akhir berupa persentase similaritas teks.
Jumlah irisan (Uji, Banding) : 3 Jumlah Gabungan (Uji, Banding) : 4
Persentase diatas didapatkan dari proses pencarian persamaan kata (string) yang di-input-kan, kemudian dengan ditentukan nilai N-Gram terbentuklah nilai hashing, setelah nilai hash memenuhi persyaratan dengan menentukan nilai pembagi P = 1, maka didapatkan nilai irisan (intersection) dan Gabungan (Union), Untuk diproses menggunakn metode kemiripan (smilirity) Jaccard’s Similarity Coeficient dari hasil data banding dan data uji didapatkan nilai persentase kemiripan dari kedua string yang di-input-kan sebelumnya.
3.8 Perancangan Interface Sistem
Interface sistem merupakan tampilan sistem yang berfungsi untuk membantu pengguna dalam menggunakan sistem.
Interface sistem pada penelitian ini dibuat sesederhana mungkin dengan tujuan untuk mengurangi pengguna waktu yang tidak relavan pada proses sistem serta membantu pengguna dalam memahami dan menggunakan sistem rancangan interface sistem ini dapat dibagi menjadi tiga yaitu :
1. Tampilan Splash Screen
Gambar 3.6 Tampilan Interface Splash Screen
Berikut ini merupakan rincian dari rancangan tampilan awal pada Gambar 3.7 yang akan dibuat dapat dilihat pada Tabel 3.4, yaitu :
Tabel 3.4 Keterangan Interface Home Sistem
No Keterangan
1. Picture,digunakan untuk gambar icon dari aplikasi persamaan makna”
2. Text Description, user dapat melihat nama aplikasi pada saat aplikasi pertama kali dibuka.
3. Text, user dapat melihat nama pembuat aplikasi.
2. Tampilan Pencarian
Tampilan Pencarian digunakan untuk memasukkan kata dan kalimat yang ingin dicari persamaan maknanya. Tampilan pencarian ini menggunakan empat komponen antara lain :Title Bar, TextBox, Button, ListBox.
Gambar 3.7 Tampilan Interface Pencarian
Berikut ini merupakan rincian dari rancangan tampilan Hasil pada Gambar 3.6 yang akan dibuat dapat dilihat pada Tabel 3.5, yaitu
Tabel 3.5 KeteranganInterface Hasil Sistem
No Keterangan
1. Title Bar, komponen ini berfungsi untukmenampilkan judul aplikasi sinonim bahasa Indonesia dan melayu
2. Button Proses, tombol ini digunakan untuk memproses kata atau kalimat yang diinputkan untuk dicari maknanya.
3. TextBox, komponen ini digunakan untuk memasukkan kata atau kalimat yang ingin diproses maknanya.
4. ListBox, berfungsi untuk menampilkan hasil dan perbandingan antara bahasa indonesia dan melayu.
3. Tampilan Hasil Pencarian
Tampilan Hasil Pencarian digunakan untuk melihat hasil kata yang ingin dicari persamaan maknanya. Tampilan pencarian ini menggunakan empat komponen antara lain :Title Bar, TextBox, Button, ListBox.
Gambar 3.8 Tampilan Interface Hasil Pecarian
Berikut ini merupakan rincian dari rancangan tampilan Hasil pada Gambar 3.9 yang akan dibuat dapat dilihat pada Tabel 3.6, yaitu
Tabel 3.6 KeteranganInterface Hasil PencarianSistem
No Keterangan
1. Title Bar, komponen ini berfungsi untukmenampilkan judul aplikasi sinonim bahasa Indonesia dan melayu
2. Button Proses, tombol ini digunakan untuk memproses kata atau kalimat yang diinputkan untuk dicari maknanya.
3. TextBox, komponen ini digunakan untuk memasukkan kata atau kalimat yang ingin diproses maknanya.
4. ListBox, berfungsi untuk menampilkan hasil dan perbandingan antara bahasa indonesia dan melayu.
4. Tampilan Detail Proses
Adapun bentuk ataupun gambaran dari tampilan hasil pencarian yang akan dibuat dapat dilihat pada Gambar 3.6 berikut:
Gambar 3.9 Tampilan Interface Detail Proses
Berikut ini merupakan rincian dari rancangan tampilan Detail Proses pada Gambar 3.9 yang akan dibuat dapat dilihat pada Tabel 3.6, yaitu
Tabel 3.7 KeteranganInterface Hasil PencarianSistem
No Keterangan
1. Title Bar, komponen ini berfungsi untukmenampilkan judul aplikasi sinonim bahasa Indonesia dan melayu, dan dapat kembali ke tampilan sebelumnya. 2. Textarea, komponen ini digunakan untuk menampilkan hasil dari proses
algoritma seperti proses hash, N-Gram, dan Presentase Similaritas.
4. Scroll, berfungsi untuk menurunkan ataupun menaikkan tampilan hasil pencarian proses algoritma
5. Tampilan Menu About
Tampilan About yang digunakan untuk menampilkan tentang pembuat program, dan aplikasi yang akan dibagun. Tampilan pencarian ini menggunakan empat komponen antara lain : textarea, picture.
dapat dilihat pada Gambar 3.7 berikut:
Gambar 3.10 Tampilan InterfaceAbout
Berikut ini merupakan rincian dari rancangan tampilan about pada Gambar 3.7 yang akan dibuat dapat dilihat pada Tabel 3.8, yaitu :
Tabel 3.8 Keterangan Interface About Sistem
No Keterangan
1. TextArea, digunakan untuk membuat teks judul, nama pembuat program (Author), serta jurusan, fakultas, dan universitas penulis.
BAB 4
IMPLEMENTASI DAN PENGUJIAN SISTEM
Pada bab ini, akan dibahas mengenai implementasi dari algoritma Manber dan Jacquard Coeficient sehingga pengujian terhadap sistem dapat dilakukan, baik untuk tampilan sistem maupun hasil akhir berupa persentase kemiripan yang dimiliki oleh dokumen teks uji dengan pembandingnya.
4.1 Implementasi Sistem
Implementasi sistem merupakan penerapan dari hasil analisis dan perancangan sistem yang telah dibuat. Pada tahap ini, aplikasi yang telah dianalisis dan dirancang akan dibangun dan bekerja sesuai dengan fungsi yang telah dirancang pada bab sebelumnya, sehingga diketahui apakah sistem ini dapat bekerja dengan baik.
data berasal dari load data yang bersumber dari json.
Aplikasi ini memiliki 4 (empat) antarmuka yaitu halaman splash screen, halaman pencarian, halaman detail dan halaman about.
4.2 Antarmuka Sistem
Berikut akan diuraikan halaman-halaman yang dibangun pada aplikasi ini dan proses yang terjadi didalamnya.
4.2.1 Halaman Splash Screen
Halaman Splash Screen adalah halaman yang akan muncul pertama sekali ketika pengguna membuka aplikasi dan baru saja mengkondisikan perangkat dalam keadaan terkunci. Pada halaman Splash Screen ini terdapat kata-kata yang didalamnya terdapat nama aplikasi serta pengembang dari aplikasi.
Gambar 4.1 Halaman Splash Screen
4.2.2 Halaman Pencarian
Gambar 4.2 Halaman Pencarian
4.2.3 Halaman Setelah Pencarian
Halaman setelah Pencarian adalah halaman dimana pengguna dapat melihat hasil result dari pencarian, dimana terdapat kata-kata dasar yang telah di-load dari json dan ditampilkan kata-kata yang memiliki persamaan makna serta terdapat waktu pencarian.
4.2.4 Halaman Detail
Halaman detail adalah halaman dimana dimana pengguna dapat melihat hasil detail dimana didalamnya ditampilkan dari hasil teks uji dan teks banding yang masing-masing hasil menampilkan nilai N-Gram dan Hash Serta Proses Jacquard Coeficient yang menampilkan intersection (irisan) dan union (gabungan) serta persentase pencarian.
Gambar 4.4 Halaman Detail Process
4.2.5 Halaman About
Gambar 4.5 Halaman About
4.3 Pengujian Sistem
Pengujian sistem dilakukan untuk mengetahui apakah sistem yang dibangun dapat berjalan dengan benar dan mengetahui apakah metode N-Gram dan Hash dapat diimplementasikan pada algoritma Manber. Dalam pengujian ini akan dilihat bagaimana sistem mencari data serta mengolahnya menggunakan metode N-Gram dan Hash serta hasil presentase menggunakan metode jacquard Coeficient.
4.3.1 Pengujian Pencarian Kata
Gambar 4.6 Pengujian Pencarian Kata
4.3.2 Pengujian Detail Process
Gambar 4.7 Pengujian Detail Process
4.3.3 Hasil Pengujian Makna Bahasa Indonesia dan Melayu
Pada bagian ini akan ditampilkan hasil pengujian proses pencarian kata yang memiliki persamaan makna yang diimplementasikan menggunakan metode N-Gram dan Nilai Hash, serta menggunkan Algoritma Manber. Pada pengujian ini akan dilihat seberapa valid dari beberapa percobaan kata-kata yang di-input-kan. Hasil pengujian dapat dilihat pada Tabel 4.1 berikut.
1. Abah valid 251.624 ms
2. Abu valid 132.6399 ms
3. Bau valid 146.2322 ms
5. Emak valid 293.30339 ms
6. Imam valid 155.54822 ms
7. Jamban Valid 208.34187 ms
8. Magang valid 161.29448 ms
10. Uban valid 185.7263 ms
Pada tabel hasil pengujian, dapat dilihat bahwa terdapat persamaan makna dari dua kata yaitu bahasa Indonesia sebagai data input dan bahasa melayu sebagai data pencarian, dapat disimpulkan bahwasanya algoritma manber bekerja dengan mencari persamaan bentuk kata, bukan mencari persamaan makna antara bahasa Indonesia dan melayu.
Untuk Melihat hasil detail perbandingan pengujian dari algoritma manber, seberapa besar tingkat validitas dari kata yang diinputkan, maka penulis mencoba dari beberapa tingkatan kata sehingga didapatkan hasil valid dan running time ,berikut penulis mencoba dengan menguji tiga kata, enam kata, dan delapan kata.
Tabel 4.2 Hasil Pengujian Empat Kata
No Data Uji Data Banding Hasil Running Time
1. Abis valid 184.04416 ms
3. Fana valid 183.75647 ms
4. Geli valid 109.96297 ms
5. Hala valid 151.9988 ms
6. Idap valid 169.26197 ms
8. Maki valid 158.84839 ms
9. Odol valid 162.8489 ms
10. Raib valid 133.44453 ms
Tabel 4.3 Hasil Pengujian Enam Kata
No Data Uji Data Banding Hasil Running Time
2. Algojo valid 158.73537 ms
3. Balang valid 137.71057 ms
4. Empang valid 163.65338 ms
6. Gertak valid 142.23416 ms
7. Hening valid 153.9088 ms
8. Imbang valid 154.11198 ms
10. Jerami valid 151.78285 ms
Tabel 4.4 Hasil Pengujian Delapan Kata
No Data Uji Data Banding Hasil Running Time
1. Bedimar Tidak
valid
218.65979 ms
2. Belantan valid 164.4785 ms
4. Canggung valid 121.214424 ms
5. Gundalan valid 539.62506 ms
6. Kandangan Tidak
valid
159.11684 ms
8. Maklumat valid 175.28864 ms
9. Ngungkap valid 128.8628 ms
10. Kapangan valid 130.77963 ms
Berdasarkan hasil pengujian dari penelitian Tabel 4.2, Tabel 4.3 dan Tabel 4.4, running time dari pencarian kata dan jumlah hasil pencarian yang dapat ditemukan pada Algoritma Manber yang dilakukan terhadap string yang berbeda dengan panjang string yang berbeda dengan 10 kali percobaan dan menghasilkan nilai rata – rata dari setiap string tersebut.
Tabel 4.5 Hasil Pengujian Algoritma Manber Panjang String 4, 6 dan 8 No 4 String Running
Time (ms)
6 String Running Time (ms)
8 String Running Time (ms) 1. Abis 184.04416 Adinda 173.05443 Bedimar 218.65979
3. Fana 183.75647 Balang 137.71057 Celengan 165.64026 4. Geli 109.96297 Empang 163.65338 Canggung 121.214424 5. Hala 151.9988 Faedah 131.77078 Gundalan 539.62506 6. Idap 169.26197 Gertak 142.23416 Kandangan 159.11684 7. Jela 142.17116 Hening 153.9088 Kembaran 165.23608 8. Maki 158.84839 Imbang 154.11198 Maklumat 175.28864 9. Odol 162.8489 Jalang 150.25948 Ngungkap 128.8628 10. Raib 133.44453 Jerami 151.78285 Kapangan 130.77963
Total 113.55917
8
137.870388 279.582467
Rata-rata 11.355918 13.787039 27.958247
Adapun hasil pengujian dari Algoritma yang dapat dilihat pada Tabel 4.5 Setelah diperoleh hasil pengujian dari tabel 4.4, table 4.3 dan tabel 4.4 maka dibuat grafik perbandingan dari hasil pengujian untuk masing-masing panjang string tersebut. grafik dapat dilihat pada Gambar 4.8, Gambar 4.9 dan Gambar 4.10.
Geli Hala Idap Jela Maki Odol Raib 0
Adinda AlgojoBalangEmpangFaedahGertak
Gambar 4.9 Grafik running time 6 string
BedimarBelant an
CelenganCanggungGundalan
KandanganKembaranMaklumatNgungkapKapangan
0
Gambar 4.10 Grafik running time 8 string
1 2 3 4 5 6 7 8 9 10
Gambar 4.11 Grafik perbandingan running time
Berdasarkan grafik tersebut dijelaskan bahwa tingkat valid dan hasil kecepatan running time pada Algoritma Manber berkerja berdasarkan panjang string, dari ketiga percobaan string didapatkan bahwa semakin pendek string yang diinputkan, maka tingkat valid lebih tinggi dan kecepatan running time lebih cepat dibandingkan dengan string yang panjang sebagai contoh pada penelitian ini panjang 4 string waktu hasil running time lebih cepat dan dibandingkan dengan 8 string. Rata-rata dari total hasil percobaan berdasarkan panjang string tersebut dapat dijelaskan pada Gambar 4.11.
1 2 3 4 5 6
Gambar 4.12 Grafik Perbandingan nilai total dan rata rata 4 string, 6 string dan 8
BAB 5
KESIMPULAN DAN SARAN
5.1. Kesimpulan
Kesimpulan yang dapat diambil dari penelitian ini adalah:
1. Aplikasi yang dirancang telah mampu melakukan mencari persamaan makna antara Bahasa Indonesia dan Melayu menggunakan algoritma Manber.
3. Berdasarkan pengujian yang dilakukan algortima manber bekerja dengan mencari persamaan bentuk kata, bukan mencari persamaan makna antara bahasa Indonesia dan melayu.
4. Dalam proses mencari persamaan makna ternyata mebutuhkan presentase untuk nilai smiliritas antar kata menggunakan jacquard similarity.
5.2. Saran
Saran yang dapat diberikan Penulis untuk pengembangan dan perbaikan sistem lebih lanjut adalah:
1. Aplikasi yang di rancang diharapkan dapat mencari persamaan makna antara makna bahasa Indonesia-Melayu maupun sebaliknya.
2. Aplikasi yang dirancang diharapkan dapat mendeteksi apakah makna tersebut mengandung frase yang berulang atau tidak.
3. Agar dapat mengenali makna dengan cara melakukan pengetikan, maka aplikasi akan langsung mendeteksi persamaan makna kedua bahasa tersebut.
DAFTAR PUSTAKA
Agusta, L. 2009. Perbandingan algortima stemming porter dengan algoritma nazief & andriani untuk stemming dokumen teks bahasa indonesia. KNS&109-036: 196-201.
Djafar, I.M. 2015. Deteksi Kemiripan Dokumen Teks Menggunakan Algoritma Manber. Skripsi. Universitas Sumatera Utara.
Ferari, L.A. 2015. Implementasi Algoritma Winnowing dan Porter Stemmer Mendeteksi Kemiripan Dua Dokumen Berbasis Web. Skripsi. Universitas Sumatera Utara