Word Prediction Menggunakan Windows API Berbasis Word Frequencies
WORD PREDICTION MENGGUNAKAN WINDOWS API BERBASIS WORD FREQUENCIES SKRIPSI ADE N TAMBUNAN 091402054 PROGRAM STUDI S-1 TEKNOLOGI INFORMASI FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2015
WORD PREDICTION MENGGUNAKAN WINDOWS API
BERBASIS WORD FREQUENCIES SKRIPSI Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah
Sarjana Teknologi Informasi ADE N TAMBUNAN
091402054 PROGRAM STUDI S-1 TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2015
PERSETUJUAN
Judul : WORD PREDICTION MENGGUNAKAN
WINDOWS API BERBASIS WORD
FREQUENCIES
Kategori : SKRIPSI Nama : ADE N TAMBUNAN Nomor Induk Mahasiswa : 091402054 Program Studi : SARJANA (S1) TEKNOLOGI INFORMASI Departemen : TEKNOLOGI INFORMASI Fakultas :
ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI (FASILKOM-TI) UNIVERSITAS SUMATERA UTARA Diluluskan di Medan, 22 Januari 2015
Komisi Pembimbing : Pembimbing 2 Pembimbing 1 Dr. Erna Budhiarti Nababan, M.IT M. Andri Budiman, ST., M.Comp.Sc., M.E.M
NIP 19751008 200801 1 001 Diketahui/Disetujui oleh Program Studi S1 Teknologi Informasi Ketua, M. Anggia Muchtar, ST., MM.IT.
NIP 19800110 200801 1 010
PERNYATAAN
WORD PREDICTION MENGGUNAKAN WINDOWS API BERBASIS WORD
FREQUENCIES
SKRIPSI Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, 22 Januari 2015 Ade N Tambunan 091402054
PENGHARGAAN
Alhamdulillah, segala puji dan syukur penulis panjatkan atas kehadirat Allah SWT beserta Nabi besar Muhammad SAW yang telah memberikan rahmat, hidayah-Nya, segala daya dan upaya sehingga penulis dapat menyelesaikan skripsi ini sebagai syarat utnuk memperoleh gelar Sarjana Program Studi S-1 Teknologi Informasi Universitas Sumatera Utara, Ucara terima kasih yang sebesar-besarnya penulis sampaikan kepada: 1.
Kedua orang tua penulis, orang yang paling berharga dalam hidup penulis, ayahanda Syahrial Tambunan dan ibunda Tima Manggareta Dwirani Zahri yang telah membesarkan, mendidik, memberi dukungan, doa dan motivasi tanpa henti. Serta kepada abang dan adik penulis Adrian Nurrachman Tambunan dan Alreza Nurcholis Tambunan yang selalu ada dan menemani penulis.
2. Ketua dan Sekretaris Program Studi Teknologi Informasi, Bapak Muhammad Anggia Muchtar, ST., MM. IT. dan Bapak Muhammad Fadly Syahputra, B.Sc, M.Sc.IT, Dekan dan Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara, semua dosen serta pegawai di Program Studi S1 Teknologi Informasi.
3. Bapak Mohammad Andri Budiman, ST., M.Comp.Sc., M.E.M selaku pembimbing pertama dan Ibu Dr. Erna Budhiarti Nababan, M.IT selaku pembimbing kedua, yang telah banyak meluangkan waktunya dan memberikan masukan-masukan yang bermanfaat bagi penulis dalam menyelesaikan skripsi ini.
4. Bapak Muhammad Anggia Muchtar, ST., MM. IT. dan Bapak Muhammad Fadly Syahputra, B.Sc, M.Sc.IT yang telah bersedia menjadi dosen pembanding dan memberikan saran-saran yang baik bagi penulis dalam menyelesaikan skripsi ini.
5. Kepada Yunisya Aulia Putri yang selalu sabar, selalu mendukung, membantu dan merupakan salah satu motivasi penulis dalam menyelesaikan skripsi ini.
Serta teman-teman yang mendukung dan membantu penulis Dwiky, Hafiz Yahya, Yogi, Ibnu, Ammar, Reza, Ridzuan, Fadhlullah, Fadli Rizky, Abdi Hafiz, Icha, Yanna, Dijah, Juju, Fanny, Hani, Binyo, Fadli Rachman, Dezi, Kurniawan, dan seluruh teman-teman lainnya yang tidak dapat disebutkan satu persatu.
6. Kepada Abang Faisal dan Ibu Delima yang selaku bagian tata usaha Program Studi S1 Teknologi Informasi yang telah membimbing dan membantu penulis dari awal proposal sampai sidang.
7. Dan juga kepada teman-teman basket Allstar MIPA yang selalu menghibur penulis. Sekali lagi penulis mengucapkan terima kasih yang sebesar-besarnya kepada semua pihak yang membantu dalam penyelesaian tugas akhir ini yang tidak dapat disebutkan. Terima kasih atas masukan, saran, dan motivasi yang diberikan. Semoga Allah SWT membalas dengan nikmat yang berlimpah.
ABSTRAK
Mengetik merupakan salah satu kegiatan yang erat dalam kehidupan sehari-sehari, namun masih banyak yang mengalami masalah ketika mengetik terutama bagi yang berkebutuhan khusus seperti autis. Salah satu solusinya yaitu dengan menggunakan aplikasi word prediction agar dapat mengurangi keystroke yang diperlukan untuk mengetik suatu teks, namun aplikasi word prediction yang beredar masih banyak yang menggunakan bahasa asing, bukan bahasa Indonesia. Pada penelitian ini, aplikasi word
prediction yang dikembangkan menggunakan database yang berbahasa Indonesia
berbasis frekuensi kata. Aplikasi word prediction yang dikembangkan dapat berjalan di banyak aplikasi pengolah kata seperti Microsoft Word, Notepad, E-mail, dengan memanfaatkan Windows API. Hasil pengujian menunjukkan bahwa word prediction berbasis frekuensi kata mampu menghasilkan Keystroke Saving (KS) antara 26% sampai dengan 34%.
Kata kunci : word prediction, frekuensi kata, windows api, kebutuhan khusus
FREQUENCIES-BASED WORD PREDICTION
WITH WINDOWS API
ABSTRACT
Typing is one activity that is closely in everyday life, but there are still many who have problems when typing, especially for those who are special needs like autism. One solution is to use word prediction application that can reduce keystroke needed to type a text, but many application of word prediction in circulation are still use a foreign language, not Indonesian. In this study, word prediction application was developed using Indonesian language database of word frequency. Applications can be run in many word processing applications such as Microsoft Word, Notepad, E-mail, by utilizing the Windows API. The results show that the frequency-based word prediction is able to achieved Keystroke Saving (KS) between 26% and 34%.
Keywords : word prediction, word frequency, windows api, special needs
DAFTAR ISI
PERSETUJUANiii
PERNYATAAN
iv
PENGHARGAAN
v
ABSTRAK
vi
ABSTRACT
vii
DAFTAR ISI
viii
DAFTAR TABEL
xi
DAFTAR GAMBAR
xii
BAB 1 PENDAHULUAN
14
1.1. Latar Belakang
14
1.2 Rumusan Masalah
16
1.3 Batasan Masalah
16
1.4 Tujuan Penelitian
17
1.5 Manfaat Penelitian
17
1.6 Metodologi Penelitian
17
1.7 Sistematika Penulisan
18 BAB 2 LANDASAN TEORI
20
2.1 Anak Berkebutuhan Khusus (ABK)
20
2.1.1 Anak Berkebutuhan Khusus Bersifat Sementara (Temporer)
20
2.1.2 Anak Berkebutuhan Khusus Bersifat Menetap (Permanen)
21
2.2 Word Prediction
21
2.3 Algoritma Pencarian
22
2.3.1 Algoritma Pencarian Linear (Linear Search Algorithm)
22
2.3.2 Algoritma Pencarian Biner (Binary Search Algorithm)
23
2.3.3 Algoritma Pencarian Interpolasi (Interpolation Search Algorithm)
24
2.3 Algoritma prediksi
24
2.4 Adaptation
25
2.5 Windows API
26
2.6 Penelitian Terdahulu
26 BAB 3 ANALISIS DAN PERANCANGAN SISTEM
29
3.1 Analisis masalah
29
3.2 Analisis Data
30
3.3. Perancangan Sistem
32
3.3.1 Windows API
32
3.3.2 Flowchart Sistem
33
3.3.3 Perancangan Database
36
3.3.4 Diagram Use Case
38
3.3.5 Use case spesifikasi
39
3.3.6 Activity Diagram
45
3.3.7 Perancangan Antar Muka
49 BAB 4 IMPLEMENTASI DAN PENGUJIAN
55
4.1 Implementasi Sistem
55
4.1.1 Perangkat Keras
55
4.1.2 Perangkat Lunak
56
4.2 Pengujian
56
4.2.1 Tabel pada database MySQL
56
4.2.2 Kasus dan hasil pengujian sistem
58
4.3 Pengujian Kinerja Sistem
63
4.4 Hasil pengujian prediksi kata pada aplikasi pengolah kata
73
4.5 Hasil pengujian Keystroke Saving (KS)
79
4.6 Evaluasi Heuristik dengan Skala Likert
80
4.6.1 Skor untuk tampilan aplikasi
81
4.6.2 Skor untuk Fitur-fitur aplikasi
82
4.6.3 Skor untuk hasil prediksi kata
83
4.6.4 Skor untuk Banyaknya Hasil Prediksi Kata
83
4.6.5 Skor untuk Keystroke Saving
84
4.6.6 Hasil Skor Aspek Heuristik Skala Likert
85 BAB 5 KESIMPULAN DAN SARAN
88
5.1 Kesimpulan
88
5.2 Saran
89 DAFTAR PUSTAKA
90
DAFTAR TABEL
45 Tabel 4.1 Hasil pengujian halaman awal
86 Tabel 4.10 Skor Rata-rata Setiap Aspek
81 Tabel 4.9 Rating Scale
80 Tabel 4.8 Skor Jawaban Kuesioner
63 Tabel 4.7 Skala Jawaban dari Skala Likert
62 Tabel 4.6 Hasil pengujian halaman daftar
62 Tabel 4.5 Hasil pengujian halaman login
61 Tabel 4.4 Hasil pengujian halaman ubah kata
60 Tabel 4.3 Hasil pengujian halaman tambah kata
59 Tabel 4.2 Hasil pengujian halaman pengaturan (Lanjutan)
59 Tabel 4.2 Hasil pengujian halaman pengaturan
58 Tabel 4.1 Hasil pengujian halaman awal (Lanjutan)
44 Tabel 3.7 Spesifikasi use case untuk cari kata (Lanjutan)
Hal
44 Tabel 3.7 Spesifikasi use case untuk cari kata
43 Tabel 3.6 Spesifikasi use case untuk hapus kata
42 Tabel 3.5 Spesifikasi use case ubah kata
41 Tabel 3.4 Spesifikasi use case untuk tambah kata
40 Tabel 3.3 Spesifikasi use case untuk input huruf (Lanjutan)
40 Tabel 3.3 Spesifikasi use case untuk input huruf
39 Tabel 3.2 Spesifikasi use case untuk login (Lanjutan)
31 Tabel 3.2 Spesifikasi use case untuk login
30 Tabel 3.1. Sampel Data Kata (Lanin et al, 2013) (Lanjutan)
28 Tabel 3.1 Sampel Data Kata (Lanin et al, 2013)
Tabel 2.1 Penelitian Terdahulu86
DAFTAR GAMBAR
52 Gambar 3.15 Rancangan tampilan halaman about
69 Gambar 4.13 Halaman tambah kata (Kata berhasil ditambah)
68 Gambar 4.12 Halaman tambah kata
67 Gambar 4.11 Halaman pengaturan (Hapus kata error)
66 Gambar 4.10 Halaman pengaturan (Kata berhasil dihapus)
65 Gambar 4.8 Halaman pengaturan (Pencarian kata)
65 Gambar 4.7 Halaman pengaturan
64 Gambar 4.6 Halaman Awal Aktif
64 Gambar 4.5 Halaman Awal Non-aktif
58 Gambar 4.4 Halaman login
57 Gambar 4.3 Tabel unigramnamauser
57 Gambar 4.2 Tabel login
54 Gambar 4.1 Tabel unigram
54 Gambar 3.17 Rancangan tampilan halaman daftar
53 Gambar 3.16 Rancangan tampilan halaman login
51 Gambar 3.14 Rancangan tampilan halaman tambah kata
Hal
50 Gambar 3.13 Rancangan tampilan halaman pengaturan
49 Gambar 3.12 Rancangan tampilan awal aplikasi
48 Gambar 3.11 Activity diagram sistem (ubah kata)
47 Gambar 3.10 Activity diagram sistem (hapus kata)
46 Gambar 3.9 Activity diagram sistem (tambah kata)
39 Gambar 3.8 Activity diagram sistem (prediksi kata)
38 Gambar 3.7 Diagram use case sistem
37 Gambar 3.6 Rancangan tbl_unigramnamauser
36 Gambar 3.5 Rancangan tbl_login
35 Gambar 3.4 Rancangan tbl_unigram
33 Gambar 3.3 Flowchart Algoritma
30 Gambar 3.2 Flowchart Sistem
21 Gambar 3.1 Diagram Ishikawa analisis permasalahan
Gambar 2.1 Ilustrasi penggunaan word prediction69
Gambar 4.14 Halaman tambah kata (Kata gagal ditambah)76 Gambar 4.24 Pengujian pengiriman kata pada Microsoft word
84 Gambar 4.32 Grafik Skor Pertanyaan 5
83 Gambar 4.31 Grafik Skor Pertanyaan 4
82 Gambar 4.30 Grafik Skor Pertanyaan 3
81 Gambar 4.29 Grafik Skor Pertanyaan 2
79 Gambar 4.28 Grafik Skor Pertanyaan 1
78 Gambar 4.27 Pengujian pengiriman kata pada E-mail
26 Prediksi kata “meng” berdasarkan frek_unigram dan frek_uniuser
77 Gambar 4.
77 Gambar 4.25 Pengujian sistem pada aplikasi E-mail
23 Prediksi kata “k” berdasarkan frek_unigram dan frek_uniuser
70 Gambar 4.15 Halaman ubah kata (error)
75 Gambar 4.
75 Gambar 4.22 Pengujian sistem pada aplikasi Microsoft word
74 Gambar 4.21 Pengujian pengiriman kata pada notepad
20 Prediksi kata “ma” berdasarkan frek_unigram
74 Gambar 4.
73 Gambar 4.19 Pengujian sistem pada notepad
72 Gambar 4.18 Halaman about
71 Gambar 4.17 Halaman ubah kata (Konfirmasi ubah kata)
71 Gambar 4.16 Halaman ubah kata (Informasi kata)
85