TA : Rancang Bangun Program Aplikasi Kamus Bahasa Jepang Berbasis Pocket PC.

(1)

Oleh :

Nama : Hamzah Rizaldy

NIM : 97410105001

Program : S1 (Strata Satu) Jurusan : Sistem Informasi

SEKOLAH TINGGI

MANAJEMEN INFORMATIKA & TEKNIK KOMPUTER SURABAYA


(2)

DAFTAR ISI

Halaman

ABSTRAKSI ... ii

KATA PENGANTAR ... iv

DAFTAR ISI ... v

DAFTAR TABEL ... vii

DAFTAR GAMBAR ... viii

BAB I PENDAHULUAN ... 1

1.1. Latar Belakang Masalah ... 1

1.2. Perumusan Masalah ... 3

1.3. Pembatasan Masalah ... 4

1.4. Tujuan ... 5

1.5. Sistematika Penulisan ... 6

BAB II LANDASAN TEORI ... 8

2.1. Japanese Orthography ... 8

2.2. Unicode Character Encoding System ... 12

2.3. Unistroke Kanji ... 13

2.4. Pocket PC ... 18

2.5. Windows CE API ... 20

2.6. Microsoft eMbedded Visual Basic 3.0 ... 20

2.7. Microsoft SQL Server CE 2.0 ... 23

BAB III PERANCANGAN SISTEM ... 26

3.1. Flowchart Sistem ... 26


(3)

Halaman

3.2. Struktur Database ... 52

3.3. Desain User Interface ... 54

3.4. Algoritma ... 72

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM ... 90

4.1. Implementasi Sistem ... 90

4.2. Pengujian Sistem ... 103

BAB V PENUTUP ... 115

5.1. Kesimpulan ... 115

5.2. Saran ... 115

DAFTAR PUSTAKA ... 116

LAMPIRAN ... 117


(4)

DAFTAR TABEL

Halaman

Tabel 2.1. Hiragana dan Katakana beserta Romajinya ... 11

Tabel 2.2. Kanji stroke order rules ... 13

Tabel 2.3 Contoh perhitungan pengkodean Unistroke Kanji ... 17

Tabel 2.4. Beberapa perbedaan eVB 3.0 dengan VB 6.0 ... 22

Tabel 2.5. Maximum size limitations of database objects in SQL Server CE 2.0 ... 24

Tabel 2.6. Tipe data yang didukung oleh SQL server CE 2.0 ... 25

Tabel 3.1. Struktur database-database yang digunakan oleh aplikasi ... 52

Tabel 3.2. Pengaruh options use extra filter, majority vote dan ignore single non-mandaroty rule pada proses Unistroke Kanji recognition ... 71

Tabel 4.1. Hardware yang digunakan untuk mengembangkan aplikasi ... 91

Tabel 4.2. Software yang digunakan untuk mengembangkan aplikasi ... 92

Tabel 4.3. Prosedur dan contoh pengujian penggunaan Radical Kanji SIP dan Unicode Charmap SIP ... 107

Tabel 4.4. Prosedur dan contoh pengujian penggunaan Unistroke Kanji SIP ... 108

Tabel 4.5. Prosedur dan contoh pengujian penggunaan Kana-keyboard SIP dan default SIP (Romaji-Hiragana/Romaji-Katakana) ... 109

Tabel 4.6. Prosedur dan contoh pengujian English query dan Japanese query .. 111

Tabel 4.7. Rangkuman hasil dari serangkaian uji coba sesi pertama ………. ... 112

Tabel 4.8. Rangkuman hasil dari serangkaian uji coba sesi kedua ... 113


(5)

DAFTAR GAMBAR

Halaman

Gambar 2.1. Contoh Japanese orthografy ... 8

Gambar 2.2. Contoh Kanji yang dibentuk dari beberapa Kanji radikal ... 10

Gambar 2.3. Kanji radikal dan jumlah goresannya ... 10

Gambar 2.4. Unicode coding layout ... 12

Gambar 2.5. Unistroke Kanji signature code beserta filter ekstranya ... 14

Gambar 2.6. Persamaan Translasi dan persamaan Euclidean Inner Product ... 17

Gambar 2.7. Pocket PC Hp Jornada 548 ... 18

Gambar 2.8. Contoh default SIP Pocket PC pada Hp Jornada 548 ... 19

Gambar 2.9. Tampilan eVB 3.0 dan Pocket PC 2000 Emulator ... 21

Gambar 3.1 Flowchart proses input menggunakan default SIP maupun Custom SIP... 27

Gambar 3.2. Flowchart proses input menggunakan Kana-keyboard SIP ... 30

Gambar 3.3. Flowchart proses input menggunakan default SIP ... 32

Gambar 3.4. Flowchart Radical Kanji SIP ... 33

Gambar 3.5. Flowchart proses input menggunakan Unistroke Kanji SIP ... 35

Gambar 3.6. Flowchart Unicode Characters Map SIP ... 36

Gambar 3.7. Flowchart proses query dictionary ... 39

Gambar 3.8. Flowchart pengelolaan word query buffer ... 40

Gambar 3.9. Flowchart proses pemeliharaan database kamus ... 42

Gambar 3.10. Flowchart proses pemeliharaan data Kanji reference ... 44

Gambar 3.11. Flowchart proses pemeliharaan data Unistroke Kanji signature code ... 46


(6)

Halaman

Gambar 3.12. Flowchart proses pemeliharaan data Radical Kanji ... 48

Gambar 3.13. Flowchart proses pemeliharaan data Kanji meanings ... 50

Gambar 3.14. Flowchart proses pemeliharaan data Kanji readings ... 51

Gambar 3.15. Relasi tabel KnjInf, KnjMean, KnjRead dan Unistroke ... 53

Gambar 3.16. Rancangan tampilan utama aplikasi (proses query dictionary) ... 54

Gambar 3.17. Susunan custom SIP menu (default SIP tidak aktif) ... 55

Gambar 3.18. Susunan custom SIP menu (default SIP aktif) ... 56

Gambar 3.19. Rancangan interface Kana-Keyboard SIP ... 57

Gambar 3.20. Rancangan interface pada saat default SIP aktif dan active input triggernya Romaji-Hiragana atau Romaji-Katakana ... 58

Gambar 3.21. Rancangan interface Radical Kanji SIP ... 60

Gambar 3.22. Rancangan interface Unistroke Kanji SIP ... 60

Gambar 3.23. Rancangan Unicode characters map SIP ... 61

Gambar 3.24. Rancangan interface pemeliharaan data histories word query buffer ... 62

Gambar 3.25. Rancangan interface pemeliharaan database kamus ... 63

Gambar 3.26. Rancangan interface Kanji information grup Kanji reference ... 65

Gambar 3.27. Rancangan interface Kanji information grup Unistroke Kanji signature code ... 66

Gambar 3.28. Rancangan interface Kanji information grup Radical Kanji ... 67

Gambar 3.29. Rancangan interface Kanji information grup Kanji meanings ... 68

Gambar 3.30. Rancangan interface Kanji information grup Kanji readings ... 69

Gambar 3.31. Rancangan interface Options ... 70

Gambar 4.1. Tampilan splash screen ... 93

Gambar 4.2. Tampilan utama aplikasi ... 94


(7)

Halaman Gambar 4.3. Tampilan SIP pada saat default SIP aktif : (a) custom SIP menu

(b) input trigger Romaji-Katakana dan (atas) input trigger

Romaji-Hiragana ... 96 Gambar 4.4. Tampilan SIP pada saat default SIP dalam keadaan tidak aktif :

(a) custom SIP menu, (b) Small-Hiragana keyboard,

(c) Okurigana Kanji Candidate List, (d) Katakana keyboard dan (e) Small-Katakana keyboard ... 99 Gambar 4.5. Tampilan SIP pada saat default SIP dalam keadaan tidak aktif

(lanjutan) : Unicode characters map SIP, Radical Kanji SIP dan Unistroke Kanji SIP pengenalan non-parsial dan parsial ... 100 Gambar 4.6. Tampilan pemeliharaan data kamus ... 101 Gambar 4.7. Tampilan Kanji Information ... 104 Gambar 4.8. Tampilan options : Konfigurasi path file, (a) Konfigurasi Kana ke

Kanji, (b) Konfigurasi pengenalan pola Unistroke Kanji,

(c) Konfigurasi Umum ... 105


(8)

PENDAHULUAN

1.1 Latar Belakang Masalah

Semakin populernya pengembangan program aplikasi komputer berarsitektur tiga lapis pada awal tahun 1990 dan aplikasi berbasis web pada akhir tahun 1990, teknik-teknik pemrograman berkembang dari masa ke masa. Internet

memberikan sumbangan besar dalam pengembangan aplikasi yang

memungkinkan penggunanya mempunyai fleksibilitas tinggi dalam menjalankan bisnisnya tanpa kendala jarak. Saat ini, target pengembangan program aplikasi diarahkan pada perangkat cerdas dengan mobilitas tinggi (smart-mobile devices). Perangkat ini memiliki kemampuan yang mengesankan meskipun ukurannya kecil dan memberikan tantangan tersendiri bagi software developer karena harus memperhitungkan kemampuan dan fitur dari perangkat tersebut, misalnya ukuran layar yang kecil, kecepatan prosesor yang lambat, kapasitas memori yang terbatas dan lain sebagainya.

Pocket PC adalah salah satu jenis mobile device yang secara struktural hampir sama dengan PC baik perangkat keras, sistem operasi dan perangkat lunaknya, sehingga teknik pemrogramannya lebih mudah dipelajari dan dikembangkan. Para praktisi dibidang software berlomba-lomba menciptakan berbagai macam aplikasi praktis yang dapat membantu pengguna perangkat ini mengerjakan pekerjaannya ketika sedang berada dalam perjalanan. Salah satu jenis aplikasi Pocket PC yang sering digunakan dalam perjalanan adalah kamus. Aplikasi kamus bahasa yang menggunakan dasar tulisan Latin paling banyak


(9)

beredar, sedangkan kamus bahasa yang menggunakan dasar tulisan yang rumit dan unik dalam hal cara baca maupun penulisannya (complex glyph) seperti : Jepang, Cina atau Korea sangat jarang dijumpai. Hal ini didasari oleh permasalahan sistem input pada Pocket PC. Dalam kondisi standar suatu Pocket PC hanya memiliki sebuah pena (stylus) sebagai media touch-screen. Selain itu, untuk memfasilitasi proses input data Pocket PC dilengkapi Soft Input Panel (SIP) berbentuk on-screen keyboard atau handwriting recognition, tetapi fasilitas ini masih belum cukup ketika akan menginputkan data dalam bahasa yang terdiri dari complex glyph karena Pocket PC pada umumnya menggunakan SIP berbasis huruf Latin, kecuali Pocket PC yang diproduksi dan dipasarkan secara khusus dan terbatas pada wilayah tertentu.

Selain bahasa Inggris sebagai bahasa internasional, salah satu bahasa yang cukup banyak menarik minat masyarakat adalah bahasa Jepang seiring dengan peningkatan hubungan bilateral Indonesia-Jepang dalam berbagai sektor, terutama ekonomi, pendidikan, iptek, sosial budaya dan pariwisata. Tetapi di sisi lain, terdapat fakta yang menunjukan bahwa tidak sedikit masyarakat yang mengaku kesulitan mempelajari bahasa Jepang karena kendala tulisan, terutama huruf Kanji. Kanji sering dituduh sebagai penghambat proses pembelajaran bahasa Jepang karena jumlahnya banyak, betuknya rumit dan memiliki beragam cara baca. Hal tersebut memang beralasan mengingat sebagian besar kata dalam bahasa Jepang dibentuk dari satu atau lebih huruf Kanji, sedangkan kamus bahasa Jepang pada umumnya sangat bergantung kepada pengucapan kata yang biasanya ditulis dalam huruf Latin (Romaji) maupun Hiragana-Katakana sebagai landasan dalam proses pencarian suatu kata. Proses penerjemahan menggunakan landasan


(10)

seperti ini harus melalui beberapa tahapan. Tahap pertama adalah mencari pengucapan setiap huruf Kanji pada kata tersebut dalam indeks yang terdiri dari ribuan huruf Kanji. Proses ini dilakukan berluang-ulang sampai dipastikan bahwa tidak terdapat pengucapan lain dari masing-masing huruf Kanji tersebut. Tahap kedua adalah mencari kata-kata sesuai dengan pengucapan-pengucapan yang telah ditemukan pada tahap pertama. Tahap ketiga adalah memilih terjemahan yang paling cocok dari beberapa kata yang telah kita temukan pada tahap kedua. Kondisi seperti ini menyebabkan proses penerjemahan menggunakan kamus konvensional bagi non-native merupakan kegiatan yang melelahkan dan cukup banyak menyita waktu.

Oleh karena itu dibutuhkan sebuah kamus bahasa Jepang dalam bentuk program aplikasi komputer yang dapat memudahkan dan mempercepat proses penerjemahan dengan menggunakan landasan pencarian kata yang lebih komprehensif dari pada kamus konvensional. Dengan memanfaatkan mobilitas Pocket PC, diharapkan akan semakin menambah daya guna program aplikasi ini, sebab dapat diakses kapan saja dan dimana saja.

1.2 Perumusan Masalah

1. Bagaimana merancang dan membangun sebuah program aplikasi kamus bahasa Jepang yang memanfaatkan mobilitas Pocket PC sehingga dapat diakses kapan saja dan dimana saja.

2. Bagaimana merancang dan membangun sebuah program aplikasi kamus bahasa Jepang yang dapat memudahkan dan mempercepat proses penerjemahan kata dengan menggunakan landasan pencarian kata yang lebih komprehensif dari pada kamus konvensional.


(11)

1.3 Pembatasan Masalah

1. Program aplikasi ini diimplementasikan ke Pocket PC yang memiliki sistem operasi Microsoft Windows for Pocket PC 2000 atau 2002, bergantung pada Software Development Kit (SDK) yang dipergunakan.

2. Program aplikasi ini menggunakan font khusus (MS Gothic) yang di dalamnya terdapat Japanese characters dengan sistem coding karakter standar Unicode. 3. Data kosa kata yang digunakan adalah data kosa kata bahasa Jepang beserta

terjemahannya dalam bahasa Inggris, sehingga dalam hal ini kamus tidak bersifat bi-directional (Jepang-Inggris dan Inggris-Jepang). Bahasa Inggris digunakan sebagai terjemahan karena pertimbangan penggunaan aplikasi dan jangkauan user yang lebih universal.

4. Data Kanji yang digunakan terbatas pada joyoo Kanji, yaitu 1945 buah Kanji standar yang telah dibakukan penggunaannya oleh pemerintah Jepang.

5. Aplikasi ini memiliki SIP tersendiri (custom SIP) yang digunakan sebagai landasan proses pencarian kata dalam bahasa Jepang. Selain masih mengusung gagasan konvensional tentang landasan proses pencarian kata (Kana-keyboard SIP dan Romaji Input), aplikasi ini juga memperkenalkan landasan-landasan alternatif proses pencarian kata berdasarkan bentuk sederhana Kanji yang disebut Kanji radikal (Radical Kanji SIP), berdasarkan cara dan urutan penulisan suatu Kanji (Unistoke Kanji SIP) dan berdasarkan Unicode characters coding system (Unicode characters map SIP). Masing-masing custom SIP dapat dikolaborasikan sebagai satu sistem input tulisan Jepang. 6. SIP aplikasi ini berbeda dari default SIP Pocket PC yang bekerja independen


(12)

dari suatu aplikasi tertentu, sehingga karakter-karakter yang diinputkan dapat langsung dikirim pada aplikasi lain. Sedangkan SIP aplikasi ini merupakan dummy SIP dengan cara kerja yang berlawanan dengan default SIP, sehingga hanya dapat berkomunikasi dengan aplikasi lain yang mendukung penggunaan Unicode melalui clipboard memanfaatkan operasi copy dan paste.

7. Khusus pada Unistoke Kanji SIP, penggambaran Kanji adalah bersifat stroke order rule dependent, sehingga user harus mempelajari terlebih dahulu aturan dan urutan penulisan huruf Kanji yang benar.

8. Custom SIP dalam aplikasi ini tidak memberikan rekomendasi dalam hal pelengkapan kata (word compeletion).

9. Sedangkan untuk pencarian kata dalam bahasa Jepang berdasarkan kata dalam bahasa Inggris menggunakan default SIP Pocket PC.

1.4 Tujuan

1. Merancang dan membangun sebuah program aplikasi kamus bahasa Jepang yang memanfaatkan mobilitas Pocket PC sehingga dapat diakses kapan saja dan dimana saja.

2. Menerapkan Hiragana-Katakana dan Romaji pronunciation sebagai landasan proses pencarian kata. Dilengkapi dengan Kanji radikal, Unistoke Kanji dan Unicode characters map sebagai landasan alternatifnya, sehingga proses penerjemahan kata menggunakan aplikasi ini dapat lebih cepat dan lebih mudah.

3. Menambah keanekaragaman jenis aplikasi Pocket PC sehingga diharapkan dapat mengoptimalkan pemakaian Pocket PC dikalangan masyarakat, mengingat harganya yang semakin terjangkau.


(13)

1.5 Sistematika Penulisan BAB I : PENDAHULUAN

Pendahuluan berisi pembahasan tentang latar belakang masalah, perumusan masalah, pembatasan masalah, tujuan yang ingin dicapai dari tugas akhir ini dan sistematika penulisan yang dijelaskan secara singkat.

BAB II : LANDASAN TEORI

Dalam bab ini memuat tentang landasan teori yang menjadi dasar untuk menyelesaikan masalah sehubungan dengan pembuatan aplikasi kamus bahasa Jepang berbasis Pocket PC. Pada bab ini akan dibahas mengenai Japanese orthography, Unicode character coding system, Unistroke Kanji, Pocket PC, Windows CE API, Microsoft eMbedded Visual Basic 3.0 dan Microsoft SQL Server CE 2.0.

BAB III : PERANCANGAN SISTEM

Perancangan sistem bertujuan untuk menganalisa dan mendesain sistem yang akan dibuat. Analisa sistem bertujuan untuk menganalisa sistem kerja aplikasi kamus bahasa Jepang berbasis Pocket PC dan desain bertujuan untuk mendesain flowchart sistem, user interface dan algoritma dari hasil analisis yang telah dilakukan.

BAB IV : IMPLEMENTASI DAN PENGUJIAN SISTEM

Bab ini berisi tentang implementasi dari hasil desain sistem yang telah dibuat sehingga menjadi sebuah program aplikasi dan pengujian dari hasil implementasi yang telah dilakukan. Pengujian sistem dilakukan untuk mengetahui apakah sistem yang telah dibuat dapat berjalan secara optimal sesuai dengan desain yang dibuat.


(14)

BAB V : PENUTUP

Merupakan bab terakhir yang berisi kesimpulan yang merupakan rangkuman singkat dari keseluruhan aplikasi yang dibuat, serta saran-saran yang diberikan untuk melengkapi aplikasi yang telah dibuat sehingga dapat berguna bagi pengembangan selanjutnya.


(15)

2.1 Japanese Orthography

Japanese orthography adalah sistem bahasa Jepang tertulis yang terdiri dari 4 elemen, yaitu : Kanji, Hiragana, Katakana dan Romaji. Contoh Japanese orthography dapat dilihat pada gambar 2.1.

(a) Conventional Japanese orthography: 晴美はあのビツで働いているOLです

1: Kanji 2: Hiragana 3: Katakana 4: Romaji (b) Hiragana pronounciation:

はるみはあのびるではたらいているおおえるです 晴 美はあのビツで働 いているO L です

Gambar 2.1. Contoh Japanese orthografy.

2.1.1 Kanji

Menurut Adimihardja (2003:1) Kanji adalah ideographic characters yang dipinjam dari bangsa Cina sejak jaman dinasti Han, setelah mengalami berbagai proses perubahan selama rentang waktu hampir 1500 tahun, pada tahun 1981 pemerintah Jepang secara resmi membakukan 1945 Kanji (joyoo Kanji) yang dipakai untuk bahasa Jepang.

Menurut Adimihardja (2003:1) Kanji selalu dituduh sebagai penghambat keberhasilan proses pembelajaran bahasa Jepang karena jumlahnya banyak, bentuk tulisannya rumit dan memiliki berbagai cara baca. Sehingga dinilai


(16)

menghambat proses visualisasi sebuah kata atau kalimat, sebaliknya sulit mengungkapkan kata atau kalimat secara tertulis karena hambatan huruf. Hal ini memang cukup beralasan mengingat setiap Kanji memiliki standar baku cara penulisannya mulai dari Kanji dengan hanya 1 goresan hingga 23 goresan, selain itu sebuah Kanji dapat memiliki beragam cara baca mulai dari 1 sampai 12 cara baca. Disamping itu, ada beberapa Kanji yang mengalami perubahan cara baca setelah dikombinasikan dengan Kanji lain.

Secara umum Kanji dikelompokkan menjadi 2 cara baca, yaitu cara baca Cina (On-yumi) dan cara baca Jepang (Kun-yumi). Beberapa Kanji memiliki satu atau lebih cara baca On-yumi saja atau Kun-yumi saja. Disamping itu, Kanji Cina yang memiliki kesamaan arti dalam bahasa Jepang dikukuhkan cara bacanya sebagai cara baca Jepang. Hal ini menyebabkan sebuah Kanji dapat memiliki satu atau lebih cara baca On-yumi sekaligus Kun-yumi. Sehingga sulit menentukan apakah sebuah Kanji dibaca On-yumi atau Kun-yumi tanpa mempertimbangkan konteks kalimat dan hubungan kombinasi dengan Kanji lain yang berada di depannya atau di belakangnya.

Dari segi komponen bentuk, suatu Kanji dapat dibentuk dari gabungan Kanji-kanji lain yang bentuknya lebih sederhana yang disebut Kanji radikal.Kanji radikal memiliki peran dalam menentukan arti sebuah huruf Kanji hasil bentukannya sehingga sering digunakan sebagai kunci untuk mencari Kanji atau kata dalam kamus. Contoh Kanji yang dibentuk oleh beberapa Kanji radikal dapat dilihat pada gambar 2.2. Sedangkan Kanji radikal yang dikelompokkan berdasarkan jumlah goresannya dapat dilihat pada gambar 2.3.


(17)

study, learning, science.

child.

covering, wa-shaped crown.

K

small on top, ray. Gambar 2.2. Contoh Kanji yang dibentuk dari beberapa Kanji radikal.

1 一 | ノ 丶 亅 乙 2 八 亠 十 二 儿 冂

A B

厶 人 冖 勹 匕

又 厂

C

冫 卜

D

刀 凵 力 卩

E

匚 几

F

マ 九 入 乃 ユ 3

G H

I

宀 女 山 夂 寸

J

ヨ 广 小 囗 尸

K

巾 士 工 彡

夕 弓 子 彳 干 廾 已

L

幺 川 弋 廴 屮 亡 彑 也 尢 及 久 4

木 月

M

王 心 戈 攵 火 止 爪 斤 方 水 欠 比 牛 殳 老 爿 戸 勿

N

氏 歹 犬 手 毛 母 父 文 巴 支 爻 斗 牙 井 曰 元 尤 无 屯 五

片 气 5 田 立 目 禾 白

O

皿 石

P Q

甘 矢 穴 示 疋 用

R

冊 皮 矛 瓦 生 世 瓜 玄 巨 6 糸 虫 米 竹 衣 耳 羊 臼 艮 西 羽

虍 臣 舟 缶 至 自 聿 而 舌 行 舛 耒 血 色 肉 7 貝 言 車 足 辛

豆 酉 里 豕 見 釆 角 辰 谷 豸 走 身 赤 8 金 隹 門 雨 長 非 隶

斉 青 免 奄 岡 9 頁 食 革 音 品 韭 風 韋 面 首 香 飛 10 馬 鬼

髟 高 骨 鬥 鬲 竜 鬯 11 鳥 魚 鹿 麦 麻 亀

S

12 黒 黄 無 黍

黹 13 鼠 黽 鼓 鼎 14 薺 鼻 15 16

龍 龜

17 Gambar 2.3. Kanji radikal dan jumlah goresannya.

2.1.2Hiragana dan Katakana

Hiragana dan Katakana (Kana) merupakan sekumpulan karakter yang dibentuk dari penyederhanaan beberapa huruf Kanji. Fungsi utama dari Hiragana dan Katakana adalah sebagai representasi pengucapan suku-suku kata dalam bahasa Jepang.

Secara khusus Hiragana digunakan sebagai partikel pembentuk gramatika bahasa Jepang. Sedangkan Katakana memiliki fungsi khusus untuk merepresentasikan pengucapan suku-suku kata bahasa Jepang yang merupakan serapan dari bahasa asing.


(18)

Perbedaan bentuk antara Hiragana dan Katakana dapat dilihat pada tabel 2.1. Hiragana atau Katakana yang berwarna selain hitam dibaca sesuai dengan warnanya, contohnya : ち (chi), つ (tsu), しゅ (shu) dan を (o). Hiragana atau Katakana yang berwarna hitam dibaca sesuai indeks baris warna hitam dan mengabaikan warna indeks kolomnya, contohnya : ひ (hi), そ (so) dan りょ(ryo), tetapi jika indeks barisnya kosong maka yang dibaca hanya indeks kolomnya saja contohnya : い (i), よ (yo) dan ん(n).

Tabel 2.1. Hiragana dan Katakana beserta Romajinya.

2.1.3Romaji

Romaji mengandung alphabet Latin yang digunakan untuk merepresentasikan tulisan Latin dalam bahasa Jepang. Romaji juga digunakan untuk mengkonversikan setiap suku kata bahasa Jepang ke dalam huruf Latin, sehingga lebih mudah dibaca oleh orang asing.


(19)

2.2 Unicode Character Coding System

Representasi Japanese characters dalam komputer difasilitasi oleh suatu sistem pengkodean karakter. Salah satu dari sistem pengkodean karakter Jepang yang familier di lingkungan sistem operasi Microsoft Windows adalah Unicode. Selain itu, terdapat sistem pengkodean karakter Jepang lain yang sering digunakan, yaitu : JIS dan shift-JIS.

Karakter Unicode berbentuk Double Byte Character Set (DBCS) atau 16-bits characters yang artinya satu karakter Unicode diwakili oleh dua karakter ASCII (1 karakter ASCII = 1 byte dan 1 byte = 8 bits). Sebagai Contoh karakter 字 (u5B57) merupakan gabungan dari karakter ASCII “[“ dengan kode heksadesimal 5B dan “W” dengan kode heksadesimal 57.

Unicode coding layout yang diimplementasikan dalam sistem operasi Microsoft Windows berbentuk True Type Fonts (TTF) ditunjukkan oleh gambar 2.4. Hiragana dan Katakana berada pada posisi Kana (u3041-u30FE). Sedangkan Kanji ada pada posisi Ideographs (u4E00-uFA2D). Unicode juga digunakan untuk merepresentasikan bahasa-bahasa lain yang menggunakan complex glyph.


(20)

2.3 Unistroke Kanji

Unistroke adalah suatu teknik sederhana yang digunakan dalam pengenalan karakter tulisan tangan menggunakan pola-pola tertentu berdasarkan kepada suatu aturan dan urutan penulisan. Sehingga sukses tidaknya proses pengenalan karakter menggunakan metode ini sangat bergantung pada pemahaman user terhadap aturan dan urutan penulisan yang telah ditentukan. Unistroke Kanji diperkenalkan oleh Tood David Rudick, metode tersebut menyederhanakan setiap goresan Kanji menjadi sequential signature code yang didasari oleh Kanji stroke order rules seperti yang tertera pada tabel 2.2.


(21)

Unistoke Kanji mengkodekan setiap goresan Kanji sesuai dengan arah goresannya. Kode suatu goresan dengan kode goresan yang berikutnya dipisahkan oleh spasi. Pada beberapa kasus terdapat satu atau lebih kombinasi kode untuk satu goresan (substroke), kode-kodenya tidak dipisahkan oleh spasi. Khusus untuk kombinasi kode 62, 26, 21 dan 23 diberikan kode khusus karena kombinasi ini sering sekali dipakai. Contoh sequential signature code yang dibentuk oleh Unistroke Kanji dapat dilihat pada gambar 2.5.

Gambar 2.5. Unistroke Kanji signature code beserta filter ekstranya.

Proses Unistroke Kanji recognition dilakukan setiap kali user selesai menggambarkan satu goresan, sehingga terbuka kemungkinan bahwa user akan mendapatkan Kanji yang diinginkan sebelum seluruh goresan Kanji tersebut selesai digambar. Proses Unistroke Kanji recognition dilakukan dengan cara


(22)

mengkodekan setiap sudut goresan Kanji dalam bentuk Unistroke Kanji signature code dengan memberikan toleransi simpangan maksimum ± 22° dari sudut asli untuk suatu kode (50 % dari range sudut antar kode), misalnya : untuk kode 9 sudut aslinya adalah 45°, maka range toleransinya adalah 23° sampai 67°. Khusus untuk kode 8, terdapat 2 range toleransi, yaitu : 338° sampai 0° dan 0° sampai 22°.

Dengan Unistroke Kanji diharapkan bahwa setiap Kanji memiliki signature code yang unik, namun kenyataanya terdapat beberapa Kanji yang memiliki signature code yang sama, seperti pada gambar 2.5. Untuk mengatasi masalah ini perlu adanya suatu filter ekstra. Bentuk umum dari filter ekstra tersebut memiliki arti bahwa suatu input cenderung mirip dengan suatu Kanji jika nilai sebelum “-“ lebih besar dari nilai sesudahnya. Besarnya nilai-nilai input tersebut disesuaikan dengan Code dan Stroke ID. Sedangkan “!” menandakan bahwa filter ekstra tersebut merupakan mandatory rules yang bersifat mutlak harus terpenuhi. Nilai koordinat mengikuti koordinat layar komputer dengan titik (0,0) berada pada pojok kiri atas layar. Dengan kata lain, semakin ke kanan maka nilai x semakin tinggi dan semakin ke bawah nilai y semakin tinggi. Pada gambar 2.5, Kanji pertama memiliki filter ekstra x5-i4 yang berarti bahwa nilai koordinat x pada titik awal goresan ke 5 seharusnya lebih besar dari nilai koordinat x pada titik akhir goresan ke 4. Sedangkan pada Kanji kedua memiliki filter ekstra x4-x5 y5-y3 yang berarti bahwa nilai koordinat x pada titik awal goresan ke 4 seharusnya lebih besar dari nilai koordinat x pada titik awal goresan ke 5 dan nilai koordinat y pada titik awal goresan ke 5 seharusnya lebih besar dari nilai koordinat y pada titik awal goresan ke 3.


(23)

Ditinjau dari koridor aljabar linier, Unistroke Kanji menganggap bahwa setiap goresan Kanji sebagai serangkaian vektor berarah di R2. Setiap vektor memiliki sudut tertentu yang relatif terhadap vektor satuan [0,1] atau sumbu-y, seperti yang pada gambar 2.6. Sudut-sudut inilah yang diterjemahkan dalam sequential signature code. Hal ini berlaku pada signature code Kanji yang disimpan dalam database dan Kanji yang digambarkan oleh user. Sehingga derajat kemiripan antara Kanji yang digambarkan oleh user dengan Kanji-kanji yang tersimpan dalam database ditentukan oleh jumlah dari seluruh perbedaan sudut (relatif terhadap sumbu-y) setiap pasang goresannya, jika semakin kecil jumlah perbedaan sudutnya maka tingkat kemiripannya semakin tinggi. Sistem koordinat yang dipakai oleh input adalah sistem koordinat layar komputer bukan sistem koordinat cartesius yang digunakan oleh Unistoke Kanji, sehingga untuk mendapatkan sudut relatif yang sesuai, dibutuhkan persamaan translasi yang dapat merubah masing-masing vektor input ke dalam bentuk sistem koordinat cartesius.

Menurut Howard (1997:98) untuk mentranslasikan sumbu koordinat xy menjadi sistem koordinat x’y’ yang titik asal 0’ berada dititik (x,y)=(k,l) dibutuhkan persamaan translasi (persamaan 1). Menurut Howard (1997:100) panjang vektor v = (x,y) atau ||v|| (norma v) di R2 didapatkan dengan persamaan 2. Menurut Howard (1997:103) jika u dan v adalah vektor tak nol di R2 maka sudut (θ) antara u dan v didapatkan dengan persamaan Euclidean Inner Product (persamaan 3). Misalkan vektor u = (0,y’) atau sumbu-y’ dan vektor v = (x’,y’) didapatkan persamaan 4 yang digunakan untuk menghitung sudut vektor v yang relatif terhadap sumbu-y’ dengan mensubstitusikan persamaan 1, 2 dan 3 secara berurutan.


(24)

Gambar 2.6. Persamaan Translasi dan persamaan Euclidean Inner Product.

Contoh proses perhitungan untuk mengkodekan setiap goresan dari suatu Kanji dalam kode-kode Unistroke Kanji dapat dilihat pada tabel 2.3.

Tabel 2.3. Contoh perhitungan pengkodean Unistroke Kanji

Algoritma Unistroke Kanji menawarkan sebuah solusi yang sederhana terhadap pengenalan Kanji, dengan performa dan tingkat akurasi yang relatif tinggi, meskipun keterikatannya kepada aturan dan urutan penulisan Kanji mengharuskan pengguna meluangkan cukup banyak waktu untuk beradaptasi.


(25)

2.4 Pocket PC

Pocket PC adalah perangkat cerdas dengan mobilitas tinggi yang mampu menyimpan dan mengelola informasi layaknya komputer. Pocket PC juga merupakan salah satu jenis Personal Digital Assistan (PDA) yang menggunakan sistem operasi Microsoft Windows CE (WinCE). PC dan Pocket PC saling berkomunikasi dan bertukar data melalui suatu sistem sinkronisasi menggunakan koneksi kabel atau tanpa kabel. Contoh Pocket PC dapat dilihat pada gambar 2.7.

Gambar 2.7. Poket PC Hp Jornada 548.

Pocket PC menggunakan prosesor seperti : Multiprocessor without Interlocked Pipeline Stages (MIPS), Intel Strong Arm atau Hitachi SHx. Walaupun kecepatannya lebih lambat dari PC, namun sudah mencukupi untuk menjalankan fungsi-fungsi standar.


(26)

Pocket PC tidak memiliki hard drive. Pada Pocket PC hanya terdapat tiga jenis memori yang digunakan sebagai storage yaitu Random Access Memory (RAM), Read-Only Memory (ROM) dan external memory. Seluruh data dan program dipertahankan dalam RAM dengan menggunakan daya dari re-chargeable baterai. ROM berfungsi menyimpan sistem operasi dan program-program aplikasi standar dari pabriknya. External memory adalah memori tambahan yang sengaja dipasang untuk memperbesar kapasitas penyimpanan data.

Layar Pocket PC merupakan Liquid Crystal Display (LCD) dengan resolusi 240x320 pixel dan colour depth mencapai 16-bits. Layar Pocket PC berfungsi ganda sebagai media output dan media input touch-screen.

Pocket PC hanya dilengkapi stylus sebagai media touch-screen. Meskipun secara fisik Pocket PC tidak dilengkapi dengan alat input yang memadai, tetapi secara software Pocket PC dilengkapi dengan fasilitas input data yang disebut Soft Input Panel (SIP). Contoh default SIP terdapat pada gambar 2.8.


(27)

2.5 Windows CE API

Microsoft Windows CE Aplication Program Interface (WinCE API) adalah kumpulan beragam fungsi dan prosedur bawaan yang digunakan pada lingkungan sistem operasi windows CE. WinCE API ditulis dalam bentuk dynamic link library (DLL). Dengan memanfaatkan WinCE API, seorang programer diberikan keleluasaan untuk menggali lebih dalam kekuatan dan keampuhan sistem operasi windows CE, misalnya : pengelolaan Windows registry, Windows clipboard, Windows massage, Windows handle dan memori serta penggunaan fungsi-fungsi grafis yang lebih cepat, manipulasi terhadap control standar, pembuatan menu pop-up dan hal-hal lain yang tidak akan didapat memalui teknik pemrograman biasa pada suatu software pemrograman. Tetapi dibalik semua manfaat tersebut, programer dituntut untuk berhati-hati dalam menggunakan WinCE API, sebab probabilitas error-nya sangat tinggi bahkan dapat menyebabkan program crash.

Arsitektur Pocket PC lebih sederhana dibandingkan dengan PC. Oleh karena itu, WinCE API strukturnya sedikit berbeda dengan WIN32 API, tetapi cara pendeklarasian dan pemanggilan fungsi-fungsi WinCE API masih sama dengan WIN32 API.

2.6 Microsoft eMbedded Visual Basic 3.0

Microsoft eMbedded Visual Basic 3.0 adalah sebuah software yang digunakan untuk membuat aplikasi berbasis Windows CE menggunakan Integrated Development Environment (IDE) yang mirip dengan Microsoft Visual Basic 6.0. Microsoft eVB merupakan interpreted language yang mengeksekusi


(28)

setiap instruksi secara berurutan menggunakan intermediate program (disebut command interpreter) sehingga eVB tidak menghasilkan file executable (.exe) mandiri tetapi menghasilkan file .vb yang nantinya akan diterjemahkan oleh target device pada saat program dijalankan. Tampilan eVB 3.0 dan Pocket PC 2000 Emulator pada dapat dilihat gambar 2.9.

Gambar 2.9. Tampilan eVB 3.0 dan Pocket PC 2000 Emulator.

Microsoft eVB berbasis dekstop PC, sehingga semua proses pembuatan aplikasi mulai dari coding, debugging, sampai dengan compiling dilakukan pada PC. Aplikasi yang dibuat menggunakan eVB dapat dijalankan pada platform Handheld PC Pro (H/PC Pro), Palm-size PC 1.2 dan Pocket PC. Keragaman jenis target device menyebabkan eVB membutuhkan suatu Software Development Kit


(29)

(SDK) khusus yang berisikan berbagai macam control dan run-time file berbentuk file .DLL sesuai dengan target device yang diinginkan. Hal ini menyebabkan distribusi program aplikasi yang telah dibuat dalam bentuk installer bersifat spesifik, satu installer untuk suatu jenis perangkat.

Meskipun antara eVB dan VB memiliki banyak kemiripan, tetapi ada beberapa perbedaan yang cukup mendasar seperti yang tertera pada tabel 2.4.

Tabel 2.4. Beberapa perbedaan eVB 3.0 dengan VB 6.0.

Microsoft eVB memiliki keterbatasan-keterbatasan, seperti bahasa pemrograman tingkat tinggi lainnya. Hal ini sangat dirasakan oleh para programer yang ingin menggali lebih dalam kemampuan Windows CE. Oleh karena itu eVB


(30)

menawarkan solusi final untuk mengatasi permasalahan ini dengan memberikan dukungan terhadap akses WinCE API.

Microsoft eVB 3.0 menawarkan kemudahan dalam membuat sebuah aplikasi berbasis Pocket PC bagi programer yang telah menguasai Microsoft Visual Basic. Keistimewaan lain yang dimiliki oleh eVB adalah memakai control standar Microsoft Form 2.0 yang memberikan dukungan terhadap pemakaian karakter Unicode hanya dengan merubah setting property font-nya.

2.7 Microsoft SQL Server CE 2.0

Microsoft SQL Server CE 2.0 adalah aplikasi database yang ditujukan untuk perangkat portable berbasis Windows CE. SQL Server CE memiliki cukup banyak kemiripan dengan Microsoft SQL Server 2000 untuk PC, seperti : format metadata (struktur database), cara akses, teknik pemrograman, perintah dan dialek Structured Query Language (SQL).

SQL Server CE 2.0 merupakan aplikasi database yang handal dikelasnya karena meskipun ukurannya cukup kecil tetapi menunjukkan performa yang lebih baik dalam menggelola database berukuran besar, mampu mengoptimasi query, reliable dan scalabe. SQL Server CE 2.0 mendukung pengelolaan data yang terdiri dari karakter Unicode.

SQL Server CE 2.0 mendukung teknologi pengaksesan data menggunakan Microsoft Windows CE Data Access 3.1 (ADOCE 3.1). ADOCE adalah API yang digunakan oleh bahasa pemrograman tingkat tinggi seperti eVB untuk mengakses local database. ADOCE mirip dengan ADO yang biasa dipakai untuk mengakses database pada aplikasi berbasis Windows.


(31)

Batas maksimum ukuran dan jumlah untuk beberapa obyek database yang didefinisikan dalam SQL Server CE 2.0 terdapat pada tabel 2.5.

Tabel 2.5. Maximum size limitations of database objects in SQL Server CE 2.0.

SQL Server CE 2.0 mendukung beberapa tipe data yang hampir sama dengan Microsoft SQL Server 2000, seperti yang tertera pada tabel 2.6.


(32)

(33)

3.1 Flowchart Sistem

Sistem yang dirancang untuk aplikasi kamus bahasa Jepang berbasis Pocket PC, secara umum terbagi menjadi tiga blok proses, yaitu : input data menggunakan SIP, pencarian kata dalam data kamus dan pemeliharaan database-database yang digunakan oleh aplikasi.

3.1.1 Flowchart proses input

Aplikasi ini menggunakan dua jenis SIP, yaitu custom SIP dan default SIP. Keduanya digunakan bersama-sama untuk menginputkan data pada proses pencarian kata dan proses pemeliharaan database yang digunakan oleh aplikasi.

Fungsi utama custom SIP adalah memfasilitasi proses input tulisan Jepang yang terdiri dari Kanji atau Kana. Terdapat empat macam custom SIP, yaitu : Kana-keyboard SIP, Radical Kanji SIP, Unistroke Kanji SIP dan Unicode characters map SIP.

Default SIP berfungsi untuk memfasilitasi proses input tulisan Latin. Selain itu, default SIP juga berperan dalam proses input tulisan Jepang dalam bentuk Romaji. Romaji tersebut akan dikonversi menjadi Kana dan Kana tersebut dapat dikonversi menjadi Kanji. Selain itu, default SIP juga digunakan untuk melakukan beberapa fungsi text editing, seperti : copy [Ctrl + C], paste [Ctrl + V], cut [Crtl + X] dan undo [Ctrl + Z]. Flowchart proses input menggunakan default SIP maupun custom SIP dapat dilihat pada gambar 3.1.


(34)

27


(35)

Temporary input buffer digunakan sebagai penampung sementara input Kana dan Kanji yang berasal dari kombinasi custom SIP dan default SIP (Romaji). Temporary input buffer juga menampung Japanese word dari word query buffer yang merupakan feedback proses querydictionary.

Input berupa Kanji disajikan dalam bentuk daftar kandidat, sehingga user diminta memilih salah satu Kanji dalam daftar tersebut untuk dikirimkan ke temporary input buffer. Daftar kandidat yang dihasilkan dari proses konversi Kana ke Kanji secara khusus terbagi menjadi daftar kandidat Kanji Okurigana dan non-Okurigana. Tombol [Okurigana] digunakan jika user hanya ingin menampilkan Kanji Okurigana pada daftar kandidat Kanji. Khusus untuk Unicode characters map SIP, daftar kandidatnya terdiri dari seluruh karakter Unicode yang memiliki kode heksadesimal berawalan dengan kode yang dinputkan user.

Input berupa Kana tidak langsung masuk dalam temporary input buffer tetapi ditahan lebih dulu oleh Kana input buffer dengan tujuan memberikan kesempatan kepada user untuk mengkonversikannya menjadi Kanji. Jika user tidak ingin melakukan konversi maka user diminta memilih Kana input buffer untuk mentransferkan isinya ke temporary input buffer.

Tombol [Enter] digunakan untuk mengirimkan temporary input buffer ke word query buffer sesaat sebelum dimulainya proses dictionary query atau dikirimkan ke Japanese data fields pada saat proses pemeliharaan database. Sedangkan untuk input berupa tulisan Latin (English word) langsung diinputkan ke word query buffer atau English data fields tanpa melalui temporary input buffer.


(36)

A Kana-keyboard SIP

User menginputkan Kana dengan cara menekan tombol-tombol yang mewakili setiap karakter Kana dan akan dikirimkan ke Kana input buffer terlebih dahulu. Jika user menekan tombol [semi-voiced mark] setelah menekan suatu tombol Kana tertentu, maka karakter Kana tersebut diubah bentuknya dalam semi-voiced Kana. Hal ini juga belaku pada penekanan tombol [voiced mark].

Tombol [Hira/Kata] digunakan untuk merubah susunan tombol-tombol keyboard dari Hiragana ke Katakana atau sebaliknya. sekaligus merubah isi dari Kana input buffer dari Hiragana menjadi Katakana atau sebaliknya. Tombol [Big/Small] digunakan untuk mengubah format beberapa Kana tertentu dari Big-Kana ke Small-Kana atau sebaliknya.

Tombol [Kana2Kanji] digunakan untuk proses konversi Kana ke Kanji. Algoritma konversi Kana ke Kanji berusaha mencari seluruh Kanji dalam Kanji reading data yang memiliki cara baca seperti yang tertera pada Kana input buffer, kemudian memasukkanya dalam Kanji candidate list.

User diminta memilih salah satu Kanji dalam daftar tersebut atau memilih Kana yang terdapat pada Kana input buffer untuk dikirimkan ke temporary input buffer. Flowchart proses input menggunakan Kana-keyboard SIP dapat dilihat pada gambar 3.2.

B Default SIP

Pada default SIP terdapat input trigger yang digunakan untuk membedakan antara input Romaji yang akan dikonversi ke Hiragana, Romaji yang akan dikonversi ke Katakana dan input berupa English word.


(37)

30


(38)

Jika input trigger yang dipilih user adalah Romaji-Hiragana/Katakana maka serangkaian karakter alphabet yang dihasilkan dari proses penekanan tombol-tombol default SIP dianggap oleh aplikasi sebagai Romaji yang akan dikonversikan ke Hiragana atau Katakana. Sedangkan jika input trigger-nya adalah English maka serangkaian karakter alphabet yang dihasilkan dari proses penekanan tombol-tombol pada default SIP dianggap oleh aplikasi sebagai English word.

Proses konversi Romaji ke Kana dilakukan per satu suku kata Romaji. Pola pemenggalan suku kata Romaji, antara lain : vokal (v), konsonan (k), kv, kk dan kkv. Ukuran Romaji buffer maksimal adalah 3 karakter. Proses konversi dikatakan gagal apabila ukuran buffer sudah mencapai 3 huruf tetapi proses konversinya tidak menghasilkan Kana. Jika konversi gagal maka buffer akan dikosongkan. Buffer juga akan dikosongkan setelah konversi mencapai kesuksesan, untuk bersiap-siap menerima input suku kata berikutnya. Di luar kedua kondisi tersebut, buffer tidak dihapus. Hasil konversi Romaji ke Kana dikirimkan terlebih dahulu ke Kana input buffer. Flowchart proses input menggunakan default SIP dapat dilihat pada gambar 3.3.

C Radical Kanji SIP

Pada awal proses disajikan daftar Kanji radikal yang dikelompokkan berdasarkan jumlah goresannya. User diminta memilih satu atau lebih Kanji radikal tersebut. Dilanjutkan dengan proses pencarian seluruh Kanji yang memiliki Kanji-kanji radikal tertentu sesuai dengan pilihan user (multiple Radical Kanji lookup).


(39)

32


(40)

User dapat membatalkan seluruh pilihan Kanji radikalnya dengan menekan tombol [Reset] atau membatalkan satu demi satu pilihan Kanji radikalnya. Proses multiple Radical Kanji lookup dilakukan setiap kali user memilih satu Kanji radikal baru atau membatalkan pilihan terhadap suatu Kanji radikal yang telah dipilih sebelumnya.

Hasil dari proses ini berupa daftar kandidat Kanji yang memiliki Kanji-kanji radikal yang bersesuaian dengan pilihan user. Flowchart proses input menggunakan Radical Kanji SIP dapat dilihat pada gambar 3.4.

Gambar 3.4. Flowchart Radical Kanji SIP.

D Unistroke Kanji SIP

Unistroke Kanji SIP digunakan untuk menginputkan Kanji dengan cara menggambarkan setiap goresan Kanji pada panel yang disediakan sesuai dengan Kanji stroke order rules. Pada proses penggambaran Kanji, jika user tidak segera mengangkat stylus setelah menggambar satu goresan sampai suatu jeda waktu tertentu habis, maka goresan berikutnya merupakan sub-stroke dari goresan sebelumnya dan tetap dihitung satu goresan.


(41)

Query dilakukan pada Unistroke Kanji data untuk mendapatkan Kanji-kanji yang memiliki elemen-elemen signature code yang sama dengan Kanji input signature code. Meskipun proses pengenalan dengan cara seperti ini dapat menyebabkan Kanji yang diinginkan tidak selalu berada pada urutan teratas, tetapi prosesnya lebih cepat dan pemrogramannya lebih mudah jika dibandingkan dengan cara menghitung satu per satu perbedaan sudut antara Kanji input dengan seluruh signature code yang tersimpan dalam database kemudian menyortirnya secara ascending. Terdapat dua Proses signature code matching, yaitu full signature code matchingdan partial signature code matching. Full signature code matching dilakukan dengan mempertimbangkan urutan signature code dari awal hingga akhir. Sebaliknya, partial signature code matching dilakukan tanpa mempertimbangkan urutan signature code tersebut. Hal ini bertujuan untuk memperbesar kemungkinan keberhasilan proses pengenalan Kanji, meskipun user tidak menggambarkan seluruh goresannya. Proses pengenalan Kanji dilanjutkan dengan menerapkan filter ekstra untuk mencegah sebagian Kanji yang tidak sesuai dengan stroke order rules masuk ke dalam Kanji candidate list.

User dapat menghapus seluruh goresan yang telah digambarkan dengan menekan tombol [Reset]. Selain itu, user dapat membatalkan penggambaran satu goresan terakhir dengan menekan tombol [Undo]. Sedangkan tombol [Partial] digunakan untuk merubah status proses full signature code matching ke partial signature code matching atau sebaliknya. Flowchart proses input menggunakan Unistroke Kanji SIP dapat dilihat pada gambar 3.5.


(42)

35


(43)

E Unicode characters map SIP

Unicode characters map SIP mengakomodasi seluruh karakter Unicode dalam Japanese font yang digunakan (MS Gothic), melalui 4 digit kode angka berordo heksadesimal. User diminta untuk memasukkan kode minimal 2 digit pertama dengan menekan tombol-tombol hexadecimal numpad, sehingga user akan mendapatkan maksimal 256 karakter yang berawalan dengan 2 digit kode tersebut. Jika user memasukkan 3 digit akan mendapatkan maksimal 16 karakter. Jika user memasukan 4 digit maka user akan mendapatkan tepat 1 karakter.

Tombol [Reset] digunakan jika user ingin mengulang proses pencarian karakter-karakter Unicode dari awal. Flowchart proses input menggunakan Unicode characters map dapat dilihat pada gambar 3.6.

Gambar 3.6. Flowchart Unicode Charaters Map SIP.

Beberapa kombinasi angka heksadesimal dapat menghasilkan null character, hal ini sangat bergantung pada font yang digunakan. Pembuat font terkadang hanya memasukkan karakter-karakter yang diperlukan saja dengan


(44)

pertimbangan efisiensi konsumsi memori atau sengaja mengosongkan beberapa bagian untuk mengklasifikasikan karakter-karakter dalam kategori tertentu.

3.1.2 Flowchart proses dictionary query

Proses dictionary query digunakan untuk mencari kata dalam data kamus yang sesuai dengan isi word query buffer. Proses query dictionary terdiri dari dua jenis query, yaitu proses Japanese query dan proses English query. Proses Japanese query digunakan untuk mencari terjemahan dalam bahasa Inggris dari suatu kata dalam bahasa Jepang. Sebaliknya, proses English query digunakan untuk mencari suatu kata dalam bahasa Jepang berdasarkan terjemahannya dalam bahasa Inggris.

Kanji information digunakan untuk menampilkan informasi-informasi penting tentang sebuah Kanji yang dipilih user dari word query buffer, seperti : hexadecimal Unicode, jumlah goresan, joyoo grade, frekuensi penggunaan, On-yumi readings, Kun-On-yumi readings, Kanji meanings, Unistoke Kanji signature code dan Kanji-kanji radikalnya.

Proses query dictionary menghasilkan daftar sejumlah kata berdasarkan kata yang terdapat pada word query buffer yang berasal dari : proses input menggunakan SIP, proses paste Windows CE clipboard, kata yang dipilih oleh user dari data historis word query buffer atau feedback berupa kata yang dipilih user dari word found list hasil proses query dictionary sebelumnya. Feedback memberikan konstribusi berupa kemudahan dan kecepatan untuk proses pencarian kata baru dengan hanya sedikit melakukan modifikasi. Kontribusi yang sama juga berimbas pada proses Kanji information dan akses Windows CE clipboard.


(45)

Untuk setiap kata yang dipilih user dari word found list akan dicarikan pasangan terjemahannya pada data kamus. Flowchart proses query dictionary dapat dilihat pada gambar 3.7.

3.1.3 Flowchart proses pengelolaan word query buffer

Word query buffer merupakan the heart of application, sebab berperan yang dinamis sebagai jembatan penghubung antar proses dalam aplikasi, seperti : menghubungkan proses input dengan proses dictionary query, menghubungkan proses input dengan proses Kanji information dan menjadi fasilitator proses copy dan paste dari dan ke Windows CE clipboard.

Proses pengelolaan word query buffer digunakan untuk mengelola data historis pencarian kata yang telah dilakukan sebelumnya. Aplikasi akan menampilkan data historis pencarian yang berawalan dengan kata yang telah diinputkan user.

User dapat menyimpan kata sebagai data historis pencarian kata dengan menekan tombol [Save]. Sedangkan, tombol [Remove] digunakan untuk menghapus data historis tertentu yang telah dipilih oleh user. Flowchart proses pengelolaan word query buffer dapat dilihat pada gambar 3.8.

3.1.4 Flowchart proses pemeliharaan database kamus

Proses pemeliharaan database kamus meliputi proses penambahan, perubahan dan penghapusan data kosa kata bahasa Jepang. Database kamus menyimpan tiga field data, yaitu : kata dalam bahasa Jepang (Japanese word field), penulisan kata tersebut dalam bentuk Kana (Kana field) dan terjemahan kata tersebut dalam bahasa Inggris (English meanings field).


(46)

39


(47)

40


(48)

Japanese word field diinput menggunakan default SIP atau custom SIP yang menghasilkan Kanji dan Kana. Proses ini akan diulang apabila Japanese word yang diinputkan sudah ada dalam database. Kana field diinput menggunakan default SIP (Romaji) atau Kana-keyboard. English meanings field diinputkan oleh user menggunakan default SIP (English).

Proses perubahan data mengharuskan user melakukan proses dictionary query terlebih dahulu untuk mencari data yang akan diubah, sedangkan untuk penambahan data, user tidak boleh menyertakan kata apapun sesaat sebelum masuk dalam proses pemeliharaan data kamus. Pada setiap penambahan atau perubahan data, user diminta menekan tombol [Save] untuk menyimpannya. Tombol [Delete] digunakan untuk menghapus data. Tombol [Ok] digunakan untuk mengakhiri proses pemeliharaan data kamus dan kembali ke proses dictionary query. Flowchart proses pemeliharaan database kamus dapat dilihat pada gambar 3.9.

3.1.5 Flowchart prosespemeliharaan database Kanji information.

Proses pemeliharaan database Kanji information meliputi proses penambahan, perubahan dan penghapusan data yang memuat informasi-informasi penting tentang Kanji.

Informasi tersebut terdiri dari empat grup, antara lain : Kanji reference, Unistroke Kanji signature code, Radical Kanji, Kanji meanings dan Kanji readings. Proses pemeliharaan data Kanji reference merupakan induk dari proses pemeliharaan database Kanji information sehingga proses penambahan data Kanji information baru harus melalui proses pemeliharaan data kelompok ini terlebih dahulu sebelum masuk ke proses pemeliharaan data pada kelompok yang lain.


(49)

42


(50)

A Flowchart grup Kanji reference

Proses pemeliharaan data Kanji reference meliputi data Kanji beserta jumlah goresannya, joyoo grade-nya dan frekuensi penggunaannya dalam bahasa Jepang. Kanji field diinputkan oleh user menggunakan default SIP atau Custom SIP yang dapat menghasilkan Kanji. Proses ini akan diulang apabila Kanji yang diinput oleh user sudah ada dalam database Kanji Information. Stroke count field, joyoo grade field dan frequence of use field diinputkan oleh user menggunakan default SIP (English) dalam bentuk numerik. Flowchart proses pemeliharaan data Kanji reference dapat dilihat pada gambar 3.10.

Jika user ingin melakukan perubahan atau penghapusan data maka user harus memilih sebuah Kanji yang akan diubah atau dihapus datanya pada word query buffer terlebih dahulu, sedangkan untuk proses penambahan data user tidak boleh menyertakan Kanji apapun sesaat sebelum masuk dalam masuk dalam proses pemeliharaan data Kanji information. Untuk setiap proses penambahan atau perubahan terhadap suatu data, user diminta menekan tombol [Save] untuk menyimpannya.

Tombol [Detele] digunakan untuk menghapus data informasi Kanji yang meliputi seluruh kelompok data informasi Kanji. Tombol [Ok] digunakan untuk mengakhiri proses pemeliharaan data kamus dan kembali ke proses dictionary query.

B Flowchart grup Unistroke Kanji signature code

Proses pemeliharaan data Unistroke Kanji signature code meliputi data Kanji beserta Unistroke Kanji signature code dan filter ekstranya. Kanji field diambil dari Kanji field grup Kanji reference.


(51)

44


(52)

Sedangkan Unistroke Kanji signature code field diinputkan oleh user menggunakan default SIP dengan menginputkan kode-kode Unistroke Kanji dari setiap goresan Kanji tersebut.

Aplikasi ini akan mencari beberapa Kanji lain yang memiliki kesamaaan signature code dengan Kanji inputan untuk membuat daftar filter ekstranya. Hal ini bertujuan agar user dapat menyesuaikan filter ekstra Kanji baru dengan filter ekstra Kanji yang sudah ada sehingga keunikan signature code setiap Kanji tetap terjaga. Extra filter field diedit oleh user menggunakan default SIP (English).

Untuk setiap proses perubahan terhadap suatu data unistroke signature code dan filter ekstra suatu Kanji, user diminta menekan tombol [Save]. Daftar filter ekstra akan diupdate setelah proses penyimpanan selesai dilakukan. Flowchart proses pemeliharaan data Unistroke Kanji signature code dapat dilihat pada gambar 3.11.

C Flowchart grup Radical Kanji

Proses pemeliharaan data grup Radical Kanji sebenarnya hanya mengupdate Radical-based Kanji list field, walaupun dalam struktur databasenya masih terdapat beberapa field lain (Radical Kanji, Radical stroke, Radical meanings dan Radical image code). Field-field tersebut bersifat statis dan telah diinput terlebih dahulu.

Aplikasi akan menampilkan daftar Kanji radikal yang dimiliki oleh sebuah Kanji sekaligus arti masing-masing Kanji radikal tersebut. Setiap Kanji radikal yang terdapat dalam daftar tersebut dipetakan pada Radical Kanji SIP sebagai picked Radical.


(53)

46


(54)

Radical Kanji SIP digunakan oleh user untuk merubah susunan picked Radical sekaligus mengupdate daftar Kanji radikal. Setelah itu user dapat menyimpannya dengan menekan tombol [Save]. Flowchart proses pemeliharaan data grup Radical Kanji dapat dilihat pada gambar 3.12.

D Flowchart grup Kanji meanings

Proses pemeliharaan data Kanji meanings meliputi data beberapa arti dari suatu Kanji. Kanji field diambil dari Kanji field kelompok Kanji reference. Sedangkan Kanji meaning field diinputkan oleh user menggunakan default SIP (English). Proses ini akan diulang apabila Kanji dan artinya yang diinput oleh user sudah ada dalam database. User diminta memilih salah satu item pada daftar arti Kanji terlebih dahulu sebelum merubah atau menghapus item tersebut. Tombol [Delete] digunakan untuk menghapus item yang dipilih. Tombol [Save] digunakan untuk menyimpan perubahan data. Flowchart proses pemeliharaan data Kanji meanings dilihat pada gambar 3.13.

E Flowchart grup Kanji readings

Proses pemeliharaan data Kanji readings meliputi data cara-cara baca sebuah Kanji. Flowchart proses pemeliharaan data Kanji readings dilihat pada gambar 3.14. Kanji field diambil dari Kanji field kelompok Kanji reference. Kanji reading class field adalah jenis dari cara baca sebuah Kanji. Terdapat tiga jenis cara baca, yaitu : cara baca biasa, cara baca Kanji sebagai Nanori dan cara baca Kanji sebagai Kanji radikal. Kanji readings field diinputkan oleh user menggunakan kombinasi antara Kana-keyboard SIP dengan default SIP (English).


(55)

48


(56)

Default SIP digunakan untuk menginputkan Dot (.)atau Dash (-)sebagai bagian dari format data Kanji reading. Formatnya adalah sebagai berikut.

(Dash1)Kana1(Dot)Kana2(Dash2)

Dash1 dan Dash2 digunakan sebagai pertanda bahwa sebuah Kanji merupakan prefix (Dash1) atau suffix (Dash2) apabila dibaca dengan cara baca tersebut. Dot digunakan sebagai pertanda bahwa Kana1 merupakan cara baca sebuah Kanji yang dipandang dari sisi Okurigana-nya. Okurigana adalah bagian dari kata (seharusnya berupa Kanji) yang ditulis dalam bentuk Kana. Dalam hal ini kata tersebut adalah gabungan antara Kana1 dan Kana2, sedangkan Okurigana adalah Kana1.

Aplikasi akan menampilkan daftar seluruh cara baca yang dimiliki oleh sebuah Kanji yang dibagi dalam dua kelompok, yaitu : On-yumi dan Kun-yumi. User diminta memilih salah satu item daftar On-yumi atau Kun-yumi terlebih dahulu sebelum merubah atau menghapus item tersebut.

Tombol [Delete] digunakan untuk menghapus item yang dipilih, sedangkan tombol [Save] digunakan untuk menyimpan perubahan data. Apabila tidak ada item yang dipilih oleh user maka cara baca Kanji yang diinputkan oleh user dianggap oleh aplikasi sebagai cara baca baru ketika user menekan tombol [Save]. Proses penyimpanan data sekaligus akan mengupdate daftar On-yumi readings (Katakana) atau daftar Kun-yumi readings (Hiragana).

Pada saat disimpan, Kanji reading field akan diperiksa ulang oleh aplikasi untuk menentukan nilai dari field oku (posisi karakter dot), sp (posisi karakter dash) dan kun (kun-yumi = 1 atau on-yumi = 0).


(57)

50


(58)

51


(59)

Sedangkan nilai yang disimpan dalam Kanji reading field adalah Kanji reading polos tanpa dot dan dash. Proses ini sengaja dilakukan untuk keperluan indexing database agar proses konversi Kana ke Kanji lebih optimal.

3.2 Struktur Database


(60)

Terdapat 3 jenis database yang berbeda peran dalam aplikasi ini, yaitu : TEMP, JPSIP dan EDICT. Struktur dari ketiga jenis database tersebut terdapat pada table 3.1. Database TEMP menyimpan data historis setiap goresan pada proses penggambaran Kanji menggunakan Unistoke Kanji SIP. Database TEMP juga menyimpan data historis word query buffer. Database JPSIP menyimpan data-data yang digunakan oleh custom SIP pada proses input karakter Jepang. Database JPSIP juga menyimpan data-data digunakan oleh default SIP untuk proses konversi Romaji ke Kana. Database EDICT menyimpan data-data kosa kata bahasa Jepang beserta pengucapannya yang ditulis dalam Kana dan terjemahannya dalam bahasa Inggris.

Relasi antara tabel KnjInf dengan tabel KnjMean, KnjRead dan Unistroke dapat dilihat pada gambar 3.15.

Gambar 3.15. Relasi tabel KnjInf, KnjMean, KnjRead dan Unistroke.

Tabel RadKnj bersifat semi-statis karena jumlah datanya tidak berkembang, hanya field knjlst saja berubah. Tabel Romanji bersifat read-only karena tabel ini sengaja dibuat sebagai bagian proses konversi Romaji ke Kana untuk menghemat penulisan kode programnya.


(61)

3.3 Desain User Interface

Secara umum interface aplikasi ini terdiri dari, SIP panel, word query buffer, statusbar, word found list, translation box dan toolbar. Gambar 3.16 merupakan rancangan tampilan utama dari aplikasi.

Secara umum toolbar terdiri dari custom SIP menu, selected custom SIP button, tools buttons, selected default SIP button dan default SIP menu. Tools buttons merupakan susunan serangkaian tombol yang mewakili fungsi-fungsi tertentu dan secara dinamis akan berubah susunannya disesuai dengan proses-proses tertentu. Sebagai contoh pada proses-proses query dictionary dimana custom SIP maupun default SIP tidak dalam keadaan aktif dan word query buffer tidak dalam keadaan terfokus, maka susunan dari tools button seperti yang terlihat pada gambar 3.16.


(62)

Statusbar digunakan untuk menampilkan berbagai informasi, seperti : waktu yang diperlukan untuk melakukan proses tertentu. Word found list digunakan untuk menampilkan daftar kata hasil dari proses query data. Sedangkan translation box digunakan untuk menampilkan translasi dari kata yang dipilih dari word found list.

Interface custom SIP menu pada saat default SIP tidak aktif dapat dilihat pada gambar 3.17. Kelompok menu custom SIP digunakan untuk memilih jenis custom SIP. Jenis custom SIP yang sedang aktif pada menu ditandai dengan bullet mark, selain itu ditunjukkan juga dengan icon yang tertera pada selected custom SIP button. selected custom SIP button merupakan switch button yang digunakan untuk menampilkan active custom SIP.

Gambar 3.17. Susunan custom SIP menu (default SIP tidak aktif)

Menu Exit digunakan untuk menutup program. Menu View Statusbar digunakan untuk menampilkan atau menyembunyikan statusbar. Menu Options digunakan untuk menampilkan berbagai setting yang berkaitan dengan aplikasi. Menu Kanji Info digunakan untuk menampilkan Kanji information berdasarkan Kanji yang dipilih oleh user dari word query buffer, sekaligus digunakan untuk


(63)

proses pemeliharaan database Kanji information. Menu Dictionary data digunakan untuk proses pemeliharaan database kamus. Untuk menampilkan petunjuk penggunaan aplikasi pilih menu Help pada Start menu Pocket PC.

Sedangkan apabila default SIP aktif, kelompok menu custom SIP berubah menjadi default SIP input trigger seperti pada gambar 3.18. Jenis input trigger yang sedang aktif pada menu ditandai dengan bullet mark, selain itu ditunjukkan juga dengan icon yang tertera pada selected custom SIP button. Romaji-Hiragana atau Romaji-Katakana input trigger digunakan sebagai pertanda bahwa data yang diinputkan menggunakan default SIP merupakan Romaji yang akan diubah menjadi Hiragana atau Katakana. Sedangkan English input trigger digunakan sebagai pertanda bahwa data yang diinputkan menggunakan default SIP merupakan English word (karakter Latin).

Gambar 3.18. Susunan custom SIP menu (default SIP aktif)

3.3.1 Interface SIP

Pada aplikasi ini terdapat lima jenis SIP yang digunakan untuk menginputkan data, yaitu : Kana-keyboard SIP, default SIP, Radical Kanji SIP, Unistroke Kanji SIP dan Unicode characters map SIP.


(64)

A Kana-Keyboard SIP

Kana-keyboard SIP terdiri dari SIP panel, Kana input buffer, Kanji candidate list dan temporary input buffer. SIP panel berbentuk sebuah keyboard dengan beberapa tombol yang mewakili karakter Kana yang disusun sesuai dengan Kana-syllabary layout. Gambar 3.19 merupakan rancangan interface Kana-keyboard SIP.

Terdapat beberapa tombol khusus, antara lain : ideograph comma, ideograph full-stop, voiced mark, semi-voiced mark, Katakana prolong dan space. Ideograph comma adalah karakter koma dalam tulisan Jepang. Ideograph full-stop adalah karakter titik dalam tulisan Jepang. Tombol [voiced mark] digunakan untuk merubah Kana yang dinputkan paling akhir dalam bentuk voiced Kana. Hal ini berlaku pada tombol [semi-voiced mark].

Gambar 3.19. Rancangan interface Kana-keyboard SIP

Tombol [Backspace] digunakan untuk menghapus suatu karakter pada temporary input buffer. Tombol [Esc] digunakan untuk membatalkan inputan pada Kana input buffer. Tombol [Left] atau [Right] arrow digunakan untuk


(65)

memindahkan cursor pada temporary input buffer satu karakter ke kiri atau ke kanan. Tombol [Smal/Big] Kana digunakan untuk merubah beberapa tombol

Kana tertentu dalam format Small-Kana atau Big-Kana. Tombol

[Hiragana/Katakana] digunakan untuk mengubah layout Kana-keyboard dari Hiragana menjadi Katakana atau sebaliknya. Tombol [Kana2Kanji] digunakan untuk mengkonversi Kana yang terdapat pada Kana input buffer menjadi Kanji. Tombol [Okurigana] digunakan untuk menampilkan Kanji Okurigana pada daftar kandidat Kanji.

B Default Pocket PC SIP

Default Pocket PC SIP dapat digunakan untuk menginputkan English word (karakter Latin) maupun Japanese word (Kana dan Kanji) bergantung pada input trigger yang dipilih oleh user. Gambar 3.20 merupakan rancangan interface pada saat default SIP aktif dan active input triggernya Romaji-Hiragana atau Romaji-Katakana.

Gambar 3.20. Rancangan interface pada saat default SIP aktif dan active input triggernya Romaji-Hiragana atau Romaji-Katakana.


(66)

Jika active input trigger yang dipilih adalah English maka Kana input buffer, Kanji candidate list dan temporary input buffer tidak dipakai karena setiap karakter Latin langsung diinputkan ke word query buffer sebagai English word.

Jika active input trigger yang dipilih adalah Romaji-Hiragana atau Romaji-Katakana maka Kana input buffer, Kanji candidate list dan temporary input buffer difungsikan kembali seperti pada Kana-keyboard SIP tetapi setiap Kana pada Kana input buffer tidak didapatkan dari penekanan satu tombol melainkan serangkaian tombol yang membentuk satu suku kata Romaji. Setiap satu suku kata Romaji dikonversikan menjadi Hiragana atau Katakana.

Tombol [Esc] digunakan untuk membatalkan inputan pada Kana input buffer. [Kana2Kanji] digunakan untuk mengkonversi Kana pada Kana input buffer menjadi Kanji. Tombol [Okurigana] digunakan untuk menampilkan Kanji-kanji Okurigana pada daftar kandidat Kanji.

C Radical Kanji SIP

Radical Kanji SIP terdiri dari SIP panel dan temporary input buffer. Pada SIP panel terdapat Radical Kanji grid dan Kanji candidate list. Radical Kanji grid berisi Kanji radikal yang dikelompokkan berdasarkan jumlah goresannya. User diharuskan memilih minimal satu Kanji radikal dalam grid tersebut untuk mendapatkan Kanji yang diinginkannya. User dapat membatalkan suatu pilihan Kanji radikal dengan memilih ulang Kanji radikal tersebut. Kanji candidate list digunakan untuk menampung hasil proses multiple Radical Kanji Lookup.

Tombol [Reset] digunakan untuk membatalkan semua pilihan Kanji radikal yang telah dipilih sebelumnya. Tombol [Backspace] digunakan untuk menghapus karakter yang terdapat pada temporary input buffer. Tombol [Enter]


(67)

digunakan untuk mengirim temporay input buffer ke word query buffer. Gambar 3.21 merupakan rancangan interface Radical Kanji SIP.

Gambar 3.21. Rancangan interface Radical Kanji SIP.

D Unistroke Kanji SIP

Unistroke Kanji SIP terdiri dari SIP panel dan temporary input buffer. Pada SIP panel terdapat Kanji drawing panel dan Kanji candidate list. User diharuskan menggambarkan setiap goresan Kanji yang diinginkannya sesuai dengan Unistroke Kanji stroke order rules. Kanji candidate list digunakan untuk menampung sejumlah Kanji hasil proses Unistroke Kanji recognition. Gambar 3.22 merupakan rancangan interface Unistroke Kanji SIP.


(68)

Tombol [Backspace] digunakan untuk menghapus karakter yang terdapat pada temporary input buffer. Tombol [Enter] digunakan untuk mengirim temporay input buffer ke word query buffer. Tombol [Reset] digunakan untuk mengulang proses penggambaran Kanji dari awal. Tombol [Undo] digunakan untuk mengulang proses penggambaran satu goresan terakhir. Tombol switch [Partial] digunakan sebagai pertanda bahwa proses Unistroke Kanji signature code matching bersifat normal atau parsial.

E Unicode characters map SIP

Unicode characters map SIP terdiri dari SIP panel dan temporary input buffer. Pada SIP panel terdapat hexadecimal numpad dan Kanji candidate list. User diharuskan memasukkan minimal 2 digit pertama hexadecimal Unicode untuk mendapatkan karakter-karakter Unicode yang terdapat pada font Ms Gothic. Rancangan Unicode characters map SIP dapat dilihat pada gambar 3.23.

Gambar 3.23. Rancangan Unicode characters map SIP.

Susunan tools button pada toolbar terdiri dari Backspace, Enter dan Reset. Tombol [Backspace] digunakan untuk menghapus karakter yang terdapat


(69)

pada temporary input buffer. Tombol [Enter] digunakan untuk mengirim temporary input buffer ke word query buffer. Tombol [Reset] digunakan untuk mengulang proses pencarian karakter Unicode dari awal.

3.3.2 Pemeliharaan data historis word query buffer

Tools button ditambah dengan tombol [Remove] dan [Save]. Tombol [Remove] digunakan untuk menghapus suatu kata yang dipilih oleh user pada word query buffer history data. Tombol [Save] digunakan untuk menyimpan isi word query buffer sebagai data historis word query buffer. Gambar 3.12 adalah rancangan interface proses pemeliharaan data historis word query buffer.

Gambar 3.24. Rancangan interface pemeliharaan data historis word query buffer.

3.3.3 Pemeliharaan database kamus

Interface pengelolaan database kamus terdiri dari Japanese word field, Kana field dan English meaning field. Gambar 3.25 merupakan rancangan interface pemeliharaan database kamus. Pada saat proses pengelolaan database kamus, susunan tools button pada toolbar ditambah dengan tombol Delete dan


(70)

Save. Tombol [Delete] digunakan untuk menghapus current record. Tombol [Save] digunakan untuk menyimpan data baru atau menyimpan perubahan data.

Gambar 3.25. Rancangan interface pemeliharaan database kamus.

Japanese word field diinputkan oleh user menggunakan default SIP (Romaji) atau Custom SIP yang menghasilkan Kanji atau Kana. Kana field diinputkan oleh user menggunakan default SIP (Romaji) atau Kana-keyboard. English meanings field diinputkan oleh user menggunakan default SIP (English) dalam format khusus sebagai berikut.

(mark) word1/word2//wordn

Setiap terjemahan dipisahkan oleh tanda slash. Sedangkan mark adalah kode-kode keterangan terjemahan-terjemahan tersebut seperti (adj) untuk kata sifat atau (n) untuk kata benda dan penggunaannya bersifat optional.


(71)

3.3.4 Kanji information dan pemeliharaan database Japanese SIP

Selain digunakan untuk menampilkan informasi tentang suatu Kanji, Kanji information juga digunakan untuk pemeliharaan database Japanese SIP yaitu database yang digunakan oleh custom SIP dalam proses input tulisan Jepang. Interface Kanji information dikelompokkan dalam beberapa grup, antara lain : Kanji reference, Unistroke Kanji signature code, Radical Kanji, Kanji meanings dan Kanji readings.

A Grup Kanji reference

Interface grup Kanji Reference terdiri dari Kanji field, stoke count field, frequence of use field, joyoo grade field dan hexadecimal Unicode. Kanji field diinputkan oleh user menggunakan default SIP atau custom SIP yang menghasilkan Kanji tetapi user dianjurkan menggunakan Unicode characters map SIP khusus untuk proses penambahan data baru, sebab database inilah yang digunakan sebagai acuan dalam proses input tulisan Jepang sehingga hampir dapat dipastikan bahwa suatu Kanji baru tidak akan dapat dinputkan dengan menggunakan custom SIP yang lain.

Stroke count field, frequence of use field dan joyoo grade field diinputkan oleh user menggunakan default SIP (English) dalam bentuk numerik. English meanings field diinputkan oleh user menggunakan default SIP (English). Hexadecimal Unicode tidak diinputkan oleh user tetapi ditampilkan secara otomatis oleh aplikasi sesuai dengan Kanji field.

Pada saat tab Ref aktif, susunan tools button pada toolbar ditambah dengan tombol Delete dan Save. Proses input data pada grup yang lain hanya dapat dilakukan jika inputan data pada grup Kanji reference telah disimpan.


(72)

Tombol [Delete] berfungsi untuk menghapus current record. Proses ini sekaligus menghapus data-data pada grup lain yang berkaitan dengan data grup Kanji reference yang akan dihapus.

Tombol [Save] digunakan untuk menyimpan data baru atau menyimpan perubahan data. Rancangan interface Kanji information grup Kanji reference dapat dilihat pada gambar 3.26.

Gambar 3.26. Rancangan interface Kanji information grup Kanji reference.

B Grup Unistroke Kanji signature code

Interface grup Unistroke Kanji signature code terdiri dari Unistroke signature code field, extra filter field dan daftar filter ekstra sejumlah Kanji lain yang memiliki kesamaan signature code dengan current Kanji.

Unistroke signature code field diinputkan oleh user menggunakan default SIP (English) sesuai dengan kode-kode unistroke Kanji


(73)

Jika terdapat sejumlah Kanji lain yang memiliki signature code yang sama dengan Unistroke Kanji signature code field maka sejumlah Kanji tersebut akan ditampilkan pada daftar filter ekstra. Setiap filter ekstra pada daftar tersebut harus saling disesuaikan agar keunikan signature code tiap-tiap Kanji tetap terjaga, termasuk filter ekstra current Kanji. Extra filter field diedit menggunakan default SIP (English). Pada saat tab Unistroke aktif, susunan tools button pada toolbar ditambah dengan tombol [Save] yang digunakan untuk menyimpan data baru atau menyimpan perubahan data. Rancangan interface Kanji information grup Unistroke Kanji signature code dapat dilihat pada gambar 3.27.

Gambar 3.27. Rancangan interface Kanji information grup Unistroke Kanji signature code.

C Grup Radical Kanji

Pada interface grup Radical Kanji hanya terdapat daftar Kanji radikal yang dimiliki oleh sebuah Kanji sekaligus arti masing-masing radikal tersebut.


(74)

Seluruh Kanji radikal dalam daftar radikal terpetakan pada Radical Kanji grid dalam Radical Kanji SIP sehingga untuk menambah item yang terdapat pada daftar tersebut, user diminta untuk memilih Kanji radikal lain pada Radical Kanji grid. Sedangkan untuk menghapus item pada daftar tersebut, user diminta memilih ulang Kanji radikal yang tersebut pada Radical Kanji grid.

Pada saat tab Radical aktif, susunan tools button pada toolbar ditambah dengan tombol [Save] yang digunakan untuk menyimpan perubahan data. Rancangan interface Kanji information grup Radical Kanji dapat dilihat pada gambar 3.28.

Gambar 3.28. Rancangan interface Kanji information grup Radical Kanji.

D Kanji meanings

Interface grup Kanji meanings terdiri dari Kanji meaning fields dan daftar beberapa arti dari sebuah Kanji. Kanji meaning fields diinputkan


(75)

menggunakan default SIP (English). Rancangan interface Kanji information grup Kanji meanings dapat dilihat pada gambar 3.29.

Gambar 3.29. Rancangan interface Kanji information grup Kanji meanings.

Pada saat tab Meaning aktif, susunan tools button pada toolbar ditambah dengan tombol Remove dan Save. Tombol [Delete] digunakan untuk menghapus suatu item yang dipilih oleh user dari daftar arti Kanji. Tombol [Save] digunakan untuk menyimpan data baru atau menyimpan perubahan data. Daftar arti Kanji akan diupdate setiap kali Tombol [Delete] atau Tombol [Save] ditekan.

E Kanji readings

Interface grup Kanji readings terdiri dari Kanji reading field, Kanji reading class, On-yumi reading list dan Kun-yumi reading list. Terdapat tiga jenis Kanji reading class field, yaitu : cara baca Kanji biasa, cara baca Kanji sebagai Nanori dan cara baca Kanji sebagai sebuah radikal. Kanji readings field diinputkan oleh user menggunakan kombinasi antara Kana-keyboard SIP dan


(76)

Default SIP (English). Default SIP digunakan untuk menginputkan Dot atau Dash sebagai bagian dari format khusus Kanji reading field. Rancangan interface Kanji information grup Kanji readings dapat dilihat pada gambar 3.30.

Gambar 3.30. Rancangan interface Kanji information grup Kanji readings.

Pada saat tab Reading aktif, susunan tools button pada toolbar ditambah dengan tombol Delete dan Save. Tombol [Delete] digunakan untuk menghapus suatu item pada On-yumi maupun Kun-yumi reading list yang dipilih oleh user. Tombol [Save] digunakan menyimpan perubahan atau menambahkan suatu cara baca pada daftar tersebut.

3.3.5 Options

Interface options terdiri dari konfigurasi-konfigurasi penting yang terbagi dalam beberapa kelompok, antara lain : Path, Kana2Kanji conversion, Unistroke dan General.. Rancangan interface options dapat dilihat pada gambar 3.31.


(77)

G

am

b

ar

3.31.

R

an

can

g

an

i

n

ter

face

O

p

ti

o

n


(78)

Grup options Path digunakan untuk menyimpan path file database, path file graphic dan path file temporary sehingga user dapat memindahkan file-file tersebut dari RAM ke external storage card untuk mengurangi beban RAM.

Grup options Kana2Kanji Conversion digunakan berkaitan dengan penggunaan cara baca khusus dari sebuah Kanji pada proses konversi Kana ke Kanji, seperti : Okurigana-based reading, Nanori reading, Radical reading dan suffix/prefix reading. Options Okurigana-based reading menentukan aktif atau tidaknya tombol [Okurigana] pada Kana-keyboard SIP dan default SIP.

Grup options Unistroke digunakan bekaitan dengan penggunaan extra filter pada proses Unistroke Kanji recognition, antara lain : substroke interval, use extra filter, majority vote dan ignore single non-mandatory rule. Substroke interval adalah batas waktu minimal yang digunakan untuk menentukan sebuah goresan merupakan substroke dari goresan sebelumnya. Kombinasi option lainnya memberikan efek-efek tertentu pada proses Unistroke Kanji recognition seperti pada table 3.2.

Tabel 3.2. Pengaruh options use extra filter, majority vote dan ignore single non-mandatory rule pada proses Unistroke Kanji recognition.


(79)

Grup options General terdiri dari jumlah maksimum Kanji candidate list items dan jumlah maksimum word found list items. Jika jumlah Kanji candidate list items atau word found list items melebihi batas tertentu maka jumlah item list yang ditampilkan hanya sampai pada batas tersebut.

3.4 Algoritma

Pada aplikasi ini terdapat beberapa proses penting, antara lain : konversi Hiragana-Katakana, konversi Kana ke Kanji, konversi Romaji ke Kana, multiple Radical lookup, Unistroke Kanji recognition, pencarian karakter Unicode berdasarkan kode heksadesimalnya dan query dictionary data. Proses-proses tersebut dijelaskan lebih lanjut dengan algoritma-algoritma yang ditulis dalam bentuk pseudo-code.

3.4.1 Algoritma konversi Hiragana-Katakana

Fungsi isHira digunakan untuk memeriksa apakah sebuah karakter merupakan Hiragana atau bukan. Sedangkan Fungsi isKata, digunakan untuk memeriksa apakah sebuah karakter merupakan Katakana atau bukan. Fungsi unihex digunakan untuk mendapatkan Unicode sebuah karakter dalam bentuk heksadesimal. Fungsi unichar digunakan untuk mendapatkan karakter berdasarkan Unicode-nya dalam bentuk heksadesimal. Simbol 0 memiliki arti “elemen dari”.

Procedure Hira2Kata digunakan untuk mengkonversi Hiragana menjadi Katakana atau sebaliknya. Procedure Big2Small digunakan untuk merubah bentuk Kana tertentu ke dalam format ukuran yang lebih kecil atau sebaliknya. Small-Kana digunakan dalam kaitannya dengan aturan khusus dalam penulisan Small-Kana,


(80)

Contohnya : しゃ(sya), ニュ(nya), リょ(ryo), サッカ(sakka) dan lain-lain. Procedure KanaVoicedMark digunakan untuk merubah bentuk Kana tertentu ke dalam format Kana Voiced Mark, misalnya は(ha) menjadi ば(ba). Procedure ini digunakan juga untuk merubah bentuk Hiragana atau Katakana tertentu ke dalam format Kana semi-Voiced Mark, misalnya は(ha) menjadiぱ(pa).

proc Hira2Kata(c array of {Hira/Kata}): array of {Kata/Hira} for each 0 c do:

if isHira(cn) then

tmpn unichar(unihex(cn) + &H60)

else

if isKata(bn) then

tmpn unichar(unihex(cn) - &H60)

else

tmpn null

end if end if end for return tmp end proc

proc Big2Small(d: {Hira/Kata}): {Hira/Kata} select cased

case in [あ,い,う,え,お,つ,や,ゆ,よ,わ, _

ア,イ,ウ,エ,オ,ツ,ヤ,ユ,ヨ,ワ]:

tmp ← unichar(unihex(c) - &H1)

case in [ぁ,ぃ,ぅ,ぇ,ぉ,っ,ゃ,ゅ,ょ,ゎ, _

ァ,ィ,ゥ,ェ,ォ,ッ,ャ,ュ,ョ,ヮ]:

tmp ← unichar(unihex(c) + &H1)

case

tmp ← unichar(&H30F5)

case

tmp ← unichar(&H30AB)

case

tmp ← unichar(&H30F6)

case

tmp ← unichar(&H30B1) case else

tmp ← null end select

return tmp end proc


(1)

112

Pada penggunaan Unicode character map SIP, Unistroke Kanji SIP dan Radical Kanji SIP didapatkan bahwa tidak seluruh langkah-langkah yang tertera pada petunjuk user harus dikerjakan sebab pada kenyataannya Kanji yang diinginkan sudah didapatkan dengan hanya melakukan beberapa langkah saja. Hal ini bermanfaat untuk meringankan 20% hingga 40% beban user. Pada tabel terdapat rata waktu yang nilanya nol, hal tersebut menunjukkan bahwa rata-rata waktu tersebut kurang dari satu detik.

Tabel 4.7. Rangkuman hasil dari serangkaian uji coba sesi pertama.

Pada uji coba sesi kedua, hal yang menyebabkan rata-rata waktu English query lebih lama dari query dan Japanese query adalah database kamus tidak bersifat bi-directional, tetapi hanya bahasa Jepang ke bahasa Inggris saja.


(2)

113 Tabel 4.8. Rangkuman hasil dari serangkaian uji coba sesi kedua.


(3)

114

Satu field English terdiri dari beberapa kata yang merupakan terjemahan dari satu kata bahasa Jepang. Setiap kata tersebut dipisahkan dengan tanda slash sehingga memaksa algoritma English query melakukan drill-down untuk mencari satu kata dengan kategori tertentu. Sedangkan algoritma Japanese query hanya melakukan perbandingan satu-satu antara inputan dengan field Kanji atau field Kana yang menjadi key field pada data kamus. Jadi beban yang ditanggung oleh algoritma English query jauh lebih berat dari pada Japanese query. Hal ini secara tidak langsung berimbas kepada terjadinya fluktuasi rata-rata waktu pencarian kata pada Japanese query untuk masing-masing kategori pencarian kata, tetapi pada English query rata-rata waktu pencarian kata relatif sama sebab untuk mendapatkan suatu kata pada field English dengan kategori tertentu proses drill-down harus diawali dengan proses penelusuran field English secara menyeluruh untuk mengantisipasi kemungkinan bahwa terdapat kata yang sesuai dengan inputan dan kategori pencarian kata tetapi berposisi ditengah-tengah English field.

Proses drill-down pada English query dilakukan dengan tujuan untuk membuat aplikasi Kamus ini seakan bersifat bi-directional hanya dengan satu database kamus (Jepang ke Inggris). Hal tersebut bermanfaat untuk menghemat kapasitas memori Pocket PC yang terbatas, tetapi harus dibayar mahal dengan mengorbankan kecepatan proses.


(4)

BAB V

PENUTUP

5.1 Kesimpulan

Dari rancang bangun program aplikasi kamus bahasa Jepang berbasis Pocket PC dapat diambil kesimpulan sebagai berikut :

1. Dengan pengembangan sebuah program aplikasi kamus bahasa Jepang yang memanfaatkan mobilitas Pocket PC dapat memudahkan user dalam mencari terjemahan kata karena dapat diakses kapan saja dan dimana saja dengan waktu yang relatif singkat dibanding dengan menggunakan kamus konvensional.

2. Custom SIP pada program aplikasi ini sangat membantu pengguna Pocket PC dalam proses input tulisan Jepang terutama Kanji mengingat Pocket PC pada umumnya tidak memiliki fasilitas yang cukup untuk hal tersebut.

5.2 Saran

Pada pengembangan program aplikasi kamus bahasa Jepang berbasis Pocket PC berikutnya diharapkan beberapa hal sebagai berikut :

1. Custom SIP bekerja secara independen lepas dari aplikasi ini, sehingga dapat digunakan sebagai metode input untuk program aplikasi lain secara langsung. 2. Dapat lebih cepat dan lebih baik dalam hal proses pencarian kata dengan

database kamus yang bersifat bi-directional artinya terdapat dua database yang terpisah, yaitu : Jepang – Inggris dan Inggris – Jepang.

3. Menggunakan algoritma pengenalan pola huruf Kanji yang bersifat stroke-order rules independent.


(5)

(6)

DAFTAR PUSTAKA

1. Diambil dari buku :

Adimihardja, Mulyana, 2003, Kamus Kanji Modern, CV. Pustaka Grafika, Bandung.

Adimihardja, Mulyana, 2003, Ragam Kanji, CV. Pustaka Grafika, Bandung. Anton, Howard, 1997, Aljabar Linier Elementer, Erlangga, Jakarta.

Chandra, T., 2003, Mengenal Kanji, Kursus Bahasa Jepang Evergreen, Jakarta. Djunaidi, Feri, 2002, Pemrograman Pocket PC, PT. Elex Media Komputindo,

Jakarta.

Hadi, Rahadian, 2001, Pemrograman Windows API dengan Microsoft Visual Basic, PT. Elex Media Komputindo, Jakarta.

Tim Kashiko, 1999, Kamus Lengkap Jepang-Indonesia Indonesia-Jepang, Kashiko, Surabaya.

Yoshida, Yasuo, 2000, Japanese for Beginners edisi Indonesia, Harmoni, Jakarta.

2. Diambil dari Internet :

Benny, Patrick, 2003, about edict_access.mdb, Desember 2003. URL : http://ftp.monash.edu.au/pub/nihongo/edict_access_v03-005.txt.

Benny, Patrick, 2004, about kanjidic_access.mdb, Maret 2004. URL : http://ftp.monash.edu.au/pub/nihongo/kanjidic_access.txt.

Breen, Jim, 2003, EDICT Japanese/English Dictionary File, Maret 2004. URL : http://ftp.monash.edu.au/pub/nihongo/edict_doc.html.

Breen, Jim, 2003, KANJIDIC (6,355 Kanji in JIS x 208 Standard), Maret 2004. URL : http://ftp.monash.edu.au/pub/nihongo/kanjidic_doc.html.

Rudick, Tony D., 1997, JavaDict Reverence, Januari 1998. URL : http://www.cs.arizona.edu/japan/JavaDict/README.html.

Sinai, Gaspar, 2000, Algorithm used in Freehand Input, Januari 2000. URL : http://www.yudit.org/download/yudit-2.7.6/doc/HOWTO-freehand.txt.