BAB 3 PERANCANGAN PROGRAM
3.1
Perumusan Masalah 3.1.1
Masalah yang Dihadapi Berdasarkan hasil wawancara, dapat disimpulkan bahwa masalah yang
saat ini dihadapi oleh BINUS International adalah sebagai berikut. a.
Seiring dengan
semakin
berkembangnya teknologi,
kecenderungan
mahasiswa/mahasiswi untuk melakukan praktek plagiarisme semakin meningkat pula. b.
Untuk memeriksa tugas mahasiswa/mahasiswi, terutama tugas dalam bentuk esai, diperlukan waktu yang cukup lama, sehingga waktu pengumpulan nilai tugas dari dosen seringkali mengalami keterlambatan.
c.
Untuk memeriksa tugas mahasiswa/mahasiswi saat ini, digunakan jasa langganan untuk pemeriksaan plagiarisme pada situs www.turnitin.com dengan biaya yang cukup besar tiap tahunnya.
3.1.2
Usulan Pemecahan Masalah Untuk memecahkan masalah yang dihadapi BINUS International,
dibuatlah suatu aplikasi pendeteksian plagiarisme berbasis web dengan menggunakan database sebagai sarana penyimpanan dan pengumpulan data. Aplikasi ini dapat membandingkan tingkat kemiripan dokumen-dokumen teks yang didata oleh pemakai dengan menetapkan sebuah dokumen sebagai
2 acuan dan membandingkannya dengan dokumen-dokumen lain. Persentase kemiripan dari dokumen-dokumen tersebut akan ditampilkan setelah proses pencocokan selesai dilakukan. Selain itu, pemakai dapat melihat histori plagiarisme pada tahun-tahun sebelumnya.
3.2
Perancangan Program
3.2.1
Perancangan Aplikasi dengan UML (Unified Modelling Language) Perancangan aplikasi dibangun menggunakan konsep-konsep pemodelan
UML. Diagram-diagram yang dipakai antara lain Use Case Diagram, Sequence Diagram, dan Activity Diagram.
A. Use Case Diagram Use case diagram menggambarkan semua actor dan use case yang berhubungan dengan aplikasi.
3
Gambar 3.1 U se Case Diagram Aplikasi Twins-Finder
4
Aplikasi Twins Finder Back-End Manage Back-End User * Login *
* Change Password
**
*
* *
****
****
***
Change Settings * *
Super admin
** ** *
Manage Faculty * *
Admin
Manage Deparment
*
*
*
Manage Subject *
*
Manage Lecturer *
*
Manage Student *
* Manage Files
Gambar 3.2 U se Case Diagram Aplikasi Twins-Finder Back-End
B. Sequence Diagram Sequence Diagram menggambarkan penyampaian pesan dan waktu penyampaian pesan antarsatu objek dengan objek lainnya.
5
Gambar 3.3 Sequence Diagram Login Dosen dan Pemakai Back-End
Gambar 3.4 Sequence Diagram Mengubah Password Dosen dan Pemakai Back-End
6
Gambar 3.5 Sequence Diagram Menambah/Mengubah data untuk Dosen dan Pemakai Back-End
Gambar 3.6 Sequence Diagram Mengupload Dokumen
7
Gambar 3.7 Sequence Diagram Menganalisis Dokumen untuk Dosen dan Pemakai Back-End
Gambar 3.8 Sequence Diagram Menampilkan histori plagiarisme untuk Pemakai Back-End
C. Activity Diagram Activity Diagram menggambarkan aliran dari aktivitas satu ke aktivitas lainnya di dalam suatu sistem.
8
Gambar 3.9 Activity Diagram Pendataan Item
Gambar 3.10 Activity Diagram Pendataan Dokumen
9
Gambar 3.11 Activity Diagram Analisis Dokumen
3.2.2
Perancangan Database Database terdiri dari 12 tabel sebagai berikut.
A. Tabel msbackenduser Tabel ini digunakan untuk menampung data pemakai tipe administrator.
Nama field UserID Password Name Userrole Stsrc Tglpr Tglup Usrin Usrup
Tabel 3.1 Tabel msbackenduser Tipe Data Keterangan varchar(20) PK, Nama login pemakai varchar(50) Password pemakai varchar(50) Nama pemakai char(1) Status pemakai, 1=Super admin, 2=admin char(1) Status record datetime Tanggal pembuatan datetime Tanggal perbaikan varchar(20) Pemakai yang menginput varchar(20) Pemakai yang mengubah
10 B. Tabel msstudent Tabel ini digunakan untuk menampung data mahasiswa.
Nama field Nimhs Nmmhs Kdfak Kdjur Thang Stsrc Tglpr Tglup Usrin Usrup
Tabel 3.2 Tabel msstudent Tipe Data Keterangan char(10) PK, Nomor induk mahasiswa varchar(100) Nama mahasiswa char(2) FK, Kode fakultas mahaiswa char(2) FK, Kode jurusan mahasiswa char(4) Tahun angkatan char(1) Status record datetime Tanggal pembuatan datetime Tanggal perbaikan varchar(20) Pemakai yang menginput varchar(20) Pemakai yang mengubah
C. Tabel mslecturer Tabel ini digunakan untuk menampung data dosen.
Nama field Kddsn Nmdsn Password Stsrc Tglpr Tglup Usrin Usrup
Tabel 3.3 Tabel mslecturer Tipe Data Keterangan char(5) PK, Kode dosen varchar(100) Nama dosen varchar(50) Password dosen char(1) Status record datetime Tanggal pembuatan datetime Tanggal perbaikan varchar(20) Pemakai yang menginput varchar(20) Pemakai yang mengubah
D. Tabel tbfac Tabel ini digunakan untuk menampung data fakultas.
Nama field Kdfak Nmfak
Tabel 3.4 Tabel tbfac Tipe Data Keterangan char(2) PK, Kode fakultas varchar(100) Nama fakultas
11 E. Tabel tbdept Tabel ini digunakan untuk menampung data jurusan.
Nama field Kdjur Nmjur Kdfak
Tabel 3.5 Tabel tbdept Tipe Data Keterangan char(2) PK, Kode jurusan varchar(100) Nama jurusan char(2) Kode fakultas
F. Tabel tbsubject Tabel ini digunakan untuk menampung data matakuliah yang tersedia.
Nama field Kdmtk Nmmtk
Tabel 3.6 Tabel tbsubject Tipe Data Keterangan char(5) PK, Kode mata kuliah varchar(100) Nama mata kuliah
G. Tabel trstudentclass Tabel ini digunakan untuk menampung data kelas mahasiswa.
Nama field Priod Kdsem Nimhs Kelas Kdmtk Stsrc Tglpr Tglup Usrin Usrup
Tabel 3.7 Tabel tbdept Tipe Data Keterangan char(4) PK, Periode char(2) PK, Kode semester char(10) PK, Nomor induk mahasiswa char(5) PK, Kelas char(5) PK, Kode mata kuliah char(1) Status record datetime Tanggal pembuatan datetime Tanggal perbaikan varchar(20) Pemakai yang menginput varchar(20) Pemakai yang mengubah
H. Tabel trlecturerclass Tabel ini digunakan untuk menampung data kelas yang diajar dosen.
12
Nama field Priod Kdsem Kddsn Kelas Kdmtk Stsrc Tglpr Tglup Usrin Usrup
Tabel 3.8 Tabel trlecturerclass Tipe Data Keterangan char(4) PK, Periode char(2) PK, Kode semester char(5) PK, Kode dosen char(5) PK, Kelas char(5) PK, Kode mata kuliah char(1) Status record datetime Tanggal pembuatan datetime Tanggal perbaikan varchar(20) Pemakai yang menginput varchar(20) Pemakai yang mengubah
I. Tabel trstudentdoc Tabel ini digunakan untuk menampung data dokumen-dokumen mahasiswa. Tabel 3.9 Tabel trstudentdoc Nama field Priod Kdsem Kelas Kdmtk Kddsn Kdtugas Nimhs Fiilename st src tglpr tglup usrin usrup
Tipe Data char(4) char(2) char(5) char(5) char(5) varchar(100) char(10) varchar(100) char(1) datetime datetime varchar(50) varchar(50)
Keterangan PK, Periode PK, Kode Semester PK, Kelas PK, Kode Mata Kuliah PK, Kode Dosen PK, Kode tugas PK, Nimhs Nama file Status record Tanggal pembuatan Tanggal perbaikan Pemakai yang menginput Pemakai yang mengubah
J. Tabel trplagiat Tabel ini digunakan untuk menampung data tingkat plagiarisme mahasiswa setelah proses pencocokan dilakukan terhadap dokumen-dokumen lain.
13 Tabel 3.10 Tabel trplagiat Nama field Priod Kdsem Thang Nimhs Kdfak Kdjur Kelas Kdmtk Kddsn Kdtugas Percent st src tglpr tglup usrin usrup
Tipe Data char(4) char(2) char(4) char(10) char(2) char(2) char(5) char(5) char(5) varchar(100) decimal char(1) datetime datetime varchar(20) varchar(20)
Keterangan PK, Periode PK, Semester Tahun angkatan PK, Nomor induk mahasiswa FK, Kode fakultas mahaiswa FK, Kode jurusan mahasiswa Kelas PK, Kode mata kuliah PK, Kode dosen PK, Kode tugas Persentasi plagiarisme Status record Tanggal pembuatan Tanggal perbaikan Pemakai yang menginput Pemakai yang mengubah
K. Tabel documents Tabel ini merupakan tabel sementara yang digunakan untuk menampung dokumen-dokumen mahasiswa yang telah diupload. Tabel 3.11 Tabel documents Nama field Id Filename Kdtugas Filename2 Author
Tipe Data int text varchar(100) varchar(100) text
Keterangan PK, Kode dokumen Nama dokumen Kode tugas Kode dokumen Nama pembuat
L. Tabel text Tabel ini merupakan tabel sementara yang digunakan untuk menampung isi dari dokumen-dokumen mahasiswa yang telah diupload. Tabel 3.12 Tabel text Nama field Id Hash Id_doc Id_para Id_phrase
Tipe Data int int int int int
Keterangan PK, Kode teks Nilai hash dari teks Kode dokumen Kode paragraf Kode frasa
14 3.2.3
Perancangan Menu
A. S truktur Menu Aplikasi Twins-Finder
Gambar 3.12 S truktur Menu Aplikasi Twins-Finder
B. S truktur Menu Aplikasi Twins-Finder Back-End
Gambar 3.13 S truktur Menu Aplikasi Twins-Finder Back-End
15 3.2.4
Rancangan Layar Berikut ini adalah rancangan layar dari aplikasi.
A. Rancangan layar tampilan utama Rancangan layar tampilan utama merupakan rancangan dasar dari isi aplikasi secara keseluruhan. Rancangan layar dari tampilan utama aplikasi terdiri.atas enam komponen utama. a. Header Pada bagian header, terdapat nama program dan navigasi tambahan, waktu aplikasi dijalankan, serta banner. b. M enu Pada bagian menu, ditampilkan semua link navigasi yang tersedia. c. Isi M enu Pada bagian isi menu, ditampilkan isi dari halaman. Pemakai dapat mengakses informasi yang dibutuhkan pada bagian ini, seperti melihat data, memasukkan data, dan lain-lain. d. Form Login Pada bagian form login, terdapat kotak-kotak isian bagi pemakai untuk dapat masuk ke dalam aplikasi utama. Setelah berhasil melakukan login, isi dari form login akan diganti menjadi ucapan salam kepada pemakai yang sedang aktif. e. Sub M enu Pada bagian sub menu, ditampilkan navigasi ke sub-sub menu yang tersedia untuk menu yang sedang aktif.
16 f.
Footer Pada bagian footer terdapat tahun pembuatan situs.
Gambar 3.14 Rancangan layar tampilan utama
B. Rancangan layar artikel Rancangan layar artikel merupakan rancangan untuk isi dari menu yang berisi artikel.
17
Gambar 3.15 Rancangan layar artikel
C. Rancangan layar mencari dan menampilkan data Rancangan layar mencari dan menampilkan data merupakan rancangan yang digunakan pada saat pemakai mencari dan menampilkan data. Pada bagian ini juga terdapat fasilitas untuk menghapus data yang tersedia.
18
Gambar 3.16 Rancangan layar mencari dan menampilkan data
D. Rancangan layar menambah atau mengubah data Rancangan layar menambah atau mengubah data merupakan rancangan layar yang digunakan pada saat melakukan penambahan atau pengubahan data.
19
Gambar 3.17 Rancangan layar menambah atau mengubah data
3.3
Pseudocode Langkah-langkah yang digunakan dalam modul-modul aplikasi ini adalah sebagai berikut. M odul Halaman_Utama Begin Tampil Halaman_Utama Klik menu Home untuk masuk ke halaman utama Klik menu Help untuk masuk ke halaman petunjuk Klik menu About untuk masuk ke halaman pengembang aplikasi Klik tombol Login untuk masuk ke dalam aplikasi utama End M odul Login Begin Isi Username Isi Password Set HashPassword = Encrypt(Password) Validasi ketersediaan pemakai Jika pemakai ada, masuk ke Halaman_Utama_Setelah_Login Jika tidak ada, gagal login End
20
M odul Tampil_Data Begin M asukkan kriteria pencarian data Tampilkan data sesuai kriteria pencarian End M odul Tambah_Ubah_Data Begin M asukkan detail data Tekan tombol Save untuk menyimpan data Tekan tombol Reset untuk membatalkan perubahan data Tekan tombol Cancel untuk kembali ke halaman sebelumnya End M odul Tambah_Ubah_Data_Kriteria Begin Pilih kriteria input data M asukkan detail data Tekan tombol Save untuk menyimpan data Tekan tombol Reset untuk membatalkan perubahan data Tekan tombol Cancel untuk kembali ke halaman sebelumnya End M odul M embandingkan_Dokumen Begin Ambil nilai hash dari tabel hash pada dokumen master Ulangi untuk setiap dokumen yang dibandingkan Begin Ambil nilai hash dari tabel hash berdasarkan kode dokumen yang akan dibandingkan Ulangi selama masih ada nilai hash yang sama Begin Bandingkan nilai hash dari dokumen master dengan dokumen yang dibandingkan Jika nilai hash sama, tambah persentase kemiripan End End End