14
APLIKASI PEMERIKSA KEBENARAN KATA (SPELLING CHECKER) BAHASA INDONESIA PADA TEKS ARTIKEL BERBAHASA INDONESIA oleh: Gregorius S. Budhi 1 ; Irwan Kristanto J. 2 ; Elvi Suhartono 3 1) Dosen tetap UK Petra Surabaya jurusan Teknik Informatika email: [email protected] 2) Dosen tetap UK Petra Surabaya jurusan Teknik Informatika email: [email protected] 3) Alumni UK Petra Jurusan Teknik Informatika ABSTRAK Seperti halnya bahasa-bahasa lainnya, bahasa Indonesia juga memiliki struktur yang membentuk bahasa tersebut sehingga banyak orang dapat memahaminya. Tetapi pada penerapannya dalam tulisan, banyak orang yang masih salah saat menulis kata bahasa indonesia. Dari sini muncul ide pembuatan sebuah aplikasi untuk memeriksa kata dalam bahasa Indonesia yang benar dari sebuah inputan berbentuk teks. Secara garis besar program ini melakukan proses scanner kata. Proses ini berfungsi untuk memeriksa tiap kata dari teks input. Perangkat lunak memerlukan paling sedikit 10.000 kosakata agar proses pemeriksaan kata semakin variatif. Proses scanner dapat menerima kata tunggal, kata ulang, serta kata-kata yang memiliki format tertentu, misalnya format tanggal dan sebagainya. Aplikasi ini dibuat menggunakan Delphi 6, dan database kata disimpan pada MS. Access 2000. Hasil dari proses scanner berupa semua kalimat yang tiap katanya benar, semua kalimat yang memiliki kesalahan pada katanya, daftar kata – kata yang salah dan sebuah daftar yang berisi beberapa kata yang disarankan sebagai pengganti kata salah yang diperiksa. Kata kunci: Bahasa Indonesia, Pemeriksaan Kata, Spelling Checker 1. Pendahuluan Seperti halnya bahasa-bahasa lainnya, bahasa Indonesia juga memiliki struktur yang membentuk bahasa tersebut sehingga bahasa tersebut dapat dipahami oleh banyak orang. Dalam bahasa Indonesia, terdapat huruf-huruf, kata-kata, dan kalimat-kalimat dimana kumpulan huruf-huruf membentuk kata, kumpulan kata 1

Irwan Kristanto J.; Elvi Suhartono. Aplikasi Pemeriksa Kebenaran Kata

Embed Size (px)

Citation preview

Page 1: Irwan Kristanto J.; Elvi Suhartono. Aplikasi Pemeriksa Kebenaran Kata

APLIKASI PEMERIKSA KEBENARAN KATA (SPELLING CHECKER) BAHASA INDONESIA PADA TEKS ARTIKEL

BERBAHASA INDONESIA

oleh:Gregorius S. Budhi1 ; Irwan Kristanto J.2 ; Elvi Suhartono3

1) Dosen tetap UK Petra Surabaya jurusan Teknik Informatikaemail: [email protected]

2) Dosen tetap UK Petra Surabaya jurusan Teknik Informatikaemail: [email protected]

3) Alumni UK Petra Jurusan Teknik Informatika

ABSTRAKSeperti halnya bahasa-bahasa lainnya, bahasa Indonesia juga memiliki struktur yang membentuk bahasa tersebut sehingga banyak orang dapat memahaminya. Tetapi pada penerapannya dalam tulisan, banyak orang yang masih salah saat menulis kata bahasa indonesia. Dari sini muncul ide pembuatan sebuah aplikasi untuk memeriksa kata dalam bahasa Indonesia yang benar dari sebuah inputan berbentuk teks.Secara garis besar program ini melakukan proses scanner kata. Proses ini berfungsi untuk memeriksa tiap kata dari teks input. Perangkat lunak memerlukan paling sedikit 10.000 kosakata agar proses pemeriksaan kata semakin variatif. Proses scanner dapat menerima kata tunggal, kata ulang, serta kata-kata yang memiliki format tertentu, misalnya format tanggal dan sebagainya. Aplikasi ini dibuat menggunakan Delphi 6, dan database kata disimpan pada MS. Access 2000.Hasil dari proses scanner berupa semua kalimat yang tiap katanya benar, semua kalimat yang memiliki kesalahan pada katanya, daftar kata – kata yang salah dan sebuah daftar yang berisi beberapa kata yang disarankan sebagai pengganti kata salah yang diperiksa.

Kata kunci:Bahasa Indonesia, Pemeriksaan Kata, Spelling Checker

1. PendahuluanSeperti halnya bahasa-bahasa lainnya, bahasa Indonesia juga memiliki struktur yang

membentuk bahasa tersebut sehingga bahasa tersebut dapat dipahami oleh banyak

orang. Dalam bahasa Indonesia, terdapat huruf-huruf, kata-kata, dan kalimat-kalimat

dimana kumpulan huruf-huruf membentuk kata, kumpulan kata membentuk kalimat

kumpulan kalimat membentuk paragraf, dan seterusnya.

Pada penerapannya dalam tulisan, banyak orang yang masih salah saat menuliskan

kata – kata dalam bahasa Indonesia. Dari sini muncul ide pembuatan sebuah program

aplikasi untuk memeriksa kebenaran kata – kata yang ditulis dalam bahasa Indonesia.

Atau dengan kata lain sebuah Spelling Checker untuk bahasa Indonesia.

1

Page 2: Irwan Kristanto J.; Elvi Suhartono. Aplikasi Pemeriksa Kebenaran Kata

2. Teori Penunjang2.1. Tata Bahasa Baku Bahasa IndonesiaTatabahasa Indonesia terdiri atas tiga unsur, yaitu fonologi, morfologi, dan sintaksis[4].

Dalam aplikasi ini, hanya morfologi yang diterapkan.

2.1.1. MorfologiBagian dari tatabahasa yang membahas bentuk kata disebut morfologi. Didalam

morfologi dikenal istilah morfem, dimana morfem adalah kesatuan yang ikut serta

dalam pembentukkan kata dan yang dapat dibedakan artinya[4].

2.1.2. KataKata adalah kesatuan terkecil dalam tatabahasa yang mengandung suatu ide[3].

Berdasarkan bentuknya kata dapat dibagi menjadi: Kata Dasar, Kata Berimbuhan,

Kata Ulang, Kata Majemuk[3]. Berdasarkan jenisnya kata dapat dibagi menjadi: Kata

Benda (Nomina), Kata Kerja (Verba), Kata Sifat (Adjektiva), Kata Keterangan

(Adverbia), Kata Ganti (Pronomina), Kata Bilangan (Numeralia), Kata Depan

(Preposisi) dan Kata Sambung (Konjungsi) [3].

2.1.3. Imbuhan (Afiks)Imbuhan adalah suatu unsur struktural yang diikatkan pada sebuah kata dasar.

Imbuhan terbagi atas: Awalan (Prefiks), Sisipan (Infiks), Akhiran (Sufiks), Konfiks dan

Gabungan imbuhan yaitu pemakaian beberapa imbuhan sekaligus pada suatu kata

dasar[3].

3. DESAIN APLIKASIDesain dari aplikasi ini dapat dilihat pada gambar 1.

Gambar 1: Desain Aplikasi

2

Page 3: Irwan Kristanto J.; Elvi Suhartono. Aplikasi Pemeriksa Kebenaran Kata

3.1. Pemilahan LexemePada proses pemilihan ini, inputan teks akan dipilahpilahkan berdasarkan kriteria

tertentu, yaitu:

- Kumpulan angka, akan dipisahkan menjadi satu lexeme tersendiri. Misalnya: “1”,

“23”, “222” dan sebagainya.

- Kumpulan huruf, akan dipisahkan menjadi satu lexeme tersendiri. Misalnya “abc”,

“saya”, “makan” dan sebagainya.

- Gabungan angka dan tanda, seperti angka dengan tanda “.”, tanda “/”, serta

tanda “,” akan dipisahkan menjadi satu lexeme tersendiri. Misalnya “123.000”,

“1.550,00”, “1/2”, “100,5” dan sebagainya.

- Gabungan huruf dengan angka, akan dipisahkan menjadi satu lexeme tersendiri.

Misalnya: “as31asd23”, “a2da32” dan sebagainya.

- Tanda baca. Masing-masing tanda akan menjadi suatu lexeme tersendiri. Terdiri

atas tanda-tanda baca yang berlaku menurut tata bahasa Indonesia, yaitu tanda

spasi (“ “), tanda titik (“.”), tanda seru (“!”), tanda tanya (“?”), tanda koma (“,”), tanda

titik koma (“;”), tanda titik dua (“:”), tanda hubung (“-“), tanda petik dua (“ “ ”), dan

tanda garis miring (“/”).

Setelah memilah-milahkan inputan menurut kriteria yang ada, maka lexeme-lexeme

yang telah dipilah akan dimasukkan ke dalam penyimpan variabel lexeme.

3.2. Proses Penentuan Jenis TokenSecara garis besar token terdiri dari bagian:

- Separator, terdiri atas tanda baca. Masing-masing tanda baca dianggap sebagai

sebuah token, seperti misalnya token “titik”, “spasi”, “koma”, “tanda tanya” dan

sebagainya

- Kata, token ini masih dibedakan lagi ke dalam jenis-jenis kata. Di dalam jenis token

kata ini terdapat format-format lexeme tertentu yang juga termasuk di dalam token

kata, antara lain:

Angka, dimana angka ini dapat berupa angka romawi maupun arab. Lexeme

dengan format angka ini berjenis kata: numeralia.

Tanggal. Nama. Lexeme yang merupakan nama akan berjenis kata pronomina.

Identifier, yang termasuk ke dalam token ini adalah lexeme-lexeme yang tidak

termasuk ke dalam jenis token lainnya.

3

Page 4: Irwan Kristanto J.; Elvi Suhartono. Aplikasi Pemeriksa Kebenaran Kata

Pada Proses Penentuan Token ini, terdapat prosedur pemeriksaan jenis token, yaitu:

1. Proses pemeriksaan kata ulang, Proses ini digunakan untuk memeriksa kata

ulang. Flowchart dari proses ini dapat dilihat pada gambar 4.

Gambar 2: Flowchart Proses pemeriksaan kata ulang

2. Proses pemeriksaan format angka romawi, angka arab dan tanggal. Untuk

pemeriksaan format ini di disain tiga buah Deterministic Finite Automaton (DFA)

yang dapat dilihat di gambar 3 sampai dengan gambar 5.

Gambar 3: DFA Proses Pemeriksaan Format Angka Arab

Gambar 4: DFA Proses Pemeriksaan Format Tanggal

Gambar 5: DFA Proses Pemeriksaan Format Angka Romawi

4

Page 5: Irwan Kristanto J.; Elvi Suhartono. Aplikasi Pemeriksa Kebenaran Kata

3. Proses Normalisasi. Pada proses normalisasi ini lexeme akan diperiksa apakah

merupakan kata turunan (bentuk dasar yang telah mengalami penambahan

imbuhan). Flowchart dari proses Normalisasi ini dapat dilihat pada gambar 6.

Gambar 6: Flowchart Proses Normalisasi

Didalam proses normalisasi ini ada beberapa proses pemeriksaan kata, yaitu:

a. Pemeriksaan Partikel dan Klitika. Awalnya Lexeme diperiksa terlebih dahulu

apakah mengandung sebuah partikel atau tidak. Kalau mengandung partikel,

maka partikel akan dipisahkan dari lexeme lalu disimpan sebagai satu lexeme

tersendiri. Pemeriksaan selanjutnya adalah apakah lexeme tersebut

mengandung klitika. Kalau mengandung klitika, maka klitika akan dipisahkan

dari lexeme lalu disimpan sebagai satu lexeme tersendiri. Flowchart dari proses

ini dapat dilihat pada gambar 9.

Gambar 7: Flowchart pemeriksaan Partikel dan Klitika

b. Pemeriksaan Awalan dan Nasalisasi. Lexeme akan diperiksa apakah

menggunakan awalan apa tidak. Selain itu, juga diperiksa apakah awalan

tersebut memang boleh digunakan pada kata dasar atau tidak. Pemeriksaan

5

Page 6: Irwan Kristanto J.; Elvi Suhartono. Aplikasi Pemeriksa Kebenaran Kata

awalan pada lexeme ini juga termasuk pemeriksaan Nasalisasi dan Peluluhan.

Flowchart dari proses ini dapat dilihat pada gambar 8 sampai dengan 12.

Gambar 8: Flowchart pemeriksaan Awalan dan Nasalisasi

Gambar 9: Flowchart pemeriksaan Awalan dan Nasalisasi (lanjutan)

Gambar 10: Flowchart pemeriksaan Awalan dan Nasalisasi (lanjutan)

Gambar 11: Flowchart pemeriksaan Awalan dan Nasalisasi (lanjutan)

Gambar 12: Flowchart pemeriksaan Awalan dan Nasalisasi (lanjutan)

6

Page 7: Irwan Kristanto J.; Elvi Suhartono. Aplikasi Pemeriksa Kebenaran Kata

c. Pemeriksaan Akhiran. Lexeme akan diperiksa apakah menggunakan akhiran

apa tidak. Selain itu, juga diperiksa apakah akhiran tersebut boleh digunakan

pada kata dasar atau tidak. Flowchart proses ini dapat dilihat pada gambar 13.

d. Pemeriksaan Sisipan. Lexeme akan diperiksa apakah menggunakan sisipan

apa tidak. Kemudian diperiksa apakah sisipan tersebut boleh dipergunakan

pada kata dasar atau tidak. Flowchart proses ini dapat dilihat pada gambar 14.

Gambar 13: Flowchart pemeriksaan Akhiran

Gambar 14: Flowchart pemeriksaan Sisipan

e. Pemeriksaan Konfiks dan Gabungan Imbuhan. Pertama-tama lexeme akan

diperiksa apakah menggunakan konfiks atau tidak. Selain itu, juga diperiksa

apakah konfiks tersebut boleh digunakan atau tidak. Kemudian lexeme akan

diperiksa apakah menggunakan gabungan imbuhan atau tidak, dan juga

diperiksa apakah gabungan imbuhan tersebut memang boleh digunakan atau

tidak. Flowchart dari proses ini dapat dilihat pada gambar 15 dan gambar 16.

Gambar 15: Flowchart pemeriksaan Konfiks dan Gabungan Imbuhan

Gambar 16: Flowchart pemeriksaan Konfiks dan Gabungan Imbuhan

(lanjutan)

7

Page 8: Irwan Kristanto J.; Elvi Suhartono. Aplikasi Pemeriksa Kebenaran Kata

3.3. Database Kosa KataDatabase Kosa Kata yang digunakaan untuk menyimpan daftar kata, jenis kata dan

imbuhan yang dapat dikenakan pada setiap kata, terdiri dari dua buah tabel dengan

relasi one to one, seperti terlihat pada gambar 17.

Gambar 17: Database Kosa Kata

3.4. Penanganan Kata yang Salah1. Apabila pada lexeme telah dilakukan pemeriksaan imbuhan (Normalisasi) tetapi

tetap tidak ditemukan kata dasar dari lexeme tersebut, maka lexeme tersebut akan

dianggap sebagai kata dasar yang salah. Langkah berikutnya adalah melakukan

pencarian semua kata yang mirip dengan lexeme tersebut pada database Kosa

Kata kemudian menampilkannya sebagai saran.

2. Sedangkan untuk lexeme yang mengalami kesalahan pada pemakaian imbuhan

akan dianggap sebagai kata yang salah pula. Bila terjadi kesalahan seperti ini,

maka aplikasi akan memberikan peringatan pada user bahwa “Telah terjadi

kesalahan pada penggunaan Imbuhan”.

8

Page 9: Irwan Kristanto J.; Elvi Suhartono. Aplikasi Pemeriksa Kebenaran Kata

4. PENGUJIANPengujian dilakukan untuk menguji apakah fungsi – fungsi pemeriksaan kata dan

imbuhan sudah benar. Serta untuk menguji apakah Desain DFA untuk memeriksa

format Angka Arab, Angka Romawi dan tanggal sudah benar. Peralatan yang

digunakan dalam pengujian ini adalah sbb:

Stand Alone PC : Processor AMD Atlon, RAM 256Mb

Compiler : Delphi 6

Database : MS. Access 2000

Hasil dari pengujian dapat dilihat pada Tabel 1.

Tabel 1: Hasil Pengujian

No. Input TextHasil Pengujian

KeteranganKalimatsalah

Kata salah Kata Saran

1 Makn Makn Makn

abaimana, bagaimana, bakwan,makan, dsb.

Untuk kata yang salah akan dicarikan padanan yang mirip dari data kata yang ada dalam database, atau dapat juga user yang memberikan inputan pengganti.

2 as22aa Identifier, tidak ada kata yang salah.

3Abudmaknbakwan.

Abudmaknbakwan.

Abudabad, abadi, abdi, absurd, abu, dsb.

Dapat dianggap benar oleh user dengan cara menekan tombol “Abaikan”

makn

abaimana, bagaimana, bakwan,makan, dsb.

Untuk membenarkan kata yang salah ini, user dapat menekan tombol “Abaikan” atau mengubahnya dengan memakai saran yang ada / inputan dari user dengan menekan tombol “Ubah

4 Saya memakan bakwan. Tidak ada kata yang salah.

6Saya memakanbakwan. Roti dimakan Abud.

Roti dimakan Abud.

Abudabad, abadi, abdi, absurd, abu, dsb.

Dapat dianggap benar oleh user dengan cara menekan tombol “Abaikan”.

7 III Format Angka Romawi benar, tidak ada kata yang salah.

8 IIIV IIIVadministrasi,afiliasi, investigasi, dsb.

Susunan angka romawi ini tidak benar, kata yang dimasukkan tidak dianggap sebagai angka romawi tetapi sebagai kumpulan huruf I dan V. Kata salah.

903-11-2004 sampai dengan 11/12/04

03-11-2004 sampai dengan 11/12/04

sampaidadaisme, damai, sabit, saga, saja, dll

Format Tanggal benar, tapi kata ‘sampai’ salah, karena kata tersebut belum ada pada database Kosa Kata. Dapat dianggap benar dengan cara menekan tombol “Abaikan”.

dengandaerah, dalang, sandera, sandung, dst.

Kata ‘dengan’ dianggap salah karena belum ada pada database Kosa Kata.

10Tes tes tes 1, 2, 3, ini pengujian dan percobaan !

Tidak ada kata yang salah.

9

Page 10: Irwan Kristanto J.; Elvi Suhartono. Aplikasi Pemeriksa Kebenaran Kata

5. KESIMPULAN - Semakin banyak Kosa Kata Dasar yang ada database Kosa Kata akan

meningkatkan kemampuan apliksi ini dalam memeriksa variasi kata inputan.

- Dari Pengujian didapat hasil bahwa desain DFA untuk memeriksa format tanggal,

angka romawi, serta angka arab pada aplikasi ini sudah benar.

- Dari Pengujian didapat hasil bahwa fungsi-fungsi untuk memeriksa jenis kata,

imbuhan kata ulang, identifier, imbuhan dan nasalisasi sudah benar.

- Dari hasil pengujian ditemukan bahwa identifier yang memiliki bentuk kata mirip

dengan salah satu kata dasar pada tabel kosa kata akan menyebabkan sistem

mengganggap indentifier tersebut sebagai kata yang salah.

- Dari hasil pengujian secara keseluruhan dapat disimpulkan bahwa program aplikasi

ini dapat digunakan untuk memeriksa kebenaran kata bahasa Indonesia.

DAFTAR PUSTAKA1. Cohen, Daniel I. A. Introduction to Computer Theory. Rev. ed. John Wiley & Sons,

Inc, 1991.

2. Carrol, John, Long, Darrell, Theory Of Finite Automata With An Introduction To

Formal Language, Prentice Hall Int. 1989

3. Pusat Pembinaan dan Pengembangan Bahasa Dep P dan K RI. Pedoman Umum

Ejaan Bahasa Indonesia yang Disempurnakan. Ed. ke 2. Jakarta: Grasindo, 1993.

4. Dep P dan K RI. Tata Bahasa Baku Bahasa Indonesia. Cet. ke 3. Jakarta: Perum

Balai Pustaka, 1992.

Gregorius S. Budhi, memperoleh gelar S.T. dari Teknik Elektro ITATS Surabaya

tahun 1993. Tahun 2001 memperoleh gelar M.T. dari Teknik Informatika ITS Surabaya.

Saat ini sebagai staf pengajar tetap Teknik Informatika UK Petra, Surabaya.

Irwan Kristanto J., memperoleh gelar S.T. dari Teknik Industri UK Petra Surabaya

dan gelar S.Kom dari Teknik informatika STTS Surabaya pada tahun 1997. Saat ini

sebagai staf pengajar tetap Teknik Informatika UK Petra, Surabaya.

Elvi Suhartono, memperoleh gelar S.Kom dari Teknik Informatika UK Petra Surabaya

tahun 2004. Saat ini sebagai staf karyawan sebuah perusahaan swasta di Surabaya.

10