PENGEMBANGAN SISTEM PENGECEKAN FORMAT SKRIPSI … · penulisan skripsi. Dosen dan mahasiswa harus...
Transcript of PENGEMBANGAN SISTEM PENGECEKAN FORMAT SKRIPSI … · penulisan skripsi. Dosen dan mahasiswa harus...
PENGEMBANGAN SISTEM PENGECEKAN FORMAT
SKRIPSI DAN EJAAN BAHASA INDONESIA
OTRI DELVI
DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
INSTITUT PERTANIAN BOGOR
BOGOR
2012
ABSTRACT
OTRI DELVI. System Development for checking thesis format and Indonesian spelling.
Supervised by MUSHTHOFA.
One of the requirements for an undergraduate degree at Bogor Agricultural University is that every student is required to write the thesis of in a form scientific paper using a predefined format.
Currently, Bogor Agricultural University designed a new format of thesis writing. A system is
needed to provide a thesis template and check the thesis according to the defined format to
simplify the task of the student in writing the thesis and to ease the burden of the lecturers in
examining the students writing. This research creates a Microsoft Office Word add-in that has
three main functions: Generate New Thesis Template, Spell Checking, and Format Check. The
Generate New Template function can give a new example of a thesis, user can add their need to
write on the template’s file. The Spell Checking process uses Kamus Besar Bahasa Indonesia
database to check the spelling of the thesis. The system marks any spelling or format error using
the Microsoft Office Word comments. After that, the user can choose to correct or ignore the
comments. This add-in application has two advantages, firstly it can simplify and shorten the student’s time for checking the format and spelling; secondly it can ease the burden of the lecturer
in examining the students writing. The running time for the Spell Checking process is 20.08
seconds for 5000 words of thesis, and the Format Checking is 1.16 seconds for 20 pages of thesis.
Keyword : Add-ins, Spell Check, Template, Thesis Correction,VSTO.
PENGEMBANGAN SISTEM PENGECEKAN FORMAT
SKRIPSI DAN EJAAN BAHASA INDONESIA
OTRI DELVI
Skripsi
sebagai salah satu syarat untuk memperoleh gelar
Sarjana Komputer pada
Departemen Ilmu Komputer
DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
INSTITUT PERTANIAN BOGOR
BOGOR
2012
Judul Skripsi : Pengembangan Sistem Pengecekan Format Skripsi dan Ejaan Bahasa Indonesia
Nama : Otri Delvi
NIM : G64070086
Menyetujui:
Pembimbing,
Mushthofa, S.Kom, M.Sc NIP. 19820325 300912 1 003
Mengetahui:
Ketua Departemen Ilmu Komputer,
Dr. Ir. Agus Buono, M.Si, M.Kom
NIP. 19660702 199302 1 001
Tanggal Lulus:
RIWAYAT HIDUP
Penulis dilahirkan di Lintau Buo, Sumatera Barat pada tanggal 12 Oktober 1989 dari
pasangan Bapak Yufrizal dan Ibu Arnida. Penulis adalah putra pertama dari tiga bersaudara.
Penulis lulus dari Sekolah Menengah Atas (SMA) Negeri 1 Padang Panjang pada tahun 2007 dan
pada tahun yang sama diterima sebagai mahasiswa Institut Pertanian Bogor melalui jalur Seleksi
Penerimaan Mahasiswa Baru (SPMB).
Selama mengikuti perkuliahan, penulis aktif sebagai staf Departemen Sosial dan
Lingkungan BEM FMIPA IPB pada tahun ajaran 2009/2010, serta staf Kementerian Sosial
Kemasyarakatan BEM KM IPB pada tahun ajaran 2010/2011. Penulis juga pernah menjadi
pengajar mata kuliah TPB di bimbingan belajar dan privat mahasiswa. Pada bulan Juli dan
Agustus 2011, penulis melaksanakan Praktik Lapangan di Pusat Teknologi Pengembangan Sumber Daya Alam Badan Pengkajian dan Penerapan Teknologi (BPPT) Jakarta dengan judul Pergeseran
Nilai Tepi Kanal Merah (REP) Data Hyperspectral dengan Metode Polynomial Fitting. Penulis
juga pernah mengikuti Program Kreativitas Mahasiswa pada tahun 2011.
PRAKATA
Puji dan syukur penulis panjatkan kepada Allah Subhanahu wa-ta'ala atas segala karunia-
Nya sehingga skripsi ini dapat diselesaikan. Skripsi yang berjudul Pengembangan Sistem
Pengecekan Format Skripsi dan Ejaan Bahasa Indonesia ini merupakan penelitian yang dilakukan
oleh penulis dari bulan September 2011 sampai bulan Juli 2012.
Penulis mengucapkan terima kasih kepada Bapak Mushthofa, S.Kom, M.Sc sebagai
pembimbing yang telah memberi saran, masukan, dan ide-ide kepada penulis dalam menyusun
skripsi ini. Penulis juga mengucapkan terima kasih kepada seluruh staf pengajar Departemen Ilmu
Komputer atas ilmu yang telah diberikan, serta tidak lupa kepada staf tata usaha yang membantu
administrasi selama kuliah di Institut Pertanian Bogor.
Ungkapan terima kasih juga disampaikan kepada ayah, ibu, serta seluruh keluarga atas doa
dan kasih sayang dan semangat yang terus diberikan kepada penulis. Begitu juga kepada Rina
yang selalu senantiasa memberi semangat kepada penulis dalam menyelesaikan skripsi ini,
kemudian kepada Vai, Gamma, Mustafa, Yanta, Aco, Bangun, Rilan, Ridwan, Rifqi, Sayed, Kaka
dan seluruh teman-teman Ilmu Komputer 44 atas bantuan, semangat, motivasi dan
kebersamaannya selama penyusunan skripsi ini.
Semoga penelitian ini dapat memberikan manfaat kepada pembaca sebagai referensi
penelitian lanjutan dan pengembangan ilmu pengetahuan.
Bogor, September 2012
Otri Delvi
v
DAFTAR ISI
Halaman
DAFTAR TABEL ...................................................................................................................... vi
DAFTAR GAMBAR .................................................................................................................. vi
DAFTAR LAMPIRAN ............................................................................................................... vi
PENDAHULUAN
Latar Belakang .................................................................................................................. 1 Tujuan .............................................................................................................................. 1 Manfaat Penelitian ............................................................................................................ 1 Ruang Lingkup ................................................................................................................. 1
TINJAUAN PUSTAKA
Visual Studio Tools for Office (VSTO) ............................................................................. 2 Model Objek Office .......................................................................................................... 2 Model Objek Word ........................................................................................................... 2 Regular Expression (RegEx) ............................................................................................. 2 Levenshtein Distance ........................................................................................................ 3 Stemming ......................................................................................................................... 3
METODE PENELITIAN
Studi Pustaka .................................................................................................................... 4 Perancangan Template Skripsi .......................................................................................... 4 Perancangan Pengecekan Ejaan Penulisan Skripsi .............................................................. 4 Perancangan Pengecekan Format Penulisan Skripsi ........................................................... 5 Pengembangan .................................................................................................................. 6 Pengujian dan Evaluasi ..................................................................................................... 6
HASIL DAN PEMBAHASAN
Analisis Kebutuhan dan Batasan Sistem ............................................................................ 6 Lingkungan Pengembangan Sistem ................................................................................... 6 Pengembangan Sistem....................................................................................................... 7 Fungsi Generate Template Skripsi ..................................................................................... 7 Pemeriksaan Ejaan Bahasa Indonesia ................................................................................ 7 Fungsi Pengecekan Format Skripsi .................................................................................... 7 Implementasi Regular Expression dan Levenshtein Distance pada Sistem .......................... 8 Perancangan Antarmuka.................................................................................................... 9 Pengujian dan Evaluasi ................................................................................................... 10 Persyaratan Minimum Sistem .......................................................................................... 11 Kekurangan Sistem ......................................................................................................... 11
KESIMPULAN ......................................................................................................................... 12
SARAN ..................................................................................................................................... 12
DAFTAR PUSTAKA ................................................................................................................ 12
LAMPIRAN .............................................................................................................................. 13
vi
DAFTAR TABEL Halaman
1 Aturan section .......................................................................................................................... 5 2 Contoh pola string daftar pustaka ............................................................................................. 8 3 Indikator string peubah ............................................................................................................. 9 4 Aturan string pattern daftar pustaka .......................................................................................... 9 5 Daftar pengujian black box pada sistem .................................................................................. 10 6 Hasil pengecekan format dengan metode Black box testing ..................................................... 11 7 Hasil pengujian waktu pengecekan ejaan skripsi ..................................................................... 11 8 Hasil pengujian tingkat keberhasilan sistem ............................................................................ 11
DAFTAR GAMBAR Halaman
1 Hierarki model objek. ............................................................................................................... 2 2 Tahapan penelitian. .................................................................................................................. 4 3 Flowchart pengecekan ejaan bahasa Indonesia. ......................................................................... 4 4 Grafik waktu pengecekan ejaan bahasa Indonesia. .................................................................... 7 5 Grafik waktu pengecekan format skripsi. .................................................................................. 8 6 Antarmuka add-in sistem pengecekan skripsi. ......................................................................... 10 7 Form progress bar pada saat pengecekan ejaan. ...................................................................... 10 8 Komentar kesalahan pada pengecekan ejaan bahasa Indonesia. ............................................... 10 9 Komentar kesalahan pada pengecekan format skripsi. ............................................................. 10
10 Form masukan kata pada Ignore Words. ................................................................................. 10
DAFTAR LAMPIRAN Halaman
1 Rancangan ketentuan penulisan skripsi dengan format baru..................................................... 14 2 Datar pengecekan pada tiap section......................................................................................... 16 3 Hasil pengujian pengecekan ejaan........................................................................................... 21 4 Daftar string Regular Expression pengecekan daftar pustaka ................................................... 20 5 Hasil pengujian pengecekan format ........................................................................................ 22 6 Pengujian White Box pada Sistem ........................................................................................... 23
1
PENDAHULUAN
Latar Belakang
Skripsi atau tugas akhir merupakan salah
satu kewajiban bagi setiap mahasiswa jenjang
pendidikan sarjana sebagai persyaratan
akademis untuk mendapatkan gelar sarjana (S1). Tugas akhir disusun dalam sebuah
laporan berbentuk karya ilmiah. Institut
Pertanian Bogor (IPB) memiliki format
tertentu dalam penulisan skripsi.
Masalah kesalahan-kesalahan dalam
penulisan format skripsi dan ejaan merupakan
kendala yang sering terjadi selama proses
penulisan skripsi. Dosen dan mahasiswa harus
memeriksa ulang skripsi untuk mencari letak
kesalahan format dan penulisan pada laporan
tugas akhir secara manual. Proses pemeriksaan secara manual ini tentunya akan
menyita banyak waktu, sehingga proses
penulisan skripsi menjadi lama.
Salah satu aplikasi yang digunakan dalam
menulis skripsi ialah Microsoft Office Word.
Sebelumnya sudah dibangun sebuah sistem
pengecekan format skripsi oleh Olimpiyanto
(2011) dalam bentuk sebuah add-in pada
Microsoft Office Word 2007 yang memiliki
fungsi pemeriksaan format penulisan dan
fungsi pemeriksaan ejaan pada dokumen
skripsi.
Fungsi pengecekan ejaan pada sistem
tersebut menggunakan fungsi spell checker
Microsoft Office 2007 dengan tambahan
kamus Bahasa Indonesia dari aplikasi
StarDict. Tidak semua kata pada dokumen
diperiksa, hanya kata-kata yang masuk dalam
spelling error Microsoft Office Word saja.
Dengan demikian kata-kata dalam bahasa
asing yang tidak disalahkan dalam spelling
error akan dianggap benar. Waktu
pengecekan pada sistem ini juga masih lama.
Untuk pemeriksaan ejaan bahasa Indonesia
yang baik diperlukan stemming pada kata-kata
yang akan diperiksa. Nazief dan Andriani
telah membuat sebuah algoritme stemming
untuk pengecekan ejaan dalam bahasa
Indonesia dengan hasil yang sangat baik
(Asian 2007). Algoritme ini dapat digunakan
sebagai langkah pendukung dalam
memperbaiki metode pengecekan ejaan yang
sebelumnya.
Fungsi pemeriksaan format skripsi pada
sistem sebelumnya hanya terbatas pada format aturan penulisan Departemen Ilmu Komputer
IPB. Pada saat ini telah dirancang sebuah
aturan format penulisan skripsi yang baru.
Format penulisan ini akan dipakai secara
menyeluruh di Institut Pertanian Bogor. Oleh
karena itu fungsi pengecekan format yang
dibangun oleh sistem sebelumnya tidak bisa
digunakan lagi.
Oleh karena itu, perlu dikembangkan
sebuah sistem pengecekan bahasa indonesia
yang mampu mengatasi permasalahan di atas
dan juga melakukan pengecekan format dan
penulisan skripsi Institut Pertanian Bogor yang sesuai dengan aturan format yang baru
(2012).
Tujuan
Tujuan penelitian ini yaitu:
1 Mengimplementasikan sebuah sistem
pengecekan format skripsi sesuai dengan
aturan format IPB yang baru (2012).
2 Memperbaiki metode pengecekan ejaan
bahasa Indonesia yang telah
diimplementasikan sebelumnya dengan
menggunakan KBBI sebagai acuan kata-kata yang baku dan stemming
menggunakan algoritme Nazief dan
Andriani.
3 Mengukur efisiensi waktu pada sistem
yang dibangun dalam melakukan proses
pengecekan format dan ejaan.
Manfaat Penelitian
Penelitian ini diharapkan dapat bermanfaat
bagi mahasiswa dalam memeriksa skripsi
sesuai dengan format yang berlaku dan ejaan
yang benar serta juga meringankan beban dosen dalam memeriksa tulisan mahasiswa
Institut Pertanian Bogor.
Ruang Lingkup
Ruang lingkup penelitian ini yaitu:
1 Format penulisan skripsi yang digunakan
merupakan format skripsi Institut
Pertanian Bogor rancangan tahun 2012.
2 Sistem diimplementasikan dalam add-in
Microsoft Office Word 2007 dan 2010.
3 Pengecekan ejaan hanya dilakukan untuk
bahasa Indonesia.
4 Pengecekan ejaan yang dilakukan hanya sebatas kata-kata yang digunakan, tidak
melakukan pengecekan pada tanda baca
dan istilah.
2
TINJAUAN PUSTAKA
Visual Studio Tools for Office (VSTO)
Visual Studio Tools for Office (VSTO)
merupakan sebuah fungsi tambahan pada
Visual Studio yang digunakan untuk
memanfaatkan kekuatan dan fungsionalitas teknologi Microsoft Office. Pada intinya,
VSTO hanyalah sebuah platform yang
memungkinkan dokumen Microsoft Office
untuk mengeksekusi kode yang ada pada
pemrograman .NET. Hal ini bukan berarti
bahwa teknologi VSTO satu-satunya media
yang tersedia untuk mengembangkan aplikasi
berbasis Microsoft Office. VSTO telah
dirancang untuk membuat aplikasi tersebut
lebih mudah dan lebih handal daripada
pendekatan yang tersedia (Bruney 2006).
VSTO menambahkan dukungan .NET
untuk pemrograman Word, Excel, Outlook
dan InfoPath untuk Visual Studio. VSTO
mengubah dokumen Word atau Excel menjadi
sebuah kelas .NET (.NET class) penuh
dengan data pendukung yang mengikat,
kontrol yang dapat dikodekan seperti
Windows Forms Control, dan keistimewaan
.NET lainnya. Hal ini memungkinkan
pengembang untuk menempatkan kode .NET
di dalam bentuk InfoPath. Pengembang
bahkan dapat memprogram kunci objek Office tanpa harus melalui seluruh model objek
Office (Carter & Lippert 2005).
Model Objek Office
Hampir semua program Office melibatkan
penulisan kode yang menggunakan model
objek dari aplikasi Office. Model Objek
Office adalah sekumpulan objek yang
disediakan aplikasi Office yang dapat
digunakan untuk mengontrol aplikasi Office.
Model objek memiliki tingkatan pengaksesan.
Model objek yang disediakan bergantung dari jenis aplikasi Office yang digunakan.
Tiap model objek aplikasi Office terdiri
atas banyak objek yang digunakan untuk
mengontrol aplikasi Office. Word memiliki
248 objek yang berbeda, Excel 196 objek, dan
Outlook sebanyak 67 objek. Objek yang
paling penting dan paling sering digunakan
dalam model objek adalah sesuatu yang sesuai
dengan aplikasi itu sendiri, dokumen, dan
elemen kunci dalam dokumen seperti berbagai
teks di Word. Sebagai contoh, Gambar 1
merupakan hierarki sederhana model objek yang ada pada Word (Carter & Lippert 2005).
Model Objek Word
Langkah pertama dalam mempelajari
model objek Word ialah dengan mendapatkan
ide-ide dari struktur dasar hierarki model
objek (Gambar 1). Objek Application
digunakan untuk mengakses pengaturan dan
opsi application-level. Application merupakan
akar dari objek model dan menyediakan akses
ke objek lain dalam model objek. Objek
Document merupakan sebuah Word dokumen. Objek Paragraph memungkinkan pengembang
untuk mengakses sebuah paragraf dalam
dokumen Word. Objek Range merupakan
sebuah barisan dari text yang berada pada
dokumen. Objek Shape merupakan sebuah
gambar, grafik atau objek lain yang ada pada
dokumen Word (Carter & Lippert 2005).
Regular Expression (RegEx)
Regular Expression atau sering dikenal
dengan istilah RegEx adalah sebuah fungsi
yang menggambarkan pola-pola karakter dalam string, deskripsi karakter berulang,
penggantian, dan pengelompokan karakter.
RegEx dapat digunakan untuk mencari dan
mengubah string (McMillan 2007).
RegEx sendiri merupakan pola string yang
ingin dicari pada string lain. RegEx juga
menggunakan pola karakter khusus atau
dikenal dengan istilah metacharacters.
Metacharacters digunakan untuk menandakan
pengulangan, penggantian atau
pengelompokan. RegEx juga didukung oleh
pola substitusi, set karakter, quantifier, dan lainnya.
Regular Expression atau RegEx pada
sistem ini digunakan pada proses stemming
pada fungsi pengecekan ejaan bahasa
Indonesia. Syntax yang digunakan dalam
RegEx menggunakan syntax yang sederhana
dari set karakter, pernyataan posisi, dan
quantifier.
Gambar 1 Hierarki model objek.
Application
Documents
Document
Paragraphs
Paragraph
Range Shape
3
1 2 3 4 5 6
T = m e - - r i
S = m e m o r i
Regex memiliki syntax yang terdiri dari
delimiter, pattern, dan modifier. Delimiter
digunakan untuk menentukan tempat pattern
berawal dan berakhir. Pada Javascript, hanya
bisa digunakan sebagai delimiter. Pattern
adalah pola string yang ingin ditemukan atau
dicocokkan. Modifier adalah mode RegEx
meng-handle hasil pencarian string atau teks.
Levenshtein Distance
Levenshtein distance digunakan untuk
mengukur kesamaan atau kemiripan antara dua buah kata. Jarak Levenshtein diperoleh
dengan mencari cara termudah untuk
mengubah suatu string. Secara umum, operasi
yang diperbolehkan untuk keperluan ini ialah:
memasukkan karakter ke dalam string,
menghapus sebuah karakter dari suatu
string,
mengganti karakter string dengan karakter
lain (Manning et al. 2008).
Operasi perhitungan dua string meliputi
tiga operasi string seperti di bawah ini. Untuk contoh yang digunakan, diasumsikan S adalah
string sumber pencarian dan T adalah string
yang ingin dicari.
1 Operasi penghapusan
Misalnya S = memori dan T = meri.
Penghapusan dilakukan untuk karakter m pada
lokasi ke-3 dan o pada lokasi ke-4. Dua
operasi penghapusan tersebut menunjukkan
transformasi S ke T yang diilustrasikan
sebagai berikut.
2 Operasi penyisipan
Misalnya S = brian dan T = barisan.
Operasi penyisipan dilakukan dengan
menyisipkan a dan s pada posisi 2 dan 5 yang
dapat ditunjukkan sebagai berikut.
3 Operasi Penggantian
Misalnya S = perasa dan T = pewara.
String T ditransformasikan menjadi S dengan
melakukan penggantian (substitusi) pada
posisi ke-3 dan ke-5. Huruf r dan s pada S
digantikan dengan w dan r pada T. Prosesnya
dapat ditunjukkan sebagai berikut.
Nilai jarak Levenshtein dapat dihitung dari
jumlah operasi perhitungan string yang
digunakan untuk menghitung jarak kedua
string yang dibandingkan. Kemudian, untuk
menghitung nilai kemiripan digunakan rumus:
Sim = 1 – ( Dis / MaxLegth)
Sim = Similarity atau nilai kemiripan
Dis = jarak Levenshtein
MaxLength = nilai jarak terpanjang.
Rentang nilai similarity berkisar dari 0
sampai 1. Semakin besar nilai similarity,
semakin tinggi juga kemiripan antara kedua
string tersebut.
Stemming
Stemming merupakan suatu proses yang
terdapat dalam sistem Information Retrieval
(IR) yang mentransformasikan kata-kata yang terdapat dalam suatu dokumen ke kata-kata
akarnya (root word) dengan menggunakan
aturan-aturan tertentu. Sebagai contoh, kata
bersama, kebersamaan, dan menyamai akan
ditransformasikan ke akar katanya yaitu
“sama”. Proses stemming pada teks berbahasa
Indonesia berbeda dengan stemming pada teks
berbahasa Inggris. Pada teks berbahasa
Inggris, proses yang diperlukan hanya proses
menghilangkan sufiks, sedangkan pada teks
berbahasa Indonesia, selain sufiks, prefiks dan
konfiks juga dihilangkan (Agusta 2009).
Imbuhan (afiks) adalah suatu bentuk
linguistik di dalam suatu kata yang merupakan
unsur langsung yang bukan kata dan bukan
pokok kata. Mengubah leksem menjadi kata
kompleks, artinya mengubah leksem itu
menjadi kata yang mempunyai arti lebih
lengkap, seperti mempunyai subjek, predikat
dan objek. Sementara itu prosesnya sendiri di
sebut afiksasi. Imbuhan (afiks) adalah bentuk
(morfem) terikat yang dipakai untuk
menurunkan kata.
1 2 3 4 5 6 7
T = b a r i s a n
S = b - r i - a n
1 2 3 4 5 6
T = p e w a r a
S = p e r a s a
4
Prefiks (awalan) adalah afiks (imbuhan)
yang ditempatkan di bagian muka dasar
(mungkin kata dasar atau kata kompleks atau
jadian), contohnya: ber-, di-, ke-, me-, meng-,
mem-, meny-, pe-, pem-, peng-, peny-, per-,
se-, dan ter-. Sufiks (akhiran) adalah morfem
terikat yang digunakan di bagian belakang
kata atau dilekatkan pada akhir dasar,
contohnya: -an, -kan, -i, -pun, -lah, -kah, dan -
nya. Konfiks adalah gabungan prefiks dan
sufiks yang dilekatkan sekaligus pada awal dan akhir dasar, contoh : ke - an, ber - an, pe -
an, peng - an, peny - an, pem - an, per - an,
dan se - nya.
METODE PENELITIAN
Secara umum, metode penelitian yang dilakukan terdiri atas beberapa tahap.
Tahapan-tahapan ini terlihat pada Gambar 2.
Studi Pustaka
Pada tahap ini dilakukan pembelajaran
mengenai kasus atau permasalahan yang akan
diselesaikan. Selain itu, studi pustaka juga
dilakukan dengan mencari referensi-referensi
yang mendukung dalam menyelesaikan
masalah. Referensi yang digunakan dapat
berupa buku, buku elektronik (e-book),
maupun literatur-literatur yang ada di jaringan
Internet dan lainnya.
Perancangan Template Skripsi
Tahap perancangan template akan
menampilkan sebuah contoh skripsi yang
sudah dilengkapi dengan format sesuai aturan
yang baru (Lampiran 1). Contoh skripsi yang
ditampilkan juga telah disertai dengan
petunjuk umum tentang isi tulisan.
Perancangan Pengecekan Ejaan Penulisan
Skripsi
Tahap perancangan ini akan memeriksa
semua kata pada dokumen skripsi ke dalam
database KBBI dan list pengecualian. List
pengecualian adalah daftar kata-kata yang
benar tetapi tidak terdapat dalam database
KBBI. Pada pemeriksaan ejaan bahasa
Indonesia, digunakan database KBBI sebagai sumber kata-kata baku dan menggunakan satu
list yang berisi kata-kata pengecualian. Kata
pengecualian didapat dari masukan user.
Database KBBI yang dipakai adalah database
dari penelitian Iqbal (2010). Proses
pemeriksaan ejaan dapat dilihat dari flowchart
(Gambar 3).
Proses ini diawali dengan mengambil
setiap kata pada dokumen, kemudian setiap
kata disaring. Ada beberapa kata yang tidak
akan diperiksa dalam proses ini, yaitu:
1 Kata yang ditulis memiliki huruf kapital,
karena kata tersebut dianggap sebagai
suatu nama objek.
2 Kata yang mengandung angka atau
simbol-simbol.
3 Kata yang ditulis dengan huruf miring
(italic), karena kata tersebut dianggap
sebagai bahasa asing.
Kata yang sudah melalui proses
penyaringan akan diperiksa ke dalam
Gambar 2 Tahapan penelitian.
Mulai
Studi Pustaka
Pengembangan
Pengujian dan
Evaluasi
Selesai
Perancangan
Template Skripsi Pengecekan Ejaan Pengecekan Format
Database
KBBI
List
Pengecualian
Aturan
Section - section
Gambar 3 Flowchart pengecekan ejaan
bahasa Indonesia.
Kata
Penyaringan
kata
Mulai
Terpenuhi
Tidak terpenuhi
Cek KBBI
dan List
Pengecualian
Tidak ada
Ada
Proses Stemming
Cek KBBI
dan List
Pengecualian
Ada
Tidak ada
Berikan Komentar
kesalahan & kata
yang mirip Selesai
5
database KBBI dan list pengecualian. Ketika
kata-kata itu tidak ada di dalam database,
selanjutnya dilakukan proses stemming.
Algoritme stemming yang digunakan ialah
algoritme Nazief dan Adriani (Asian 2007).
Setelah kata tersebut melewati proses
stemming yang menghasilkan kata dasar,
dilakukan pengecekan ulang ke dalam
database. Ketika kata yang telah melewati
proses stemming tidak ditemukan dalam
database, diberikan komentar kesalahan ejaan pada kata tersebut dan diberikan beberapa
saran kata mirip dengan kata tersebut.
Menurut Asian (2007), algoritme
stemming yang digunakan Nazief dan Adriani
memiliki tahapan-tahapan sebagai berikut:
1 Pencarian kata ke dalam kamus yang
digunakan. Jika ditemukan maka
diasumsikan bahwa kata tersebut adalah
root word dan algoritme berhenti.
2 Inflection Suffixes (“-lah”, “-kah”, “-ku”,
“-mu”, atau “-nya”) dibuang. Jika berupa particles (“-lah”, “-kah”, “-tah” atau “-
pun”), langkah ini diulangi lagi untuk
menghapus Possesive Pronouns (“-ku”, “-
mu”, atau “-nya”) jika ada.
3 Hapus Derivation Suffixes (“-i”, “-an” atau
“-kan”). Jika kata ditemukan di kamus,
algoritme berhenti. Jika tidak, berlanjut ke
langkah 3a
a Jika “-an” telah dihapus dan huruf
terakhir dari kata tersebut adalah “-k”,
“-k” juga ikut dihapus. Jika kata tersebut ditemukan dalam kamus
algoritme berhenti. Jika tidak
ditemukan, lakukan langkah 3b.
b Akhiran yang dihapus (“-i”, “-an” atau
“-kan”) dikembalikan, kemudian
dilanjutkan ke langkah 4.
4 Hapus Derivation Prefix. Jika pada
langkah 3 ada sufiks yang dihapus,
dilanjutkan ke langkah 4a. Jika tidak ada,
dilanjutkan ke langkah 4b.
a Periksa tabel kombinasi awalan-
akhiran yang tidak diizinkan. Jika ditemukan, algoritme berhenti. Jika
tidak, dilanjutkan ke langkah 4b.
b Untuk i = 1 sampai 3, tentukan tipe
awalan kemudian hapus awalan. Jika
root word belum juga ditemukan
lakukan langkah 5. Jika sudah,
algoritme berhenti. Catatan: jika
awalan kedua sama dengan awalan
pertama, algoritme berhenti.
5 Melakukan Recoding.
6 Jika semua langkah telah selesai tetapi
tidak juga berhasil maka kata awal
diasumsikan sebagai root word.
Tipe awalan ditentukan melalui langkah-
langkah berikut:
1 Jika awalannya: “di-”, “ke-”, atau “se-”,
tipe awalannya secara berturut-turut adalah
“di-”, “ke-”, atau “se-”.
2 Jika awalannya adalah “te-”, “me-”, “be-”,
atau “pe-”, dibutuhkan sebuah proses
tambahan untuk menentukan tipe
awalannya.
3 Jika dua karakter pertama bukan “di-”,
“ke-”, “se-”, “te-”, “be-”, “me-”, atau “pe-
”, berhenti.
4 Jika tipe awalan adalah “none” maka
berhenti.
Perancangan Pengecekan Format
Penulisan Skripsi
Tahap perancangan pemeriksaan format
skripsi dengan menggunakan aturan section.
Setiap section terdiri atas bagian-bagian dan
aturan tertentu. Sistem ini bekerja pada
section-section yang telah ditetapkan. Setiap
section terdiri atas bagian-bagian tertentu
dalam laporan tugas akhir. Jumlah section
yang dipakai pada sistem sebanyak sebelas
Tabel 1 Aturan section
Section Aturan
Section 1 Bagian sampul
Section 2 Bagian abstrak
Section 3 Bagian halaman judul
Section 4 Bagian lembar pengesahan
Section 5 Bagian prakata
Section 6 Bagian riwayat hidup
Section 7 Bagian daftar isi
Section 8 Bagian daftar tabel,
gambar dan lampiran
Section 9 Bagian isi
Section 10 Bagian daftar pustaka
Section 11 Bagian lampiran
6
section. Aturan-aturan section yang harus
diperhatikan dapat dilihat pada Tabel 1.
Fungsi lain pada sistem ini ialah
pengecekan format penulisan skripsi.
Pengecekan yang dilakukan pada sistem ini
berbeda-beda pada setiap section-nya dan
berdasarkan pada bagian-bagian yang menjadi
aturan dari tiap section. Lampiran 2
merupakan daftar pengecekan yang dilakukan
pada sistem tiap section. Secara garis besar,
ada 3 pemeriksaan yang dilakukan pada setiap section, yaitu :
1 Format umum seperti ukuran kertas, jenis
tulisan, margin halaman, dan orientasi.
2 Judul dan header yang diperiksa ialah
ukuran tulisan, cetak tebal dan alignment
tulisan.
3 Body tulisan atau paragraf yang diperiksa
ialah ukuran tulisan, alignment, baris
pertama paragraf, jarak antar baris.
Pengembangan
Pengembangan sistem merupakan tahap implementasi dari tahap perancangan sistem.
Pada tahap ini dilakukan pembuatan
antarmuka pengguna dan pengembangan kode
program.
Pengujian dan Evaluasi
Pengujian dilakukan untuk mencari dan
memperbaiki kesalahan-kesalahan yang
terjadi pada sistem sehingga menyebabkan
hasil yang dikeluarkan tidak sesuai dengan
hasil yang diinginkan pengguna. Ada 2 kelas
dasar dari pengujian perangkat lunak, yaitu:
1 Black Box Testing
Pengujian dilakukan menggunakan pada
sistem menggunakan metode Black Box
Testing. Black-Box Testing berfokus pada
spesifikasi fungsional dari perangkat lunak.
2 White Box Testing
White box testing merupakan strategi
pengujian yang diterapkan pada mekanisme
internal suatu sistem atau komponen. Strategi ini digunakan untuk melihat
mekanisme internal dari suatu produk
perangkat lunak, khususnya untuk
mengamati struktur dan logika kode-kode
program yang ditulis. Pendekatan yang
digunakan ialah struktur kontrol dari desain
prosedural.
Basis path testing merupakan suatu
metode yang digunakan dalam teknik white
box testing. Metode basis path sangat
bermanfaat bagi seorang penguji perangkat
lunak dalam menentukan:
1 Ukuran kompleksitas logika dari suatu
struktur program, prosedur dan fungsi.
2 Menggunakan nilai kompleksitas untuk
menentukan basis set (himpunan dasar)
alur logika yang akan dieksekusi.
Metode basis path testing ini
memerlukan masukan berupa source code
atau algoritme dari suatu perangkat lunak.
HASIL DAN PEMBAHASAN
Analisis Kebutuhan dan Batasan Sistem
Add-in Microsoft Office Word (Ms Word)
mengenai pengecekan format skripsi ini
bertujuan memeriksa laporan tugas akhir
mahasiswa. Masukan pada sistem ini adalah dokumen format Ms Word (*.doc atau *.docx)
dengan keluaran berupa penandaan (highlight)
dan pemberian komentar pada bagian yang
terdapat kesalahan di dalam dokumen.
Fungsi-fungsi yang disediakan pada sistem
ini terbagi menjadi 3 bagian, yaitu :
1 Fungsi untuk menampilkan suatu template
contoh sebuah skripsi yang sudah
menggunakan format yang benar.
Template ini juga sudah dilengkapi dengan
bagian masing-masing section dan
ditampilkan dalam mode read only.
2 Fungsi untuk melakukan pemeriksaan
terhadap ejaan. Fungsi ini menggunakan
database KBBI dan sebuah list
pengecualian dengan asumsi kata-kata
pada kedua sumber database tersebut
sudah baku dan benar. List Pengecualian
adalah sebuah list sementara yang isinya
dimasukkan sendiri oleh user ketika user menemukan sebuah kata yang benar, tetapi
kata tersebut masih salah menurut KBBI.
Fungsi pemeriksaan ejaan ini akan
memberikan peringatan kepada user ketika
dalam dokumen ada kata-kata yang tidak
baku atau salah penulisan.
3 Fungsi untuk melakukan pemeriksaan
terhadap format. Fungsi ini menggunakan
aturan section untuk mempermudah pemeriksaan. Masing-masing section juga
memiliki fungsi pengecekan yang berbeda.
Lingkungan Pengembangan Sistem
Spesifikasi perangkat keras dan perangkat
lunak untuk pengembangan add-in ini yaitu:
7
1 Perangkat keras
Intel Core i5 (@2.53 GHz), 2 GB RAM,
hard disk berkapasitas 500 GB, mouse,
keyboard, dan monitor.
2 Perangkat lunak
Sistem Operasi Windows 7 Professional,
Visual Studio 2010 digunakan untuk
membuat kode program (C#), dan
Microsoft Office Word 2007 untuk melihat
hasil program.
Pengembangan Sistem
Sistem ini menggunakan bahasa
pemrogram C# (C-Sharp) dengan
menggunakan Visual Studio Tools for Office
sebagai salah satu bagian dari Visual Studio
dalam mengembangkan dan meningkatkan
fungsionalitas dari Microsoft Office.
Pembuatan kode program dibagi menjadi
beberapa fungsi utama, yakni:
1 Fungsi pembuatan template skripsi yang
berupa satu dokumen contoh laporan tugas
akhir yang sudah benar format dan penulisannya.
2 Fungsi yang bertugas memeriksa ejaan
bahasa Indonesia dalam penulisan laporan
tugas akhir.
3 Fungsi pemeriksaan format penulisan
dalam laporan tugas akhir.
Fungsi Generate Template Skripsi
Fungsi ini akan memanggil suatu dokumen
contoh skripsi yang sudah benar formatnya
dan dimunculkan dalam mode read only,
sehingga user tidak bisa mengubah isi dan
format dokumen yang asli. Dokumen yang
sudah diubah akan disimpan seperti dokumen
yang baru, tidak menimpa dokumen contoh
yang dihasilkan fungsi.
Pemeriksaan Ejaan Bahasa Indonesia
Pengecekan ejaan bahasa Indonesia pada sistem ini menggunakan database KBBI
sebagai acuan utama kata baku, dan list
pengecualian untuk kata-kata pengecualian
yang tidak ada dalam KBBI tetapi kata
tersebut dipastikan benar penulisannya. Kata-
kata yang dimasukkan dalam list pengecualian
ini akan disimpan dalam metadata dokumen
itu sendiri. Untuk kata-kata yang salah eja
diberikan komentar kesalahan dan beberapa
kata yang benar dan mirip dengan kata
tersebut. Pemberian beberapa kata ini
menggunakan database KBBI yang
dimasukkan ke dalam CUSTOM.DIC pada
Microsoft Office. Waktu yang dibutuhkan
pada pengecekan ejaan ini dipengaruhi oleh
jumlah kata. Dari 10 kali pengujian, dapat
dilihat perbandingan antara waktu yang
dibutuhkan dengan jumlah kata yang diuji
memperlihatkan fungsi linear. Gambar 4
menunjukkan grafik perbandingan kata
dengan waktu yang dibutuhkan pada fungsi
pengecekan ejaan.
Dengan menggunakan persamaan regresi linear sederhana dapat dilihat hubungan antara
jumlah kata yang akan diperiksa (n) dan
waktu yang diperlukan (t dalam satuan detik)
dengan persamaan t = 0.0057 + 0.05148, dan
nilai koefisien determinasi (R) = 0.9907.
Fungsi Pengecekan Format Skripsi
Fungsi ini memeriksa aturan-aturan pada
setiap section dalam dokumen skripsi. Aturan
yang digunakan dapat dilihat pada Lampiran
2. Ketidaksesuaian format dokumen dengan
aturan yang telah ditentukan akan ditandai dengan pemberian komentar pada bagian yang
salah.
Waktu pengecekan format skripsi ini
dipengaruhi oleh banyaknya halaman skripsi.
Dari 10 kali pengujian dengan penambahan
jumlah halaman pada gambar di atas (Gambar
5) dapat dilihat hubungan waktu yang
diperlukan (t dalam satuan detik) dan jumlah
halaman skripsi (n) yang akan diperiksa.
Dengan menggunakan regresi linear
sederhana, didapatkan persamaan antara
waktu dan halaman yang diperiksa yaitu t = 0.1206n - 0.0233 dan nilai koefisien
determinasi (R) = 0.9718.
Gambar 4 Grafik waktu pengecekan ejaan
bahasa Indonesia.
t = 0.0057n + 0.5148
R = 0.9907
0.00
5.00
10.00
15.00
20.00
25.00
30.00
35.00
0 1000 2000 3000 4000 5000 6000
t (d
eti
k)
Jumlah kata (n)
8
Implementasi Regular Expression dan
Levenshtein Distance pada Sistem
RegEx juga digunakan dalam mendeteksi
jenis-jenis string yang ada pada daftar
pustaka. Misalkan dalam sebuah daftar
pustaka terdiri atas nama, tahun, judul buku,
dan penerbit, maka bagian-bagian tersebut
akan dideteksi dengan RegEx sehingga
diperoleh string pattern. String pattern
dibangun dengan menggunakan karakter khusus tambahan yang ada pada RegEx.
Karakter khusus yang digunakan terdiri
atas beberapa jenis fungsi seperti set karakter,
pernyataan posisi, dan quantifier. Quantifier
berguna untuk memberikan optional-optional
tambahan untuk memberikan pernyataan dari
sebuah string. Contoh beberapa pola-pola
RegEx yang digunakan untuk membangun
sebuah string pattern dapat dilihat pada Tabel
2, Daftar yang lebih lengkap dapat dilihat
pada Lampiran 4.
Dalam pembentukan string pattern
menggunakan RegEx pada daftar pustaka,
setiap bagian dalam daftar pustaka diubah
menjadi sebuah string untuk mewakili jenis
bagian tersebut. Daftar peubah string daftar
pustaka dapat dilihat pada Tabel 3.
Pada Tabel 3, terdapat beberapa format
string pattern yang dapat terjadi bersamaan,
seperti nama penerbit (F) dengan tempat
penerbit (L) dan nama jurnal (E) dengan
halaman (D). Dengan demikian, ketika nama
penerbit terdeteksi, maka langkah selanjutnya
yang diperiksa ialah tempat terbit. Begitu pula
jika nama jurnal telah dideteksi, halaman
jurnal akan dicek terlebih dahulu.
Sebagai contoh, sebuah daftar pustaka
yang diambil dari sebuah buku sebagai
berikut:
Pada contoh ini, daftar pustaka memiliki 4
buah bagian, antara lain:
nama pengarang (Bruney A),
tahun terbit (2006),
judul buku (Professional VSTO 2005:
Visual Studio 2005 Tools for Office), dan
tempat terbit dan nama penerbit (Indiana:
Wiley Publishing, Inc).
Dengan demikian, dari keempat bagian
tersebut dicari kemungkinan string yang dapat
dibentuk. String pattern yang terbentuk yaitu,
ABCFL, ABCIO, ABCO, ABCQ, ABCS.
Setelah itu string yang terbentuk dicari
kemiripannya dengan konstanta aturan string
pattern setiap jenis daftar pustaka
menggunakan algoritme Levenshtein.
Pada dasarnya, algoritme ini menghitung
jumlah minimum transformasi suatu string menjadi string lain yang meliputi
penggantian, penghapusan dan penyisipan.
Dalam algoritme ini dilakukan penyeleksian
panjang kedua string terlebih dahulu. Jika
salah satu kedua string merupakan string
kosong, jalannya algoritme ini berhenti dan
memberikan hasil edit distance yang bernilai
nol.
Konstanta string pattern daftar pustaka
yang sesuai dengan Buku Panduan Karya
Ilmiah IPB dapat dilihat pada Tabel 4. Jika string input daftar pustaka telah terbentuk,
selanjutnya dilakukan penghitungan jarak
terhadap setiap string pattern yang ada pada
Tabel 4. Jika nilai kemiripannya 1, kedua
string yang dibandingkan sama.
Bruney A. 2006. Professional VSTO 2005:
Visual Studio 2005 Tools for Office.
Indiana: Wiley Publishing, Inc.
Gambar 5 Grafik waktu pengecekan format
skripsi.
y = 0.1206x - 0.0233
R = 0.9718
0.00
0.20
0.40
0.60
0.80
1.00
1.20
1.40
2 4 6 8 10 12 14 16 18 20
Wak
tu (
deti
k)
Jumlah halaman
Tabel 2 Contoh pola string daftar pustaka
Topik Pola string
Tahun "[0-9]{4}[-.$]"
Link/url @"http(s)?://([\w-]+\.)+
[\w-]+(/[\w- ./?%&=]*)?"
Nama "^[a-zA-Z','-'\\s]{1,100} [-
.$]"
Judul "^[a-zA-Z+\\s(.$)]
{1,1000}"
Nama Jurnal @"^[\w\s]*[0-9\s]{1,4}
[:\s][0-9-\s]{1,10}[\.$]"
9
Perancangan Antarmuka
Antarmuka add-in berada pada tabulasi
khusus add-in pada Microsoft Office Word
2007 (Gambar 6). Pembuatan tombol pada
tabulasi add-in menggunakan ribbon buatan
yang dapat dikembangkan pada Microsoft
Visual Studio. Perancangan antarmuka pada
sistem ini memiliki lima tombol, yaitu:
1 New Skripsi Template digunakan untuk
menampilkan sebuah dokumen Microsoft Office Word contoh skripsi yang sudah
dilengkapi dengan aturan dan format yang
benar.
2 Spelling Check merupakan tombol untuk
mengaktifkan fungsi pemeriksaan ejaan
bahasa Indonesia pada Microsoft Office Word 2007. Fungsi pemeriksaan ejaan ini
bisa dilakukan pada section tertentu saja
atau keseluruhan dokumen. Selama proses
pengecekan berjalan, muncul form
Progress Bar sebagai keterangan proses
sedang berjalan (Gambar 7) serta
penandaan kesalahan dengan komentar
ketika ditemukan kata yang salah (Gambar
8).
3 Format Check adalah tombol untuk
mengaktifkan pemeriksaan format skripsi
sesuai dengan aturan-aturan yang sudah ditentukan (Gambar 9). Tombol ini bisa
diaktifkan ketika total section berjumlah
11. Apabila jumlah section kurang atau
lebih dari 11 diberikan peringatan dan
proses pengecekan format tidak akan
dilakukan.
4 Delete Comment adalah tombol untuk
menghapus hasil koreksi berupa komentar
di samping halaman dokumen.
Tabel 4 Aturan string pattern daftar pustaka
Sumber pustaka String pattern
Jurnal ABCED
Buku ABCFL
Prosiding ABCGHIJFLD
Abstrak ABCGHIJFLDN
Skripsi, Tesis dan
Disertasi
ABCKIO
Bibliografi ABCFL
Paten AOJCS
Surat Kabar AJCOTU
Peta VBCWFLM
Dokumen ABCIO
Kaset Audio /Video ABCPLFLMO
Situs web Elektronik ABCEDPRJ
Situs web Abstrak ABCEPRJ
Situs web Pertemuan
ilmiah
ABCRJ
Tabel 3 Indikator string peubah
String
pattern String yang diubah
A Nama
B Tahun
C Judul buku
D Halaman
E Nama jurnal
F Tempat terbit
G Nama editor
H Judul publikasi
I Lokasi
J Tanggal
K Jenis media pada (skripsi, tesis
atau disertasi)
L Nama penerbit
M Deskripsi (peta atau sumber
audio/video)
N Nomor abstrak
O Jenis media
Q Keterangan
R Url
S Nomor paten
T Nomor halaman
U Nomor kolom (media koran)
V Area (peta)
W Jenis peta
10
5 Ignore Words digunakan untuk
memasukkan kata-kata oleh user yang
dinilai sebagai kata benar. Kata yang
dimasukan ke dalam list pengecualian ini
akan disimpan pada dokumen itu sendiri
(Gambar 10).
Pengujian dan Evaluasi
Pengujian yang telah dilakukan yaitu
pengujian black box dan white box. Pengujian
dengan metode black-box testing dilakukan
pada setiap format yang dipakai. Pengujian
black box dibagi menjadi dua bagian, yaitu
pengujian fungsi-fungsi pada sistem yang
dapat dilihat pada Tabel 5 dan pengujian
efisiensi waktu yang digunakan sistem dalam menjalankan fungsinya. Daftar hasil pengujian
dengan metode black box pada fungsi
pengecekan ejaan Bahasa Indonesia pada
sistem dapat dilihat pada Lampiran 4, dan
daftar hasil pengujian pengecekan format pada
sistem dapat dilihat pada Lampiran 5.
Dalam pengujian white box, fungsi-fungsi
yang diujikan hanya fungsi-fungsi yang
dianggap perlu mendapat perhatian. Hasil
pengujian dengan metode white box dapat
dilihat pada Lampiran 6.
Fungsi-fungsi yang diuji secara white box
hanya fungsi penting dalam penelitian ini
yaitu fungsi pemeriksaan ejaan, stemming dan
pemeriksaan format skripsi. Hasil pengujian
white box pada fungsi pemeriksaan ejaan dan
stemming menghasilkan proses pengecekan ejaan yang benar dan memberikan komentar
kesalahan pada kata yang salah eja. Baris
program yang memiliki kesalahan
mengakibatkan fungsi tidak berjalan dengan
baik dan menimbulkan adanya kesalahan pada
hasil proses pemeriksaan ejaan. Hasil
pengujian white box pada fungsi pengecekan
format akan menghasilkan pemeriksaan
format yang sesuai dengan aturan format
Tabel 5 Daftar pengujian black box pada sistem
No Pengujian sistem
1 Pengujian tombol-tombol antarmuka
pada sistem
2 Kata yang masuk dalam batasan sistem
3 Pengujian pengecekan kata ke dalam
database
4 Pengujian stemming pada kata
5 Pengujian format umum
6 Pengujian format judul dan header
7 Pengujian format body atau paragraf
Gambar 6 Antarmuka add-in sistem
pengecekan skripsi.
Gambar 7 Form progress bar pada saat
pengecekan ejaan.
Gambar 8 Komentar kesalahan pada
pengecekan ejaan.
Gambar 9 Komentar kesalahan pada
pengecekan format skripsi.
Gambar 10 Form masukan kata pada Ignore
Words.
11
penulisan. Baris program yang memiliki
kesalahan akan mengakibatkan program tidak
bisa berjalan dengan baik dan menimbulkan
kesalahan pada hasil pemeriksaan format.
Pengujian efisiensi waktu yang digunakan
sistem dapat dilihat dari hasil pengujian waktu dalam pengecekan format (Tabel 6) dan hasil
pengujian waktu pengecekan ejaan (Tabel 7).
Hasil pengujian waktu ini memperlihatkan
sistem sudah mampu mengerjakan dengan
waktu yang singkat. Waktu yang diperlukan
sistem dalam melakukan pengecekan format
dan ejaan berbanding lurus dengan banyaknya
kata dan halaman yang ada pada dokumen.
Selain itu, dilakukan juga pengujian
tingkat keberhasilan sistem. Pengujian ini
dilakukan dengan cara menguji beberapa
dokumen yang sudah ditentukan kesalahan-
kesalahan format maupun ejaan kemudian
diperiksa oleh sistem. Hasil pengujian tingkat
keberhasilan sistem ini dapat dilihat pada
Tabel 8. Dari 5 kali pengujian dapat
disimpulkan rata-rata tingkat keberhasilan
sistem ini sebesar 96.5%.
Beberapa kesalahan sistem yang terjadi
pada saat pengujian yaitu:
1 Ketidakmampuan sistem dalam
membedakan imbuhan di- dengan awalan
di-.
2 Kesalahan eja pada awal kalimat yang menggunakan huruf kapital.
3 Source code yang ditulis dengan font yang
berbeda akan disalahkan.
4 Format yang salah ketika gambar atau
tabel dibuat dalam text box.
Persyaratan Minimum Sistem
Spesifikasi perangkat lunak minimum
untuk menjalankan aplikasi add-in ini yaitu:
1 Sistem Operasi Windows 7 x86.
2 Microsoft Office Word 2007 dan 2010.
3 .NET Framework 4 Client Profile.
4 Microsoft Visual Studio 2010 Tools for Office Runtime.
Kekurangan Sistem
Dari hasil pengujian masih terdapat
berbagai kesalahan sistem. Kekurangan
tersebut disebabkan sistem masih memiliki
beberapa kekurangan dalam proses
pengecekan. Kekurangan yang ada pada
sistem antara lain:
1 sistem belum mampu membedakan
imbuhan di- dengan awalan di-,
2 sistem tetap melakukan pengecekan untuk bagian skripsi yang menggunakan bahasa
Tabel 7 Hasil pengujian waktu pengecekan
ejaan skripsi
No Jumlah kata Waktu (detik)
1 500 3.05
2 1000 6.07
3 1500 9.03
4 2000 12.08
5 2500 14.96
6 3000 18.10
7 3500 21.19
8 4000 22.61
9 4500 24.24
10 5000 20.08
Tabel 8 Pengujian tingkat keberhasilan sistem
No
Jumlah
kesalahan
dokumen
Jumlah hasil
pemeriksaan
oleh sistem
Tingkat
keberhasilan
sistem
1 25 25 100%
2 20 19 95%
3 25 24 96% 4 25 25 100%
5 20 18 90%
Tabel 6 Hasil pengecekan format
No Jumlah Halaman Waktu (detik)
1 2 0.18
2 4 0.21
3 6 0.30
4 8 0.43
5 10 0.53
6 12 0.60
7 14 0.92
8 16 0.99
9 18 1.08
10 20 1.16
12
asing yang tidak dimiringkan
penulisannya, dan
3 sistem belum bisa memeriksa gambar atau
grafik yang ada di dalam Text Box,
KESIMPULAN
Dari penelitian yang telah dilakukan, dapat
disimpulkan:
1 Telah dilakukan pengembangan sistem
pengecekan format skripsi sesuai dengan
format baru penulisan skripsi Institut
Pertanian Bogor 2012.
2 Telah dilakukan perbaikan pengecekan ejaan bahasa Indonesia pada sistem.
3 Efisiensi waktu yang diperlukan dalam
memeriksa dokumen skripsi sudah baik,
waktu pemeriksaan dipengaruhi oleh
jumlah kata atau jumlah halaman pada
dokumen.
SARAN
Pada penelitian selanjutnya, disarankan
agar program add-in ini:
1 Dikembangkan lebih lanjut mengenai pengecekan tata bahasa (grammar) pada
dokumen berbahasa Indonesia sehingga
sistem memiliki nilai fungsionalitas yang
bertambah, dan
2 Adanya pengecualian pengecekan pada
abstrak berbahasa Inggris dan source code
program yang menggunakan font berbeda.
DAFTAR PUSTAKA
Agusta L. 2009. Perbandingan algoritme stemming Porter dengan algoritme Nazief
& Adriani untuk stemming dokumen teks
bahasa Indoneia. Di dalam: Konferensi
Nasional Sistem dan Informatika; Bali, 14
November 2009. Bali: STIKOM KNS&I
2009. hlm 196-201.
Asian J. (2007). Effective techniques for
Indonesian text [tesis]. Melbourne :
School of Computer Science and
Information Technology Science,
Engineering, and Technology Portfolio,
RMIT University
Bruney A. 2006. Professional VSTO 2005:
Visual Studio 2005 Tools for Office. Indiana: Wiley.
Carter E, Lippert E. 2005. Visual Studio Tools
for Office: Using C# with Excel, Word,
Outlook, and InfoPath. Massachusetts:
Addison-Wesley.
Iqbal R. 2010. Pengembangan stemmer
berbasis Kamus Besar Bahasa Indonesia
[skripsi]. Bogor: Fakultas Matematika dan
Ilmu Pengetahuan Alam, Institut Pertanian
Bogor.
Manning CD, Raghavan P, Schütze H. 2008.
Introduction to Information Retrieval. England: Cambridge University Press.
McMilan M. 2007. Data Structures and
Algorithms Using C#. New York:
Cambridge University Press.
Olimpiyanto S. 2011. Pengembangan
framework dan fungsionalitas dasar add-in
Microsoft Office Word 2007 untuk
pengecekan format skripsi [skripsi].
Bogor: Fakultas Matematika dan Ilmu
Pengetahuan Alam, Institut Pertanian
Bogor.
LAMPIRAN
14
Lampiran 1 Rancangan ketentuan penulisan skripsi dengan format baru
Bahan dan Ukuran Kertas
Jenis kertas: HVS 80 gram;
Warna kertas: putih;
Ukuran kertas: A4 (21.0 cm 29.7 cm);
Peta, gambar, foto, diagram, sketsa, cetak biru (blue print), surat keputusan dan lainnya
dapat menggunakan jenis, warna, dan ukuran berbeda sesuai dengan kebutuhan.
Ketentuan pengetikan
Pias (margin) kiri dari bidang tulisan adalah 4 cm, sedangkan batas kanan, atas, dan bawah
masing-masing 3 cm.
Nomor halaman diketik di pojok atas kanan dengan batas kanan 3 cm dan batas atas 2 cm.
Naskah diketik pada halaman bolak-balik, termasuk bagian awal kecuali lembar pengesahan dan halaman penguji luar komisi harus saling berhadapan.
Jarak baris diketik 1 spasi.
Baris pertama dari paragraf menjorok 1 cm dari bidang tulisan sebelah kiri dan dibuat rata
kanan (justified).
Paragraf yang bertingkat, bernomor atau merupakan uraian dari paragraf sebelumnya,
ditulis dengan menjorok 0.5 cm dari paragraf di atasnya. Untuk paragraf bertingkat
berikutnya, baris pertama lebih menjorok lagi 0.5 cm dari paragraf di atasnya.
Pemberian nomor pada paragraf bertingkat adalah dengan (1), (2), (3), dan seterusnya;
tingkat kedua dengan a, b, c, dan seterusnya, tidak lebih dari 3 tingkatan.
Di tubuh tulisan, setiap bab baru tidak harus ditulis di halaman baru, termasuk penulisan
Daftar Pustaka.
Jarak dari judul ke kalimat pertama sebesar 2 spasi, jarak kalimat terakhir di Bab terakhir
ke Bab baru berikutnya sebesar 3 spasi.
Jenis huruf: Times New Roman dengan ukuran 12 poin untuk teks, judul bab 14 poin. Ada
pilihan jenis huruf lain untuk tampilan hasil komputer yaitu Courier New dengan ukuran 11
poin.
Nomor halaman dimulai dari Abstrak sampai Daftar Lampiran dinyatakan dengan i, ii, iii,
iv, dan seterusnya.
Penomoran halaman dimulai dari bab Pendahuluan dengan menggunakan angka arab 1, 2,
3, 4, dan seterusnya.;
Judul bab diketik dengan menggunakan huruf kapital, dicetak tebal (bold), tidak ada titik,
tidak digarisbawahi, boleh menggunakan angka arab tanpa titik, dan terletak di tengah-tengah (centered).
Judul subbab diketik dengan huruf kapital pada setiap awal kata, kecuali kata hubung
(seperti: dan, serta, oleh, dengan, untuk) dan kata depan (seperti: di, ke, dari, pada). Judul
subbab berjarak 2 spasi dari judul bab atau dari paragraf di atasnya dan 1 spasi dengan
paragraf di bawahnya. Judul subbab diketik di tengah.
Judul bagian diketik dengan huruf kapital pada setiap awal kata. Judul bagian berjarak 2
spasi dari judul subbab atau paragraf di atasnya dan 1 spasi dengan paragraf di bawahnya,
tidak diakhiri dengan titik, dan tidak digarisbawahi. Jika panjang judul bagian melebihi
lebar bidang tulisan, jadikan 2 baris atau lebih dengan jarak 1 spasi.
Menempatkan Tabel atau Gambar di posisi paling atas atau paling bawah halaman.
Warna Sampul
Warna sampul (cover) untuk skripsi berbeda-beda, yakni untuk Faperta: hijau, FKH: ungu,
FPIK: biru, Fapet: cokelat, Fahutan: abu-abu, Fateta: merah, FMIPA: putih, FEM: jingga,
FEMA: hijau khas;
Sampul tesis: merah tua;
Sampul disertasi: hitam.
15
Lanjutan
Jumlah Maksimum Kata dan Halaman
Skripsi tidak lebih dari 5000 kata;
Tesis tidak lebih dari 20 000 kata;
Disertasi sekurang-kurangnya 3 artikel atau publikasi;
Jumlah kata maksimum ini sudah mencakup lampiran;
Jika diperlukan, data mentah dimuat dalam CD untuk ditunjukkan kepada pembimbing dan
penguji dan tidak disertakan dalam karya tugas akhir untuk menghindari penyalahgunaan
data oleh pihak yang tidak bertanggung jawab.
Lembar Sampul
Jenis huruf Times New Roman dengan huruf kapital ukuran font 14;
Susunan kata pada judul membentuk segitiga terbalik dan tidak lebih dari 3 baris dengan
jarak 1 spasi;
Panjang judul tidak lebih dari 15 kata;
Jarak antara judul karya tulis dengan nama lengkap mahasiswa, dengan logo dan nama
departemen (atau Sekolah Pascasarjana) harus sesuai contoh lampiran;
Logo IPB berdiameter 2.5 cm, warna hitam.
16
Lampiran 2 Datar pengecekan pada tiap section
Section Bagian Pengecekan yang
dilakukan
Aturan yang dipakai
1. Halaman Sampul Umum Ukuran kertas
Jenis tulisan
Margin atas
Margin bawah
Margin dalam
Margin luar Orientasi kertas
A4
Times New Romance
12 cm
12 cm
12 cm
12 cm Portrait
Judul
Ukuran tulisan
Alignment
Bold
Allcaps
14 pt
Center
True
True
Nama penulis Ukuran tulisan
Alignment
Bold
Allcaps
14 pt
Center
True
True
Logo IPB Ukuran logo 2,5 cm x 2,5 cm
Nama Departemen,
fakultas, institut,
kota dan tahun
Ukuran tulisan Alignment
Bold
Allcaps
13 pt Center
True
True
2. Halaman Abstrak Umum Ukuran kertas
Jenis tulisan
Margin atas
Margin bawah
Margin dalam
Margin luar
Orientasi kertas
A4
Times New Romance
12 cm
12 cm
12 cm
12 cm
Portrait
Header Ukuran tulisan Alligment
Bold
Allcaps
14 pt Center
True
True
Paragraf pertama Ukuran tulisan
Alignment
Indentation first line
Spasi antar kalimat
12 pt
Justified
0 cm
Single
Paragraf kedua
dan ketiga
Ukuran tulisan
Alignment
Indentation first line
Spasi antar kalimat
12 pt
Justifed
1 cm
Single
3. Halaman judul Umum Ukuran kertas Jenis tulisan
Margin atas
Margin bawah
Margin dalam
Margin luar
Orientasi kertas
A4 Times New Romance
12 cm
12 cm
12 cm
12 cm
Portrait
Judul
Ukuran tulisan
Alignment
Bold
Allcaps
14 pt
Center
True
True
17
Lanjutan
Section Bagian Pengecekan yang
dilakukan
Aturan yang dipakai
Nama penulis Ukuran tulisan
Alignment
Bold
Allcaps
14 pt
Center
True
True
“Skripsi… “ Ukuran tulisan
Alignment
Bold
12 pt
Centre
false
Nama
Departemen, fakultas, institut,
kota dan tahun
Ukuran tulisan
Alignment Bold
Allcaps
13 pt
Center True
True
4. Halaman
Pengesahan
Umum Ukuran kertas
Jenis tulisan
Margin atas
Margin bawah
Margin dalam
Margin luar
Orientasi kertas
Ukuran tulisan
Spasi antar kalimat
A4
Times New Romance
12 cm
12 cm
12 cm
12 cm
Portrait
12 pt
Single
5. Halaman Riwayat
Hidup
Umum Ukuran kertas Jenis tulisan
Margin atas
Margin bawah
Margin dalam
Margin luar
Orientasi kertas
A4 Times New Romance
12 cm
12 cm
12 cm
12 cm
Portrait
Header Ukuran tulisan
Alligment
Bold
Allcaps
14 pt
Center
True
True
Paragraf Ukuran tulisan Alignment
Indentation first line
Spasi antar kalimat
12 pt Justified
1 cm
Single
6. Halaman Prakata Umum
Ukuran kertas
Jenis tulisan
Margin atas
Margin bawah
Margin dalam
Margin luar
Orientasi kertas
A4
Times New Romance
12 cm
12 cm
12 cm
12 cm
Portrait
Header Ukuran tulisan
Alligment Bold
Allcaps
14 pt
Center True
True
Paragraf Ukuran tulisan
Alignment
Indentation first line
Spasi antar kalimat
12 pt
Justified
1 cm
Single
18
Lanjutan
Section Bagian Pengecekan yang
dilakukan
Aturan yang dipakai
7. Daftar Isi Umum
Ukuran kertas
Jenis tulisan
Margin atas
Margin bawah
Margin dalam
Margin luar
Orientasi kertas
A4
Times New Romance
12 cm
12 cm
12 cm
12 cm
Portrait
Header Ukuran tulisan
Alligment
Bold
Allcaps
14 pt
Center
True
True
Body Ukuran tulisan
Bold
12 pt
False
8. Daftar Gambar,
Tabel, Lampiran
Umum
Ukuran kertas
Jenis tulisan
Margin atas Margin bawah
Margin dalam
Margin luar
Orientasi kertas
A4
Times New Romance
12 cm 12 cm
12 cm
12 cm
Portrait
Header
Ukuran tulisan
Alligment
Bold
Allcaps
14 pt
Center
True
True
Body Ukuran tulisan
Bold
12 pt
False
9. Tubuh Tulisan Umum
Ukuran kertas
Jenis tulisan Margin atas
Margin bawah
Margin dalam
Margin luar
Orientasi kertas
A4
Times New Romance 12 cm
12 cm
12 cm
12 cm
Portrait
Header level 1
Ukuran tulisan
Alligment
Bold
Allcaps
14 pt
Center
True
True
Header level 2
Ukuran tulisan
Alligment Bold
Allcaps
12 pt
Center True
True
Paragraf Ukuran tulisan
Alignment
Spasi antar kalimat
12 pt
Justified
Single
Gambar dan
Tabel
Posisi dan format
keterangan gambar
Posisi dan format
keterangan tabel
Ukuran tulisan
Bawah
Atas
12 pt
19
Lanjutan
Section Bagian Pengecekan yang
dilakukan
Aturan yang dipakai
10. Daftar Pustaka Umum
Ukuran kertas
Jenis tulisan
Margin atas
Margin bawah
Margin dalam
Margin luar
Orientasi kertas
A4
Times New Romance
13 cm
13 cm
13 cm
13 cm
Portrait
Header level 1
Ukuran tulisan Alligment
Bold
Allcaps
14 pt
Center
True
True
Daftar Pustaka Aturan-aturan
penulisan daftar
pustaka
20
Lampiran 3 Daftar string Regular Expression pengecekan daftar pustaka
Pattern Keterangan Regular Expressions
A Nama "^[a-zA-Z','-'\\s]{1,100}[-.$]" B Tahun "[0-9]{4}[-.$]" C Judul "^[\\w\\W+\\s(.$)]{1,1000}" E -D Nama jurnal &
halaman
"^[\w\W\s]*[0-9\s]{1,4}[:\s][0-9-\s]{1,10}[\.$]"
F -L Tempat terbit &
nama penerbit
"^[\\w\\W+\\s]{1,1000}[':'][\\w\\W+\\s]{1,1000}[-.$]"
G Nama editor "^[a-zA-Z''-''{''}''('')'','';'':''\\/''\\'\\s]{0,400}[','?] editor[-.$]"
H - I - J Judul publikasi,
tempat, tanggal
"^[\\w\\W+\\s]{1,1000}[';'?] [\\w\\W+\\s]{1,100}[','?][0-9'-'\\s]{1,7}[a-zA-Z\\s]{1,15}[0-9]{4}[-.$]"
I : O Tempat : nama
institusi
"^[\\w\\W+\\s]{1,1000}[':'][\\w\\W+\\s]{1,1000}[-.$]"
J Tanggal "^[0-9'-'\\s]{1,7}[A-Za-z\\s]{1,17}[0-9]{4}[-.$]"
M Deskripsi "^[\\w\\W+\\s]{1,1000}[-.$]" N Nomor abstrak "^[A-Za-z\\s]{1,20}[0-9]{1,5}[-.$]" O Nama Institusi "^[\\w\\W+\\s]{1,500}[-.$]" Q Keterangan "^[\\w\\W+\\s]{1,1000}[-.$]" R Url "http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?" S Nomor paten "^[\\w\\W+\\s]{1,400}[-.$]"
21
Lampiran 4 Hasil pengujian pengecekan ejaan
No Daftar pengujian Hasil yang diharapkan Keberhasilan
sistem
1 Pengecekan kata yang disaring
- Huruf kapital Tidak ada komentar Benar
- Angka Tidak ada komentar Benar
- Simbol Tidak ada komentar Benar
- Huruf miring Tidak ada komentar Benar
2 Pengecekan kata dalam KBBI dan
list Pengecualian
- Kata yang ada dalam KBBI Tidak ada komentar Benar - Kata yang ada dalam list
Pengecualian
Tidak ada komentar Benar
- Kata yang ada dalam KBBI tetapi
tidak ada dalam list Pengecualian
Tidak ada komentar Benar
- Kata yang ada dalam list
Pengecualian tetapi tidak ada
dalam KBBI
Tidak ada komentar Benar
3 Pengecekan stemming
- me-, me- kan, me-i Menghasilkan kata dasar Benar
- di-, di-kan, di-i Menghasilkan kata dasar Benar
- diper-kan, diper-i Menghasilkan kata dasar Benar
- ke-an, ke-i Menghasilkan kata dasar Benar
- memper-kan, memper-i Menghasilkan kata dasar Benar
- se-, se-nya Menghasilkan kata dasar Benar - ter-, ter-an Menghasilkan kata dasar Benar
- -nya, -ku, -mu, -an Menghasilkan kata dasar Benar
- -lah, -kah, -kan Menghasilkan kata dasar Benar
- Kata yang memiliki 2 akhiran Menghasilkan kata dasar Benar
- Kata yang memiliki 2 awalan Menghasilkan kata dasar Benar
- Dua kata yang digabung Tidak ada komentar Benar
- Kata dasar yang meluruh ketika
diberi awalan
Menghasilkan kata dasar Benar
22
Lampiran 3 Hasil pengujian pengecekan format
No Daftar pengujian yang
dilakukan
Hasil yang diharapkan Hasil dari sistem
1 Pengujian Umum
- Ukuran kertas harus A4 Memberikan komentar
kesalahan ketika ukuran salah
Benar
- Margin kertas Memberikan komentar
kesalahan ketika margin salah
Benar
- Jenis tulisan Memberikan komentar
kesalahan ketika jenis tulisan salah
Benar
- Orientasi kertas Memberikan komentar
kesalahan ketika orientasi
kertas salah
Benar
2 Judul dan Header
- Ukuran tulisan Memberikan komentar
kesalahan ketika ukuran
tulisan salah
Benar
- Cetak tebal Memberikan komentar
kesalahan ketika tidak cetak
tebal
Benar
- Alignment tulisan Memberikan komentar
kesalahan ketika alignment salah
Benar
3 Body tulisan atau paragraf
- Ukuran tulisan Memberikan komentar
kesalahan ketika ukuran
tulisan salah
Benar
- Alignment tulisan Memberikan komentar
kesalahan ketika alignment
salah
Benar
- Baris pertama paragraf Memberikan komentar
kesalahan ketika baris pertama
tidak menjorok ke dalam
Benar
- Jarak antar baris Memberikan komentar
kesalahan ketika jarak antar baris salah
Benar
4 Pengecekan logo IPB
- Ukuran logo Memberikan komentar
kesalahan ketika ukuran logo
salah
Benar
5 Pengecekan gambar dan tabel
- Posisi keterangan
Memberikan komentar
kesalahan jika posisi
keterangan tidak berada di
bawah gambar atau di atas
tabel
Benar
- Format penulisan
keterangan
Memberikan komentar
kesalahan pada format
penulisan keterangan tabel
atau keterangan gambar yang
salah
Benar
23
Lampiran 4 Pengujian White Box pada Sistem
1. Tabel Pengujian white box fungsi SpellCheck
Flow Graph Source Code
internal void SpellCheckPerSection(Word.Range
ranget){
(1) ProcessBar UIProcess = new ProcessBar(); (1) StemmingWord stemming = new StemmingWord(); (1) object missing =
System.Reflection.Missing.Value;
(1) int count = ranget.Words.Count; (1) readTextIgnore(); (1) readKBBIwordList(); (1) UIProcess.setMax(count); (1) UIProcess.Visible = true; (1) int NextWord = 0; (2) foreach (Word.Range range in ranget.Words){ (3) if (range.Text != null){ (4) string kata = range.Text.Trim(); (4) NextWord++; (4) UIProcess.progressBar(NextWord); (4) UIProcess.messageBoxProses(range.Text);
(5) if (kata != "" && range.Font.Italic != -1
&& wordCheck(kata) == 0 && kata.Length >
2){
(6) if (CheckToKBBIlistWord(kata) == 0) {
(7) if (CheckToIgnoreList(kata) != 1){
(8) kata = stemming.NAZIEF(kata);
(9) if (CheckToKBBIlistWord(kata) == 0) {
(10) Word.Comment komentar =
ranget.Comments.Add(range, ref missing);
(10) string[] suggestWord = { "tidak ada", "",
"" };
(10) suggestWord = SpellCheckSuggestWord(range);
(10) komentar.Range.Text = "Periksa kembali ejaan ! " +suggestWord[0] + " "+
suggestWord [1] + " " +
suggestWord[2];}}}}}}
(11) UIProcess.Visible = false;}
Base path
1. 1-2-3-2-11
2. 1-2-3-4-5-2-11
3. 1-2-3-4-5-6-2-11
4. 1-2-3-4-5-6-7-2-11
5. 1-2-3-4-5-6-7-8-9-2-11
6. 1-2-3-4-5-6-7-8-9-10-2-11
7. 1-2-3-2-11
8. 1-2-3-4-5-2-11
9. 1-2-3-4-5-6-2-11
10. 1-2-3-4-5-6-7-2-11
11. 1-2-3-4-5-6-7-8-9-2-11
12. 1-2-3-4-5-6-7-8-9-10-2-11
24
Lanjutan
2. Tabel Pengujian white box pada fungsi stemming Nazief
Flow Graph Source Code
public string NAZIEF(string kata){
(1) string kataAsal = kata;
(1) readKBBIwordList();
(2) kata = DelInflectionSuffixes(kata);
(3) kata = DelDerivationSuffixes(kata);
(4) kata = DelDerivationPrefix(kata);
(5) return kata;}
Base path
1. 1-2-3-4-5
3. Tabel pengujian white box pada fungsi DelInflectionSuffixes
Flow Graph Source Code
public string DelInflectionSuffixes(string kata){
(1) string kataAsal = kata;
(2) if (Regex.IsMatch(kata,
"([km]u|nya|[kl]ah|pun)$")) {
(3) string _kata = Regex.Replace(kata,
"([km]u|nya|[kl]ah|pun)$", "");
(4) if (Regex.IsMatch(kata, "([klt]ah|pun)$")) {
(5) if (Regex.IsMatch(_kata, "([km]u|nya)$")) {
(6) string _kata_ = Regex.Replace(_kata,
"([km]u|nya)$", "");
(7) return _kata_;}}
(8) return _kata;}
(9) return kataAsal;}
Base path
1. 1-2-9
2. 1-2-3-4-8
3. 1-2-3-4-5-6-7
25
Lanjutan
4. Tabel Pengujian white box pada fungsi CekPrefixDissalowedSuffixes
Flow Graph Source Code
public bool CekPrefixDisallowedSuffixes(string kata){
(1) if (Regex.IsMatch(kata,
"^(be)[[:alpha:]]+(i)")) {
(5) return true;}
(2) if (Regex.IsMatch(kata,
"^(di)[[:alpha:]]+(an)")) {
(5) return true;}
(3) if (Regex.IsMatch(kata,
"^(ke)[[:alpha:]]+(i|kan)")) {
(5) return true;}
(4) if (Regex.IsMatch(kata,
"^(se)[[:alpha:]]+(i|kan)")) {
(5) return true;}
(6) return false;}
Base path
1. 1-6
2. 1-2-6
3. 1-2-3-6
4. 1-2-3-4-5
5. 1-2-3-4-6
5. Tabel Pengujian white box pada fungsi DelDerivationSuffixe
Flow Graph Source Code
public string DelDerivationSuffixes(string kata){
(1) string kataAsal = kata;
(2) if (Regex.IsMatch(kata, "(i|an)$")) {
(3) string _kata = Regex.Replace(kata, "(i|an)$", "");
(4) if (CheckToKBBIlistWord(_kata) != 0) {
(5) return _kata;}
(6) if (Regex.IsMatch(kata, "(kan)$")) {
(7) string _kata_ = Regex.Replace(kata, "(kan)$", "");
(8) if (CheckToKBBIlistWord(_kata_) != 0){
(9) return _kata_;}}
(10) if (CekPrefixDisallowedSuffixes(kata)){
(11) return kataAsal;}}
(12) return kataAsal;}
Base path
1. 1-2-12
2. 1-2-3-4-5
3. 1-2-3-4-6-7-8-9
4. 1-2-3-4-6-10-11
26
Lanjutan
6. Tabel Pengujian white box pada fungsi SectionCheck
Flow Graph
Source Code
public void CheckEachSection(){
(1) int totalSection =
Globals.ThisAddIn.Application.ActiveDocument.Sections.Count
;
(2) if (totalSection != 11){
(3) MessageBox.Show("Total section harus lengkap (11), Proses
dihentikan !");}
(4) else{
(4) object startIndex = 0;
(4) object endIndex = 0;
(4) int kesalahan = 0;
(4) object missingValue = System.Reflection.Missing.Value;
(4) Word.Document wordDocument =
Globals.ThisAddIn.Application.ActiveDocument;
(4) Word.Range Range =
Globals.ThisAddIn.Application.ActiveDocument.Range(ref
missingValue, ref missingValue);
(4) Word.Range Range2 =
Globals.ThisAddIn.Application.ActiveDocument.Range(ref
startIndex, ref endIndex);
(4) Range2.Select();
(4) Word.Range PageRange =
Globals.ThisAddIn.Application.ActiveDocument.Range(ref
missingValue, ref missingValue);
27
Lanjutan
(4) Word.Bookmark PageBookmark;
(4) object EndOfPage = @"\page";
(4) object wdWhat = WdGoToItem.wdGoToPage;
(4) object wdWhich = Word.WdGoToDirection.wdGoToNext;
(4) int TotalPages =
Range.ComputeStatistics(WdStatistic.wdStatisticPages);
(4) int currentPage, NumberOfSection;
(5) for (currentPage = 1; currentPage <= TotalPages;
currentPage++){
(6) object count = (object)currentPage;
(6) Range = wordDocument.Bookmarks.get_Item(ref
EndOfPage).Range;
(6) PageBookmark = wordDocument.Bookmarks.get_Item(ref
EndOfPage);
(6) NumberOfSection =
(int)PageBookmark.Range.get_Information(WdInformation.wdActi
veEndSectionNumber);
(7) switch (NumberOfSection){
(8) case 1:
(8) SectionOneCheck sOneCheck = new SectionOneCheck();
(8) sOneCheck.SectionOne(PageBookmark, kesalahan, currentPage);
(8) kesalahan = sOneCheck.jumlahKesalahan();
(8) break;
(9) case 2:
(9) SectionTwoCheck sTwoCheck = new SectionTwoCheck();
(9) sTwoCheck.SectionTwo(PageBookmark, kesalahan, currentPage);
(9) kesalahan = sTwoCheck.jumlahKesalahan();
(9) break;
(10) case 3:
(10) SectionThreeCheck sThreeCheck = new SectionThreeCheck();
(10) sThreeCheck.SectionThree(PageBookmark, kesalahan,
currentPage);
(10) kesalahan = sThreeCheck.jumlahKesalahan();
(10) break;
(11) case 4:
(11) SectionFourCheck sFourCheck = new SectionFourCheck();
(11) sFourCheck.SectionFour(PageBookmark, kesalahan,
currentPage);
(11) kesalahan = sFourCheck.jumlahKesalahan();
(11) break;
(12) case 5:
(12) SectionFiveCheck sFiveCheck = new SectionFiveCheck();
(12) sFiveCheck.SectionFive(PageBookmark, kesalahan,
currentPage);
(12) kesalahan = sFiveCheck.jumlahKesalahan();
(12) break;
(13) case 6:
(13) SectionSixCheck sSixCheck = new SectionSixCheck();
(13) sSixCheck.SectionSix(PageBookmark, kesalahan, currentPage);
(13) kesalahan = sSixCheck.jumlahKesalahan();
(13) break;
(14) case 7:
(14) SectionSevenCheck sSevenCheck = new SectionSevenCheck();
(14) sSevenCheck.SectionSeven(PageBookmark, kesalahan,
currentPage);
(14) kesalahan = sSevenCheck.jumlahKesalahan();
(14) break;
28
Lanjutan
(15) case 8:
(16) SectionEightCheck sEightCheck = new SectionEightCheck();
(15) sEightCheck.SectionEight(PageBookmark, kesalahan,
currentPage);
(15) kesalahan = sEightCheck.jumlahKesalahan();
(15) break;
(16) case 9:
(16) SectionNineCheck sNineCheck = new SectionNineCheck();
(16) sNineCheck.SectionNine(PageBookmark, kesalahan,
currentPage);
(16) kesalahan = sNineCheck.jumlahKesalahan();
(16) break;
(17) case 10:
(17) SectionTenCheck sTenCheck = new SectionTenCheck();
(17) sTenCheck.SectionTen(PageBookmark, kesalahan, currentPage);
(17) break;}
(18) Range = PageRange.GoTo(ref wdWhat, ref wdWhich, ref count,
ref missingValue);
(18) Range.Select();}}}
Base Path:
1. 1-2-3
2. 1-2-4-5-6-7-8-18
3. 1-2-4-5-6-7-9-18
4. 1-2-4-5-6-7-10-18
5. 1-2-4-5-6-7-10-18
6. 1-2-4-5-6-7-11-18
7. 1-2-4-5-6-7-12-18
8. 1-2-4-5-6-7-13-18
9. 1-2-4-5-6-7-14-18
10. 1-2-4-5-6-7-15-18
11. 1-2-4-5-6-7-16-18
12. 1-2-4-5-6-7-17-18