i
APLIKASI PENDETEKSI PLAGIARISME
DALAM KARYA TULIS ILMIAH
DENGAN ALGORITMA RABIN KARP
SKRIPSI
Diajukan untuk memenuhi salah satu syarat
memperoleh gelar Sarjana Teknik Informatika (S.Kom.)
Program Studi Teknik Informatika
Disusun Oleh:
AGUSTINUS PILIPUS TRIYUNIANTA ARUM SURYA
125314083
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2017
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ii
PLAGIARISM DETECTION APPLICATION
IN SCIENTIFIC WORKS
USING RABIN KARP ALGORITHM
THESIS
Presented as partial fulfillment of the requirements
to obtain the Bachelor Degree of Computer (S.Kom.)
in Informatics Engineering
Written by:
AGUSTINUS PILIPUS TRIYUNIANTA ARUM SURYA
125314083
DEPARTMENT OF INFORMATICS ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2017
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iii
HALAMAN PERSETUJUAN
SKRIPSI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iv
HALAMAN PENGESAHAN SKRIPSI
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
v
HALAMAN MOTTO
“ Tuhan tahu apa yang kita butuhkan, tidak perlu meminta,
bersyukurlah ”
“ Some people dream of success while others wake up and work hard
at it ”
(Napoleon Hill)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vi
PERNYATAAN KEASLIAN KARYA
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vii
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI
KARYA ILMIAH
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
viii
ABSTRAK
Berkembangnya teknologi informasi dan komunikasi yang semakin pesat
menyebabkan pencarian data dan informasi semakin mudah dan cepat. Namun
perkembangan teknologi informasi ini justru menimbulkan berbagai macam
dampak negatif, salah satunya adalah penjiplakan karya atau sering disebut plagiat.
Penelitian ini bertujuan untuk membuat suatu sistem untuk mengantisipasi
tindak plagiarisme yang semakin banyak. Salah satu algoritma yang diusulkan
untuk mendeteksi plagiarisme adalah dengan algoritma Rabin Karp. Algoritma
Rabin karp akan mencari kesamaan dua dokumen yang diuji dengan menampilkan
presentase kesamaan dua dokumen tersebut.
Pengujian sistem ini dilakukan dengan melakukan alpha test dan beta test.
Berdasarkan pengujian dengan alpha test yaitu dengan membandingkan keluaran
sistem dengan perhitungan manual menghasilkan rata-rata selisih 1,63 %.
Sedangkan pengujian dengan beta test yaitu kuisioner dengan 15 responden
menghasilkan nilai rata-rata 3.86 skala 1-5 untuk kaitannya dengan kegunaan
(perceived of usefulness) dan nilai rata-rata 4.14 skala 1-5 untuk kaitannya dengan
kemudahan (perceived ease of use).
Kata Kunci: plagiarisme, Rabin Karp, hashing, Sørensen Index, similarity
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ix
ABSTRACT
The development of information and communication technology that
increasingly rapidly led to the search for information more easily and quickly. But
the development of information technology is actually causing a variety of
negative impacts, one of which is plagiarism works.
This research aims to create a system to anticipate the acts of plagiarism
that more and more. One of the proposed algorithms for detecting plagiarism is
with Rabin Karp's algorithm. The Rabin karp algorithm will look for the similarity
of two documents tested by presenting the equivalent percentage of the two
documents.
Testing this system is done by doing alpha test and beta test. Based on
the test with alpha test that is by comparing the output of the system with manual
calculations yield average of 1.63% difference. While the test with the beta test is
a questionnaire with 15 respondents produce an average value of 3.86 scale 1-5
for its relation with the usefulness (perceived of usefulness) and the average value
of 4.14 scale 1-5 for perceived ease of use.
Keywords: plagiarism, Rabin Karp, hashing, Sørensen Index, similarity
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
x
KATA PENGANTAR
Puji Syukur kehadirat Tuhan Yang Maha Esa yang telah melimpahkan
rahmat-Nya, sehingga penelitian ini dapat berhasil dan selesai.
Penelitian ini dapat berjalan dari awal sampai akhir berkat adanya bimbingan, doa,
dan dukungan yang diberikan oleh banyak pihak. Dalam penyelesaian penelitian
ini, penulis ingin mengucapkan terima kasih kepada pihak-pihak tersebut, antara
lain:
1. Sudi Mungkasi,S.Si.,M.Math.Sc.,Ph.D selaku Dekan Fakultas Sains dan
Teknologi Universitas Sanata Dharma Yogyakarta.
2. Dr. Anastasia Rita selaku Ketua Program Studi Teknik Informatika
Universitas Sanata Dharma Yogyakarta.
3. Ibu Agnes Maria Polina, S.Kom., M.Sc selaku dosen pembimbing
penelitian yang dengan sabar memberikan kritik dan saran kepada penulis.
4. Keluarga yang tercinta, Bapak Antonius Suwondo, Ibu Sutini, Mas Sigit,
Mbak Fitri, Gabriel “Biel” yang selalu memberikan dukungan terbaik.
5. Florentina Anggraeni yang selalu mendampingi, membimbing, dan
menemani penulis selama menyelesaikan penelitian ini.
6. Koh Eric yang telah membimbing dan memberikan bantuan selama
menyelesaikan penelitian ini
7. Teman-teman Teknik Informatika 2012 yang selalu mendukung dan
memberi motivasi.
Penulis menyadari bahwa penelitian ini masih jauh dari kata sempurna. Oleh sebab
itu penulis mengharapkan adanya kritik dan saran untuk penelitian di masa
mendatang.
Yogyakarta, ……………………
Agustinus Pilipus Triyunianta A.S
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xi
DAFTAR ISI
HALAMAN COVER ..........................................................................................................i
HALAMAN COVER ........................................................................................................ ii
HALAMAN PERSETUJUAN ......................................................................................... iii
SKRIPSI .......................................................................................................................... iii
HALAMAN PENGESAHAN SKRIPSI ...........................................................................iv
HALAMAN MOTTO ........................................................................................................ v
PERNYATAAN KEASLIAN KARYA ............................................................................vi
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI........................................... vii
KARYA ILMIAH ........................................................................................................... vii
ABSTRAK ...................................................................................................................... vii
ABSTRACT......................................................................................................................ix
KATA PENGANTAR ....................................................................................................... x
DAFTAR ISI.....................................................................................................................xi
DAFTAR GAMBAR ...................................................................................................... xiv
DAFTAR TABEL ........................................................................................................... xvi
BAB I ................................................................................................................................. 1
PENDAHULUAN ............................................................................................................. 1
1.1 Latar Belakang ................................................................................................... 1
1.2 Rumusan Masalah .............................................................................................. 1
1.3 Batasan Masalah ................................................................................................. 2
1.4 Tujuan Penelitian................................................................................................ 2
1.5 Metodologi Penelitian ........................................................................................ 2
1.6 Sistematika Penulisan ......................................................................................... 4
BAB II ............................................................................................................................... 5
STUDI PUSTAKA ............................................................................................................ 5
2.1 Plagiarisme ......................................................................................................... 5
2.2 Text Preprocessing ............................................................................................. 6
2.2.3 Stemming ................................................................................................... 6
2.2.4 Tokenizing ................................................................................................ 10
2.3 Algoritma String Matching............................................................................... 10
2.3.1 ASCII (American Standard Code for Information Interchange) ............... 12
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xii
2.4 Rabin Karp ....................................................................................................... 13
2.4.1 Hashing .................................................................................................... 14
2.4.2 Similarity .................................................................................................. 17
2.5 Metode Waterfall.............................................................................................. 18
2.5.1 Definisi Waterfall ..................................................................................... 18
2.5.2 Tahapan Pengembangan Metode Waterfall .............................................. 18
BAB III ............................................................................................................................ 20
PERANCANGAN SISTEM ............................................................................................ 20
3.1 Tahap Requirement Analysis............................................................................ 20
3.1.1 Gambaran Umum Sistem.......................................................................... 20
3.1.2 Analisis Kebutuhan .................................................................................. 20
3.1.3 Use Case ................................................................................................... 21
3.1.4 Flowchart.................................................................................................. 21
3.1.5 Pemodelan Proses ..................................................................................... 22
3.2 Perancangan Sistem .......................................................................................... 25
3.2.1 Perancangan Basis Data............................................................................ 25
3.2.2 Perancangan Antarmuka ........................................................................... 27
4.1 Deskripsi Alat................................................................................................... 31
4.2 Algoritma Rabin Karp ...................................................................................... 31
4.3 Implementasi Basis Data .................................................................................. 40
4.3.1 Table Login .............................................................................................. 40
4.3.2 Tabel Dokumen ........................................................................................ 40
4.3.3 Tabel Rootword_ina ................................................................................. 41
4.3.4 Tabel Stopword_ina ................................................................................. 41
4.4 Implementasi Sistem ........................................................................................ 41
4.4.1 Halaman Login ......................................................................................... 41
4.4.2 Halaman Utama ........................................................................................ 42
4.4.3 Halaman Deteksi dua Dokumen ............................................................... 43
4.4.4 Halaman Deteksi Dokumen di Database .................................................. 46
4.4.5 Halaman Karya Tulis Tersimpan .............................................................. 49
4.4.6 Halaman Tambah Pengguna ..................................................................... 50
BAB V ............................................................................................................................. 52
ANALISA HASIL ........................................................................................................... 52
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiii
5.1 Analisa Hasil Uji Coba Sistem (Pengujian Alpha) ........................................... 52
5.1.1 Ujicoba dokumen dengan sistem .............................................................. 52
5.1.2 Ujicoba dokumen secara manual .............................................................. 56
5.2 Analisa Hasil Uji Coba Pengguna (Pengujian Beta) ......................................... 59
5.2.1 Hasil dan Pembahasan .............................................................................. 59
BAB VI ............................................................................................................................ 73
KESIMPULAN ................................................................................................................ 73
6.1 Kesimpulan ...................................................................................................... 73
6.2 Saran ................................................................................................................ 74
DAFTAR PUSTAKA ...................................................................................................... 75
LAMPIRAN..................................................................................................................... 77
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiv
DAFTAR GAMBAR
Gambar 2.1 Waterfall menurut Pressman......................................................................... 18
Gambar 3.1 Use Case aplikasi pendeteksi plagiarisme .................................................... 21
Gambar 3.2 Flowchart aplikasi pendeteksi plagiarisme ................................................... 22
Gambar 3.3 Data Flow Diagram level 0 .......................................................................... 22
Gambar 3.4 Data Flow Diagram level 1 .......................................................................... 23
Gambar 3.5 Data Flow Diagram level 2 proses 1 ............................................................ 23
Gambar 3.6 Data Flow Diagram level 2 proses 2 ............................................................ 24
Gambar 3.7 Data Flow Diagram level 2 proses 3 ............................................................ 24
Gambar 3.8 Data Flow Diagram level 2 proses 4 ............................................................ 25
Gambar 3.9 Perancangan ER Diagram ............................................................................. 26
Gambar 3.10 Perancangan logikal basis data ................................................................... 26
Gambar 3.11 Perancangan halaman login ........................................................................ 28
Gambar 3.12 Perancangan halaman utama aplikasi ......................................................... 29
Gambar 3.13 Perancangan halaman proses dua dokumen ................................................ 29
Gambar 3.14 Perancangan halaman proses dokumen di database ................................... 30
Gambar 3.15 Perancangan halaman karya tulis tersimpan ............................................... 30
Gambar 3.16 Perancangan halaman pengguna ................................................................. 31
Gambar 4.1 Halaman login .............................................................................................. 42
Gambar 4.2 Halaman utama ............................................................................................. 43
Gambar 4.3 Halaman deteksi dua dokumen ..................................................................... 44
Gambar 4.4 Halaman deteksi dokumen di database ........................................................ 47
Gambar 4.5 Halaman karya tulis tersimpan ..................................................................... 50
Gambar 4.6 Halaman pengguna ....................................................................................... 52
Gambar 5.1 Hasil keluaran sistem untuk pengujian 1 ...................................................... 54
Gambar 5.2 Hasil keluaran sistem untuk pengujian 2 ...................................................... 54
Gambar 5.3 Hasil keluaran sistem untuk pengujian 3 ...................................................... 55
Gambar 5.4 Hasil keluaran sistem untuk pengujian 4 ...................................................... 56
Gambar 5.5 Hasil keluaran sistem untuk pengujian 5 ...................................................... 56
Gambar 5.6 Grafik kegunaan pernyataan 1 ..................................................................... 61
Gambar 5.7 Grafik kegunaan pernyataan 2 ..................................................................... 62
Gambar 5.8 Grafik kegunaan pernyataan 3 ..................................................................... 63
Gambar 5.9 Grafik kegunaan pernyataan 4 ..................................................................... 64
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xv
Gambar 5.10 Grafik kegunaan pernyataan 5 ................................................................... 65
Gambar 5.11 Grafik kegunaan pernyataan 6 ................................................................... 67
Gambar 5.12 Grafik kemudahan pernyataan 1 ................................................................ 69
Gambar 5.13 Grafik kemudahan pernyataan 2 ................................................................ 69
Gambar 5.14 Grafik kemudahan pernyataan 3 ................................................................ 70
Gambar 5.15 Grafik kemudahan pernyataan 4 ................................................................ 71
Gambar 5.16 Grafik kemudahan pernyataan 5 ................................................................ 72
Gambar 5.17 Grafik kemudahan pernyataan 6 ................................................................ 73
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvi
DAFTAR TABEL
Tabel 2.1 Tabel kombinasi awalan dan akhiran yang tidak diijinkan ................................. 7
Tabel 2.2 Tabel aturan penghapusan awalan, untuk awalan “me-“ .................................... 9
Tabel 2.3 Tabel aturan penghapusan awalan, untuk awalan “pe-“ ..................................... 9
Tabel 2.4 Tabel aturan penghapusan awalan, untuk awalan “ber-“ .................................... 9
Tabel 2.5 Tabel aturan penghapusan awalan, untuk awalan “ter-“ ................................... 10
Tabel 2.6 Tabel ASCII ..................................................................................................... 13
Tabel 3.1 Tabel login ....................................................................................................... 27
Tabel 3.2 Tabel dokumen ................................................................................................. 27
Tabel 3.3 Tabel rootword_ina .......................................................................................... 28
Tabel 3.4 Tabel stopword ................................................................................................. 28
Tabel 4.1 Dua buah dokumen yang terindikasi terjadi plagiarisme .................................. 33
Tabel 4.2 Dua buah dokumen setelah melalui langkah case folding ................................ 33
Tabel 4.3 Dua buah dokumen setelah melalui langkah filtering ....................................... 34
Tabel 4.4 Dua buah dokumen setelah melalui langkah stemming .................................... 35
Tabel 4.5 Dua buah dokumen setelah melalui langkah parsing kgram ............................ 36
Tabel 4.6 Dua buah dokumen setelah melalui langkah hashing ....................................... 34
Tabel 4.7 Hash yang sama dalam dua buah dokumen ...................................................... 34
Tabel 4.6 Dua buah dokumen setelah melalui langkah hashing ....................................... 34
Tabel 5.1 Pengujian dokumen dengan sistem................................................................... 57
Tabel 5.2 Pengujian dokumen secara manual................................................................... 60
Tabel 5.3 Tabel hasil kuisioner kegunaan pernyataan 1 ................................................... 61
Tabel 5.4 Tabel hasil kuisioner kegunaan pernyataan 2 ................................................... 62
Tabel 5.5 Tabel hasil kuisioner kegunaan pernyataan 3 ................................................... 63
Tabel 5.6 Tabel hasil kuisioner kegunaan pernyataan 4 ................................................... 64
Tabel 5.7 Tabel hasil kuisioner kegunaan pernyataan 5 ................................................... 65
Tabel 5.8 Tabel hasil kuisioner kegunaan pernyataan 6 ................................................... 66
Tabel 5.9 Tabel hasil kuisioner kemudahan pernyataan 1 ................................................ 67
Tabel 5.10 Tabel hasil kuisioner kemudahan pernyataan 2 .............................................. 68
Tabel 5.11 Tabel hasil kuisioner kemudahan pernyataan 3 .............................................. 69
Tabel 5.12 Tabel hasil kuisioner kemudahan pernyataan 4 .............................................. 70
Tabel 5.13 Tabel hasil kuisioner kemudahan pernyataan 5 .............................................. 71
Tabel 5.14 Tabel hasil kuisioner kemudahan pernyataan 6 .............................................. 72
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
1
BAB I
PENDAHULUAN
1.1 Latar Belakang
Berkembangnya teknologi informasi dan komunikasi yang semakin
pesat menyebabkan pencarian data dan informasi melalui internet menjadi
semakin mudah dan cepat. Namun perkembangan teknologi informasi ini
justru menimbulkan berbagai macam dampak negatif, salah satunya adalah
penjiplakan karya atau sering disebut plagiat.
Plagiarisme sering dijumpai dalam sektor akademis maupun non
akademis. Dalam sektor akademis, plagiarisme dianggap sebagai tindak
pidana serius karena dianggap pengambilan karangan, pendapat, ide, dan
gagasan orang lain. Plagiarisme secara tidak sengaja juga dapat terjadi jika
dalam pembuatan karya tulis lalai dalam mencantumkan sumber pustaka
dengan lengkap dan cermat. Plagiarisme belum cukup dikenali dan
dipahami khususnya di kalangan mahasiswa sehingga tingkat kejadiannya
cukup tinggi dan sulit dipantau.
. Kemiripan dokumen karya tulis ilmiah tidak dikataan plagiat jika
menggunakan informasi yang berupa fakta umum, menuliskan kembali
(dengan mengubah kalimat atau parafrase) opini orang lain dengan
memberikan sumber jelas, mengutip secukupnya tulisan orang lain dengan
memberikan tanda batas jelas bagian kutipan dan menuliskan sumbernya.
Tindakan plagiarisme dalam instansi, sektor akademis, maupun non
akademis secara perlahan harus dicegah dan dihilangkan dengan melakukan
pendeteksian plagiat secara manual maupun dengan memanfaatkan metode
pencocokan string. Namun pendeteksian secara manual memiliki masalah
yang cukup besar yaitu sangat tidak memungkinkan melalukan
pendeteksian dokumen dengan membandingkannya dengan dokumen lain
yang berjumlah ratusan bahkan sampai ribuan. Dengan demikian
melakukan pendeteksian plagiarisme secara manual sangat tidak efektif.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
1
Metode kedua adalah dengan melakukan pembandingan dengan sumber
dokumen asli atau yang disebut dengan metode pencocokan string. Dengan
metode pencocokan string dapat dikembangkan untuk merancang sebuah
aplikasi pendeteksi plagiarisme. Metode pencocokan string bermacam-
macam antara lain Brute Force, Boyer-Morre, Knuth-Morris-Pratt, Rabin-
Karp, dan lain-lain.
Penelitian untuk pendeteksian plagiarisme sudah banyak dilakukan
dengan berbagai macam algoritma, tetapi beberapa penelitian tidak
mengikut sertakan proses preprocessing atau pengolahan kata terlebih
dahulu dan hanya dapat melalukan proses pendeteksian untuk dua dokumen
saja, hal tersebut membuat proses pendeteksian plagiarisme menjadi kurang
akurat dan kurang efisien.
Dari latar belakang tersebut, penulis tertarik untuk membangun sebuah
aplikasi pendeteksian plagiarisme karya tulis ilmiah dalam instansi dinas
pendidikan dengan menggunakan algoritma Rabin-Karp yang dapat
melakukan proses pendeteksian plagiarism lebih dari dua dokumen dan
dengan melakukan proses preprocessing terlebih dahulu. Algoritma
tersebut dipilih karena Rabin-Karp adalah algoritma multiple patterns
search yang sangat efesien untuk pencarian string dengan pola yang banyak
sehingga waktu dan keakuratan pencarian string menjadi lebih baik.
1.2 Rumusan Masalah
Berdasarkan latar belakang diatas dapat diuraikan rumusan masalah
sebagai berikut:
1. Bagaimana mendesain dan membangun aplikasi pendeteksi plagiarisme
dalam karya tulis ilmiah dengan metode Rabin Karp agar dapat
mendeteksi tingkat kesamaan yang terdapat pada dua dokumen karya
tulis ilmiah?
2. Seberapa akurat aplikasi pendeteksi plagiarisme dalam karya tulis
ilmiah dengan metode Rabin Karp ini untuk mendeteksi file plagiat?
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2
3. Apakah aplikasi pendeteksian plagiarism dalam karya tulis ilmiah
dengan motode Rabin Karp ini bermanfaat (perceived of usefulness) dan
mudah digunakan (perceived ease of use) dalam melakukan
pendeteskian file?
1.3 Batasan Masalah
Terdapat beberapa batasan masalah pada penelitian ini, yaitu:
1. Membandingkan dua buah dokumen teks dengan tipe .doc dan .docx
2. Data yang diuji menggunakan Bahasa Indonesia.
3. Tidak memperhatikan sinonim atau persamaan kata pada dokumen teks.
4. Tidak meperhatikan parafrase atau kutipan dengan atau tidak
menggunakan sumber terkait
1.4 Tujuan Penelitian
Tujuan dari penelitian ini adalah:
1. Mendesain dan membangun Apakah aplikasi pendeteksi plagiarisme
dalam karya tulis ilmiah dengan metode Rabin Karp.
2. Mendeteksi tingkat kesamaan dua buah dokumen dengan metode Rabin
Karp.
1.5 Metodologi Penelitian
Metodologi penelitian yang dilakukan penulis untuk menyelesaikan
masalah adalah sebagai berikut:
a. Survei awal
Dilakukan wawancara dengan pihak terkait yang dipergunakan untuk
mendesain sistem yang akan dibangun.
b. Studi pustaka
Studi pustaka dilakukan dengan mencari informasi tentang metode
Rabin Karp serta penggunaannya dalam kaitannya dengan pendeteksian
plagiat dari beberapa sumber berupa buku, jurnal, maupun website.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3
c. Pengembangan Aplikasi Pendeteksi Plagiarisme
Pengembangan aplikasi pendeteksi plagiarisme menggunakan metode
Waterfall. Tahap-tahap dalam metode ini adalah:
1. Requirement Analisis
Merupakan tahap awal dalam pengembangan sistem. Pada tahap ini
harus mendapatkan beberapa hal yang dianggap menunjang
penelitian yang dilakukan, seperti mencari permasalahan yang ada,
mengumpulkan data, wawancara dan lain-lain.
2. System Design
Tahap desain sistem membantu dalam menentukan perangkat keras,
tampilan, alur kerja sistem, pengoperasian sistem, dan lain-lain yang
disesuaikan dengan analisis kebutuhan tahap awal.
3. Implementation
Pada tahap ini, sistem pertama kali dikembangkan untuk
menghasilkan aplikasi yang telah di desain pada tahap sebelumnya.
4. Integration & Testing
Dalam tahap ini, dilakukan pengujian sistem, sehingga akan dapat
diketahui seperti apa hasil kinerja sistem yang baru ini dibandingkan
dengan sistem yang lama, kemudian dapat diketahui pula apakan
dalam sistem yang baru ini masih ada kelemahan yang kemudian
akan dikembangkan oleh peneliti berikutnya.
5. Operation & Maintenance
Tahap akhir dalam model waterfall adalah melakukan pemeliharaan
sistem. Pemeliharaan termasuk dalam memperbaiki kesalahan yang
tidak ditemukan pada langkah sebelumnya
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4
1.6 Sistematika Penulisan
BAB 1 : PENDAHULUAN
Bab ini berisi tentang latar belakang masalah, rumusan masalah, batasan
masalah, tujuan penelitian, manfaat penelitian, metode penelitian dan
sistematika penulisan.
BAB II : STUDI PUSTAKA
Bab ini berisi tentang sumber acuan, penjelasan dan uraian singkat
mengenai teori-teori yang berkaitan dengan topik dari tugas akhir ini.
BAB III : PERANCANGAN SISTEM
Bab ini berisi tentang proses-proses perancangan aplikasi dengan teori
yang berkaitan, perancangan alur kerja aplikasi, antar muka pemakai, dan
perancangan penelitian.
BAB IV : IMPLEMENTASI SISTEM
Bab ini berisi tentang implementasi basis data dan implementasi dari
sistem yang akan dibuat, pembahasan sistem dan implementasi antarmuka.
BAB V : ANALISA HASIL
Bab ini berisi tentang hasil implementasi aplikasi, serta analisa hasil
pengujian.
BAB V1 : PENUTUP
Bab ini berisi kesimpulan yang diambil dari analisa, desain, dan
implementasi serta uji coba yang telah dilakukan. Selain itu bab ini juga
berisi saran yang bermanfaat dalam pengembangan aplikasi di waktu yang
akan datang.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5
BAB II
STUDI PUSTAKA
Pada bab studi pustaka ini berisi tentang sumber acuan, penjelasan dan
uraian singkat mengenai teori-teori yang berkaitan dengan topik.
2.1 Plagiarisme
Plagiarisme atau sering disebut plagiat adalah penjiplakan atau
pengambilan karangan, pendapat, dan sebagainya dari orang lain dan
menjadikannya seolah karangan dan pendapat sendiri (KBBI, 1997).
“Plagiarisme adalah bentuk penyalahgunaan hak kekayaan intelektual milik
orang lain, yang mana karya tersebut dipresentasikan dan diakui secara tidak
sah sebagai hasil karya pribadi” (Sulianta, 2007).
Dalam buku Bahasa Indonesia: Sebuah Pengantar Penulisan
Ilmiah, (Utorodewo,2007) menggolongkan hal-hal berikut sebagai tindakan
plagiarisme:
1. Mengakui tulisan orang lain sebagai tulisan sendiri,
2. Mengakui gagasan orang lain sebagai pemikiran sendiri,
3. Mengakui temuan orang lain sebagai kepunyaan sendiri,
4. Mengakui karya kelompok sebagai kepunyaan atau hasil sendiri,
5. Menyajikan tulisan yang sama dalam kesempatan yang berbeda tanpa
menyebutkan asal usulnya,
6. Meringkas dan memparafrasekan (mengutip tak langsung) tanpa
menyebutkan sumbernya, dan
7. Meringkas dan memparafrasekan dengan menyebut sumbernya, tetapi
rangkaian kalimat dan pilihan katanya masih terlalu sama dengan
sumbernya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
6
2.2 Text Preprocessing
Preprocessing merupakan tahapan awal dalam mengolah data input
sebelum memasuki proses selanjutnya. Preprocessing terdiri dari beberapa
tahapan, yaitu: case folding, tokenizing, filtering, dan stemming. Berikut
penjelasan empat tahapan dalam proses preprocessing.
2.2.1 Case Folding
Proses case folding adalah menghilangkan tanda baca maupun
karakter yang ada pada kata di dalam dokumen tersebut dan semua
huruf menjadi huruf kecil. (Manning, 2008).
2.2.2 Stopword Filtering
Stopword filtering merupakan salah satu dari empat tahapan dalam
preprocessing untuk menghilangkan kata yang tidak berguna dan
sering muncul dalam dokumen. Stopword perlu dieliminasi untuk
mengurangi waktu eksekusi query dengan cara menghindari proses
list yang panjang (Buttcher, 2010). Contoh stopword filtering dalam
Bahasa Indonesia adalah dengan menghilangkan konjungsi, kata
ganti orang, dan kata lainnya.
2.2.3 Stemming
Stemming merupakan bagian yang tidak terpisahkan dalam
Information Retrieval (IR). Stemming adalah salah satu cara yang
digunakan untuk meningkatkan performa IR dengan cara
mentransformasi kata-kata dalam sebuah dokumen teks ke bentuk
kata dasarnya.
2.2.3.1 Algoritma Nazief-Adriani
Algoritma Stemming Nazief – Adriani diperkenalkan oleh
Nazief dan Adriani (1996) dengan tahapan sebagai berikut:
1. Cari kata yang akan diistem dalam basis data kata dasar.
Jika ditemukan maka diasumsikan kata adalah root
word. Maka algoritma berhenti.
2. Selanjutnya adalah pembuangan Inflection Suffixes (“-
lah”, “-kah”, “-ku”, “-mu”, atau “-nya”). Jika berupa
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7
particles (“-lah”, “-kah”, “-tah” atau “-pun”) dan
terdapat Possesive Pronouns (“-ku”, “-mu”, atau “-
nya”), maka langkah ini diulangi lagi untuk menghapus
Possesive Pronouns.
3. Hapus Derivation Suffixes (“-i”, “-an” atau “-kan”). Jika
kata ditemukan di kamus, maka algoritma berhenti. Jika
tidak maka ke langkah 3a berikut ini :
a. Jika “-an” telah dihapus dan huruf terakhir dari kata
tersebut adalah “-k”, maka “-k” juga ikut dihapus.
Jika kata tersebut ditemukan dalam kamus maka
algoritma berhenti. Jika tidak ditemukan maka
lakukan langkah 3b.
b. Akhiran yang dihapus (“-i”, “-an” atau “-kan”)
dikembalikan, lanjut ke langkah 4.
4. Hapus Derivation Prefix. Jika pada langkah 3 ada sufiks
yang dihapus maka pergi ke langkah 4a, jika tidak pergi
ke langkah 4b.
a. Periksa tabel kombinasi awalan-akhiran yang tidak
diijinkan pada Tabel 2.1. Jika ditemukan maka
algoritma berhenti, jika tidak, pergi ke langkah 4b.
Tabel kombinasi awalan-akhiran yang tidak diijinkan
ditampilkan pada tabel berikut ini :
Awalan Akhiran yang tidak diizinkan
be- -i
di- -an
ke- -i, -kan
me- -an
se- -i, -kan
Tabel 2.1. Tabel kombinasi awalan dan akhiran yang tidak
diijinkan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
8
b. Tentukan tipe awalan kemudian hapus awalan. Jika
awalan kedua sama dengan awalan pertama
algoritma berhenti.
c. Jika root word belum juga ditemukan lakukan
langkah 5, jika sudah maka algoritma berhenti.
5. Jika semua langkah telah selesai tetapi tidak juga
berhasil maka kata awal diasumsikan sebagai root
word. Proses selesai.
Tipe awalan ditentukan melalui langkah-langkah berikut:
1. Jika awalannya adalah: “di-”, “ke-”, atau “se-” maka
tipe awalannya secara berturut-turut adalah “di-”, “ke-”,
atau “se-”.
2. Jika awalannya adalah “te-”, “me-”, “be-”, atau “pe-”
maka dibutuhkan sebuah proses tambahan untuk
menentukan tipe awalannya.
3. Jika dua karakter pertama bukan “di-”, “ke-”, “se-”,
“te-”, “be-”, “me-”, atau “pe-” maka berhenti.
Berikut adalah aturan untuk melakukan penghapusan
awalan. Dengan keterangan C adalah huruf konsonan, V
adalah huruf hidup, A adalah semua huruf, dan P adalah
karakter tertentu, misal ‘er’.
Aturan Kontruksi Prefix yang dihapus
1 me{l|r|w|y}V… me-
2 mem{b|f|v}… mem-
3 mempe… mem-pe
4 mem{rV|V}… me-m, me-p
5 men{c|d|j|s|z}… men-{ c|d|j|s|z }…
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
9
6 mengV… meng-V… | meng-kV… |(mengV-…
ifV=’e’)
7 meng{g|h|q|k}… meng-
8 mengV… meng-
9 menyV… mensy-s
10 mempA… mem-pA… dimana A!=’e’
Tabel 2.2. Tabel aturan penghapusan awalan, untuk awalan
“me-“
Aturan Kontruksi Prefix yang dihapus
1 pe{w|y}V… pe-{w|y}V...
2 perV… per-V... | pe-rV...
3 perCAP per-CAP... dimana C!= ‘r’ dan
P!= “er”
4 per CAerV… per-CAerV... dimana C!= ‘r’
5 pem{b|f|V}… pem-{b|f|V}...
6 pem{rV|V}… pe-m{rV|V}... | pe-p{rV|V}...
7 pen{c|d|j|z}… pen-{c|d|j|z}...
8 penV… pe-nV... | pe-tV...
9 pengC… peng-C...
Tabel 2.3. Tabel aturan penghapusan awalan, untuk awalan
“pe-“
Aturan Kontruksi Prefix yang dihapus
1 berV... ber-V... | be-rV...
2 berCAP... ber-CAP... dimana C!= ‘r’ dan P!= “er”
3 berCAerV... ber-CaerV... dimana C!= ‘r’
4 belajar bel-ajar
5 beC1erC2… be-C1erC2... dimana C1!={ ‘r’|‘l’}
Tabel 2.4. Tabel aturan penghapusan awalan, untuk awalan
“ber-“
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
10
Aturan Kontruksi Prefix yang dihapus
1 terV... ter-V... | te-rV...
2 terCerV... ter-CerV... dimana C!= ‘r’
3 terCP... ter-CP... dimana C!= ‘r’ dan P!= ‘er’
4 teC1erC2… te-C1erC2… dimana C1=’r’
Tabel 2.5. Tabel aturan penghapusan awalan, untuk awalan
“ter-“
2.2.4 Tokenizing
Tokenizing adalah proses pemisahan kata berdasarkan tiap kata yang
menyusunnya. Pada prinsipnya proses ini adalah memisahkan setiap
kata yang menyusun setiap dokumen sehingga menghasilkan suatu
kata yang berdiri sendiri, baik dalam bentuk perulangan maupun
tunggal (Manning, 2008). Metode tokenizing yang digunakan dalam
penelitian ini adalah metode k-gram, yaitu membentuk pola kata
dalam sebuah teks dengan memecah kata menjadi potongan-
potongan dimana setiap potongan mengandung karakter sebanyak k.
Penentuan nilai k adalah dengan melihat banyaknya banyaknya kata
yang akan diolah atau di hitung nilai hashnya, semakin banyak kata
yang diolah maka pemotongan kata (k) yang dipilih dapat semakin
besar (Mujahidin, 2013). Hasil yang paling bagus pada pengujian
adalah dengan menentukan nilai k-gram dan basis bilangan yang
tidak terlalu kecil dan tidak terlalu besar.
2.3 Algoritma String Matching
Algoritma string matching atau sering disebut juga dengan
algoritma pencocokan string adalah algoritma untuk melakukan pencarian
semua kemunculan string dengan pendek dan panjang, untuk string pendek
yang disebut pattern dan string yang lebih panjang yang disebut teks.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
11
Persoalan pencarian string dirumuskan sebagai berikut (Munir,
2004) :
1. teks (text), yaitu (long) string yang panjangnya n karakter
2. pattern, yaitu string dengan panjang m karakter (m < n) yang akan dicari
di dalam teks.
Cara kerjanya adalah mencari lokasi pertama di dalam teks yang
bersesuaian dengan pattern. Diberikan contoh seperti dibawah:
Pattern : for
Teks : Teknik Informatika
Target
Algoritma pencarian string ini dapat juga diklasifikasikan menjadi
tiga bagian menurut arah pencariannya.
1. Dari kiri ke kanan, algoritma yang termasuk kategori ini adalah:
a. Algoritma Brute Force.
b. Algoritma dari Morris dan Pratt, yang kemudian dikembangkan
oleh Knuth, Morris, dan Pratt.
c. Algoritma Rabin Karp
2. Dari arah kanan ke kiri, algoritma yang termasuk kategori ini adalah:
a. Algoritma dari Boyer dan Moore, yang kemudian banyak
dikembangkan, menjadi Algoritma turbo Boyer-Moore,
Algoritma tuned Boyer-Moore, dan Algoritma Zhu-Takaoka.
3. Dari arah yang ditentukan secara spesifik oleh algoritma yang dipakai,
algoritma yang termasuk kategori ini adalah:
a. Algoritma Colussi
b. Algoritma Crochemore-Perrin
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
12
2.3.1 ASCII (American Standard Code for Information Interchange)
Kode Standar Amerika untuk Pertukaran Informasi atau
ASCII (American Standard Code for Information Interchange)
merupakan suatu standar internasional dalam kode huruf dan simbol
seperti Hex dan Unicode tetapi ASCII lebih bersifat universal,
contohnya 124 adalah untuk karakter "|". Ia selalu digunakan oleh
komputer dan alat komunikasi lain untuk menunjukkan teks. Kode
ASCII sebenarnya memiliki komposisi bilangan biner sebanyak 7
bit. Namun, ASCII disimpan sebagai sandi 8 bit dengan
menambakan satu angka 0 sebagai bit significant paling tinggi.
Jumlah kode ASCII adalah 255 kode. Kode ASCII 0..127
merupakan kode ASCII untuk manipulasi teks; sedangkan kode
ASCII 128..255 merupakan kode ASCII untuk manipulasi grafik.
Kode ASCII sendiri dapat dikelompokkan lagi kedalam beberapa
bagian:
1. Kode yang tidak terlihat simbolnya seperti Kode
10(Line Feed), 13(Carriage Return), 8(Tab), 32(Space).
2. Kode yang terlihat simbolnya seperti abjad (A..Z),
numerik (0..9), karakter khusus
(~!@#$%^&*()_+?:”{}).
3. Kode yang tidak ada di keyboard namun dapat
ditampilkan. Kode ini umumnya untuk kode-kode
grafik.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
13
Tabel 2.6 Tabel ASCII.
2.4 Rabin Karp
Algoritma Rabin Karp dibuat oleh Michael O. Rabin dan Richard
M. Karp pada tahun 1987 dengan memanfaatkan metode hashing dalam
pengoperasiannya untuk mekukan pencarian kata yang mecari pola berupa
substring. Algoritma Rabin Karp efektif dalam melakukan pencocokan kata
dengan pola yang banyak. Dengan menggunakan metode hashing,
kecepatan pencarian pola dapat dilakukan secara lebih cepat.
Menurut (Abdeen, 2011) pada prinsipnya algoritma Rabin-Karp
menghitung sebuah fungsi hash untuk mencari pola didalam sebuah teks
yang diberikan. Setiap karakter M subsequence dari pada teks akan
dikomparasi, jika nilai hash tidak sama algoritma akan menghitung nilai
hash untuk karakter M subsequence berikutnya. Dan jika nilai hash sama
maka algoritma akan melakukan perbandingan secara brute-force antara
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
14
pola dan karakter M subsequence, dengan cara ini hanya akan ada satu
perbandingan per teks subsequence dan brute-force hanya dibutuhkan jika
nilai hash cocok atau sama. (Jain, et., al, 2012).
Algoritma Rabin Karp adalah algoritma pencocokan string yang
menggunakan fungsi hash sebagai pembanding antara string yang dicari (m)
dengan substring pada teks (n). Apabila nilai hash keduanya sama maka
akan dilakukan perbandingan sekali lagi terhadap karakter-karakternya.
Apabila hasil keduanya tidak sama, maka substring akan bergeser ke kanan.
Pergeseran dilakukan sebanyak (n-m) kali. Perhitungan nilai hash yang
efisien pada saat pergeseran akan mempengaruhi performa dari algoritma
ini. (David Indra Lesmana, 2012).
Langkah-langkah dalam algortima Rabin Karp :
1. Menghilangkan tanda baca dan mengubah ke teks sumber dan kata yang
ingin dicari menjadi kata-kata tanpa huruf.
2. Membagi teks kedalam gram-gram yang ditentukan nilai k-gramnya
3. Mencari nilai hash dengan fungsi hash dari tiap kata yang terbentuk
4. Mencari nilai hash yang sama antara dua teks.
2.4.1 Hashing
Fungsi hash adalah sebuah fungsi untuk mengubah setiap
string menjadi bilangan yang disebut hash value. Sebuah string
diubah menjadi suatu nilai yang unik dengan panjang tertentu (fixed-
length) yang berfungsi sebagai penanda string tersebut. Pada sistem
ini proses hashing memanfaatkan tabel ascii dengan rumus Hash
(Mitra, 2003):
𝐼𝑝 = 𝑝1 ∗ 𝑑(𝑚−1) + 𝑝2 ∗ 𝑑(𝑚−2) + ⋯ + 𝑝(𝑚−1) ∗ 𝑑1 + 𝑝(𝑚−1) ∗ 𝑑0
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
15
Keterangan :
I = Nilai hash
p = Nilai ascii karakter (desimal)
m = Banyak karakter (indeks karakter)
d = Basis Bilangan (nilai dari basis bilangan harus
bilangan prima)
Fungsi hash dengan basis yang biasanya memanfaatkan
bilangan prima disebut dengan rolling hash. Untuk penentuan basis
bilangan adalah dengan memilih bilangan prima karena dapat
memperkecil terjadinya collision (Zeil, 2014).
Berikut ini adalah contoh penggunaan fungsi hash atau
rolling hash dengan basis. Menggunakan string “informasi” sebagai
sumber string dan “for” sebagai string pola yang dicari.
1. Dengan menggunakan b = 2 lalu panjang string
“informasi” sebagai n = 8 dan string “for” untuk pola
yang dicari sebagai k = 3.
2. Selanjutnya ubah pola yang dicari dengan fungsi hash
atau rolling hash dengan persamaan diatas.
3. Nilai hash dari “for” adalah 744 yang didapat dari:
(nilai ascii f = 102, o = 111, r = 114)
I = 102*22 + 111*21 + 114*20
= 408 + 222 + 114
= 744
4. Percobaan pencocokan pola dilakukan berawal dari
indeks ke 0 sampai ke 7 dari string “informasi” dengan
pola string “for”.
a. Percobaan pertama
0 1 2 3 4 5 6 7 8
i n f o r m a s i
f o r
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
16
Hash(for) = 744
Hash(y[0..2]) = 105*22 + 110*21 + 102*20
= 420 + 220 +102
= 724
Nilai hash dari indeks 0 sampai 2 tidak cocok, maka
dilakukan percobaan selanjutnya dengan bergeser ke
indeks 1 sampai 3.
b. Percobaan kedua
0 1 2 3 4 5 6 7 8
i n f o r m a s i
f o r
Hash(for) = 744
Hash(y[1..3]) = 110*22 + 102*21 + 111*20
= 440 + 204 +111
= 755
Nilai hash dari indeks 1 sampai 3 tidak cocok, maka
dilakukan percobaan selanjutnya dengan bergeser ke
indeks 2 sampai 4.
c. Percobaan ketiga
0 1 2 3 4 5 6 7 8
i n f o r m a s i
f o r
Hash(for) = 744
Hash(y[2..4]) = 102*22 + 111*21 + 114*20
= 408 + 222 + 114
= 744
Nilai hash dari indeks 2 sampai 4 terjadi kecocokan,
maka algoritma akan menandai lokasi penemuan
kecocokan pola dan dilakukan percobaan selanjutnya
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
17
sampai percobaan keenam atau sampai karakter pada
sumber string habis.
2.4.2 Similarity
Fungsi kemiripan atau similarity adalah menghitung
kesamaan dan ketidaksamaan antara dua objek yang
diobservasi. Objek yang dimaksud disini adalah komunitas
yang saling berbeda. Ludwig & Reynolds (1988)
menyatakan bahwa kemiripan suatu komunitas dengan
komunitas lain dapat dinyatakan dengan similarity
coefficients. Similarity coefficients memiliki nilai yang
bervariasi antara 0 (jika kedua komunitas benar-benar
berbeda) hingga 1 (jika kedua komunitas identik).
Pada sistem pendeteksian plagiarisme ini digunakan
indeks Sørensen atau disebut juga dengan Dice's coefficient
dengan persamaan:
𝑆 = 2𝑛𝑡
𝑛𝑥 + 𝑛𝑦
Keterangan:
S : Similaritas indeks Sørensen
𝑛𝑥 : Jumlah nilai hash komunitas x
𝑛𝑦 : Jumlah nilai hash komunitas y
𝑛𝑡 : Jumlah hash yang sama dari komunitas x dan y
Kisaran nilai indeks Sørensen adalah antara 0 sampai
1, dimana semakin mendekati angka 0 maka indeks
disimilaritas tidak ada perbedaan dan indeks similaritas
kecil, sedangkan semakin mendekati nilai 1, menunjukkan
disimilaritas yang berbeda dan similaritas besar.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
18
2.5 Metode Waterfall
2.5.1 Definisi Waterfall
Metode waterfall pertama kali diperkenalkan oleh Windows
W. Royce pada tahun 1970. Walaupun sering dianggap kuno,
metode ini paling banyak dipakai dalam Software Engineering (SE)
karena metode ini melakukan pendekatan yang sistematis dan
berurutan. Metode ini disebut waterfall karena tahap demi tahap
yang dilalui harus menunggu tahap sebelumnya selesai dan berjalan
berurutan Menurut (Pressman, 2010), model waterfall adalah model
klasik yang bersifat sistematis, berurutan dalam membangun
software.
Gambar 2.1 Waterfall menurut Pressman
2.5.2 Tahapan Pengembangan Metode Waterfall
Langkah-langkah yang dilakukan dalam pengembangan waterfall
adalah:
1. Requirement Analisis
Merupakan tahap awal dalam pengembangan sistem. Pada tahap
ini harus mendapatkan beberapa hal yang dianggap menunjang
penelitian yang dilakukan, seperti mencari permasalahan yang
ada, mengumpulkan data, wawancara dan lain-lain.
2. System Design
Tahap desain sistem membantu dalam menentukan perangkat
keras, tampilan, alur kerja sistem, pengoperasian sistem, dan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
19
lain-lain yang disesuaikan dengan analisis kebutuhan tahap
awal.
3. Implementation
Pada tahap ini, sistem pertama kali dikembangkan untuk
menghasilkan aplikasi yang telah di desain pada tahap
sebelumnya.
4. Integration & Testing
Tahap ini merupakan tahap pengujian sistem yang artinya sistem
yang telah dibuat dari hasil analisis masalah yang telah melalui
tahap desain dan implementasi kemudian masuk kedalam
pengujian sistem, sehingga akan dapat diketahui seperti apa hasil
kinerja sistem yang baru ini dibandingkan dengan sistem yang
lama, kemudian dapat diketahui pula apakan dalam sistem yang
baru ini masih ada kelemahan yang kemudian akan
dikembangkan oleh peneliti berikutnya.
5. Operation & Maintenance
Tahap akhir dalam model waterfall adalah
melakukan pemeliharaan sistem. Pemeliharaan termasuk dalam
memperbaiki kesalahan yang tidak ditemukan pada langkah
sebelumnya
Ada 3 alasan perlunya pemeliharaan sistem, yaitu:
a. Untuk membenarkan kesalahan atau kelemahan sistem yang
tidak terdeteksi pada saat pengujian.
b. Untuk membuat sistem up to date.
c. Untuk meningkatkan kemampuan sistem.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
20
BAB III
PERANCANGAN SISTEM
Pada bab perancangan sistem ini berisi tentang penjelasan rancangan, proses
kerja sistem, dan perancangan antarmuka pengguna yang akan dibangun oleh
penulis.
3.1 Tahap Requirement Analysis
3.1.1 Gambaran Umum Sistem
Sistem pendeteksi plagiat yang akan dibangun merupakan
sistem yang akan mendeteksi tingkat kesamaan dua dokumen teks.
Masukan sistem diperoleh dari dokumen teks yang akan diunggah
oleh pengguna. Selanjutnya dokumen akan melewati tahap
preprocessing menggunakan text mining. Pada tahap
preprocessing, dilakukan case folding (mengubah isi dokumen
menjadi huruf kecil), filtering (membuang kata yang tidak
penting), stemming (mengubah kata kedalam bentuk aslinya atau
kata dasar), dan tokenizing (pembentukan rangkaian k-gram).
Setelah melakukan preprocessing, dokumen akan masuk ke dalam
proses pencocokan kata dengan menggunakan algoritma Rabin
Karp. Hasil pencocokan dokumen kemudian dihitung similarity
dengan indeks Sorensen dengan nilai 0 sampai 1. Jika similarity
yang dihasilkan mendekati angka 1, maka disimpulkan bahwa
tingkat plagiarisme dalam dokumen tersebut semakin besar.
3.1.2 Analisis Kebutuhan
Analisis kebutuhan digunakan untuk mengidentifikasi
terhadap kebutuhan sistem. Kebutuhan sistem meliputi analisis
kebutuhan pengguna atau admin sebagai berikut:
1. Mengolah data file dokumen untuk dideteksi tingkat
kemiripannya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
21
3.1.3 Use Case
Gambar 3.1 Use Case aplikasi pendeteksi plagiarisme.
3.1.4 Flowchart
Gambar 3.2 Flowchart aplikasi pendeteksi plagiarisme.
Lihat tutorial
Input file
Lihat similarity
Simpan file
CRUD karya tulis
tersimpan
user Lihat plagiat
Login
Logout
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
22
3.1.5 Pemodelan Proses
3.1.5.1 Data Flow Diagram Level 0
Gambar 3.3 Data Flow Diagram Level 0
3.1.5.2 Data Flow Diagram Level 1
Gambar 3.4 Data Flow Diagram Level 1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
23
3.1.5.3 Data Flow Diagram Level 2 Proses 1
Gambar 3.5 Data Flow Diagram Level 2 proses 1
3.1.5.4 Data Flow Diagram Level 2 Proses 2
Gambar 3.6 Data Flow Diagram Level 2 proses 2
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
24
3.1.5.5 Data Flow Diagram Level 2 Proses 3
Gambar 3.7 Data Flow Diagram Level 2 proses 3
3.1.5.6 Data Flow Diagram Level 2 Proses 4
Gambar 3.8 Data Flow Diagram Level 2 proses 4
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
25
3.2 Perancangan Sistem
3.2.1 Perancangan Basis Data
Perancangan basis data pada sistem meliputi pembuatan
tabel-tabel basis data.
3.2.1.1 Perancangan Basis Data Konseptual (ERD)
Gambar 3.9 Perancangan ER Diagram
3.2.1.2 Perancangan Basis Data Logikal
Gambar 3.10 Perancangan logikal basis data
Login Dokumen Stopword_ina Rootword_ina
*Id
Nama
Username
Password
*Id
Path
Judul
Penulis
Tahun
*Id
Stopword
*Id
Rootword
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
26
3.2.1.3 Perancangan Basis Data Fisikal
3.2.1.3.1 Tabel Login
Tabel untuk menyimpan data admin seperti
id, nama, username, dan password yang
digunakan untuk keperluan login sebelum
masuk ke sistem.
Tabel 3.1 Tabel Login
Field Tipe Keterangan
Id Int (10) Primary key table login
Nama Varchar (50) Nama admin
Username Varchar (50) Username admin
Password Varchar (50) Password admin
3.2.1.3.2 Tabel Dokumen
Tabel untuk menyimpan data dokumen
seperti id, path, judul, penulis, dan tahun.
Tabel 3.2 Tabel Dokumen
Field Tipe Keterangan
Id Int (10) Primary key table ini
Path Varchar (100) Path dokumen terkait
Judul Varchar (100) Judul dokumen terkait
Penulis Varchar (100) Penulis dokumen terkait
Tahun Int (5) Tahun penulisan
dokumen terkait
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
27
3.2.1.3.3 Tabel Rootword_ina
Tabel untuk menyimpan kamus kata dasar
yang digunakan untuk stemming dokumen.
Tabel 3.3 Tabel Rootword_ina
Field Tipe Keterangan
Id Int (10) Primary key tabel ini
Rootword Varchar (50) Daftar kata rootword
(dasar)
3.2.1.3.4 Tabel Stopword_ina
Tabel untuk menyimpan kamus kata tidak
penting pada dokumen.
Tabel 3.4 Tabel Stopword_ina
Field Tipe Keterangan
Id Int (10) Primary key tabel ini
Stopword Varchar (50) Daftar kata stopword
(tidak penting)
3.2.2 Perancangan Antarmuka
3.2.2.1 Halaman Login
Rancangan antarmuka untuk halaman login. Pada
halaman ini pengguna akan mengisi username dan
password untuk bisa masuk ke sistem. Dapat dilihat pada
gambar 3.11.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
28
Gambar 3.11 Perancangan halaman login
3.2.2.2 Halaman Utama
Rancangan antarmuka untuk halaman utama sistem.
Halaman utama sistem ini terdiri dari empat buah menu
yaitu menu untuk mendeteksi dua dokumen, menu untuk
mendeteksi dokumen dengan dokumen yang sudah
tersimpan di database, menu karya tulis tersimpan, dan
menu pengguna. Dapat dilihat pada gambar 3.12.
Gambar 3.12 Perancangan halaman utama aplikasi
3.2.2.3 Halaman Deteksi dua Dokumen
Rancangan antarmuka untuk halaman deteksi dua
dokumen. Pada halaman ini dua buah dokumen akan di
proses untuk dilihat presentase kemiripannya. Dapat
dilihat pada gambar 3.13.
Aplikasi Pendeteksi Plagiat
Username
Password
Login
Aplikasi Pendeteksi Plagiat
Deteksi dua Dokumen
Karya Tulis Tersimpan
X ?
Deteksi Dokumen di
Database
Pengguna
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
29
Gambar 3.13 Perancangan halaman proses dua dokumen
3.2.2.4 Halaman Deteksi Dokumen di Database
Rancangan antarmuka untuk halaman deteksi
dokumen di database. Pada halaman ini dokumen yang
akan diuji akan dibandingkan dengan beberapa dokumen
yang sudah tersimpan di database. Dapat dilihat pada
gambar 3.14.
Gambar 3.14 Perancangan halaman proses dokumen di database
3.2.2.5 Halaman Karya Tulis Tersimpan
Rancangan antarmuka untuk halaman karya tulis
tersimpan. Pada halaman ini path dari karya tulis yang
tersimpan di komputer akan disimpan di database. Dapat
dilihat pada gambar 3.15.
Aplikasi Pendeteksi Plagiat
Dokumen 1
X
Dokumen 2
Aplikasi Pendeteksi Plagiat X
Dokumen 1
upload
upload
Proses
Kembali
?
upload
Proses
Karya Tulis Ilmiah tersimpan
?
Hasil
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
30
Gambar 3.14 Halaman karya tulis tersimpan
Gambar 3.15 Perancangan halaman karya tulis tersimpan
3.2.2.6 Halaman Pengguna
Rancangan antarmuka halaman pengguna. Halaman
ini merupakan proses pengelolaan pengguna. Dapat
dilihat pada gambar 3.16.
Gambar 3.16 Perancangan halaman pengguna
Aplikasi Pendeteksi Plagiat X ?
Tabel Pengguna NIP
Nama
Password
Simpan
Aplikasi Pendeteksi Plagiat
Tabel Karya Tulis Tersimpan
? x
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
31
BAB IV
IMPLEMENTASI SISTEM
Pada bab implementasi sistem berisi tentang implementasi dari sistem yang
akan dibuat, pembahasan sistem, implementasi antarmuka, dan hasil implementasi
aplikasi.
4.1 Deskripsi Alat
Pada implementasi sistem, penulis menggunakan komputer pribadi
dengan spesifikasi sebagai berikut:
1. Processor : AMD A8-5550M
2. RAM : 4 GB
3. Kapasitas Penyimpanan : 500 GB
Sedangkan perangkat lunak yang penulis gunakan adalah:
1. Sistem Operasi : Windows 10
2. Bahasa Pemrograman : Java
3. Tools Perancang : Netbeans IDE 8.0.2
4.2 Algoritma Rabin Karp
Dalam pembuatan aplikasi pendeteksi plagiat, penulis memilih
algoritma Rabin Karp karena memungkinkan melakukan pencarian pola
tulisan dari substring-substring pada sebuah teks dalam dokumen.
Algoritma Rabin Karp tidak melakukan pergeseran yang rumit untuk
menyelesaikan masalah, algoritma ini mempercepat pengecekan kata pada
suatu teks dengan menggunakan fungsi hash.
Contoh perbandingan dua buah dokumen yang terindikasi
merupakan hasil plagiat dengan dokumen aslinya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
32
Tabel 4.1 Dua buah dokumen yang terindikasi terjadi plagiarisme.
Dokumen 1
Dalam The 100 Greatest Disasters of All Time karya Stephen J Spignesi,
dua bencana di Indonesia berada di peringkat ke-22 dan ke-30. Pertama,
letusan Gunung Tambora di Sumbawa (1815) yang merenggut 150.000
jiwa dan menurunkan suhu bumi. Kedua, letusan Gunung Krakatau
(1883) yang menelan 36.000 nyawa.
Dokumen 2
Dalam buku The 100 Greatest Disasters of All Time karya Stephen J
Spignesi, dua bencana di Indonesia masuk peringkat ke-22 dan 30.
Letusan Gunung Tambora di Sumbawa tahun 1815 merenggut 150.000
jiwa dan menurunkan suhu Bumi. Adapun letusan Gunung Krakatau
tahun 1883 menelan 36.000 nyawa.
Dari table 4.1 diatas, dapat dilihat kemiripan dokumen sangat
terlihat. Namun untuk mengetahui tingkat kemiripan atau similarity antara
dua buah dokumen digunakan algoritma Rabin Karp.
Langkah pertama adalah dengan melakukan preprocessing
dokumen, yaitu:
1. Case folding
Proses ini adalah dengan mengubah semua huruf menjadi huruf
kecil.
Tabel 4.2 Dua buah dokumen setelah melalui langkah case folding.
Dokumen 1
dalam the 100 greatest disasters of all time karya stephen j spignesi, dua
bencana di indonesia berada di peringkat ke-22 dan ke-30. pertama,
letusan gunung tambora di sumbawa (1815) yang merenggut 150.000
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
33
jiwa dan menurunkan suhu bumi. kedua, letusan gunung krakatau (1883)
yang menelan 36.000 nyawa.
Dokumen 2
dalam buku the 100 greatest disasters of all time karya stephen j
spignesi, dua bencana di indonesia masuk peringkat ke-22 dan 30.
letusan gunung tambora di sumbawa tahun 1815 merenggut 150.000
jiwa dan menurunkan suhu bumi. adapun letusan gunung krakatau tahun
1883 menelan 36.000 nyawa.
2. Filtering
Langkah yang kedua adalah menghilangkan kata-kata yang
kurang penting. Pada proses filtering, kata-kata yang akan
dihapus meliputi kata-kata yang kurang penting atau kata
sambung seperti kata “dari”, “dan”, dan kata sambung lainnya.
Pada proses ini tanda baca juga dihilangkan.
Tabel 4.3 Dua buah dokumen setelah melalui langkah case filtering.
Dokumen 1
100 greatest disasters all time karya stephen j spignesi dua bencana
indonesia berada peringkat 22 30 pertama letusan gunung tambora
sumbawa 1815 merenggut 150000 jiwa menurunkan suhu bumi kedua
letusan gunung krakatau 1883 menelan 36000 nyawa
Dokumen 2
buku 100 greatest disasters all time karya stephen j spignesi dua
bencana indonesia masuk peringkat 22 30 letusan gunung tambora
sumbawa tahun 1815 merenggut 150000 jiwa menurunkan suhu bumi
letusan gunung krakatau tahun 1883 menelan 36000 nyawa
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
34
3. Stemming
Langkah ketiga adalah dengan melakukan stemming, yaitu
mengubah kata kedalam bentuk aslinya atau dengan kata lain
mengubah ke bentuk kata dasar. Dalam penelitian ini, kata
yang diubah ke bentuk kata dasar hanya kata dalam Bahasa
Indonesia saja.
Tabel 4.4 Dua buah dokumen setelah melalui langkah stemming.
Dokumen 1
100 greatest disasters all time karya stephen j spignesi dua bencana
indonesia ada tingkat 22 30 pertama letus gunung tambora sumbawa
1815 renggut 150000 jiwa turun suhu bumi dua letus gunung krakatau
1883 telan 36000 nyawa
Dokumen 2
buku 100 greatest disasters all time karya stephen j spignesi dua
bencana indonesia masuk tingkat 22 30 letus gunung tambora sumbawa
tahun 1815 renggut 150000 jiwa turun suhu bumi letus gunung krakatau
tahun 1883 telan 36000 nyawa
4. Tokenizing
Langkah terakhir dalam proses preprocessing adalah proses
pemotongan string input berdasarkan tiap kata penyusunnya
dan pembentukan pola kata dalam rangkaian k-gram. Langkah
tokenizing dibagi menjadi dua proses, yaitu :
a. Proses parsing k-gram
Merupakan pemotongan kata sebanyak k = 5. Penentuan
nilai k adalah dengan melihat banyaknya banyaknya kata
yang akan diolah atau di hitung nilai hashnya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
35
Tabel 4.5 Dua buah dokumen setelah melalui langkah parsing k-gram
dalam tokenizing.
Dokumen 1
{100 g}{00 gr}{0 gre}{ grea}{great}{reate}{eates} {atest}{testd} {estdi}{stdis}
{tdisa}{disas}{isast}{saste}{aster}{sters}{ters }{ers a}{rs al}{s all}{ all }{all t}{ll
th}{l the}{ the }{the t}{he ti}{e tim}{ time}{time }{ime k}{me ka}{e kar}{ kary}
{karya}{arya }{rya s}{ya st}{a ste}{ step}{steph}{tephe}{ephen}{phen }{hen j}{en j
}{n j s}{ j sp}{j spi}{ spig}{spign}{pigne}{ignes}{gnesi} {nesi }{esi d}{si du}{i
dua}{ dua }{dua b}{ua be}{a ben}{ benc}{benca}{encan}{ncana}{cana }{ana i}{na
in}{a ind}{ indo} {indon}{ndone}{dones} {onesi} {nesia}{esia }{sia a}{ia ad}{a
ada}{ ada }{ada t}{da ti}{a tin} { ting} {tingk} {ingka}{ngkat}{gkat }{kat 2}{at
22}{t 22 }{ 22 3}{22 30}{2 30 }{ 30 p}{30 pe}{0 per}{ pert} {perta}
{ertam}{rtama}{tama }{ama l}{ma le}{a let}{ letu} {letus}{etus }{tus g}{us gu}{s
gun}{ gunu} {gunun}{unung}{nung }{ung t}{ng ta}{g tam}{ tamb}
{tambo}{ambor} {mbora}{bora }{ora s}{ra su}{a sum}{ sumb} {sumba} {umbaw}
{mbawa}{bawa }{awa 1}{wa 18}{a 181}{ 1815}{1815 }{815 r} {15 re}{5 ren}{
reng}{rengg} {enggu}{nggut}{ggut } {gut 1}{ut 15}{t 150}{ 1500} {15000}
{50000}{0000 } {000 j}{00 ji}{0 jiw}{ jiwa} {jiwa }{iwa t}{wa tu} {a tur} {
turu}{turun}{urun }{run s}{un su}{n suh}{ suhu}{suhu }{uhu b}{hu bu}{u bum}{
bumi}{bumi }{umi d}{mi du}{i dua}{ dua } {dua l}{ua le}{a let}{
letu}{letus}{etusa} {tusan{usan }{san g}{an gu}{n gun}{ gunu}{gunun}{unung}
{nung }{ung k}{ng kr}{g kra}{ krak}{kraka} {rakat}{akata}{katau}{atau }{tau
1}{au 18}{u 188}{ 1883}{1883 } {883 t}{83 te}{3 tel}{ tela}{telan}{elan }{lan
3}{an 36}{n 360}{ 3600} {36000} {6000 }{000 n}{00 ny}{0 nya}{ nyaw} {nyawa}
Dokumen 2
{buku }{uku 1}{ku 10}{u 100}{ 100 }{100 g}{00 gr} {0 gre}{ grea}{great}{reate}
{eates}{atest}{test }{est d}{st di}{t dis}{ disa}{disas}{isast}{saste}{aster}{sters}
{ters }{ers a}{rs al}{s all}{ all }{all t}{ll ti}{l tim}{ time}{time }{ime k}{me ka}{e
kar}{ kary}{karya}{arya }{rya s}{ya st}{a ste}{ step}{steph} {tephe}{ephen}{phen
}{hen j}{en j }{n j s} { j sp}{j spi}{ spig} {spign}{pigne}{ignes}{gnesi}{nesi }{esi
d}{si du}{i dua}{ dua }{dua b}{ua be}{a ben}{ benc}{benca}{encan}{ncana}{cana
}{ana i}{na in}{a ind}{ indo}{indon}{ndone}{dones} {onesi} {nesia}{esia }{sia
m}{ia ma}{a mas}{ masu}{masuk}{asuk }{suk t}{uk ti}{k tin}{ ting}{tingk}
{ingka}{ngkat}{gkat }{kat 2}{at 22}{t 22 }{ 22 3}{22 30}{2 30 }{ 30 l}{30 le}{0
let}{ letu}{letus}{etus }{tus g}{us gu}{s gun}{ gunu} {gunun} {unung}{nung }{ung
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
36
t}{ng ta}{g tam}{ tamb}{tambo} {ambor}{mbora}{bora }{ora s}{ra su}{a sum}{
sumb}{sumba} {umbaw}{mbawa}{bawa }{awa t}{wa ta}{a tah}{ tahu}{tahun}
{ahun }{hun 1}{un 18}{n 181}{ 1815}{1815 }{815 r}{15 re} {5 ren}{
reng}{rengg}{enggu}{nggut}{ggut }{gut 1}{ut 15}{t 150}{
1500}{15000}{50000}{0000 }{000 j}{00 ji}{0 jiw}{ jiwa}{jiwa }{iwa t}{wa tu}
{a tur}{ turu} {turun}{urun }{run s}{un su}{n suh}{ suhu}{suhu }{uhu b}{hu bu}
{u bum}{ bumi} {bumi }{umi l}{mi le}{i let}{ letu}{letus}{etus }{tus g}{us gu}
{s gun}{ gunu}{gunun} {unung}{nung }{ung k}{ng kr}{g kra}{
krak}{kraka}{rakat}{akata}{katau}{atau }{tau t}{au ta}{u tah}{ tahu}{tahun}{ahun
}{hun 1}{un 18}{n 188}{ 1883}{1883 }{883 t}{83 te}{3 tel}{ tela}{telan}{elan }
{lan 3}{an 36} {n 360}{ 3600}{36000}{6000 }{000 n}{00 ny}{0 nya}{
nyaw}{nyawa}
b. Proses hashing
Proses yang kedua adalah mengubah setiap string
menjadi angka. Dengan menggunakan persamaan:
𝐼𝑝 = 𝑝1 ∗ 𝑑(𝑚−1) + 𝑝2 ∗ 𝑑(𝑚−2) + ⋯ + 𝑝(𝑚−1) ∗ 𝑑1 + 𝑝(𝑚−1) ∗ 𝑑0
Maka kedua dokumen yang telah diproses sampai ke
tahap tokenizing dapat dihitung nilai hash nya dengan
basis bilangan (d) = 7. Untuk penentuan basis bilangan
adalah dengan memilih bilangan prima karena dapat
memperkecil terjadinya collision.
Tabel 4.6 Dua buah dokumen setelah melalui langkah hashing dalam
tokenizing.
Dokumen 1
136792
134115
132170
118551
292149
314023
282278
278555
319706
288435
321653
318863
282544
297224
315934
278847
321765
319582
287559
315514
292708
116183
275573
298836
276797
122455
319477
286832
260005
122629
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
37
320611
294772
298766
259513
119205
296708
278639
320309
326281
250421
122780
321740
319476
286830
310335
290067
282573
280619
115675
272006
122603
320507
310845
293646
290892
305155
287415
314515
268897
117576
285306
316543
249492
116264
276121
285871
303687
277071
275710
299801
249937
119391
298023
304720
284385
310100
305220
287802
317205
287731
249496
116290
276306
287153
312596
272286
275824
250182
121100
309986
287621
315947
295728
305477
289601
296136
274653
292324
96707
139173
133893
97013
93348
132533
121111
310050
288075
319115
317839
275369
297405
249988
119754
300569
288924
325071
325917
315103
273033
281062
118781
293753
325253
310384
324034
301916
264751
122234
317925
275977
296855
279668
310705
309475
250436
122871
322370
323904
301006
275111
278740
320957
246715
96779
139661
154193
138260
144391
120067
302755
287425
314571
286116
395421
289209
293391
322669
292312
96620
138564
146453
134432
134394
132127
132271
119268
297014
297664
319021
250031
120055
302675
286879
310756
326629
320081
324679
306366
295907
273117
281644
136575
418233
322644
292206
297623
117047
281537
323780
300142
269131
119299
297366
283245
285316
316613
249988
119754
300569
288924
325071
325917
315103
273033
281062
118781
293753
325253
310384
324025
301870
264417
119905
301608
313023
275260
296658
278289
317793
274995
294742
96826
139990
156496
154381
139585
120039
302557
286033
304834
285100
298244
272606
278011
97355
143706
148838
134398
134171
132558
121289
311296
Jumlah hashing = 242
Dokumen 2
281523
323624
298997
294678
96359
136792
134115
132170
118551
292149
314023
282278
278555
319638
287954
318276
295242
117179
282544
287224
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
38
315934
278847
321765
319582
287559
315514
292708
116183
275573
298837
276812
122629
320611
294772
298766
259513
119205
296708
278639
320309
326281
250421
122780
321740
319476
286830
319335
290067
282573
280619
115675
272006
122603
320507
310845
193646
290892
305155
287415
314515
268897
117576
285309
326543
249492
116264
276121
285871
303687
277071
275709
299794
249888
119048
295622
304720
284385
310100
305220
287802
317216
287804
250008
119894
301541
278856
321825
320071
274192
121100
309986
287625
315965
295875
306408
296136
274653
292324
96707
139173
133893
97009
141440
132339
119754
300569
288924
325071
325917
315103
273033
281062
118781
293753
325253
319384
324034
301916
264751
122234
317925
275977
301657
279668
310705
309475
250436
122871
322370
323904
301006
275111
278807
321467
250340
122218
317812
275104
295498
320614
277928
96779
139661
154193
138350
144391
120067
302755
287425
314571
286116
305421
289209
293391
322669
292312
96620
138564
146453
134432
134394
134127
132272
119265
297065
298008
321422
250031
120055
302675
286879
310756
326629
320081
324679
306366
295907
273117
281644
122855
322193
322644
292207
297623
117047
281537
323781
300149
269196
119754
300569
288924
325071
325917
315103
273033
257052
118781
293753
325253
310384
324025
301870
264417
119905
301608
313023
275260
296658
278289
317860
275505
298360
122218
317812
275104
295498
320614
277935
96826
139990
156496
154381
139585
120039
302557
286033
304834
285100
298244
272606
278011
97355
143704
148838
134398
134171
132558
121289
311296
Jumlah hashing = 240
Dari proses hashing fedua dokumen diatas, dapat
diketahui jumlah hash yang sama dalam table berikut:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
39
Tabel 4.7 Hash yang sama dalam dua buah dokumen setelah melalui
langkah hashing dalam tokenizing.
Dokumen 1 dan Dokumen 2
134115
132170
118551
292149
314023
282278
278555
282544
315934
278847
321765
319582
287559
315514
116183
275573
122629
294772
298766
259513
119205
296708
278639
320309
326281
250421
321740
319476
286830
290067
282573
280619
115675
272006
320507
310845
290892
305155
287415
314515
268897
117576
249492
116264
276121
285871
303687
277071
304720
284385
310100
305220
287802
121100
309986
296136
274653
292324
96707
139173
119754
300569
288924
325071
325917
315103
273033
281062
118781
293753
325253
324034
301916
264751
122234
317925
275977
279668
310705
309475
250436
122871
322370
323904
301006
275111
122218
317812
275104
295498
320614
96779
139661
154193
144391
120067
302755
314571
286116
289209
293391
322669
292312
96620
138564
134432
134394
250031
302675
286879
310756
326629
320081
324679
306366
295907
273117
322644
297623
117047
281537
119754
300569
288924
325071
325917
315103
273033
118781
293753
325253
310384
324025
264417
119905
301608
313023
275260
296658
278289
122218
317812
275104
295498
320614
96826
139990
156496
154381
139585
120039
302557
286033
304834
298244
272606
278011
97355
148838
134398
134171
132558
311296
Jumlah hashing = 163
Setelah jumlah hash diketahui, yaitu hash pada dokumen
pertama sebanyak 242, hash dokumen uji sebanyak 240 dan hash
yang sama sebanyak 163, proses selanjutnya adalah menghitung
similarity.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
40
Langkah selanjutnya dalam algoritma Rabin Karp adalah melakukan
uji similarity. Uji similarity menggunakan indeks Sørensen dengan
persamaan:
𝑆 = 2𝑛𝑡
𝑛𝑥 + 𝑛𝑦
𝑆 = 2 ∗ 163
242 + 240= 0.67634
Diketahui similary antar dua buah dokumen sebesar 0.67634 yang artinya
kedua dokumen memiliki similarity yang besar dan dapat dikatakan
plagiarisme.
4.3 Implementasi Basis Data
Pada tahap ini dilakukan pembangunan database untuk menunjang
sistem yang dibangun. Berikut query untuk membuat database dan tabel-
tabel yang ada di dalamnya.
4.3.1 Table Login
create table login(
nip int(10) primary key,
nama varchar(50),
username varchar(50),
password varchar(50));
4.3.2 Tabel Dokumen
create table dokumen(
id int 10 primary key,
path varchar(100),
judul varchar(100),
penulis varchar(100),
tahun int(5));
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
41
4.3.3 Tabel Rootword_ina
create table rootword_ina(
id int(10) primary key,
rootword varchar(50));
4.3.4 Tabel Stopword_ina
create table stopword_ina(
id int(10) primary key,
stopword varchar(50));
4.4 Implementasi Sistem
Pada tahap ini dilakukan pembangunan sistem sesuai dengan
rancangan yang dibuat pada bab sebelumnya.
4.4.1 Halaman Login
Pada halaman login ini, pengguna harus memasukkan
username dan password lalu menekan tombol “Login” untuk masuk ke
halaman utama sistem. Dapat dilihat pada gambar 4.1.
Gambar 4.1 Halaman login
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
42
Berikut adalah potongan listing program bagian tombol “Login”.
4.4.2 Halaman Utama
Halaman utama adalah halaman yang muncul saat pengguna
sudah login ke sistem. Pada halaman ini terdapat tiga menu utama
yaitu deteksi dua dokumen, deteksi dokumen di database, dan karya
tulis tersimpan serta terdapat menu tambahan yaitu menu edit
pengguna. Dapat dilihat pada gambar 4.2.
Gambar 4.2 Halaman utama
try {
Connection conn = new Database().connect();
String sql = "select * from LOGIN where USERNAME='"+
jTextFieldUsername.getText() +"' and PASSWORD='" +
jPasswordField.getText()+ "'";
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
if(rs.next()){
this.dispose();
HalamanUtama i = new HalamanUtama();
i.setVisible(true);
} else{
JOptionPane.showMessageDialog(null, "Maaf Username dan Password Salah");}
} catch (SQLException ex) {}
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
43
4.4.3 Halaman Deteksi dua Dokumen
Halaman Deteksi dua dokumen merupakan halaman yang
digunakan dalam proses pendeteksian dua dokumen yang terindikasi
plagiat. Pada halaman ini pengguna akan memilih dokumen asli dan
dokumen uji kemudian penguna bisa memilih batas toleransi
plagiarisme dengan memilih pada combobox presentase, dan untuk
memulai proses pengujian adalah dengan menekan tombol “proses”.
Setelah proses selesai, hasil akan ditampilkan pada panel sebelah
kanan halaman ini. Dapat dilihat pada gambar 4.3.
Gambar 4.3 Halaman deteksi dua dokumen
Berikut adalah beberapa potongan listing program untuk proses
pendeteksian dua dokumen.
1. Listing program case folding
private String deleteDelimiter(String isiDoc){
String [] delimiter =
{"0","1","2","3","4","5","6","7","8","9","`","~","!","@","#","$","%","%","^","&","*","(",")
","-","_","=","+","{","}","[","]",":",";","'",",","<",".",">","?","/"};
for (String delimiter1 : delimiter) {
isiDoc = isiDoc.replace(delimiter1, "").toLowerCase();}
return isiDoc;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
44
2. Listing program filtering
3. Listing program stemming
4. Listing program parsing k-gram
5. Listing program hashing
public String removeStopWord(String words) {
String[] wordArray = words.split("\\s+");
String newSentence = "";
for (String word : wordArray) {
boolean inList = false;
try {
inList = isInList(word);
} catch (SQLException ex) {
Logger.getLogger(StopWordRemover.class.getName()).log(Level.SEVERE, null, ex);}
if(!inList && !containNumeric(word))
newSentence = newSentence + word + " ";}}
return newSentence;}
private String Stem(String isiDoc){
StringBuilder result = new StringBuilder();
if (isiDoc!=null && isiDoc.trim().length()>0){
StringReader tReader = new StringReader(isiDoc);
IndonesianAnalyzer analyzer = new IndonesianAnalyzer(Version.LUCENE_34);
org.apache.lucene.analysis.TokenStream tStream = analyzer.tokenStream("contents",
tReader);
TermAttribute term = tStream.addAttribute(TermAttribute.class);
try {
while (tStream.incrementToken()){
result.append(term.term());
result.append(" ");}
} catch (IOException ioe){
System.out.println("Error: "+ioe.getMessage());}}
if (result.length()==0)
result.append(isiDoc);
return result.toString().trim();}}
private void parsingKgram(String pattern, String teks, int jumKgram)
for (int i = 0; i < jumKgram; i++) {
int nextKgram = Kgram + i;
matching(pattern.substring(i, nextKgram), teks);}}
private int hash(String pattern) {//fungsi hash
int h = 0;
for (int i = 0; i < pattern.length(); i++) {
h += pattern.charAt(i) * Math.pow(basis, pattern.length() - i - 1);}
return h;}
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
45
6. Listing program Rabin-Karp
7. Listing program similarity
8. Listing program tombol “Start”
private void matching(String pattern, String teks) {//rabin karp
int panjangPattern = pattern.length();
int panjangTeks = teks.length();
int i, j;
int hashPattern = hash(pattern);
int hashTeks = hash(teks.substring(0, panjangPattern));
for (i = 0; i < panjangTeks - panjangPattern; i++) {
if (hashPattern == hashTeks) {
for (j = 0; j < panjangPattern; j++) {
if (teks.charAt(i + j) != pattern.charAt(j)) {break;}}
if (j == panjangPattern) {
jumPatternSama++;
patternSama[i] = pattern;
break;}} else {
hashTeks = hash(teks.substring(i + 1, panjangPattern + i + 1));}}}
public double getSimilarity() {
DecimalFormat twoDForm = new DecimalFormat("#.##");
double A = 2*jumPatternSama;
double B = jumPatternDocAsli + jumPatternDocUji;
double C = (A / B) * 100;
int decimalPlace = 2;
BigDecimal bigDecimal = new BigDecimal(C);
bigDecimal = bigDecimal.setScale(decimalPlace, BigDecimal.ROUND_UP);
if (similarity == null) {
similarity = bigDecimal.doubleValue();}
return similarity;}
SwingUtilities.invokeLater(() -> {
boolean p = TestPlagiat.isPlagiarism(sumberDocAsli, sumberDocUji, kgram, presentase,
(rk) -> {
similarity = rk.similarity;viewDocAsli = rk.DocAsli;viewDocUji = rk.DocUji;
waktuProses = rk.waktuProses;patternSama = rk.patternSama;
jLabelNilaiSimilarity.setText(": " + Double.toString(similarity) + " %");
jLabelNilaiWaktuProses.setText(": " + Long.toString(waktuProses) + " ms");});
jLabelNilaiPlagiat.setText(p ? ": Ya" : ": Tidak");
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
46
4.4.4 Halaman Deteksi Dokumen di Database
Halaman Deteksi dokumen di database merupakan halaman
proses pengujian dokumen uji terhadap dokumen yang tesimpan di
database. Pada halaman ini terdapat dua tiga panel yaitu panel input
dokumen, panel karya tulis tersimpan, dan panel hasil pengujian.
Untuk memulai proses pengujian, pengguna memilih dokumen yang
akan diuji dan memilih batas toleransi plagiarisme dengan memilih
pada combobox presentase. Untuk memulai poengujian pengguna
dapat menekan tompol “proses”. Hasil pengujian akan ditampilkan
pada panel hasil di sebelah bawah. Pengguna dapat menyimpan
dokumen yang sudah diuji dengan menekan tombol “simpan
dokumen” Dapat dilihat pada gambar 4.4.
Gambar 4.4 Halaman deteksi dokumen di database
Berikut adalah beberapa potongan listing program untuk proses
pendeteksian dokumen di database.
1. Listing program case folding
private String deleteDelimiter(String isiDoc){
String [] delimiter = {"0","1","2","3","4","5","6","7","8","9",
"`","~","!","@","#","$","%","%","^","&","*","(",")","-","_",
"=","+","{","}","[","]",":",";","'",",","<",".",">","?","/"};
for (String delimiter1 : delimiter) {
isiDoc = isiDoc.replace(delimiter1, "").toLowerCase();}
return isiDoc;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
47
2. Listing program filtering
3. Listing program stemming
4. Listing program parsing k-gram
5. Listing program hashing
public String removeStopWord(String words) { String[] wordArray = words.split("\\s+"); String newSentence = ""; for (String word : wordArray) { boolean inList = false; try { inList = isInList(word); } catch (SQLException ex) { Logger.getLogger(StopWordRemover.class.getName()).log(Level.SEVERE, null, ex);} if(!inList && !containNumeric(word)) newSentence = newSentence + word + " ";}} return newSentence;}
private String Stem(String isiDoc){
StringBuilder result = new StringBuilder();
if (isiDoc!=null && isiDoc.trim().length()>0){
StringReader tReader = new StringReader(isiDoc);
IndonesianAnalyzer analyzer = new IndonesianAnalyzer(Version.LUCENE_34);
org.apache.lucene.analysis.TokenStream tStream = analyzer.tokenStream("contents",
tReader);
TermAttribute term = tStream.addAttribute(TermAttribute.class);
try {
while (tStream.incrementToken()){
result.append(term.term());
result.append(" ");}
} catch (IOException ioe){
System.out.println("Error: "+ioe.getMessage());}}
if (result.length()==0)
result.append(isiDoc);
return result.toString().trim();}}
private void parsingKgram(String pattern, String teks, int jumKgram)
for (int i = 0; i < jumKgram; i++) {
int nextKgram = Kgram + i;
matching(pattern.substring(i, nextKgram), teks);}}
private int hash(String pattern) {//fungsi hash
int h = 0;
for (int i = 0; i < pattern.length(); i++) {
h += pattern.charAt(i) * Math.pow(basis, pattern.length() - i - 1);}
return h;}
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
48
6. Listing program Rabin-Karp
7. Listing program similarity
8. Listing program tombol “Start”
private void matching(String pattern, String teks) {//rabin karp
int panjangPattern = pattern.length();
int panjangTeks = teks.length();
int i, j;
int hashPattern = hash(pattern);
int hashTeks = hash(teks.substring(0, panjangPattern));
for (i = 0; i < panjangTeks - panjangPattern; i++) {
if (hashPattern == hashTeks) {
for (j = 0; j < panjangPattern; j++) {
if (teks.charAt(i + j) != pattern.charAt(j)) {
break;}}
if (j == panjangPattern) {
jumPatternSama++;
patternSama[i] = pattern;
break;}} else {
hashTeks = hash(teks.substring(i + 1, panjangPattern + i + 1));}}}
public double getSimilarity() {
DecimalFormat twoDForm = new DecimalFormat("#.##");
double A = 2*jumPatternSama;
double B = jumPatternDocAsli + jumPatternDocUji;
double C = (A / B) * 100;
int decimalPlace = 2;
BigDecimal bigDecimal = new BigDecimal(C);
bigDecimal = bigDecimal.setScale(decimalPlace, BigDecimal.ROUND_UP);
if (similarity == null) {
similarity = bigDecimal.doubleValue();}
return similarity;}
hasil = TestPlagiat.isPlagiarism(d[0], docUji, k, t, rk -> {
String[] row = new String[5];
row[0] = docUji;
row[1] = d[0];
row[2] = d[1];
row[3] = "" + rk.getSimilarity();
row[4] = rk.getSimilarity() > t ? "Ya" : "Tidak";
model.addRow(row);
jLabelWaktu.setText(": " + Long.toString(rk.waktuProses) + " ms");c
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
49
4.4.5 Halaman Karya Tulis Tersimpan
Halaman karya tulis tersimpan merupakan halaman yabg
digunakan untuk melakukan penyimpanan dokumen ke database.
Dokumen yang disimpan hanya path nya saja, hal ini dilakukan
untuk mempercepat proses yang dilakukan sistem dan tidak
membebani database karena data file yang tersimpan akan mencapai
ratusan atau bahkan ribuan sementara dokumen yang sebenarnya
akan disimpan di filesystem. Pada halaman ini terdapat dua panel
yaitu panel tambah dokumen dan panel tabel dokumen yang telah
tersimpan di database. Dapat dilihat pada gambar 4.5.
Untuk menyimpan dokumen ke database, pengguna hanya
perlu menuliskan judul dokumen, nama penulis, tahun penulisan,
dan memasukkan path dimana dokumen tersimpan. Kemudian tekan
tombol “simpan” untuk menyimpan dokumen. Pada halaman ini
pengguna dapat menghapus dan mengupdate dokumen dengan
memilih baris di panel di bawah kemudian pilih tombol “hapus” atau
“update”. Dapat dilihat pada gambar 4.5.
Gambar 4.5 Halaman karya tulis tersimpan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
50
Berikut adalah beberapa potongan listing program tombol “Simpan”
di halaman karya tulis tersimpan
4.4.6 Halaman Tambah Pengguna
Halaman tambah pengguna merupakan halaman yang
melakukan proses penyimpanan, penghapusan, dan update data
pengguna. Pada halaman ini terdapat dua panel yaitu panel tambah
pengguna dan panel data pengguna yang sudah tersimpan di
database. Dapat dilihat pada gambar 4.6.
Untuk melakukan penyimpanan data, pengguna diharuskan
mengisi nip, nama, username, dan password. Kemudian setelah data
disimpan maka data akan mucul pada panel di bawah. Pengguna
dapat melakukan hapus dan update data pengguna dengan memilih
baris pada tabel kemudian pengguna dapat menekan tombol “hapus”
atau “update”. Dapat dilihat pada gambar 4.6.
private void Simpan() throws SQLException {
Connection conn = new Database().connect();
String sql = "insert into dokumen values (?,?,?,?,?)";
PreparedStatement statement;
statement = conn.prepareStatement(sql);
statement.setString(1, jTextFieldId.getText());
statement.setString(2, jTextFieldDokumen.getText());
statement.setString(3, jTextFieldJudul.getText());
statement.setString(4, jTextFieldPenulis.getText());
statement.setString(5, jTextFieldTahun.getText());
statement.executeUpdate();
conn.commit();conn.close();}
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
51
Gambar 4.6 Halaman Pengguna
Berikut adalah beberapa potongan listing program tombol “Simpan”
di halaman tambah pengguna
private void Simpan() throws SQLException {
Connection conn = new Database().connect();
String sql = "insert into login values (?,?,?,?)";
PreparedStatement statement;
statement = conn.prepareStatement(sql);
statement.setString(1, jTextFieldNip.getText());
statement.setString(2, jTextFieldNamaPengguna.getText());
statement.setString(3, jTextFieldUsername.getText());
statement.setString(4, jTextFieldPassword.getText());
statement.executeUpdate();
conn.commit();
conn.close();}
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
52
BAB V
ANALISA HASIL
Pada bab analisa hasil berisi tentang hasil implementasi aplikasi, serta
analisa hasil pengujian.
5.1 Analisa Hasil Uji Coba Sistem (Pengujian Alpha)
Pengujian Alpha merupakan strategi pengujian perangkat lunakyang
umum digunakan dalam pengembangan perangkat lunak dengan tujuan agar
sistem yang dibuat terhindar dari cacat atau kegagalan penggunaan.
Pengujian alpha terhadap Aplikasi Pendeteksi Plagiarisme dalam Karya
Tulis Ilmiah dengan Metode Rabin Karp ini dengan membadingkan hasil
keluaran sistem dengan perhitungan manual peneliti.
5.1.1 Ujicoba dokumen dengan sistem
Terdapat 10 buah dokumen yang akan diuji yaitu dengan pengujian
sebanyak 5 kali. Berikut hasil pengujian:
Pengujian 1
Dokumen a
Dokumen b
Plagiat adalah penjiplakan atau pengambilan karangan,
pendapat, dan sebagainya dari orang lain dan menjadikannya
seolah karangan dan pendapat sendiri.
Plagiarisme adalah mengakui tulisan orang lain sebagai tulisan
sendiri.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
53
Gambar 5.1 Hasil keluaran sistem untuk pengujian Dokumen a
dan Dokumen b
Pengujian 2
Dokumen c
Dokumen d
Gambar 5.2 Hasil keluaran sistem untuk pengujian Dokumen c
dan Dokumen d
Dapat disimpulkan bahwa motivasi belajar adalah sebuah
dorongan dari dalam atau luar diri untuk melakukan sebuah
kegiatan belajar demi mencapai suatu tujuan.
Motivasi belajar merupakan dorongan melakukan sebuah
kegiatan belajar demi mencapai suatu tujuan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
54
Pengujian 3
Dokumen e
Dokumen f
Gambar 5.3 Hasil keluaran sistem untuk pengujian Dokumen e
dan Dokumen f
Pengujian 4
Dokumen g
Dokumen h
Media sosial memiliki pengaruh buruk terhadap perkembangan
anak usia dini
Anak usia dini yang ketergantungan dengan media sosial sering
mengabaikan keadaan sekitarnya
Kerusakan alam yang semakin parah diakibatkan oleh
maraknya penebangan liar yang tidak terkendali.
Banyak penebangan liar yang tidak memperhatikan dampak
buruk bagi lingkungan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
55
Gambar 5.4 Hasil keluaran sistem untuk pengujian Dokumen g
dan Dokumen h.
Pengujian 5
Dokumen i
Dokumen j
Gambar 5.5 Hasil keluaran sistem untuk pengujian Dokumen i
dan Dokumen j
Preprocessing merupakan tahapan awal dalam mengolah data
input sebelum memasuki proses selanjutnya.
Sebelum memasuki proses berikutnya, data input akan diolah
terlebih dahulu dengan preprocessing.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
56
Tabel 5.1 Pengujian dua dokumen dengan sistem
Pengujian Dokumen Similarity
Pengujian 1 Dokumen a
8,96 % Dokumen b
Pengujian 2 Dokumen c
87,88 % Dokumen d
Pengujian 3 Dokumen e
33,90 % Dokumen f
Pengujian 4 Dokumen g
19,36 % Dokumen h
Pengujian 5 Dokumen i
55,08 % Dokumen j
5.1.2 Ujicoba dokumen secara manual
Terdapat 10 buah dokumen yang akan diuji yaitu dengan
pengujian sebanyak 5 kali. Dokumen yang diuji sama dengan
dokumen yang diuji pada sub bab 5.1.3. Berikut langkah langkah
dan hasil pengujian:
Pengujian 1
Dokumen a
Plagiat adalah penjiplakan atau pengambilan karangan,
pendapat, dan sebagainya dari orang lain dan menjadikannya
seolah karangan dan pendapat sendiri.
Preprocessing
plagiat jiplak ambil karang dapat orang jadi karang dapat
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
57
Parsing k-gram
{plagi} {lagia} {agiat} {giatj} {iatji} {atjip} {tjipl} {jipla}
{iplak} {plaka} {lakam} {akamb} {kambi} {ambil}{mbilk}
{bilka} {ilkar} {lkara} {karan} {arang} {rangd} {angda}
{ngdap} {gdapa} {dapat}{apato} {pator}{atora} {toran}
{orang} {rangj} {angja} {ngjad} {gjadi} {jadik} {adika}
{dikar} {ikara} {karan} {arang} {rangd} {angda} {ngdap}
{gdapa} {dapat }
Hashing
Perhitungan hash adalah sebagai berikut :
𝐼𝑝 = 112 ∗ 7(4) + 108 ∗ 7(3) + 97 ∗ 7(2)
+103 ∗ 7(1) + 105 ∗ 7(0) = 311535
311535 298458 274116 288989 291907 278726
320911 296862 296559 311555 298610 275212
296310 275929 301331 277451 295185 301657
296553 277625 313196 276471 305130 287237
279654 276989 308758 279019 322964 311239
313202 276513 305412 289219 293519 273188
282151 294454 296553 277625 313196 276471
305130 287237 279654
Jumlah Hash : 45
Dokumen b
Plagiarisme adalah mengakui tulisan orang lain sebagai
tulisan sendiri.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
58
Preprocessing
plagiarisme tulis orang tulis
Parsing k-gram
{plagi} {lagia} {agiar} {giari} {iaris} {arism} {risme}
{ismet} {smetu} {metul} {etuli} {tulis}{uliso} {lisor}
{isora} {soran} {orang}{rangt} {angtu} {ngtul} {gtuli}
{tulis}
Hashing
311535 298458 274164 288974 291812 278058
316228 297714 319380 319378 301946 288774
324022 301849 297884 320563 311239 313212
276603 306050 293685 324789
Jumlah Hash : 22
Menghitung Similarity
Hash yang sama dari kedua dokumen berjumlah 3
𝑆 = 2𝑛𝑡
𝑛𝑥 + 𝑛𝑦
𝑆 = 2 ∗ 3
38 + 22∗ 100 = 10 %
Setelah pengujian 1 dilakukan secara manual untuk mengetahui presentase
kemiripannya, pengujian 2 sampai pengujian 5 selanjutnya dilakukan
dengan langkah yang sama. Data hasil lima kali pengujian adalah sebagai
berikut:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
59
Tabel 5.2 Pengujian dua dokumen secara manual
Pengujian Dokumen Jumlah Hash Hash sama Similarity
Pengujian 1 Dokumen a 38
3 10,00 % Dokumen b 22
Pengujian 2 Dokumen c 42
35 90,00 % Dokumen d 35
Pengujian 3 Dokumen e 43
14 35,44 % Dokumen f 34
Pengujian 4 Dokumen g 45
8 20,25 % Dokumen h 34
Pengujian 5 Dokumen i 56
26 52,52 % Dokumen j 43
Dari hasil uji dokumen dengan menggunakan aplikasi pendeteksi
plagiarisme dan secara manual, dapat disimpulkan bahwa sistem mampu
mendeteksi plagiarisme dengan cukup akurat dengan rata-rata selisih
presentase kemiripan adalah 1.63 %.
5.2 Analisa Hasil Uji Coba Pengguna (Pengujian Beta)
Pengujian beta merupakan pengujian oleh pengguna untuk
memvalidasi kegunaan, fungsi, kompatibilitas, dan uji reliabilitas dari
software yang dibuat. Uji coba terhadap pengguna dilakukan dengan
menyebarkan kuesioner kepada 15 orang.
5.2.1 Hasil dan Pembahasan
Hasil jawaban responden kemudian diolah sehingga memperoleh
gambaran sebagai berikut:
5.2.1.1 Pengujian perceived of usefulness
Pernyataan 1: Menggunakan sistem ini dalam pekerjaan
saya memungkinkan saya menyelesaikan
tugas dengan lebih cepat.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
60
Tabel 5.3 Tabel Hasil Kuesioner Pernyataan 1
Jawaban Bobot
(1-5)
Jumlah
Responden Hasil Total
Sangat Setuju 5 3 15 20.00 %
Setuju 4 9 36 60.00 %
Ragu-Ragu 3 3 9 20.00 %
Tidak Setuju 2 0 0 0.00 %
Sangat Tidak Setuju 1 0 0 0.00 %
Total 15 60
NILAI AKHIR (total hasil/total jml
responden 4.00
Gambar 5.6 Grafik Pernyataan 1
Dari perhitungan tabel 5.3 diatas, dapat dianalisa
bahwa secara umum, Aplikasi Pendeteksian Plagiarisme
dalam Karya Tulis Ilmiah dengan Algoritma Rabin Karp ini
memungkinkan untuk membantu pengguna menyelesaikan
tugas dengan cepat, dengan skor 4.00 dari skala 1-5.
0
2
4
6
8
10
Sangat Setuju Setuju Ragu - Ragu Tidak Setuju Sangat TidakSetuju
Grafik Pernyataan 1
Responden
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
61
Pernyataan 2: Menggunakan sistem ini akan
meningkatkan performa kinerja saya.
Tabel 5.4 Tabel Hasil Kuesioner Pernyataan 2
Jawaban Bobot
(1-5)
Jumlah
Responden Hasil Total
Sangat Setuju 5 2 10 13.33 %
Setuju 4 8 32 53.33 %
Ragu-Ragu 3 4 12 26.66 %
Tidak Setuju 2 1 2 6.66 %
Sangat Tidak Setuju 1 0 0 0.00 %
Total 15 56
NILAI AKHIR (total hasil/total jml
responden 3.37
Gambar 5.7 Grafik Pernyataan 2
Dari perhitungan tabel 5.4 diatas, dapat dianalisa
secara umum bahwa pengguna merasa ragu-ragu Aplikasi
Pendeteksian Plagiarisme dalam Karya Tulis Ilmiah dengan
Algoritma Rabin Karp dapat meningkatkan performa kinerja
pengguna dengan skor 3.37 dari skala 1-5.
0
1
2
3
4
5
6
7
8
9
Sangat Setuju Setuju Ragu - Ragu Tidak Setuju Sangat TidakSetuju
Grafik Pernyataan 2
Responden
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
62
Pernyataan 3: Menggunakan sistem ini akan
meningkatkan produktivitas saya.
Tabel 5.5 Tabel Hasil Kuesioner Pernyataan 3
Jawaban Bobot
(1-5)
Jumlah
Responden Hasil Total
Sangat Setuju 5 3 15 20/00 %
Setuju 4 5 20 33.33 %
Ragu-Ragu 3 7 21 46.66 %
Tidak Setuju 2 0 0 0.00 %
Sangat Tidak Setuju 1 0 0 0.00 %
Total 15 56
NILAI AKHIR (total hasil/total jml
responden 3.37
Gambar 5.8 Grafik Pernyataan 3
Dari perhitungan tabel 5.5 diatas, dapat dianalisa
secara umum bahwa pengguna merasa ragu-ragu Aplikasi
Pendeteksian Plagiarisme dalam Karya Tulis Ilmiah dengan
0
1
2
3
4
5
6
7
8
Sangat Setuju Setuju Ragu - Ragu Tidak Setuju Sangat TidakSetuju
Grafik Pernyataan 3
Responden
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
63
Algoritma Rabin Karp dapat meningkatkan produktivitas
pengguna dengan skor 3.37 dari skala 1-5.
Pernyataan 4: Menggunakan sistem ini akan
meningkatkan efektifitas pekerjaan saya.
Tabel 5.6 Tabel Hasil Kuesioner Pernyataan 4
Jawaban Bobot
(1-5)
Jumlah
Responden Hasil Total
Sangat Setuju 5 4 20 26.66 %
Setuju 4 8 32 53.33 %
Ragu-Ragu 3 2 9 13.33 %
Tidak Setuju 2 1 2 6.66 %
Sangat Tidak Setuju 1 0 0 0.00 %
Total 15 63
NILAI AKHIR (total hasil/total jml
responden 4.20
Gambar 5.9 Grafik Pernyataan 4
01
2
34
5
67
8
9
Sangat Setuju Setuju Ragu - Ragu Tidak Setuju Sangat TidakSetuju
Grafik Pernyataan 4
Responden
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
64
Dari perhitungan tabel 5.6 diatas, dapat dianalisa
secara umum bahwa Aplikasi Pendeteksian Plagiarisme
dalam Karya Tulis Ilmiah dengan Algoritma Rabin Karp ini
dapat meningkatkan efektifitas pengguna dalam
menyelesaikan pekerjaan dengan skor 4.20 dari skala 1-5.
Pernyataan 5: Menggunakan sistem ini akan
mempermudah pekerjaan saya.
Tabel 5.7 Tabel Hasil Kuesioner Pernyataan 5
Jawaban Bobot
(1-5)
Jumlah
Responden Hasil Total
Sangat Setuju 5 3 20 20.00 %
Setuju 4 9 32 60.00 %
Ragu-Ragu 3 3 9 20.00 %
Tidak Setuju 2 0 0 0.00 %
Sangat Tidak Setuju 1 0 0 0.00 %
Total 15 61
NILAI AKHIR (total hasil/total jml
responden 4.06
Gambar 5.9 Grafik Pernyataan 5
0
2
4
6
8
10
Sangat Setuju Setuju Ragu-Ragu Tidak Setuju Sangat TidakSetuju
Grafik Pernyataan 5
Responden
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
65
Dari perhitungan tabel 5.7 diatas, dapat dianalisa
secara umum bahwa Aplikasi Pendeteksian Plagiarisme
dalam Karya Tulis Ilmiah dengan Algoritma Rabin Karp ini
dapat mempermudah penggun dalam menyelesaikan
pekerjaan dengan skor 4.06 dari skala 1-5.
Pernyataan 6: Saya merasa sistem ini berguna dan
bermanfaat bagi pekerjaan saya.
Tabel 5.8 Tabel Hasil Kuesioner Pernyataan 6
Jawaban Bobot
(1-5)
Jumlah
Responden Hasil Total
Sangat Setuju 5 5 25 33.33 %
Setuju 4 8 32 53.33 %
Ragu-Ragu 3 2 6 13.33 %
Tidak Setuju 2 0 0 0.00 %
Sangat Tidak Setuju 1 0 0 0.00 %
Total 15 63
NILAI AKHIR (total hasil/total jml
responden 4.20
Gambar 5.10 Grafik Pernyataan 6
0
2
4
6
8
10
SangatSetuju
Setuju Ragu-Ragu Tidak Setuju Sangat TidakSetuju
Grafik Pernyataan 5
Responden
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
66
Dari perhitungan tabel 5.8 diatas, dapat dianalisa
secara umum bahwa Aplikasi Pendeteksian Plagiarisme
dalam Karya Tulis Ilmiah dengan Algoritma Rabin Karp ini
bermanfaat dan berguna bagi pengguna untuk
menyelesaikan pekerjaan dengan skor 4.20 dari skala 1-5.
5.2.1.2 Pengujian perceived ease of use
Pernyataan 1: Sistem ini mudah dipelajari.
Tabel 5.9 Tabel Hasil Kuesioner Pernyataan 1
Jawaban Bobot
(1-5)
Jumlah
Responden Hasil Total
Sangat Setuju 5 5 25 33.33 %
Setuju 4 10 40 66.66 %
Ragu-Ragu 3 0 0 0.00 %
Tidak Setuju 2 0 0 0.00 %
Sangat Tidak Setuju 1 0 0 0.00 %
Total 15 65
NILAI AKHIR (total hasil/total jml
responden 4.33
Gambar 5.11 Grafik Pernyataan 1
0
2
4
6
8
10
12
Sangat Setuju Setuju Ragu-Ragu Tidak Setuju Sangat TidakSetuju
Grafik Pernyataan 1
Responden
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
67
Dari perhitungan tabel 5.9 diatas, dapat dianalisa
secara umum bahwa Aplikasi Pendeteksian Plagiarisme
dalam Karya Tulis Ilmiah dengan Algoritma Rabin Karp ini
mudah dipelajari dengan skor 4.33 dari skala 1-5.
Pernyataan 2: Sistem ini mudah dikendalikan
(mendeteksi, menambah, mengedit, dan
menghapus data)
Tabel 5.10 Tabel Hasil Kuesioner Pernyataan 2
Jawaban Bobot
(1-5)
Jumlah
Responden Hasil Total
Sangat Setuju 5 4 20 26.66 %
Setuju 4 8 32 53.33 %
Ragu-Ragu 3 3 9 20/00 %
Tidak Setuju 2 0 0 0.00 %
Sangat Tidak Setuju 1 0 0 0.00 %
Total 15 61
NILAI AKHIR (total hasil/total jml
responden 4.06
0
2
4
6
8
10
Sangat Setuju Setuju Ragu-Ragu Tidak Setuju Sangat TidakSetuju
Grafik Pernyataan 2
Responden
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
68
Gambar 5.13 Grafik Pernyataan 2
Dari perhitungan tabel 5.10 diatas, dapat dianalisa
secara umum bahwa Aplikasi Pendeteksian Plagiarisme
dalam Karya Tulis Ilmiah dengan Algoritma Rabin Karp ini
mudah dikendalikan dengan skor 4.06 dari skala 1-5.
Pernyataan 3: Sistem ini jelas dan mudah dipahami
Tabel 5.11 Tabel Hasil Kuesioner Pernyataan 3
Jawaban Bobot
(1-5)
Jumlah
Responden Hasil Total
Sangat Setuju 5 4 20 26.66 %
Setuju 4 7 28 46.66 %
Ragu-Ragu 3 4 12 26.66 %
Tidak Setuju 2 0 0 0.00 %
Sangat Tidak Setuju 1 0 0 0.00 %
Total 15 60
NILAI AKHIR (total hasil/total jml
responden 4.00
Gambar 5.14 Grafik Pernyataan 3
0
2
4
6
8
10
Sangat Setuju Setuju Ragu-Ragu Tidak Setuju Sangat TidakSetuju
Grafik Pernyataan 3
Responden
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
69
Dari perhitungan tabel 5.11 diatas, dapat dianalisa
secara umum bahwa Aplikasi Pendeteksian Plagiarisme
dalam Karya Tulis Ilmiah dengan Algoritma Rabin Karp ini
jelas dan mudah dipahami dengan skor 4.00 dari skala 1-5.
Pernyataan 4: Sistem ini memiliki fitur yang lengkap.
Tabel 5.12 Tabel Hasil Kuesioner Pernyataan 4
Jawaban Bobot
(1-5)
Jumlah
Responden Hasil Total
Sangat Setuju 5 5 25 33.33 %
Setuju 4 8 32 53.33 %
Ragu-Ragu 3 2 5 13.33 %
Tidak Setuju 2 0 0 0.00 %
Sangat Tidak Setuju 1 0 0 0.00 %
Total 15 62
NILAI AKHIR (total hasil/total jml
responden 4.13
Gambar 5.15 Grafik Pernyataan 4
Dari perhitungan tabel 5.12 diatas, dapat dianalisa
secara umum bahwa Aplikasi Pendeteksian Plagiarisme
0
2
4
6
8
10
Sangat Setuju Setuju Ragu-Ragu Tidak Setuju Sangat TidakSetuju
Grafik Pernyataan 4
Responden
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
70
dalam Karya Tulis Ilmiah dengan Algoritma Rabin Karp ini
memiliki fitur yang lengkap dengan skor 4.13 dari skala 1-5.
Pernyataan 5: Sistem ini memberikan kemudahan
sehingga saya menjadi mahir dalam satu
atau beberapa fitur yang tersedia.
Tabel 5.13 Tabel Hasil Kuesioner Pernyataan 5
Jawaban Bobot
(1-5)
Jumlah
Responden Hasil Total
Sangat Setuju 5 3 15 20.00 %
Setuju 4 9 36 60.00 %
Ragu-Ragu 3 3 9 20.00 %
Tidak Setuju 2 0 0
Sangat Tidak Setuju 1 0 0
Total 15 60
NILAI AKHIR (total hasil/total jml
responden 4.00
Gambar 5.16 Grafik Pernyataan 5
Dari perhitungan tabel 5.13 diatas, dapat dianalisa
secara umum bahwa Aplikasi Pendeteksian Plagiarisme
0
2
4
6
8
10
Sangat Setuju Setuju Ragu-Ragu Tidak Setuju Sangat TidakSetuju
Grafik Pernyataan 5
Responden
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
71
dalam Karya Tulis Ilmiah dengan Algoritma Rabin Karp ini
memberikan kemudahan dengan skor 4.00 dari skala 1-5.
Pernyataan 6: Sistem ini mudah untuk digunakan.
Tabel 5.16 Tabel Hasil Kuesioner Pernyataan 6
Jawaban Bobot
(1-5)
Jumlah
Responden Hasil Total
Sangat Setuju 5 8 40 53.33 %
Setuju 4 4 16 26.66 %
Ragu-Ragu 3 3 9 20.00 %
Tidak Setuju 2 0 0 0.00 %
Sangat Tidak Setuju 1 0 0 0.00 %
Total 15 65
NILAI AKHIR (total hasil/total jml
responden 4.33
Gambar 5.16 Grafik Pernyataan 6
Dari perhitungan tabel 5.14 diatas, dapat dianalisa
secara umum bahwa Aplikasi Pendeteksian Plagiarisme
0
1
2
3
4
5
6
7
8
9
Sangat Setuju Setuju Ragu-Ragu Tidak Setuju Sangat TidakSetuju
Grafik Pernyataan 6
Responden
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
72
dalam Karya Tulis Ilmiah dengan Algoritma Rabin Karp ini
mudah digunakan dengan skor 4.33 dari skala 1-5.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
73
BAB VI
KESIMPULAN
Pada bab ini berisi kesimpulan yang diambil dari analisa, desain, dan
implementasi serta uji coba yang telah dilakukan. Selain itu bab ini juga berisi saran
yang bermanfaat dalam pengembangan aplikasi di waktu yang akan datang.
6.1 Kesimpulan
1. Aplikasi pendeteksi plagiarisme karya tulis ilmiah dengan metode Rabin
Karp ini telah selesai dibangun dengan bahasa pemrograman java dan
SQL database dan dapat mendeteksi plagiarisme dengan baik.
2. Berdasarkan hasil perbandingan uji coba dengan sistem dan secara
manual, dapat disimpulkan bahwa sistem mampu mendeteksi
plagiarisme dengan cukup akurat dengan rata-rata selisih presentase
kemiripan adalah 1.63 %.
3. Berdasarkan ujicoba yang dilakukan dengan kuisioner terhadap 15
pengguna, didapatkan hasil sebagai berikut:
1. Dalam kaitannya dengan kegunaan (perceived of usefullnes),
sistem ini mampu memberikan beberapa manfaat yaitu
mempercepat pekerjaan, meningkatkan performa penggua,
meningkatkan produktivitas pengguna, meningkatkan efektifitas
pengguna, dan mempermudah pekerjaan dengan nilai rata-rata
3.86 % skala 1-5.
2. Dalam kaitannya dengan kemudahan (perceived ease of use).
Sistem ini mampu memberikan kemudahan berupa kemudahan
mempelajari sistem, sistem yang mudah dikendalikan, sistem
yang jelas dan mudah dipahami, memilifi fitur yang lengkap,
sistem yang memberikan kemudahan, dan sistem yang mudah
untuk digunakan dengan nilai rata-rata 4.14 skala 1-5.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
74
6.2 Saran
1. Sistem dapat dikembangkan menjadi berbasis web.
2. Sistem dapat mendeteksi parafrase atau kutipan dengan atau tidak
menggunakan sumber terkait.
3. Sistem diharapkan dapat mendeteksi persamaan kata atau sinonim.
4. Penelitian dilanjutkan dengan penggunaan metode yang lain untuk
menemukan metode yang lebih baik untuk mendeteksi plagiarisme.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
75
DAFTAR PUSTAKA
Abdeen, Ali.,Rawan.(2011). An Algorithm for String Searching Based on Brute-
Force Algorithm. Intenational Journal of Computer Science and Network
Security, Vol.11 No.7.
Büttcher, Stefan., Clarke, L.A. Charles., Cormack, V. Gordon. (2010) Information
Retrieval Implementing and Evaluating Search Engine. Massachusetts:
MIT Press.
Jain, Shivani., Rao, Nersimha, A.L., Agarwal, Pankaj. A Relative Study of Pattern
Matching Algorithm. Journal of Computing Technologies. Vol.2 Issue 1.
KBBI. 1997: 775.
Ludwig JA, Reynold JF. (1988). Statisyical Ecology: A Primer on Methods and
Computing. New York: John Wiley and Sons Inc.
Lesmana, David Indra. (2012). Sistem Penilaian Otomatis Pada Jawaban Ujian
Berbentuk Esai Menggunakan Metode Rabin Karp. Tugas Akhir. Malang:
Universitas Islam Negeri Maulana Malik Ibrahim Malang.
Manning, Christoper D., Raghavan, Prabhakar., Schütze, Hinrich. (2008).
Introduction to Information Retrieval. New York: Cambridge University
Press.
Mitra, Sushmita., Acharya, Tinku. (2003). Data Mining Multimedia, Soft
Computing, and Bioinformatics. United State of America. A John Wiley &
Sons Inc.
Mujahidin, Zainal. (2013). Implementasi Metode Rabin Karp untuk Mendeteksi
Tingkat Kesamaan Dua Dokumen. Tugas Akhir. Riau: Universitas Islam
Negeri Sultan Syarif Kasim Pekanbaru.
Sulianta, F. (2007). Seri referensi praktis: Konten internet, 71-72. Diunduh dari
http://books.google.com/books?isbn=9792717889.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
76
Utorodewo, Felicia, dkk. (2007). Bahasa Indonesia: Sebuah Pengantar Penulisan
Ilmiah. Jakarta. Lembaga Penerbit FEUI.
Zeil, Steven J. (2014) Hashing. https://www.cs.odu.edu/~zeil/cs361/f16 /Public/
hash/index.html. Diakses tanggal 7 Maret 2017.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
77
LAMPIRAN
Form Kuisioner:
ANGKET PENDETEKSIAN PLAGIAT
Inisial:
Petunjuk:
a. Bacalah pertanyaan atau pernyataan berikut dengan teliti. Kemudian
tentukan pilihan 1 sampai 5, dengan keterangan pilihan sebagai berikut:
• SS = Sangat Setuju
• S = Setuju
• RR = Ragu-Ragu
• TS = Tidak Setuju
• STS = Sangat Tidak Setuju
b. Berilah tanda centang (√) pada alternative jawaban yang kamu pilih di
tempat yang tersedia, contoh:
Pernyataan Pilihan Jawaban
SS S RR TS STS
Aplikasi ini efektif/tepat
guna sebagai alat/sarana
untuk mendeteksi plagiarisme
SELAMAT MENGERJAKAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
78
No Pernyataan Jawaban
SS S RR TS STS
1 Menggunakan sistem ini
dalam pekerjaan saya
memungkinkan saya
menyelesaikan tugas
dengan lebih cepat.
2 Menggunakan sistem ini
akan meningkatkan
performa kinerja saya.
3 Menggunakan sistem ini
akan meningkatkan
produktivitas saya.
4 Menggunakan sistem ini
akan meningkatkan
efektifitas pekerjaan saya
5 Menggunakan sistem ini
akan mempermudah
pekerjaan saya
6 Saya merasa sistem ini
berguna dan bermanfaat
bagi pekerjaan saya
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
79
No Pernyataan Jawaban
SS S RR TS STS
1 Sistem ini mudah
dipelajari
2 Sistem ini mudah
dikendalikan
(mendeteksi, menambah,
mengedit, dan
menghapus data)
3 Sistem ini jelas dan
mudah dipahami
4 Sistem ini memiliki fitur
yang lengkap
5 Sistem ini memberikan
kemudahan sehingga
saya menjadi mahir
dalam satu atau beberapa
fitur yang tersedia
6 Sistem ini mudah untuk
digunakan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Top Related