i
PERANCANGAN PROGRAM APLIKASI PENDETEKSIAN
PLAGIARISME DOKUMEN BERBASIS TEKS MENGGUNAKAN
ALGORITMA RABIN-KARP
SKRIPSI
oleh
Steven
0800750546
PROGRAM GANDA
TEKNIK INFORMATIKA DAN MATEMATIKA
UNIVERSITAS BINA NUSANTARA
JAKARTA
2009
ii
PERANCANGAN PROGRAM APLIKASI PENDETEKSIAN
PLAGIARISME DOKUMEN BERBASIS TEKS MENGGUNAKAN
ALGORITMA RABIN-KARP
SKRIPSI
diajukan sebagai salah satu syarat
untuk gelar kesarjanaan pada
Program Ganda
Jenjang Pendidikan Strata 1
oleh
Steven
0800750546
PROGRAM GANDA
TEKNIK INFORMATIKA DAN MATEMATIKA
UNIVERSITAS BINA NUSANTARA
JAKARTA
2009
vi
KATA PENGANTAR
Puji syukur kepada Tuhan Yang Maha Esa atas berkat dan rahmat-Nya sehingga skripsi yang berjudul “Perancangan Program Aplikasi Pendeteksian Plagiarisme Dokumen Berbasis Teks Menggunakan Algoritma Rabin-Karp” ini dapat diselesaikan dengan baik dan tepat pada waktunya.
Penulis menyadari sepenuhnya dalam penulisan skripsi ini masih terdapat kekurangan dan kelemahan. Oleh karena itu, penulis mengharapkan kritik, saran, masukan, dan tanggapan dari pembaca yang sifatnya membangun.
Atas segala bimbingan, bantuan, dorongan, serta kesempatan bagi penulis untuk menyelesaikan skripsi ini, perkenankanlah penulis untuk mengucapkan terima kasih yang sebesar-besarnya kepada:
1. Bapak Prof. Dr. Gerardus Polla, M.App.Sc., selaku Rektor Universitas Bina Nusantara, yang telah memberikan kesempatan kepada penulis untuk membuat penulisan laporan skripsi ini.
2. Bapak Ramir Santos Austria, MAEd., selaku Ketua Jurusan Matematika Universitas Bina Nusantara, atas perhatian, pertolongan, dan pengajaran yang telah diberikan selama ini.
3. Bapak Rojali, S.Si., selaku Sekretaris Jurusan Matematika Universitas Bina Nusantara, atas perhatian, pertolongan, dan pengajaran yang telah diberikan selama ini.
4. Bapak Fredy Purnomo, S.Kom, M.Kom., selaku Ketua Jurusan Teknik Informatika Universitas Bina Nusantara, atas perhatian dan pertolongan yang telah diberikan selama ini.
5. Ibu Henny Surya Ningsih, S.Kom., MSoftSysEng, selaku Sekretaris Jurusan Teknik Informatika Universitas Bina Nusantara, atas perhatian dan pertolongan yang telah diberikan selama ini.
6. Bapak Don Tasman, S. Mia., SE, S.Si., MM, selaku Dosen Pembimbing kesatu, yang telah banyak memberikan bantuan dan bimbingan selama masa penyusunan skripsi ini, serta atas pengertian dan kesabarannya sehingga memudahkan skripsi ini terselesaikan tepat pada waktunya.
7. Bapak Syaeful Karim, Ir., M.Sc., selaku Dosen Pembimbing kedua, yang telah banyak memberikan bantuan dan bimbingan selama masa penyusunan skripsi ini, serta atas kesediaannya untuk meluangkan waktunya sehingga skripsi ini dapat terselesaikan tepat pada waktunya.
8. Bapak Drs. Ngarap Imanuel Manik, M.Kom. yang telah banyak memberikan masukan, bantuan, serta bimbingan selama penyusunan proposal skripsi.
9. Seluruh dosen Universitas Bina Nusantara, yang selama ini telah memberikan ilmu dan bimbingan akademis kepada penulis dari awal hingga akhir perkuliahan.
10. Bapak Dax Dipo Panji Ramadani, M.Eng, selaku Operation Manager BINUS International, atas kesempatan yang diberikan kepada penulis untuk membuat skripsi di BINUS International.
vii
11. Bapak Diyurman Gea, selaku pimpinan IT BINUS International, atas kesempatan yang diberikan kepada penulis untuk membuat skripsi di BINUS International. 12. Bapak Karto Iskandar S.Kom., Ak., MM, atas bantuan serta pertolongan yang
telah diberikan selama ini.
13. Keluarga penulis, atas doa, kasih sayang, kesabaran, dan dukungan yang diberikan kepada penulis selama masa penyusunan skripsi ini.
14. Derry Suryaatmaja S.Kom., yang telah banyak memberikan arahan dan masukan yang berharga selama penulisan skripsi ini.
15. Selvia, yang telah memberikan masukan-masukan yang sangat berarti dalam penulisan skripsi ini.
16. Teman-teman jurusan Ganda Teknik Informatika-Matematika angkatan 2004 atas dukungan dan bantuan yang diberikan kepada penulis selama ini.
17. Pihak-pihak lain yang tidak dapat penulis sebutkan satu-persatu yang telah memberikan nasehat, bantuan, dan dukungan dalam penyelesaian skripsi ini. Akhir kata, penulis berharap semoga skripsi ini dapat bermanfaat bagi semua pihak yang bersangkutan, khususnya pihak institusi BINUS International selaku pengguna aplikasi ini.
Jakarta, 14 Januari 2008 Penulis
Steven _ 0800750546
viii
DAFTAR ISI
Halaman Judul Luar... i
Halaman Judul Dalam... ii
Lembar Persetujuan Hard Cover... iii
Lembar Pernyataan Dewan Penguji... iv
Abstrak... v
Kata Pengantar... vi
Daftar Isi...viii
Daftar Tabel... xi
Daftar Gambar... xii
Daftar Lampiran...xiv
BAB 1 PENDAHULUAN ... 1
1.1 Latar Belakang Masalah...1
1.2 Ruang Lingkup...2
1.3 Tujuan dan Manfaat ...3
1.3.1 Tujuan ...3
1.3.2 Manfaat ...3
1.4 Metodologi Penelitian ...4
1.4.1 Studi pustaka ...4
1.4.2 Studi Lapangan ...5
1.4.3 Analisis dan perancangan...5
1.5 Sistematika Penulisan ...5
BAB 2LANDASAN TEORI ...7
2.1 Plagiarisme...7
2.2 Fungsi Hash ...9
2.2.1 ASCII...10
2.2.2 Rolling hash ...10
2.2.3 Kriteria Fungsi Hash...12
2.3 Algoritma Rabin-Karp ...13
2.4 Dasar Rekayasa Perangkat Lunak...17
2.4.1 Daur Hidup Perangkat Lunak ...17
2.5 Unified Modeling Language (UML) ...20
2.5.1 Use Case Diagram ...20
2.5.2 Sequence Diagram ...21
2.5.3 Activity Diagram ...22
2.6 Pseudocode ...23
2.7 Interaksi Manusia dan Komputer...23
2.7.1 Program Interaktif ...24
2.7.2 Pedoman Perancangan Antarmuka ...24
BAB 3PERANCANGAN PROGRAM ...26
ix
3.1.1 Masalah yang Dihadapi...26
3.1.2 Usulan Pemecahan Masalah...26
3.2 Perancangan Program ...27
3.2.1 Perancangan Aplikasi dengan UML (Unified Modelling Language)...27
A. Use Case Diagram ...27
B. Sequence Diagram ...29 C. Activity Diagram ...32 3.2.2 Perancangan Database...34 A. Tabel msbackenduser...34 B. Tabel msstudent ...35 C. Tabel mslecturer...35 D. Tabel tbfac ...35 E. Tabel tbdept ...36 F. Tabel tbsubject ...36 G. Tabel trstudentclass...36 H. Tabel trlecturerclass ...36 I. Tabel trstudentdoc...37 J. Tabel trplagiat ...37 K. Tabel documents ...38 L. Tabel text ...38 3.2.3 Perancangan Menu...39
A. Struktur Menu Aplikasi Twins-Finder...39
B. Struktur Menu Aplikasi Twins-Finder Back-End ...39
3.2.4 Rancangan Layar...40
A. Rancangan layar tampilan utama ...40
B. Rancangan layar artikel...41
C. Rancangan layar mencari dan menampilkan data...42
D. Rancangan layar menambah atau mengubah data ...43
3.3 Pseudocode ...44
BAB 4IMPLEMENTASI DAN EVALUASI PROGRAM ...46
4.1 Spesifikasi Perangkat Keras...46
4.2 Spesifikasi Perangkat Lunak...46
4.3 Instalasi Aplikasi...47
4.4 Pengoperasian Aplikasi Twins-Finder Back-End ...47
4.4.1 Halaman Home...47
4.4.2 Halaman Mengubah Password ...49
4.4.3 Halaman Konfigurasi Umum ...49
4.4.4 Halaman Pengaturan ...50
4.4.5 Halaman Pengaturan Fakultas...51
4.4.6 Halaman Pengaturan Jurusan ...53
4.4.7 Halaman Pengaturan Mata Kuliah ...55
4.4.8 Halaman Pengaturan Pemakai ...57
4.4.9 Halaman Pengaturan Pemakai Back-End ...58
4.4.10 Halaman Pengaturan Dosen ...61
x
4.4.12 Halaman Pengaturan Dokumen ...69
4.4.13 Halaman Petunjuk ...70
4.4.14 Halaman Pengembang Aplikasi ...71
4.4.15 Halaman Sitemap ...72
4.5 Pengoperasian Aplikasi Twins-Finder ...73
4.5.1 Halaman Home...73
4.5.2 Halaman Mengubah Password ...75
4.5.3 Halaman Pengaturan Dokumen ...75
4.5.4 Halaman Laporan...80
4.5.5 Halaman Petunjuk ...83
4.5.6 Halaman Pengembang Aplikasi ...84
4.5.7 Halaman Sitemap ...85
4.6 Kelebihan dan Kelemahan Aplikasi...86
BAB 5 KESIMPULAN DAN SARAN... 88
5.1 Kesimpulan ...88 5.2 Saran ...88 DAFTAR PUSTAKA... 90 RIWAYAT HIDUP... 92 LAMPIRAN... 93 SURAT SURVEI... ... 94
xi
DAFTAR TABEL
Tabel 3.1 Tabel msbackenduser... 34
Tabel 3.2 Tabel msstudent... 35
Tabel 3.3 Tabel mslecturer...35
Tabel 3.4 Tabel tbfac... 35
Tabel 3.5 Tabel tbdept... 36
Tabel 3.6 Tabel tbsubject... 36
Tabel 3.7 Tabel tbdept... 36
Tabel 3.8 Tabel trlecturerclass... 37
Tabel 3.9 Tabel trstudentdoc... 37
Tabel 3.10 Tabel trplagiat... 38
Tabel 3.11 Tabel documents... 38
xii
DAFTAR GAMBAR
Gambar 2.1 Model Proses Waterfall...18
Gambar 2.2 Notasi use case diagram... 21
Gambar 2.3 Notasi sequence diagram... 22
Gambar 2.4 Notasi activity diagram... 22
Gambar 3.1 Use Case Diagram Aplikasi Twins-Finder... 28
Gambar 3.2 Use Case Diagram Aplikasi Twins-Finder Back-End... 29
Gambar 3.3 Sequence Diagram Login Dosen dan Pemakai Back-End... 30
Gambar 3.4 Sequence Diagram Mengubah Password Dosen dan Pemakai Back-End... 30
Gambar 3.5 Sequence Diagram Menambah/Mengubah data untuk Dosen dan Pemakai Back-End... 31
Gambar 3.6 Sequence Diagram Mengupload Dokumen... 31
Gambar 3.7 Sequence Diagram Menganalisis Dokumen untuk Dosen dan Pemakai Back-End... 32
Gambar 3.8 Sequence Diagram Menampilkan histori plagiarisme untuk Pemakai Back-End... 32
Gambar 3.9 Activity Diagram Pendataan Item... 33
Gambar 3.10 Activity Diagram Pendataan Dokumen... 33
Gambar 3.11 Activity Diagram Analisis Dokumen... 34
Gambar 3.12 Struktur Menu Aplikasi Twins-Finder... 39
Gambar 3.13 Struktur Menu Aplikasi Twins-Finder Back-End... 39
Gambar 3.14 Rancangan Layar Tampilan Utama... 41
Gambar 3.15 Rancangan Layar Artikel... 42
Gambar 3.16 Rancangan Layar Mencari dan Menampilkan Data... 43
Gambar 3.17 Rancangan Layar Menambah atau Mengubah Data... 44
Gambar 4.1 Halaman Home Sebelum Login... 48
Gambar 4.2 Halaman Home Setelah Login... 48
Gambar 4.3 Halaman Mengubah Password... 49
Gambar 4.4 Halaman Konfigurasi Umum... 50
Gambar 4.5 Halaman Pengaturan... 51
Gambar 4.6 Halaman Menampilkan dan Menghapus Fakultas... 52
Gambar 4.7 Halaman Menambah Fakultas...53
Gambar 4.8 Halaman Menampilkan dan Menghapus Jurusan... 54
Gambar 4.9 Halaman Menambah Jurusan... 55
Gambar 4.10 Halaman Menampilkan dan Menghapus Mata Kuliah... 56
Gambar 4.11 Halaman Menambah Mata Kuliah... 57
Gambar 4.12 Halaman Pengaturan Pemakai... 58
Gambar 4.13 Halaman Menampilkan dan Menghapus Pemakai Back-End... 59
Gambar 4.14 Halaman Menambah Pemakai Back-End... 60
Gambar 4.15 Halaman Mengubah Pemakai Back-End... 61
Gambar 4.16 Halaman Menampilkan dan Menghapus Dosen... 62
Gambar 4.17 Halaman Menambah Dosen... 63
xiii
Gambar 4.19 Halaman Menambah dan Menghapus Mata Kuliah Dosen... 65
Gambar 4.20 Halaman Menampilkan dan Menghapus Mahasiswa... 66
Gambar 4.21 Halaman Menambah Mahasiswa... 67
Gambar 4.22 Halaman Mengubah Mahasiswa... 68
Gambar 4.23 Halaman Menambah dan Menghapus Mata Kuliah Mahasiswa... 69
Gambar 4.24 Halaman Menampilkan dan Menghapus Tugas Mahasiswa... 70
Gambar 4.25 Halaman Petunjuk... 71
Gambar 4.26 Halaman Pengembang Aplikasi... 72
Gambar 4.27 Halaman Sitemap... 73
Gambar 4.28 Halaman Home Sebelum Login... 74
Gambar 4.29 Halaman Home Setelah Login... 74
Gambar 4.30 Halaman Mengubah Password... 75
Gambar 4.31 Halaman Menambah dan Menghapus Tugas Mahasiswa... 76
Gambar 4.32 Halaman Mengupload Tugas Mahasiswa... 77
Gambar 4.33 Halaman Menambah dan Menghapus Dokumen Mahasiswa... 78
Gambar 4.34 Halaman Menetapkan Dokumen Master... 79
Gambar 4.35 Halaman Memilih Dokumen yang Akan Dibandingkan... 80
Gambar 4.36 Halaman Laporan... 81
Gambar 4.37 Halaman Persentasi Plagiarisme... 82
Gambar 4.38 Halaman History Plagiarisme... 83
Gambar 4.39 Halaman Petunjuk... 84
Gambar 4.40 Halaman Pengembang Aplikasi... 85
xiv