Nama : Irianto Bunga Pratama NIM : 06.41010.0080
Program : S1 (Strata Satu) Jurusan : Sistem Informasi
SEKOLAH TINGGI
MANAJEMEN INFORMATIKA & TEKNIK KOMPUTER SURABAYA
SKRIPSI
Diajukan sebagai salah satu syarat untuk menyelesaikan Program Sarjana Komputer
Oleh :
Nama : Irianto Bunga Pratama NIM : 06.41010.0080
Program : S1 (Strata Satu) Jurusan : Sistem Informasi
SEKOLAH TINGGI
MANAJEMEN INFORMATIKA & TEKNIK KOMPUTER SURABAYA
Keluar lebih cepat dari lembah
Bertahan lebih lama di puncak
Buku ini penulis persembahkan untuk orang tua, saudara, kerabat dan sahabat yang telah memberikan dukungan baik moril maupun materil, serta kasih dan
dipersiapkan dan disusun oleh Irianto Bunga Pratama
NIM : 06.41010.0080
Telah diperiksa, diuji dan disetujui oleh Dewan Penguji pada : November 2011
Susunan Dewan Penguji Pembimbing
I. Teguh Sutanto M.Kom, MCP __________________________
II. Erwin Sutomo S.Kom __________________________
Penguji
I. Drs. Bambang Hariadi, M.Pd __________________ ________
II. Dr. Jusak Irawan _______________________ ___
Tugas Akhir ini telah diterima sebagai salah satu persyaratan untuk memperoleh gelar Sarjana
Pantjawati Sudarmaningtyas, S.Kom.,OCA Pembantu Ketua Bidang Akademik
i
Bahasa Inggris adalah salah satu bahasa yang digunakan sebagai alat komunikasi universal pada ruang lingkup internasional. Pembelajaran bahasa Inggris memerlukan pendekatan yang tepat dan efektif dikarenakan merupakan bahasa asing di Indonesia. Alat bantu belajar bahasa Inggris diperlukan untuk dapat menambah minat dan motivasi pemula untuk dapat belajar dengan giat. Teknologi komputer yang berkembang saat ini dapat membantu dalam pembelajaran secara mandiri dikarenakan memiliki fasilitas multimedia yang
dapat mengeluarkan gambar, suara dan pengenalan suara. Aplikasi Mobile Belajar
Melafalkan Bahasa Inggris adalah sebuah aplikasi yang digunakan untuk
melakukan proses pembelajaran melafalkan bahasa Inggris.
Aplikasi Mobile Belajar Melafalkan Bahasa Inggris menggunakan fitur
speech input dan text to speech yang telah disediakan pada handphone android
agar pengguna dapat mencocokkan pelafalan dan mendengarkan pelafalan bahasa Inggris oleh sistem. Selain proses tersebut, aplikasi ini juga dilengkapi fitur
maitenance data pengguna, maintenance data kategori, maintenance data item dan
penilaian yang hasilnya ditampilkan dalam bentuk daftar dan grafik.
Aplikasi Mobile Belajar Melafalkan Bahasa Inggris ini bagi 30 orang
pengguna dinilai 80% bermanfaat dan 78% menambah minat dan motivasi belajar. Aplikasi ini telah berhasil dijalankan pada android 2.2 dan bersifat dinamis, dimana dapat melakukan maintenance data kategori dan item.
Kata kunci: android, voice recognition, e-learning, speech input, text-to-speech,
iv DAFTAR ISI
Halaman
ABSTRAK ... i
KATA PENGANTAR ... ii
DAFTAR ISI ... iv
DAFTAR GAMBAR ... viii
DAFTAR TABEL ... xiv
DAFTAR LAMPIRAN ... xvi
BAB I PENDAHULUAN 1.1. Latar Belakang ... 1
1.2. Perumusan Masalah ... 2
1.3. Batasan Masalah... 3
1.4. Tujuan... 3
1.5. Sistematika Penulisan ... 3
BAB II LANDASAN TEORI 2.1. Bahasa Inggris ... 6
2.1.1. Metode Belajar Bahasa Inggris ... 6
2.1.2. Langkah-Langkah Cara Mengajar Bahasa ... 7
2.1.3. Kunci Ucapan dan Tekanan Bunyi ... 9
2.2. Android ... 10
2.2.1. Versi Android ... 12
2.2.2. Android SDK ... 14
v
2.2.4. SQLite ... 21
2.3. Interaksi Manusia Komputer (IMK) ... 22
2.3.1. Faktor Manusia ... 23
BAB III PERANCANGAN SISTEM 3.1. Gambaran Umum Sistem ... 26
3.1.1. Kategori ... 27
3.1.2. Item ... 27
3.1.3. Melafalkan Kata ... 28
3.1.4. Memasukkan Suara ... 29
3.1.5. Grafik Nilai ... 30
3.1.6. Menambahkan dan Menghapus Pengguna ... 31
3.1.7. Admin ... 31
3.2. Perancangan Sistem ... 31
3.2.1. Use Case Diagram ... 32
3.2.2. Flow of Event... 34
3.2.3. Activity Diagram ... 40
3.2.4. Sequence Diagram ... 49
3.2.5. Class Diagram ... 57
3.2.6. Component Diagram ... 68
3.2.7. Deployoment Diagram ... 68
3.3. Perancangan User Interface... 69
3.3.1. Tampilan Daftar Pengguna ... 69
3.3.2. Tampilan Pegaturan Pengguna ... 70
vi
3.3.4. Tampilan Menu Belajar ... 73
3.3.5. Tampilan Latihan ... 74
3.3.6. Tampilan Daftar Kategori ... 74
3.3.7. Tampilan Item ... 74
3.3.8. Tampilan Menu Nilai ... 75
3.3.9. Tampilan Daftar Nilai Pribadi ... 76
3.3.10. Tampilan Grafik Nilai Pribadi ... 77
3.3.11. Tampilan Daftar Nilai Perbandingan ... 77
3.3.12. Tampilan Grafik Nilai Perbandingan ... 78
3.3.13. Tampilan Menu Data ... 78
3.3.14. Tampilan Pengaturan Kategori ... 79
3.3.15. Tampilan Pengaturan Item ... 81
3.4. Desain Uji Coba ... 84
3.4.1. Uji Coba Fungsi Aplikasi ... 84
3.4.2. Uji Coba Aplikasi Kepada Pengguna... 92
BAB IV IMPLEMENTASI DAN EVALUASI 4.1. Kebutuhan Sistem ... 96
4.1.1. Kebutuhan Perangkat Keras... 96
4.1.2. Kebutuhan Perangkat Lunak ... 96
4.2. Pembuatan Program ... 97
4.3. Implemtasi Sistem ... 97
4.3.1. Tampilan Pengenalan ... 98
4.3.2. Tampilan Daftar Pengguna ... 99
vii
4.3.4. Tampilan Menu Utama ... 106
4.3.5. Tampilan Belajar ... 107
4.3.6. Tampilan Latihan ... 108
4.3.7. Tampilan Daftar Kategori ... 110
4.3.8. Tampilan Item ... 111
4.3.9. Tampilan Nilai ... 115
4.3.10. Tampilan Daftar Nilai Pribadi ... 115
4.3.11. Tampilan Grafik Nilai Pribadi ... 117
4.3.12. Tampilan Daftar Nilai Perbandingan ... 118
4.3.13. Tampilan Grafik Nilai Perbandingan ... 119
4.3.14. Tampilan Menu Data ... 121
4.3.15. Tampilan Pengaturan Kategori ... 122
4.3.16. Tampilan Pengaturan Item ... 125
4.4. Evaluasi Sistem ... 134
4.4.1. Uji Coba Fungsi Aplikasi ... 134
4.4.2. Uji Coba Aplikasi Kepada Pengguna... 143
4.4.3. Analisis Hasil Uji Coba ... 146
BAB V PENUTUP 5.1. Kesimpulan ... 149
5.2. Saran ... 149
BAB I PENDAHULUAN
1.1. Latar Belakang
Bahasa Inggris adalah salah satu bahasa yang digunakan sebagai alat komunikasi universal pada ruang lingkup internasional. Pembelajaran bahasa
Inggris dasar untuk para pemula biasanya dilakukan dengan cara membaca, mendengar, berbicara dan menulis serta memerlukan pedekatan yang tepat dan efektif dikarenakan merupakan bahasa asing di Indonesia. Dengan cara ini para pemula hanya dapat mengetahui kata - kata dalam bahasa Inggris, dan kurang dalam mengetahui pelafalan yang baik dan benar. Kesuksesan dalam belajar bahasa Inggris tergantung pada penyajian pembelajaran dimana proses belajar mengajar mengutamakan hal yang menarik dan menyenangkan. Alat bantu belajar bahasa Inggris yang menarik dan menyenangkan dapat memotivasi pemula untuk dapat belajar dengan giat. Bagi para pemula yang belajar bahasa Inggris secara mandiri, menghadapi masalah dalam pelafalan yang baik dan benar, dikarenakan tidak adanya orang kedua untuk membenarkan pelafalan tersebut. Teknologi komputer yang berkembang saat ini dapat membantu dalam pembelajaran secara mandiri dikarenakan memiliki fasilitas multimedia yang dapat mengeluarkan gambar, suara dan pengenalan suara.
Aplikasi kamus bergambar dengan voice recognition untuk anak–anak
usia 4 – 6 tahun telah dibuat oleh saudari Ari Haryati, Sarjana Manajemen Informatika STIKOM Surabaya, tahun 2001. Aplikasi tersebut berguna untuk
4 – 6 tahun. Aplikasi yang dibuat menggunakan visual basic 6 ini berbasis
desktop, dan menggunakan metode algoritma BEP (Back Error Propagation)
untuk membuat voice recognition. Bagi para pengguna aplikasi ini harus memiliki
computer desktop untuk menggunakannya. Permasalahannya adalah ketika
terdapat pengguna yang ingin sekali belajar mandiri pada waktu senggang, dimana pengguna tidak dapat dihadapkan langsung pada computer desktop.
Mobile phone yang berkembang saat ini sudah memiliki banyak fitur pendukung
antara lain memunculkan gambar, memutar musik, dan mengenal suara.
Android adalah sebuah sistem operasi berbasiskan java, yang berjalan pada linux 2.6 kernel di dalam mobile phone. Sistem ini sangat ringan dan
memiliki banyak fitur. Android versi 1.1 hingga 2.3 telah dilengkapi dengan
voice search (pencarian suara). Dengan adanya pengenal suara pada Android,
penulis akan membuat Aplikasi Mobile Belajar Melafalkan Bahasa Inggris.
Maka dengan adanya Aplikasi Mobile Belajar Melafalkan Bahasa Inggris diharapkan para pemula yang ingin belajar bahasa Inggris dasar dapat melafalkan kata - kata bahasa Inggris dengan baik dan benar secara mandiri serta dapat termotivasi lebih giat dalam mempelajari bahasa Inggris dengan fitur yang ada.
1.2. Perumusan Masalah
Berdasarkan latar belakang masalah yang telah diuraikan diatas, maka rumusan masalah dalam tugas akhir ini, yaitu:
1. Bagaimana merancang dan membangun aplikasi mobile belajar melafalkan
bahasa Inggris pada sistem operasi Android versi 2.2?
2. Bagaimana membangun aplikasi mobile belajar melafalkan bahasa Inggris
1.3. Batasan Masalah
Adapun batasan-batasan masalah yang digunakan dalam tugas akhir ini adalah :
1. Aplikasi ini ditujukan kepada para pemula yang belum pernah belajar bahasa Inggris.
2. Aplikasi ini hanya sebatas belajar melafalkan bahasa Inggris dasar 3. Bahasa Inggris dasar yang digunakan adalah per kata
4. Aplikasi ini berjalan pada sistem operasi Android versi 2.2
5. Diasumsikan voice recognition (pengenalan suara) sudah tersedia pada
sistem operasi Android (Speech Input dan Text to Speech).
6. Tidak memperhatikan tingkat kebisingan sekitar lokasi, serta besar kecil suara pengguna dan jarak mulut dengan handphone android.
1.4. Tujuan
Berdasarkan perumusan masalah di atas, maka didapatkan tujuan dari tugas akhir ini, yaitu:
1. Menghasilkan aplikasi mobile belajar melafalkan bahasa Inggris pada
sistem operasi Android versi 2.2.
2. Menghasilkan aplikasi mobile belajar melafalkan bahasa Inggris
yang bersifat dinamis (dapat menambahkan kategori dan item).
1.5. Sistematika Penulisan
Untuk memudahkan di dalam memahami persoalan dan pembahasannya,
BAB I PENDAHULUAN
Pada bab ini dikemukakan hal-hal yang menjadi latar belakang, perumusan masalah, batasan masalah, tujuan yang ingin dicapai serta sistematika penulisan laporan tugas akhir ini.
BAB II LANDASAN TEORI
Pada bab ini dibahas secara singkat teori-teori yang berhubungan dan mendukung dalam pembuatan tugas akhir ini. Adapun teori yang dibahas meliputi: bahasa Inggris yang merupakan subjek utama, sistem operasi Android yang memungkinkan pembuatan aplikasi dalam handphone, interaksi manusia dan komputer (IMK) yang
membantu dalam penentuan user interface agar mudah dimengerti
oleh pengguna, UML yang digunakan untuk merancang sistem aplikasi mobile belajar melafalkan bahasa Inggris, serta MVC sebagai
pola arsitektur dalam mendesain aplikasi secara lebih efektif.
BAB III PERANCANGAN SISTEM
Pada bab ini dibahas tentang gambaran umum dan perancangan dari aplikasi yang dibuat. Perancangan sistem yang dibuat meliputi
use case diagram, flow of event, activity diagram, sequence diagram,
class diagram dandesain input output.
BAB IV IMPLEMENTASI dan EVALUASI
menyelesaikan permasalahan yang dihadapi sesuai dengan yang diharapkan. Pengujian aplikasi dilakukan pada validasi input,
fungsionalitas sistem, dan non-fungsionalitas sistem.
BAB V PENUTUP
6 2.1. Bahasa Inggris
Bahasa Inggris adalah bahasa Internasional selain yang digunakan untuk berhubungan antar negara, juga digunakan untuk memperdalam dan
mengembangkan ilmu pengetahuan, karena sebagian besar
buku ilmu pengetahuan didatangkan dari luar negeri. (Izzan dan Mahfuddin, 2007:1)
2.1.1. Metode Belajar Bahasa Inggris
Izzan dan Mahfuddin (2007:3) mendefinisikan belajar sebagai suatu
proses rumit yang menimbulkan kesulitan bagi orang muda maupun orang dewasa, tetapi berbeda dengan anak-anak dikarenakan proses belajar yang
berbeda. Para ahli bahasa mengemukakan metode-metode pembelajaran bahasa sebagai berikut:
1. Metode Gouin (La Methode Gouin) oleh seorang Perancis yang bernama
Gouin. Menurut Gouin pembelajaran bahasa seharusnya dimulai dimulai dengan bercakap-cakap dan membaca, serta tidak memulai dengan pelajaran tata bahasa (Grammatical). Kelebihan dari metode ini adalah untuk melatih
berbicara dan mendengar.
2. Berlitz Method, yang disebut juga metode langsung (the direct method),
metode alamiah (natural method), metode lisan (oral method), atau metode
jangan menggunakan terjemahan kecuali jika terpaksa. Metode ini hampir sama dengan metode Gouin, hanya benda atau barang harus diperhatikan.
3. La Methode intuitive, dinamakan juga metode panca indra, yaitu dengan
pengajar mengucapkan kemudian didengar dan ditirukan oleh pelajar.
4. Metode elektik adalah kumpulan teknik penyajian bahan pelajaran yang disesuaikan dengan:
a. bahan pelajaran tertentu, b. siswa tertentu, dan c. hasil yang dituju.
Dalam metode ini pengajar yang menentukan teknik dalam membantu dan memudahkan siswa mempelajari bahan pelajaran dengan memperhatikan dan memperhitungkan kemampuan, keinginan, dan keadaan siswa.
5. Metode all in one system atau metode kesatuan adalah cara pembelajaran
bahasa yang tidak boleh dipisah-pisah. Tujuan metode ini adalah siswa harus mengerti apa yang mereka dengar, katakan, dan baca. Metode ini sesuai dengan Gestalt, yaitu pengajar menyebutkan materi pelajaran, sedangkan
pelajar mendengarkan dengan cermat, meniru, mempraktikan, membaca, kemudian menuliskan.
2.1.2. Langkah-Langkah Cara Mengajar Bahasa
Menurut Izzan dan Mahfuddin (2007:5), adapun langkah-langkah cara mengajar bahasa antara lain:
1. Langkah pertama
a. Tidak memberikan teks atau bacaan.
c. Tidak menggunakan bahasa pengantar dengan bahasa asing (bagi para pemula) karena akan membuat para siswa bingung.
d. Mengajarkan bahasa Inggris atau bahasa asing lain yang komunikatif, mulai dari ucapan salam, ucapan terimakasih, berpisah, berkenalan, meminta maaf, menanyakan arah, menawarkan sesuatu, dan lain-lain. 2. Langkah kedua
a. Pengajar menyampaikan kosakata dengan dibaca berulang-ulang, tetapi tidak ditulis kemudian pelajar menirukan apa yang dibaca oleh pengajar. Walaupun tidak berurutan, yang penting para siswa hafal kemudian menuliskannya.
b. Pada tahap pembelajaran tata bahasa, sebelumnya pengajar harus merangkum seluruh tata bahasa asing yang akan dipelajari agar para siswa mengetahui akhir pelajaran tata bahasa tersebut. Selanjutnya, pengajar menerangkan kepada pelajar dengan bahasa Indonesia. Apabila telah mengerti, pengajar dapat memberikan pelatihan percakapan maupun tulisan dan pekerjaan rumah.
c. Pelajar yang telah melalui dan memahami langkah-langkah diatas bisa melanjutkan ke pelajaran mengarang sederhana dan membaca teks-teks bahasa Inggris sederhana (bukan klasik).
3. Langkah ketiga
2.1.3. Kunci Ucapan dan Tekanan Bunyi
Menurut Peter (2006:XXI), pengucapan dan penekanan bunyi dalam
pembelajaran melafalkan bahasa Inggris ditunjukkan pada tabel 2.1 lambang bunyi dan tabel 2.2 tekanan bunyi.
Tabel 2.1 Lambang Bunyi Vowels
Lambang Contoh
British Amerika Kata British Amerika
i: i bee bi: bi
British/Amerika Kata British Amerika
Konsonan
Lambang Contoh
British/Amerika Kata British Amerika
l lull lΛl ləl
Tabel 2.2 Tekanan Bunyi
Tanda baca Keterangan
„ Menunjukkan tekanan bunyi utama dan diletakkan di atas suku kata yang mendapat tekanan seperti dalam ballon (bə‟lu:n, bə‟lun)
,
Menunjukkan tekanan bunyi kedua dan diletakkan di bawah suku kata yang mendapat tekanan seperti dalam interfere (,intə‟fiə , ɪnər‟fɪr)
2.2. Android
Android dirilis pada tahun 2007 saat Google di bawah aliansi Handset. Dengan dirilisnya Android, Google menyediakan berbagai development kit dan
pengembang dapat ditemukan di website Google Android,
http://code.google.com/android. (DiMarzio, 2008:5)
Android adalah sebuah sistem operasi berbasiskan java, yang berjalan
pada linux 2.6 kernel (DiMarzio, 2008:7). Menurut Blackduck (2010:2),
sistem operasi Android untuk peralatan mobile dibuat agar dapat digunakan pada
open source software dibawah lisensi Apache 2008. Android memuat komponen
dalam (platform) dan komponen luar (Linux kernel dan WebKit, dibawah lisensi
GPLv2 dan LGPL serta variasi komponen lainnya atau projek, hak cipta oleh para pemilik lainnya). Pada gambar 2.1 menunjukkan arsitektur Android.
Gambar 2.1 Arsitektur Android
Android tidak hanya sebuah sistem operasi tetapi juga termasuk sebuah
middleware dan sebuah array of application untuk pengguna. Beberapa dari fitur
pendukung adalah Dalvik Virtual Machine, membangun pada browser dan
mendukung database, media, kamera, GPS, map, dan fitur lainnya
antara lain speech input, Text-to-Speech (TTS), accelerated 3D graphics engine
(berdasarkan pada dukungan hardware), mendukung database yang didukung
oleh SQLite, dan sebuah web browser yang terintegrasi. (DiMarzio, 2008:7)
2.2.1. Versi Android
Menurut Developers, Android(2010), ketika seseorang mengembangkan aplikasi di Android, diharapkan memahami platform pada umumnya untuk
manajemen perubahan API (application programming interface). Tingkat API
diharapkan agar dikenali terlebih dahulu untuk memastikan kompatibilitas aplikasi dengan perangkat yang mungkin akan diinstal. Tingkat API adalah nilai integer yang secara unik mengindentifikasi kerangka revisi API yang
ditawarkan oleh versi dari platform Android. Pembaruan kerangka API dirancang
sehingga API baru tetap kompatibel dengan versi API sebelumnya, kecuali dalam kasus-kasus terisolasi dimana aplikasi menggunakan bagian dari API yang kemudian dihapus karena alasan tertentu. Setiap versi platform Android
mendukung satu tingkat API.
Pada tabel 2.3 memperlihatkan tingkat API yang didukung oleh masing-masing versi dari platform Android.
Tabel 2.3 Tingkat API dan Versi Android Platform Versi Sebutan Tingkat API
Android 2.3 Gingerbread 9
Android 2.2 Froyo 8
Android 2.1 Éclair 7
Android 2.0.1 Éclair 6
Android 2.0 Éclair 5
Android 1.6 Donut 4
Android 1.5 Cupcake 3
Android 1.1 - 2
Pada tabel 2.4 memperlihatkan perbandingan kompatibilitas dari beberapa versi Android.
Tabel 2.4 Kompatibilitas dari beberapa versi Android
Package(P)-Interface(I)-Class(C) versi 1.6 versi 2.1 versi 2.2
android.speech.RecognitionListener I x x v
android.speech.RecognitionService C x x v
android.speech.RecognizerIntent C v v v
android.speech.SpeechRecognizer C x x v
android.speech.tts P v v v
android.database.sqlite P v v v
android.database.sqlite.SQLiteTransactionListener I x x v
Adapun keterangan dari kompatibiltas yang ditunjukkan pada tabel 2.4 yaitu:
1. android.speech.RecognitionListener digunakan untuk menerima
pemberitahuan dari SpeechRecognizer ketika recognition yang
terkait terjadi.
2. android.speech.RecognitionService adalah class yang menyediakan
class dasar untuk implementasi recognition service.
3. android.speech.RecognizerIntent adalah konstanta untuk mendukung
speech recognition melalui pengawalan sebuah Intent.
4. android.speech.SpeechRecognizer adalah class yang menyediakan akses
ke speech recognition service.
5. android.speech.tts adalah package yang mendukung Text-to-Speech
6. android.database.sqlite adalah package yang mendukung
database SQLite
7. android.database.sqlite.SQLiteTransactionListener adalah sebuah
2.2.2. Android SDK
Android sendiri bukanlah bahasa pemograman, melainkan suatu lingkungan yang digunakan untuk menjalankan aplikasi (DiMarzio, 2008:10).
Platform Android adalah software stack untuk perangkat mobile, termasuk
sistem operasi, milddleware dan key applications. Pengembang dapat membuat
aplikasi untuk platform menggunakan Android SDK. Aplikasi yang ditulis
menggunakan bahasa pemograman java dan dijalankan pada dalvik,
sebuah rancangan mesin virtual khusus untuk menangani fungsi dasar seperti
threading dan manajemen low-level memory, yang berjalan di atas kernel Linux.
(DiMarzio, 2008:38)
Pada awal pembuatan proyek Android, diharuskan mengunduh dan menginstal Android SDK. Android SDK tidak berbeda dari SDK lain, dalam hal itu berisi semua kode librariesjava yang diperlukan untuk membuat aplikasi yang
berjalan secara khusus pada platform Android. SDK juga termasuk file help,
dokumentasi, sebuah Emulator Android, dan sejumlah pengembang lainnya dan
debugging. (DiMarzio, 2008:22)
Menurut DiMarzio (2008:37), sebagian besar dari Android SDK terdiri dari dokumentasi, pemograman APIs, tools, dan contoh-contoh yang terbagi
menjadi tiga folder utama:
1. Docs : berisi seluruh dokumentasi yang menyertai Android
2. Samples : berisi enam contoh aplikasi yang dapat di-compile dan lainnya dari
dalam Eclipse.
3. Tools : berisi semua development, compiler, dan alat debugging yang
2.2.3. Speech Recognition
Speech recognition adalah proses identifikasi suara berdasarkan kata
yang diucapkan. Parameter yang dibandingkan ialah tingkat penekanan suara yang kemudian akan dicocokkan dengan template database yang tersedia.
Sedangkan sistem pengenalan suara berdasarkan orang yang berbicara dinamakan
speaker recognition (Melissa, 2008). Speech recognition yang dikenal sebagai
automatic speech recognition atau computer speech recognition menerjemahkan
perkataan yang diucapkan menjadi teks. Di dalam sistem speech recognition
mengandung kata-kata tersebut membutuhkan perbandingan antara sinyal masuk dari kata dan bermacam-macam kata yang ada di dalam kamus (Sunny, 2009). Pada platform Android terdapat fitur Speech Input dan Text-to-Speech sebagai
pendukung voice recognition pada aplikasi yang akan dibuat.
A. Speech Input
Menurut Developers, Android(2010), aplikasi Google search voice yang
sudah terpasang pada banyak perangkat Android, termasuk fitur canggih seperti
“search by voice” dan shortcut suara seperti “navigate to”.
Android 2.1 memperkenalkan voice-enabled keyboard, yang membuatnya lebih
mudah untuk tetap terhubung.
Pada gambar 2.2, menunjukkan salah satu contoh aplikasi yang mengintegrasikan speech input yaitu Handcent SMS. Android SDK memudahkan
untuk mengintegrasikan speech input langsung ke dalam aplikasi, cukup copy dan
paste dari contoh aplikasi untuk memulainya. Pada penggunaan speech input
// Check to see if a recognition activity is present PackageManager pm = getPackageManager();
List activities = pm.queryIntentActivities(
new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH), 0); if (activities.size() != 0) {
speakButton.setOnClickListener(this); } else {
speakButton.setEnabled(false);
speakButton.setText("Recognizer not present"); }
Gambar 2.2 Handscent SMS
Aplikasi kemudian menggunakan startActivityForResult() untuk
menyampaikan maksud bahwa sedang meminta respon voice recognition,
termasuk sebuah parameter tambahan yang menentukan salah satu dari dua model bahasa. Aplikasi voice recognition yang menangani hasil dari proses
voice input, kemudian melewati pengenalan string kembali ke aplikasi dengan
memanggil onActivityResult()serta panggilan ulang dirinya sendiri.
Android adalah platform terbuka, sehingga aplikasi dapat berpotensi
menggunakan layanan dari speech recognation pada perangkat yang terdaftar
untuk menerima RecognizerIntent. Aplikasi Google‟s Voice Search, yang
merupakan pra-instal pada banyak perangkat Android, menanggapi
RecognizerIntent dengan menampilkan dialog “Speak now” dan streaming
pengguna menekan tombol microphone pada pencarian widget atau
voice-enable keyboard. Voice Search diinstal pada semua perangkat utama
Amerika Serikat, dan tersedia pada Android Market.
Salah satu tip penting: untuk speech input agar seakurat mungkin, sangat
membantu untuk memiliki gagasan tentang kata-kata apa yang mungkin untuk diucapkan, yaitu dengan memastikan user meminta model bahasa yang sesuai
(free form untuk dikte atau web search untuk kata yang lebih pendek, seperti
pencarian frase). Server Google mengembangkan model “free form” untuk
meningkatkan akurasi dikte-an untuk voice keyboard, sedangkan model “web search” digunakan ketika pengguna ingin mencari dengan suara.
Server Google saat ini baru mendukung 3 bahasa yaitu Inggris, Jepang
dan Cina, sedangkan yang paling utama telah dioptimalkan adalah bahasa Inggris. (Developers, Android., 2010)
B. Text-to-Speech
Menurut Developers, Android(2010), dimulai dengan Android 1.6
(API level 4), platform Android berisi kemampuan baru yaitu
Text-to-Speech (TTS). Juga dikenal dengan “speech synthesis”,
TTS memungkinkan ponsel Android untuk “berbicara” teks bahasa yang berbeda.
Menurut Hashimi, Komatineni dan MacLean (2010:17), dimulai dari Android versi 2.0 (eclair), android telah memuat mesin Pico Text To Speech.
B.1. Bahasa dan sumber daya
TTS pada platform Android mendukung sejumlah bahasa yaitu: Inggris,
Perancis, Jerman, Itali dan Spanyol. Selain itu, tergantung pada sisi mana
user berada, Amerika dan aksen Inggris untuk kedua bahasa didukung.
TTS perlu mengetahui bahasa mana yang digunakan untuk berbicara, jadi suara dan kamus khusus sumber daya bahasa yang diperlukan, diambil sebelum aplikasi TTS dapat memulai untuk berbicara.
Beberapa perangkat memiliki penyimpangan yang terbatas dan mungkin kurang spesifik terhadap sumber daya file bahasa, walaupun semua perangkat
bertenaga Android mendukung fungsi TTS. Jika seorang pengguna ingin menginstal sumber daya tersebut, TTS API memungkinkan aplikasi untuk melakukan query platform untuk ketersediaan file bahasa dan dapat melakukan
download serta instalasi. Langkah pertama yang baik adalah untuk memeriksa
keberadaan sumber daya TTS dengan maksud menyesuaikan:
Intent checkIntent = new Intent();
checkIntent.setAction(TextToSpeech.Engine.ACTION_CHECK_TTS_DATA); startActivityForResult(checkIntent, MY_DATA_CHECK_CODE);
Sebuah cek yang berhasil akan ditandai dengan kode hasil dari
CHECK_VOICE_DATA_PASS, yang menunjukkan perangkat ini siap untuk berbicara,
setelah membuat objek TextToSpeech. Apabila menginginkan pengguna
mengetahui bagaimana menginstal data yang dibutuhkan untuk perangkat, agar menjadi mesin berbicara dalam banyak bahasa, maka diharuskan mengunduh dan menginstal data. Pengunduhan dilakukan dengan mengarahkan kepada
ACTION_INSTALL_TTS_DATA, yang akan membawa user ke Android Market, dan
setelah pengunduhan selesai. Berikut ini merupakan contoh tentang implementasi dari onActivityResult() akan terlihat seperti:
private TextToSpeech mTts;
protected void onActivityResult(int requestCode, int resultCode, Intent data){
Dalam constructor dari contoh TextToSpeech akan melewati referensi
ke Context yang akan digunakan (pada Activity ini), dan ke OnInitListener
(pada Activity ini juga). Listener ini memungkinkan aplikasi untuk diberitahu
ketika Text-To-Speech terisi penuh, maka dapat memulai mengkonfigurasi dan
menggunakannya.
B.2. Bahasa dan Lokal
Google I/O 2009, menunjukkan contoh TTS di mana ia digunakan untuk berbicara hasil terjemahan dari dan ke salah satu dari 5 bahasa di TTS Android
yang saat ini didukung. Agar dapat memuat dan mengatur bahasa ke bahasa Inggris, dapat dilakukan dengan:
mTts.setLanguage(Locale.US);
locale adalah cara untuk menentukan bahasa, dimana bahasa yang sama
dapat bervariasi dari satu negara ke negara lain. Untuk mengetahui apakah locale
tertentu didukung, maka dapat menggunakan isLanguageAvailable(), yang
TextToSpeech.LANG_MISSING_DATA jika sumber daya yang dibutuhkan tidak
diinstal untuk query language.
B.3. Membuat aplikasi berbicara
Pada saat TextToSpeech dengan benar diinisialisasi dan dikonfigurasi,
dapat dimulai untuk membuat aplikasi berbicara dengan cara termudah yaitu menggunakan methodspeak().
TTS mengelola antrian global semua entri untuk disintesis, yang juga dikenal sebagai "ucapan". Pada saat pertamakali speak() melakukan permintaan
maka akan diidentifikasi ucapan mana yang akan mengganggu apa pun yang saat ini sedang disintesis (antrian mengalir dan ucapan baru antri, yang menempatkannya pada awal antrian). Ucapan kedua adalah antrian dan akan diputar setelah teks pertama telah selesai.
B.4. File rendering dan pemutar ulang
Pada saat method speak() digunakan untuk membuat Android
melafalkan teks, terdapat kasus dimana akan menginginkan hasil dari sintesis
disimpan dalam file audio sebagai gantinya. Pada saat ingin menghindari
CPU overhead sintesis karena teks sering diucapkan maka dapat melakukan
render sekali saja pada file, dan kemudian memutar ulang file audio kapan saja
diperlukan. Pada speak(),dapat menggunakan opsional pengenal ucapan untuk
diberitahukan pada penyelesaian dari sintesis ke file:
HashMap<String, String> myHashRender = new HashMap(); String wakeUpText = "Are you up yet?";
String destFileName = "/sdcard/myAppCache/wakeUp.wav";
myHashRender.put(TextToSpeech.Engine.KEY_PARAM_UTTERANCE_ID, wakeUpText);
Setelah pemberitahuan tentang penyelesaian sintesis, pengguna dapat memutar file output sama seperti sumber daya audio lainnya dengan
android.media.MediaPlayer .
Class TextToSpeech menawarkan cara lain untuk menggabungkan
sumber daya audio dengan speech, karena telah memiliki sebuah file WAV yang
berisi hasil sintesis dalam bahasa yang dipilih sebelumnya dan dapat diakses melalui path, atau melalui paket serta ID sumber dayanya, dengan menggunakan
salah satu dari dua methodaddSpeech():
mTts.addSpeech(exampleText, destFileName);
apabila file yang telah tersimpan hilang, maka speak akan bersikap seolah-olah
fileaudio tidak ada, dan akan mensintesis dan memainkan string yang diberikan.
B.5. Bila tidak digunakan
Apabila telah selesai menggunakan TTS (tidak akan membutuhkan
pelayanan TTS lagi) yaitu dengan memanggil mTts.shutdown(),
dalam activity methodonDestroy().
2.2.4. SQLite
Menurut Developers, Android(2010), Android menyediakan dukungan penuh untuk SQLite database. Setiap database akan dapat diakses dengan nama
untuk tiap class dalam aplikasi, tapi bukan di luar aplikasi. Android SDK berisi
sqlite3 database tools yang memungkinkan dapat menelusuri isi tabel,
menjalankan perintah SQL, dan melakukan fungsi-fungsi berguna lainnya pada
Menurut Developers, Android(2010), adapun spesifikasi dari SQLite pada platform Android yaitu:
1. Tanpa server SQL databaseengine
2. Source code adalah domain public
3. Ringan (kurang dari 300kb)
a. Berguna untuk embedded application
b. Berguna untuk perangkat mobile
4. Dukungan cross platform
5. Read dan writes sebuah filedisk biasa
Tidak mendukung GRANT dan REVOKE karena hanya dapat mendukung hak
akses privileges file normal.
6. Mengimplemen sebagian besar fitur SQL
SQLite mem-parsingforeign key constrains tetapi tidak menerapkannya.
2.3. Interaksi Manusia Komputer (IMK)
Menurut Rizky (2006:4), IMK berdasarkan deskripsi dari asosiasi pakar bidang IMK di Carnegie Melon Univesity (ACM) yaitu (Ghaoui, 2006) :
ilmu yang berhubungan dengan desain, evaluasi dan implementasi dari sistem komputasi interaksi untuk manusia dalam konteks sosial, dan juga mempelajari fenomena yang terjadi disekitarnya.
2.3.1. Faktor Manusia
Menurut Sudartamawan dan Ariyus (2007:17), manusia mempunyai keterbatasan dalam memproses informasi melalui saluran yang terbatas, seperti
visual, auditory, haptic, movement, dan informasi disimpan dalam memori.
A. Saluran Masukan-Keluaran
Saluran masukan (input) utama pada manusia terletak pada panca indra.
Dari saluran ini manusia bisa menerima informasi dari komputer. Semua informasi yang didapat akan diproses dan diolah di dalam memori hingga
menghasilkan suatu keluaran (output).
Saluran input pada manusia antara lain:
1. Mata, berfungsi untuk melihat benda, ukuran, warna, bentuk, kepadatan dan tekstur.
2. Telinga, berfungsi sebagai input pendengaran, untuk mendengarkan nada, warna nada, pola titik nada, intensitas serta frekuensi.
3. Hidung, berfungsi untuk membedakan bau yang ada di sekeliling.
4. Lidah, sebagai indra perasa, untuk membedakan rasa manis, kecut, pahit, dan asin.
5. Kulit, yang membungkus tubuh manusia, berfungsi untuk merasakan tekanan
dan suhu.
Saluran output pada manusia antara lain:
1. Jari-jari, tangan 2. Mata
B. Penglihatan
Penglihatan (vision) didapat dari mata. Dengan memiliki penglihatan
yang baik maka manusia dapat membedakan informasi yang dilihat untuk diproses lebih lanjut. Beberapa ahli berpendapat bahwa mata manusia digunakan untuk menghasilkan persepsi yang terorganisasi terhadap gerakan, ukuran, bentuk, jarak, posisi relatif, tekstur dan warna.
Interpretasi Sinyal
Manusia mempunyai jarak pandang dan ukuran objek pandang yang terbatas. Ukuran dan kedalaman pandang manusia mengindikasikan seberapa banyak area dari objek pandang yang tertangkap yang berhubungan dengan ukuran dan jaraknya dari mata.
Ketajaman pandangan adalah kemapuan untuk mempresepsikan detail yang sangat baik, untuk memberikan gambaran dari objek yang dipandang jelas dan detail sehingga otak bisa memproses sinyal yang masuk hingga menghasilkan
output. Selain itu, dipengaruhi oleh kecemerlangan cahaya (brightness) dan juga
dipengaruhi oleh warna, maka dengan semakin besarnya kejelasan (luminance)
dan kekeruhan pandangan akan mempengaruhi banyaknya kedipan yang terjadi.
C. Membaca
D. Mendengar
Mendengar merupakan suatu proses penting yang dimiliki oleh manusia. Alat fisik untuk mendengar adalah telinga, telinga dibagi menjadi tiga bagian, yaitu:
1. Telinga bagian luar: berfungsi untuk melindungi telinga bagian dalam dan juga untuk menguatkan suara.
2. Telinga bagian tengah: mentransmisi gelombang suara dengan gendang telinga (ear drum) dalam bentuk getaran kemudian melewati telinga bagian
dalam melalui malleus, incus dan stapes(striprup).
3. Telinga bagian dalam: merupakan transmitter kimiawi. Bergetarnya stapes
menyebabkan gelombang tekanan dan cochlea yang menyediakan cairan
mendeteksi adanya sinyal dan mengirimnya ke otak melalui syaraf pendengaran (auditory nerve).
E. Suara
Suara diakibatkan oleh getaran-getaran yang menimbulkan gelombang-gelombang tekanan. Bentuk dari suara tergantung dari panjang gelombang-gelombang yang diakibatkan oleh getaran. Pada dasarnya suara memiliki tiga komponen, yaitu:
1. Pitch atau frekuensi suara.
2. Loudness atau amplitude (lebar atau kekuatan suara)
3. Timbre atau jenis dan kualitas suara. Kualitas suara tergantung dari tiga
komponen:
a. Attack, pembangkit suara
b. Sustain, penopang suara
26 3.1. Gambaran Umum Sistem
Aplikasi mobile yang akan dikembangkan ini nantinya dapat membantu
para pemula agar dapat belajar melafalkan bahasa Inggris dasar secara mandiri. Dalam pembuatan Aplikasi Mobile Belajar Melafalkan Bahasa Inggris dibutuhkan
fitur Text-to-Speech dan Speech Input yang dapat melafalkan serta mencocokkan
suara pengguna dengan sebuah kata bahasa Inggris yang benar pada database.
Dalam hal ini, fitur Text-to-Speech dan Speech Input telah tersedia pada sistem
operasi Android.
Gambar 3.1 Gambaran Umum Sistem
Pada gambar 3.1, pengguna terlebih dahulu memilih kategori yang telah tersedia, kemudian akan muncul gambar, kata dalam bahasa Inggris, kata cara pengucapan dan kata dalam bahasa Indonesia. Pengguna menggunakan
fungsi “Dengar” untuk mendengarkan pelafalan kata dalam bahasa Inggris
mengubah teks dari database menjadi suara yang akan didengar pengguna.
Setelah itu, pengguna menggunakan fungsi “Lafal” agar dapat melakukan pelafalan yang akan dicocokkan dengan kata bahasa Inggris yang tersimpan pada database (mengaktifkan fitur Speech input). Speech input yang aktif akan
mengubah suara dari pengguna menjadi teks, dimana membutuhkan koneksi
internet agar dapat merespon terhadap RecognizerIntent dan melakukan
streaming pada server google.
Pencocokan yang dilakukan akan menghasilkan sebuah nilai yang akan disimpan dan ditampilkan dalam bentuk grafik. Selain itu, pengguna juga dapat menambah serta menghapus pengguna lain dan hanya seorang admin yang diperbolehkan untuk menambah, mengubah serta menghapus kategori dan
item baru.
3.1.1. Kategori
Pada awal penggunaan aplikasi ini, seorang pengguna setelah membuat pengguna baru, terlebih dahulu memilih kategori. Kategori standar yang telah disediakan, yaitu angka, huruf, dan bagian tubuh. Pada aplikasi ini semua pengguna tidak dapat menambah, menghapus dan mengubah kategori. Kategori yang dipilih akan menampilkan beberapa item standar. Pada gambar 3.2,
menunjukkan salah satu contoh item dari kategori yang ada.
3.1.2. Item
Pada aplikasi ini item akan muncul setelah memilih kategori. Item yang
semua pengguna tidak dapat menambahkan, menghapus dan mengubah item.
Pada gambar 3.3 menjelaskan tentang komponen item.
Gambar 3.2 Contoh Item pada Kategori Standar
Gambar 3.3 Komponen Item
3.1.3. Melafalkan Kata
Pada aplikasi ini item akan muncul dan pengguna dapat menggunakan
fungsi “Dengar” agar dapat mendengar pelafalan kata bahasa Inggris yang
tersimpan pada database. Proses pelafalan dapat dilakukan karena menggunakan
paket/fitur Android yang telah tersedia yaitu Text-toSpeech (TTS) yang didukung
oleh mesin TTS yaitu Pico TTS. Untuk mengimplementasikan Text-to-Speech,
memulai untuk berbicara. Apabila terjadi penyimpangan terhadap pelafalan, TTS API memungkinkan aplikasi untuk melakukan query platform untuk
ketersediaan file bahasa serta dapat melakukan download dan instalasi.
Sekarang Text-to-Speech dimisalkan dengan benar diinisialisasi dan
dikonfigurasi, aplikasi dapat memulai untuk berbicara, dengan menggunakan
methodspeak(), contohnya:
String kt_bhs_ing = "one";
mTts.speak(kt_bhs_ing, TextToSpeech.QUEUE_FLUSH, null);
Ketika pelayanan TTS pada aplikasi telah selesai digunakan, maka dapat dihentikan dengan memanggil mTts.shutdown(), dalam activity method
onDestroy().
3.1.4. Memasukkan Suara
Pada aplikasi ini setelah item muncul dan pengguna mendengarkan kata
dalam bahasa Inggris, maka pengguna dapat menggunakan fungsi “Lafal” agar
dapat melafalkan kata bahasa Inggris sesuai contoh pelafalan yang telah dilakukan. Proses memasukkan suara pengguna dapat dilakukan karena menggunakan paket/fitur Android yang telah tersedia yaitu Speech Input yang
didukung oleh server google dimana membutuhkan koneksi internet agar dapat
merespon RecognizerIntent. Untuk mengimplementasikan Speech Input,
aplikasi memverifikasi bahwa perangkat target mampu mengenali speech input:
// Check to see if a recognition activity is present PackageManager pm = getPackageManager();
List activities = pm.queryIntentActivities(
new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH), 0); if (activities.size() != 0) {
speakButton.setOnClickListener(this); } else {
speakButton.setEnabled(false);
Aplikasi kemudian menggunakan startActivityForResult() untuk
memberitahukan bahwa sedang meminta voice recognition, serta sebuah
parameter tambahan yang menentukan salah satu dari dua model bahasa. Aplikasi voice recognition yang menangani hasil dari proses voice input,
kemudian melewati pengenalan string kembali ke aplikasi dengan memanggil
onActivityResult(). /**
* Fire an intent to start the speech recognition activity. */
private void startVoiceRecognitionActivity() { Intent intent = new
Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, RecognizerIntent.LANGUAGE_MODEL_FREE_FORM); intent.putExtra(RecognizerIntent.EXTRA_PROMPT, "Speech recognition demo");
startActivityForResult(intent,VOICE_RECOGNITION_REQUEST_CODE); }
/**
* Handle the results from the recognition activity. */
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == VOICE_RECOGNITION_REQUEST_CODE && resultCode == RESULT_OK) {
// Fill the list view with the strings the recognizer thought it could have heard
ArrayList<String> matches = data.getStringArrayListExtra( RecognizerIntent.EXTRA_RESULTS);
mList.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,matches));
} super.onActivityResult(requestCode, resultCode, data); }
3.1.5. Grafik Nilai
Grafik nilai seluruh pengguna memperlihatkan perolehan nilai seluruh pengguna tiap kategori.
3.1.6. Menambahkan dan Menghapus Pengguna
Pada aplikasi ini pengguna terlebih dahulu diharuskan membuat pengguna baru apabila belum terdaftar, agar dapat menggunakan aplikasi ini. Pengguna juga dapat menghapus serta mengubah data pengguna apabila menginginkannya. Pada aplikasi ini, semua pengguna diperbolehkan menambahkan pengguna baru atau menghapus pengguna yang sudah ada.
3.1.7. Admin
Seorang admin bertugas untuk menambah, mengubah dan menghapus kategori serta item baru kecuali kategori dan item standar. Admin melakukan
tugasnya secara manual, tidak melalui sebuah server atau terkoneksi jaringan
internet. Pada aplikasi ini, seorang admin diberikan sebuah password standar dan
nantinya akan diminta untuk diubah, setelah itu admin dapat melakukan penambahan kategori dan item baru.
3.2. Perancangan Sistem
Perancangan sistem disini akan memberikan gambaran tentang sistem yang akan dibuat dengan menggunakan desain sistem yang berorientasi objek yaitu UML, serta digambarkan dengan menggunakan Star UML. Adapun desain yang dibuat antara lain:
a. Use Case Diagram
b. Flow of Eventt
d. Sequence Diagram
e. Class Diagram
f. Component Diagram
g. Deployment Diagram
3.2.1. Use Case Diagram Aplikasi Mobile Melafalkan Bahasa Inggris
Kemampuan sistem untuk dapat berinteraksi dengan pengguna dan admin dapat digambarkan dalam use case diagrampada gambar 3.4. Pada gambar
tersebut, terdapat dua aktor, yaitu pengguna dan admin. Selain terdapat dua aktor sebagai pengguna sistem, sistem ini juga terdiri dari 11 buah use case, yaitu:
1. Melihat daftar pengguna, pada use case ini memungkinkan aktor pengguna
untuk melihat pengguna yang tersimpan pada database.
2. Menambah pengguna, pada use case ini memungkinkan aktor pengguna
untuk menambah pengguna baru ke dalam database.
3. Menghapus pengguna, pada use case ini memungkinkan aktor pengguna
untuk menghapus pengguna yang telah ada pada database.
4. Mengaktifkan pengguna, pada use case ini memungkinkan aktor pengguna
untuk mengaktifkan pengguna agar dapat memulai belajar melafalkan bahasa Inggris.
5. Mencocokkan pelafalan, pada use case ini memungkinkan aktor pengguna
untuk menggunakan fitur Text-to-Speech untuk mendengar pelafalan kata
bahasa Inggris dan fitur Speech Input untuk mengenali pelafalan pengguna
yang akan dicocokkan dengan kata bahasa Inggris pada database.
6. Melihat nilai, pada use case ini memungkinkan aktor pengguna untuk melihat
7. Melihat perbandingan profil, pada use case ini memungkinkan aktor
pengguna untuk melihat nilai perbandingan antar pengguna.
8. Menambah kategori, pada use case ini memungkinkan aktor admin untuk
menambah kategori baru.
9. Menghapus kategori, pada use case ini memungkinkan aktor admin untuk
menghapus kategori kecuali kategori standar.
10. Menambah item, pada use case ini memungkinkan aktor admin untuk
menambah item baru kecuali item standar.
11. Menghapus item, pada use case ini memungkinkan aktor admin untuk
menghapus item kecuali item standar.
System
Use case untuk menambah pengguna, menghapus pengguna, dan
mengaktifkan pengguna merupakan perluasan/extend dari use case untuk melihat
case melihat daftar penggunadikerjakan. Use case untuk mencocokkan pelafalan
merupakan bagian/include dari use case untuk mengaktifkan pengguna karena
pada use case ini akan dilakukan jika use case mengaktifkan pengguna
dikerjakan. Use case untuk melihat perbandingan profil merupakan
bagian/include dari use case untuk melihat nilai karena pada use case ini akan
dilakukan jika use case melihat nilai dikerjakan. Use case untuk menambah item
merupakan bagian/include dari use case untuk menambah kategori karena pada
use case ini akan dilakukan jika use case menambah kategori dikerjakan.
3.2.2. Flow of Event Aplikasi Mobile Melafalkan Bahasa Inggris
Dari use case yang ada, dibutuhkan flow of event untuk menjelaskan
spesifikasi proses/aliran kejadian yang terjadi pada tiap use case, serta untuk
mendokumentasikan aliran logika dalam use case. Flow of event meliputi
diskripsi singkat, kondisi awal, aliran kejadian utama, aliran kejadian alternative, kondisi akhir. Flow of event yang akan dibuat adalah flow of event untuk use case
melihat daftar pengguna, use case menambah pengguna, use case menghapus
pengguna, use case mengaktifkan pengguna, use case mencocokkan pelafalan,
use case melihat nilai, use case melihat perbandingan profil, use case menambah
kategori, use case menghapus kategori, use case menambah item, dan
use case menghapus item.
A. Flow of Event untuk Use Case Melihat Daftar Pengguna
Flow of event untuk use case melihat daftar pengguna dapat dilihat
Tabel 3.1 Flow of Event Melihat daftar pengguna
Diskripsi Use casepengguna untuk melihat pengguna yang telah terdaftar melihat daftar pengguna memungkinkan
Kondisi Awal -
Kondisi Akhir Pengguna berhasilmenampilkan daftar pengguna
Aliran Kejadian Utama
Aksi pemakai Respon sistem
1 daftar pengguna yang telah terdaftar
B. Flow of Event untuk Use Case Menambah Pengguna
Flow of event untuk use case menambah pengguna dapat dilihat
pada tabel 3.2.
Tabel 3.2 Flow of Event Menambah pengguna
Diskripsi Use case menambah pengguna memungkinkan pengguna untuk menambah pengguna baru
Kondisi Awal Pengguna berada pada daftar pengguna atau pengaturan pengguna
Kondisi Akhir Penggunaberhasil menambahkan pengguna baru
Aliran Kejadian Utama
Aksi pemakai Respon sistem
1
2 Pengguna memasukkan nama, lalu dikonfirmasi
Sistem menampilkan konfirmasi pesan
“berhasil menambahkan
Pengguna”
C. Flow of Event untuk Use Case Mengaktifkan Pengguna
Flow of event untuk use case mengaktifkan pengguna dapat dilihat
pada tabel 3.3.
Tabel 3.3 Flow of Event Mengaktifkan pengguna Diskripsi
Use case mengaktifkan pengguna memungkinkan
pengguna untuk mengaktifkan pengguna yang telah terdaftar
Kondisi Akhir Penggunaberhasil mengaktifkan pengguna
Aliran Kejadian Utama
Aksi pemakai Respon sistem
1 pengguna yang akan diaktifkan
Sistem mengaktifkan pengguna agar dapat melakukan proses selanjutnya
D. Flow of Event untuk Use Case Menghapus Pengguna
Flow of event untuk use case menghapus pengguna dapat dilihat
pada tabel 3.4.
Tabel 3.4 Flow of Event Menghapus pengguna
Diskripsi Use casepengguna untuk menghapus pengguna yang telah menghapus pengguna memungkinkan terdaftar
Kondisi Awal Penggunadaftar pengguna telah terdaftar dan berada pada Kondisi Akhir Penggunaberhasil menghapus pengguna
Aliran Kejadian Utama
Aksi pemakai Respon sistem
1
pesan “apakah pengguna
akan dihapus?”
2 Pengguna konfirmasi melakukan Sistem daftar pengguna memperbarui
E. Flow of Event untuk Use Case Mencocokkan Pelafalan
Flow of event untuk use case mencocokkan pelafalan dapat dilihat
pada Tabel 3.5.
Tabel 3.5 Flow of Event Mencocokkan Pelafalan Diskripsi
Use case mencocokkan pelafalan memungkinkan
Kondisi Awal Penggunatelah aktif
Kondisi Akhir Pengguna berhasil mendengar dan mencocokkan pelafalan bahasa Inggris
Aliran Kejadian Utama
Aksi pemakai Respon sistem
1
dalam bahasa Inggris, kata cara pengucapan, dan kata dalam bahasa
Sistem melafalkan teks kata dalam bahasa pelafalan hingga item
terakhir
Sistem menyimpan dan menampilkan nilai akhir serta tanggal sekarang
Aliran Alternatif
Respon Sistem Aksi Pemakai
A1
F. Flow of Event untuk Use Case Melihat Nilai
Flow of event untuk use case melihat nilai dapat dilihat pada tabel 3.6.
Tabel 3.6 Flow of Event Melihat Nilai
Diskripsi Use case melihat nilai memungkinkan pengguna untuk melihat nilai yang diperoleh pengguna
Kondisi Awal Penggunatelah aktif
Aliran Kejadian Utama
Aksi pemakai Respon sistem
1 nilai yang dilakukan per kategori berdasarkan tanggal
G. Flow of Event untuk Use Case Melihat Perbandingan Profil
Flow of event untuk use case melihat perbandingan profil dapat dilihat
pada tabel 3.7.
Tabel 3.7 Flow of Event Melihat Perbandingan Profil Diskripsi
Use case melihat perbandingan profil memungkinkan
pengguna untuk melihat perbandingan nilai pengguna yang lain
Kondisi Awal Penggunatelah aktif
Kondisi Akhir Pengguna berhasil melihat perbandingan nilai penggunayang lain
Aliran Kejadian Utama
Aksi pemakai Respon sistem
1 dilakukan per kategori berdasarkan pengguna terdaftar
H. Flow of Event untuk Use Case Menambah Kategori
Flow of event untuk use case menambah kategori dapat dilihat
pada tabel 3.8.
Tabel 3.8 Flow of Event Menambah Kategori
Diskripsi Use case untuk menambah kategori baru menambah kategori memungkinkan admin Kondisi Awal Admintelah login dan berada pada pengaturan kategori
Kondisi Akhir Admin berhasil menambah kategori baru
Aliran Kejadian Utama
Aksi pemakai Respon sistem
1
Use case memulai,
Aliran Kejadian Utama
Aksi pemakai Respon sistem
2
“berhasil menambahkan kategori”
I. Flow of Event untuk Use Case Menghapus Kategori
Flow of event untuk use case menghapus kategori dapat dilihat
pada tabel 3.9.
Tabel 3.9 Flow of Event Menghapus Kategori
Diskripsi Use casemenghapus kategori yang ada menghapus kategori memungkinkan admin Kondisi Awal Admintelah login dan berada pada pengaturan kategori
Kondisi Akhir Admin berhasil menghapus kategori
Aliran Kejadian Utama
Aksi pemakai Respon sistem
1
Use case memulai,
ketika admin memilih pilihan melakukan proses menghapus kategori dengan memilih kategori yang akan dihapus
Sistem menampilkan
pesan “apakah kategori akan dihapus?”
2 Admin konfirmasi melakukan Sistem daftar kategori memperbarui
J. Flow of Event untuk Use Case Menambah Item
Flow of event untuk use case menambah item dapat dilihat
pada tabel 3.10.
Tabel 3.10 Flow of Event Menambah Item
Diskripsi Use case menambah item memungkinkan admin untuk menambah item baru
Kondisi Awal Adminserta telah tersedia kategori baru telah login dan berada pada pengaturan item Kondisi Akhir Adminberhasil menambah item baru
Aliran Kejadian Utama
Aksi pemakai Respon sistem
1
Use case memulai,
ketika admin memilih pilihan melakukan proses menambah item
Aliran Kejadian Utama
Aksi pemakai Respon sistem
2
Admin memilih kategori yang akan ditambahkan
item
Sistem meminta masukkan item: gambar,
kata dalam bahasa
bahasa Inggris, dan kata ucap, lalu dikonfirmasi
Sistem menampilkan konfirmasi pesan
“berhasil menambahkan
item”
K. Flow of Event untuk Use Case Menghapus Item
Flow of event untuk use case menghapus item dapat dilihat
pada tabel 3.11.
Tabel 3.11 Flow of Event Menghapus Item
Diskripsi Use case menghapus menghapus item memungkinkan admin untuk
item baru yang telah ditambahkan
Kondisi Awal Admintelah login dan berada pada pengaturan item
Kondisi Akhir Adminberhasil menghapus item
Aliran Kejadian Utama
Aksi pemakai Respon sistem
1
Use case memulai,
ketika admin memilih pilihan melakukan
3 Admin konfirmasi melakukan Sistem daftar memperbarui
item
3.2.3. Activity Diagram Aplikasi Mobile Melafalkan Bahasa Inggris
Dari use case yang ada, dibutuhkan activity diagram untuk menjelaskan
proses/aliran proses yang terjadi pada tiap use case. Activity diagram akan
A. Activity Diagram untuk Use Case Melihat daftar pengguna
Proses pada gambar 3.5 dimulai dari pengguna ingin melihat daftar pengguna yang akan diproses oleh sistem untuk menampilkan daftar pengguna. Jika pengguna tidak ada, maka pengguna diminta untuk menambahkan pengguna baru agar dapat menggunakan aplikasi.
Pengguna Sistem
meminta daftar pengguna memproses daftar pengguna
[pengguna: daftar
pengguna] menampilkan daftar pengguna
menampilkan pesan [pesan:
peringatan]
tidak ada
ada
Gambar 3.5 Activity Diagram Melihat Daftar Pengguna
Pengguna Sistem
meminta masukkan pengguna
memasukkan nama
pengguna memproses nama pengguna
menampilkan pesan tidak sesuai
[pesan: gagal]
menyimpan pengguna sesuai
[pengguna: baru] menampilkan pesan
[pesan: sukses] meminta tambah pengguna
B. Activity Diagram untuk Use Case Menambah pengguna
Proses pada gambar 3.6 dimulai dari pengguna ingin menambahkan pengguna baru, maka sistem meminta masukkan berupa nama pengguna. Setelah itu, pengguna memasukkan nama pengguna yang akan dikonfirmasi oleh sistem. Apabila nama pengguna sesuai dengan ketentuan (tidak boleh kosong dan kurang dari 3 huruf), maka sistem akan menyimpan pengguna baru dan
memberikan pesan ”berhasil menambahkan pengguna”. Jika tidak sesuai, maka
pengguna diberi pesan kesalahan dan diminta mengulang isian nama pengguna hingga benar.
C. Activity Diagram untuk Use Case Mengaktifkan pengguna
Proses pada gambar 3.7 menjelaskan pengguna ingin mengaktifkan pengguna agar dapat melanjutkan ke proses berikutnya.
Pengguna Sistem
meminta aktifkan pengguna memproses pengaktifan pengguna
[pengguna: aktif]
Gambar 3.7 Activity Diagram Mengaktifkan Pengguna
D. Activity Diagram untuk Use Case Menghapus pengguna
Proses pada gambar 3.8 dimulai dari pengguna ingin menghapus
pengguna, maka sistem mengkonfirmasi “apakah pengguna akan dihapus?”.
pengguna tersebut dan memperbarui daftar pengguna. Jika pengguna membatalkan penghapusan, maka akan kembali pada daftar pengguna.
Pengguna Sistem
meminta hapus pengguna mengkonfirmasi hapus
pengguna
menghapus pengguna ya
menampilkan daftar pengguna tidak
[pengguna: hapus]
[pengguna: daftar pengguna]
memperbarui daftar pengguna
Gambar 3.8 Activity Diagram Menghapus Pengguna
E. Activity Diagram untuk Use Case Mencocokkan pelafalan
Proses pada gambar 3.9 dimulai dari pengguna memilih kategori setelah itu akan ditampilkan item : gambar, kata dalam bahasa Inggris, kata ucap dan
kata dalam bahasa Indonesia serta fungsi “Dengar” agar dapat mendengar suara
pelafalan dari kata bahasa Inggris yang diproses dari Text-to-Speech.
Pengguna melanjutkan dengan memasukkan suara (melafalkan sesuai contoh pelafalan) yang akan diproses oleh Speech input untuk diubah ke teks, setelah itu
dicocokkan.
Pada saat proses pencocokkan selesai, apabila pesan “Salah” tampil maka
akan ditambahkan tanda salah dan dikembalikan ke item tersebut untuk
pada item selanjutnya. Apabila benar melafalkan maka akan dikalkulasi nilai benar, lalu ditampilkan item selanjutnya. Apabila telah menyelesaikan
pembelajaran maka hasil akhir berupa nilai keseluruhan yang ditambahkan tanggal akan disimpan kedalam database.
Sistem Pengguna
Mengkonfirmasi Pelafalan
Mencocokkan kata
Menampilkan Item selanjutnya [suara : pelafalan pengguna]
[Nilai : baru] menambah tanda salah
Speech Input
Memilih Kategori Menampilkan item
Text-to-Speech
[Item]
Memasukkan Suara
Mencari pada server google [suara : pelafalan item]
menampilkan pesan
cocok [pesan: salah]
tidak cocok meminta pelafalan sistem
menambah nilai benar
tanda < 3 tanda = 3
Gambar 3.9 Activity Diagram Mencocokkan Pelafalan
F. Activity Diagram untuk Use Case Melihat nilai
Pengguna Sistem
meminta grafik nilai memproses nilai
[nilai: pribadi pengguna] menampilkan grafik nilai
Gambar 3.10 Activity Diagram Melihat Nilai
G. Activity Diagram untuk Use Case Melihat perbandingan profil
Proses pada gambar 3.11 dimulai dari pengguna ingin melihat grafik perbandingan nilai yang akan diproses oleh sistem untuk menampilkan grafik nilai yang dilakukan per kategori berdasarkan daftar pengguna. Grafik nilai yang ditampilkan adalah nilai rata-rata antar pengguna.
Pengguna Sistem
meminta grafik perbandingan nilai
memproses nilai
[nilai: rata-rata] menampilkan grafik nilai
H. Activity Diagram untuk Use Case Menambah kategori
Proses pada gambar 3.12 dimulai dari admin ingin menambahkan kategori baru, maka sistem meminta masukkan berupa nama kategori. Setelah itu, admin memasukkan nama kategori yang akan dikonfirmasi oleh sistem. Apabila nama kategori sesuai dengan ketentuan (tidak boleh kosong dan kurang dari 3 huruf), maka sistem akan menyimpan kategori baru dan
memberikan pesan ”berhasil menambahkan kategori”. Jika tidak sesuai,
maka admin diberi pesan kesalahan dan diminta mengulang isian nama kategori hingga benar.
Admin Sistem
meminta tambah pengguna meminta masukkan
kategori
memasukkan nama kategori
memproses nama kategori
menyimpan kategori sesuai
[kategori: baru] menampilkan pesan
menampilkan pesan
tidak sesuai
[pesan: gagal]
[pesan: sukses]
Gambar 3.12 Activity Diagram Menambah Kategori
I. Activity Diagram untuk Use Case Menghapus kategori
Proses pada gambar 3.13 dimulai dari admin ingin menghapus kategori,
maka sistem mengkonfirmasi “apakah kategori akan dihapus?”. Setelah itu, admin
memperbarui daftar kategori. Jika admin membatalkan penghapusan, maka akan kembali pada daftar kategori.
Admin Sistem
meminta hapus kategori mengkonfirmasi hapus kategori
menghapus kategori
menampilkan daftar kategori tidak ya
[kategori: hapus]
[kategori: daftar kategori]
memperbarui daftar kategori
Gambar 3.13 Activity Diagram Menghapus Kategori
J. Activity Diagram untuk Use Case Menambah item
Admin Sistem
meminta tambah item
meminta masukkan item
memasukkan isi item memproses isi item
menampilkan pesan
menampilkan pesan menyimpan item sesuai tidak sesuai
[item: baru] menampilkan daftar kategori
[pesan: gagal]
[pesan: sukses] [kategori: daftar kategori]
Memilih Kategori
Proses pada gambar 3.14 dimulai dari admin ingin menambahkan
item baru, maka sistem meminta memilih kategori terlebih dulu. Setelah itu,
admin diminta memasukkan isi item (kata dalam bahasa Inggris, kata cara
pengucapan, kata dalam bahasa Indonesia dan gambar) yang akan dikonfirmasi oleh sistem. Apabila isi item sesuai dengan ketentuan (tidak boleh kosong),
maka sistem akan menyimpan item baru dan memberikan pesan
”berhasil menambahkan item”. Jika tidak sesuai, maka admin diberi
pesan kesalahan dan diminta mengulang isian item hingga benar.
K. Activity Diagram untuk Use Case Menghapus item
Admin Sistem
meminta hapus item mengkonfirmasi
hapus item
menghapus item
menampilkan daftar item tidak
ya
[item: hapus]
[item: daftar item]
memperbarui daftar item
Gambar 3.15 Activity Diagram Menghapus Item
Proses pada gambar 3.15 dimulai dari admin ingin menghapus item,
maka sistem mengkonfirmasi “apakah item akan dihapus?”. Setelah itu, admin