• Tidak ada hasil yang ditemukan

BAB III ANALISIS DAN PERANCANGAN

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB III ANALISIS DAN PERANCANGAN"

Copied!
35
0
0

Teks penuh

(1)

39 BAB III

ANALISIS DAN PERANCANGAN

Prinsip kerja dalam sebuah sistem komputer adalah menerima masukan, memproses dan memberikan keluaran. Kepada komputer, kita memberikan data masukan yang kemudian akan diolah oleh komputer menjadi keluaran yang diharapkan pengguna. Ketika seseorang bekerja dengan komputer, ia akan melakukan interaksi dengan komputer menggunakan cara-cara tertentu. Cara interaksi antara pengguna dengan komputer pada sistem yang akan dibangun yaitu dengan menggunakan perintah lisan. Bab ini menjelaskan proses analisis dan perancangan pada sistem supaya dapat bekerja berdasarkan cara interaksi tersebut. Berdasarkan prinsip kerja tersebut, sistem yang akan dibangun akan terlihat seperti pada gambar dibawah ini (Gambar 3.1).

Gambar 3.1, Aplikasi Perintah Suara Dengan Speech API

Pada bagian masukan, seorang pengguna memberikan perintah suara (perintah ucapan). Suara tersebut diterima oleh perangkat mikropon untuk dirubah

Perintah suara Notebook/PC Membuka aplikasi Mengeksekusi shortcut aplikasi Menutup aplikasi Membuka folder Memilih task Memilih menu power Respon suara Pengguna

(2)

40

menjadi sinyal suara analog. Sinyal suara analog dari mikropon kemudian dimasukkan kedalam komputer (Notebook/PC) melalui bagian kartu suara (Sound Card). Sinyal suara analog yang diterima oleh kartu suara akan dirubah menjadi sinyal suara digital. Pada bagian proses, dengan menggunakan sistem SAPI 5.1 (Speech Application Programming Interface), sinyal suara digital yang dihasilkan dari kartu suara akan dipecah menjadi bagian suara terkecil (fonem). Fonem-fonem tersebut akan disusun sehingga menjadi data yang bisa dicocokkan dengan kata-kata dari string teks. Perintah yang bisa dicocokkan dengan string teks tersebut digunakan untuk melakukan pemanggilan fungsi eksekusi shortcut. Selain itu sistem SAPI 5.1 juga digunakan untuk mengubah string teks menjadi sinyal suara. Keluaran dari sistem berupa hasil fungsi eksekusi yang meliputi, membuka aplikasi, mengeksekusi shortcut aplikasi, menutup aplikasi, membuka

folder, memilih task, serta memilih menu power. Keluaran dari sistem juga berupa suara yang merupakan respons dari sistem terhadap perintah-perintah yang diberikan kepada sistem. Keluaran suara ini disajikan kepada pengguna melalui perangkat speaker.

Supaya sistem tersebut dapat terealisasi, harus dilakukan analisis dan perancangan secara rinci dan jelas. Analisis dan perancangan dalam bab ini menggunakan pendekatan berorientasi objek dengan menggunakan UML (Unified Modeling Language). Di dalam bab ini akan dibahas tiga artifak penting dari proses analisis dan disain, yaitu Use Case Diagram, Sequence Diagram dan Class Diagram. Use Case Diagram merupakan artifak dari proses analisis, sementara

Sequence Diagram dan Class Diagram merupakan artifak dari proses disain. Untuk menggambarkan aliran proses dari fungsionalitas sistem sebagaimana yang digambarkan dalam Use Case Diagram, digambarkan menggunakan Activity Diagram. Selain itu Component Diagram juga dibutuhkan untuk menjelaskan komponen apa saja yang nantinya harus ada di dalam sistem. Diagram-diagram tersebut dibuat dengan menggunakan Microsoft Visio 2003.

(3)

41

Fungsionalitas yang diharapkan untuk mewujudkan sistem sebagaimana yang digambarkan dalam ilustrasi diatas (Gambar 3.1), digambarkan dalam Use Case Diagram. Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem. Use case yang menyusun diagram tersebut meliputi menambah perintah, mengubah perintah, menghapus perintah, mengatur respons suara, mengaktifkan pengenalan ucapan, membuka aplikasi, menutup aplikasi, membuka

folder, memilih task, mengakses keyboard, serta memilih menu power.

(4)

42

Masing-masing use case dalam Use Case Diagram pada Gambar 3.2 dapat dijelaskan sebagai berikut:

a. Menambah perintah, digunakan untuk menambahkan perintah yang baru ke dalam basis data sistem.

b. Mengubah perintah, digunakan untuk mengubah perintah yang telah disimpan dalam basis data sistem.

c. Menghapus perintah, digunakan untuk menghapus perintah tertentu dari basis data sistem.

d. Mengaktifkan pengenalan ucapan, digunakan untuk mengaktifkan mesin pengenalan ucapan agar sistem dapat menerima masukan suara.

e. Membuka aplikasi, digunakan untuk membuka aplikasi melalui perintah lisan. f. Menutup aplikasi, digunakan untuk menutup aplikasi yang aktif melalui

perintah lisan.

g. Membuka folder, digunakan untuk membuka folder dengan perintah lisan. h. Memilih task aktif, digunakan untuk memilih task dari aplikasi yang aktif

untuk ditempatkan pada posisi on top melalui perintah lisan.

i. Mengakses keyboard, digunakan untuk melakukan eksekusi dari shortcut yang berupa kombinasi tombol keybord dengan perintah lisan.

j. Memilih menu power, digunakan untuk memilih dan mengeksekusi pilihan menu power yang meliputi shutdown, restart, atau logoff melalui perintah lisan.

3.2 ACTIVITY DIAGRAM

Aliran proses yang terdapat dalam sistem untuk masing-masing use case

berawal dari aktivitas dimulai sampai aktivitas berhenti digambarkan dalam

Activity Diagram berikut ini. Activity Diagram mendeskripsikan aksi-aksi dan hasilnya.

(5)

43

Gambar 3.3, Activity Diagram Mengaktifkan Pengenalan Ucapan

Pada activity diagram mengaktifkan pengenalan ucapan (Gambar 3.3), pengguna menjalankan Aplikasi Perintah Suara yang tadinya belum aktif. Sistem akan membuat tata bahasa (grammar). Selanjutnya sistem akan mengaktifkan aturan tata bahasa. Sistem kemudian mengambil daftar perintah dari basis data dan memuat daftar perintah ke aturan tata bahasa. Setelah itu sistem dapat mengaktifkan mesin pengenalan ucapan, sehingga sistem siap mengenali perintah lisan dari pengguna.

(6)

44

Gambar 3.4, Activity Diagram Membuka Aplikasi

Pada activity diagram membuka aplikasi (Gambar 3.4), pengguna mengucapkan perintah sesuai dengan perintah yang digunakan untuk membuka aplikasi. Sistem akan melakukan pengenalan ucapan. Apabila ucapan tidak dikenali, maka sistem akan mengirimkan pesan bahwa pengenalan perintah gagal. Apabila ucapan dikenali, maka sistem akan mengambil hasil pengenalan. Sistem kemudian mencocokkan hasil pengenalan ucapan dengan basis data. Apabila hasil pengenalan sesuai perintah maka sistem akan memuat kode untuk membuka aplikasi dan membuka aplikasi yang dipanggil. Sedangkan apabila hasil pengenalan tidak sesuai perintah maka sistem akan memuat kode lain dan melakukan eksekusi lain.

c. Activity diagram menutup aplikasi

(7)

45

Gambar 3.5, Activity Diagram Menutup Aplikasi

Pada activity diagram menutup aplikasi (Gambar 3.5), pengguna mengucapkan perintah sesuai dengan perintah yang digunakan untuk menutup aplikasi. Sistem akan melakukan pengenalan ucapan. Apabila ucapan tidak dikenali, maka sistem akan mengirimkan pesan bahwa pengenalan perintah gagal. Apabila ucapan dikenali, maka sistem akan mengambil hasil pengenalan. Sistem kemudian mencocokkan hasil pengenalan ucapan dengan basis data. Apabila hasil pengenalan sesuai perintah maka sistem akan memuat kode untuk menutup aplikasi dan menutup aplikasi yang dimaksud. Sedangkan apabila hasil pengenalan tidak sesuai perintah maka sistem akan memuat kode lain dan melakukan eksekusi lain.

(8)

46

Gambar 3.6, Activity Diagram Membuka Folder

Pada activity diagram membuka folder (Gambar 3.6), pengguna mengucapkan perintah sesuai dengan perintah yang digunakan untuk membuka

folder. Sistem akan melakukan pengenalan ucapan. Apabila ucapan tidak dikenali, maka sistem akan mengirimkan pesan bahwa pengenalan perintah gagal. Apabila ucapan dikenali, maka sistem akan mengambil hasil pengenalan. Sistem kemudian mencocokkan hasil pengenalan ucapan dengan basis data. Apabila hasil pengenalan sesuai perintah maka sistem akan memuat kode untuk membuka

folder dan membuka folder yang dipanggil, melalui aplikasi windows explorer. Sedangkan apabila hasil pengenalan tidak sesuai perintah maka sistem akan memuat kode lain dan melakukan eksekusi lain.

(9)

47

Gambar 3.7, Activity Diagram Memilih Task

Pada activity diagram memilih task (Gambar 3.7), pengguna mengucapkan perintah sesuai dengan perintah yang digunakan untuk memilih task dari aplikasi yang aktif. Sistem akan melakukan pengenalan ucapan. Apabila ucapan tidak dikenali, maka sistem akan mengirimkan pesan bahwa pengenalan perintah gagal. Apabila ucapan dikenali, maka sistem akan mengambil hasil pengenalan. Sistem kemudian mencocokkan hasil pengenalan ucapan dengan basis data. Apabila hasil pengenalan sesuai perintah maka sistem akan memuat kode untuk memilih task

dan melakukan eksekusi untuk menempatkan task dari aplikasi yang dipanggil pada posisi on top. Sedangkan apabila hasil pengenalan tidak sesuai perintah maka sistem akan memuat kode lain dan melakukan eksekusi lain.

(10)

48

Gambar 3.8, Activity Diagram Mengakses Keyboard

Pada activity diagram mengakses keyboard (Gambar 3.8), pengguna mengucapkan perintah sesuai dengan perintah yang digunakan untuk melakukan eksekusi shortcut yang berupa kombinasi tombol. Sistem akan melakukan pengenalan ucapan. Apabila ucapan tidak dikenali, maka sistem akan mengirimkan pesan bahwa pengenalan perintah gagal. Apabila ucapan dikenali, maka sistem akan mengambil hasil pengenalan. Sistem kemudian mencocokkan hasil pengenalan ucapan dengan basis data. Apabila hasil pengenalan sesuai perintah maka sistem akan memuat kode tombol keyboard yang dipanggil kemudian mengeksekusinya sehingga shortcut dari aplikasi tersebut terakses. Sedangkan apabila hasil pengenalan tidak sesuai perintah maka sistem akan memuat kode lain dan melakukan eksekusi lain.

(11)

49

Gambar 3.9, Activity Diagram Memilih Menu Power

Pada activity diagram memilih menu power (Gambar 3.9), pengguna mengucapkan perintah sesuai dengan perintah yang digunakan untuk mengeksekusi menu power. Sistem akan melakukan pengenalan ucapan. Apabila ucapan tidak dikenali, maka sistem akan mengirimkan pesan bahwa pengenalan perintah gagal. Apabila ucapan dikenali, maka sistem akan mengambil hasil pengenalan. Sistem kemudian mencocokkan hasil pengenalan ucapan dengan basis data. Apabila hasil pengenalan sesuai perintah maka sistem akan memuat kode menu power seperti restart, logoff dan shutdown kemudian mengekekusi menu yang dipilih. Sedangkan apabila hasil pengenalan tidak sesuai perintah maka sistem akan memuat kode lain dan melakukan eksekusi lain.

(12)

50

Gambar 3.10, Activity Diagram Mengatur Respons Suara

Pada activity diagram mengatur respons (Gambar 3.10), pengaturan standar (default) respons suara dari sistem adalah aktif. Disini pengguna bisa menonaktifkan respons suara atau tidak. Apabila respons suara tidak dimatikan berarti pengguna tetap membiarkan respons suara dari sistem aktif. Apabila pengguna mematikan respons suara, maka sistem akan menonaktifkan mesin teks ke ucapan. Sistem kemudian menampilkan aplikasi Agen dan menampilkan respons teks. Ketika respons suara tidak aktif pengguna bisa menghidupkan respons suara maupun tidak. Apabila respons suara dihidupkan, maka sistem akan menyembunyikan respons teks yang berasal dari aplikasi Agen. Sistem kemudian mengaktifkan mesin teks ke ucapan untuk mengubah pesan sistem menjadi bentuk suara sehingga respons suara aktif.

(13)

51

Gambar 3.11, Activity Diagram Menambah Perintah

Pada activity diagram menambah perintah (Gambar 3.11), pengguna memilih jenis shortcut. Shortcut yang dipilih terdiri dari shortcut yang berupa kombinasi tombol, shortcut buka tutup aplikasi dan shortcut folder. Jika pengguna memilih jenis shortcut kombinasi tombol, maka sistem akan mengaktifkan

shortcut tombol. Pengguna kemudian memilih kombinasi tombol yang menjadi

shortcut dari aplikasi yang akan ditangani. Setelah itu pengguna memasukkan kata perintah untuk memanggilnya kemudian menyimpannya. Sistem akan menambahkan data perintah ke basis data. Jika pengguna memilih jenis shortcut

aplikasi, maka sistem akan mengaktifkan shortcut aplikasi. Pengguna kemudian memilih file yang berjenis aplikasi (exe), memasukkan kata perintah kemudian menyimpannya. Sistem akan menambahkan data perintah tersebut ke basis data. Jika pengguna memilih jenis shortcut folder, maka sistem akan mengaktifkan

shortcut folder. Pengguna kemudian memilih folder yang dikehendaki, memasukkan perintah untuk memanggilnya serta menyimpannya. Sistem akan menambahkan data tersebut ke basis data.

(14)

52

j. Activity diagram mengubah perintah

Gambar 3.12, Activity Diagram Mengubah Perintah

Pada activity diagram mengubah perintah (Gambar 3.12), pengguna memilih jenis shortcut yang ingin dirubah datanya. Jika pengguna memilih jenis

shortcut kombinasi tombol, maka sistem akan mengaktifkan shortcut tombol dan sistem akan menampilkan daftar perintah yang berjenis shortcut tombol dalam sebuah tabel, kemudian pengguna memilih perintah dari daftar yang ingin dirubah datanya. Selanjutnya pengguna mengubah data yang akan diperbaiki seperti perintah untuk memanggilnya atau kombinasi tombolnya. Jika pengguna memilih jenis shortcut aplikasi, maka sistem akan mengaktifkan shortcut aplikasi dan manampilkan daftar perintah yang berjenis shortcut aplikasi, kemudian pengguna memilih perintah dari daftar. Selanjutnya pengguna mengubah data yang akan diperbaiki seperti perintahnya atau nama file aplikasinya. Jika pengguna memilih jenis shortcut folder, maka sistem akan mengaktifkan shortcut folder dan

(15)

53

menampilkan daftar perintah dalam tabel yang berjenis shortcut folder, kemudian pengguna memilih perintah yang akan diperbaiki. Setelah itu pengguna mengubah data yang akan diperbaiki seperti nama folder atau perintahnya.

k. Activity diagram menghapus perintah

Gambar 3.13, Activity Diagram Menghapus Perintah

Pada activity diagram menghapus perintah (Gambar 3.13), pengguna memilih jenis shortcut yang ingin dihapus datanya. Jika pengguna memilih jenis

shortcut kombinasi tombol, maka sistem akan mengaktifkan shortcut tombol dan sistem akan menampilkan daftar perintah yang berjenis shortcut tombol dalam sebuah tabel, kemudian pengguna memilih perintah dari daftar yang ingin dihapus datanya. Selanjutnya pengguna menghapus data tersebut. Sistem akan menghapus datanya dari basis data. Jika pengguna memilih jenis shortcut aplikasi, maka sistem akan mengaktifkan shortcut aplikasi dan manampilkan daftar perintah yang berjenis shortcut aplikasi, kemudian pengguna memilih perintah dari daftar.

(16)

54

Selanjutnya pengguna menghapus data tersebut. Sistem akan menghapus datanya dari basis data. Jika pengguna memilih jenis shortcut folder, maka sistem akan mengaktifkan shortcut folder dan menampilkan daftar perintah dalam tabel yang berjenis shortcut folder, kemudian pengguna memilih perintah yang akan dihapus. Setelah itu pengguna menghapus data tersebut. Sistem akan mengapus datanya dari basis data.

3.3 CLASS DIAGRAM

Class diagram mendeskripsikan objek-objek yang terlibat dalam sistem dan hubungan-hubungan diantara mereka. Class adalah sebuah spesifikasi yang jika diinstasikan akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class menggambarkan keadaan (atribut/properti) suatu sistem sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metoda/fungsi). Aplikasi Perintah Suara yang akan dibangun terdiri dari class KodeShortcut, class PengaturTabel, class tb_aplikasi, class

PerintahBaku, class DataDB, class RecognitionContext, class Grammar, class

Eksekusi class DataHwnd, class TextToSpeech dan class Agen. Hubungan diantara class-class tersebut digambarkan dalam Class Diagram berikut.

(17)

55

Gambar 3.14, Class Diagram

Masing-masing class dalam Class Diagram diatas (Gambar 3.14), dapat dijabarkan dalam penjelasan dibawah ini.

1. KodeShortcut, digunakan untuk membuat file aplikasi yang akan dioperasikan dan kombinasi shortcut tombol dari aplikasi yang akan diakses menjadi kode

(18)

56

yang dapat dieksekusi oleh sistem. Class ini memiliki fungsi KombinasiTombolKeyboard(), SetDirPath() dan PencarianFile(). Fungsi KombinasiTombolKeyboard() untuk mengubah tombol keyboard ke dalam kode yang dapat digunakan oleh sistem untuk mengeksekusi tombol keyboard

tanpa menekan fisik tombol. Fungsi SetDirPath() untuk menyimpan lokasi dari file aplikasi atau file folder yang diinginkan pengguna. Sedangkan fungsi PencarianFile() untuk melakukan pencarian file yang berjenis aplikasi (exe). 2. PengaturTabel, digunakan untuk mengatur data yang akan disimpan ke dalam

tabel basis data. Class ini memiliki fungsi KoneksiBasisData(), TambahDataBasisData(), HapusDataBasisData(), UpdateDataBasisData(), TampilTabel(), PilihTipeShortcut(), TambahPerintah(), UbahPerintah(), HapusPerintah(), dan PilihData(). Fungsi KoneksiBasisData() untuk melakukan koneksi ke basis data. Fungsi TambahDataBasisData() untuk menambahkan perintah baru dan menyimpannya dalam tabel basis data. Fungsi HapusDataBasisData() untuk menghapus perintah dari basis data. Fungsi UpdateDataBsisData() untuk mengubah perintah dalam basis data. Fungsi TampilTabel() untuk menampilkan data dari basis data. Fungsi PilihTipeShortcut() untuk memilih jenis shortcut yang diinginkan oleh pengguna. Fungsi TambahPerintah() digunakan oleh pengguna untuk mengakses fungsi TambahDataBasisData(). Fungsi UbahPerintah() digunakan oleh pengguna untuk mengakses fungsi UpdateDataBasisData(). Fungsi HapusPerintah() digunakan pengguna untuk mengakses fungsi HapusDataBasisData(). Sedangkan fungsi PilihData() untuk memilih perintah yang akan dirubah atau dihapus.

3. tb_aplikasi, digunakan untuk menyimpan seluruh data perintah.

4. PerintahBaku, digunakan untuk memuat daftar perintah yang bersifat statis atau bersifat tetap. Fungsi dalam class ini yaitu DataPerintahBaku() untuk mengirimkan daftar perintah baku ke class DataDb.

5. DataDb, digunakan untuk memuat seluruh data perintah dari class

PerintahBaku dan tb_aplikasi. Fungsi dalam class ini yaitu MemuatPerintah() dan DbTambahData(). Fungsi MemuatPerintah() untuk memuat perintah dari

(19)

57

menambahkan kata perintah baru pada saat sistem membuka aplikasi, menutup aplikasi atau membuka folder.

6. RecognitionContext, digunakan untuk melakukan pengenalan ucapan. Fungsi dalam class ini yaitu InisialisasiPengenalanUcapan(), RecoContext_FalseRecognition(), RecoContext_Recognition(), AktifkanPengenalanUcapan(), dan MatikanPengenalanUcapan(). Fungsi InisialisasiPengenalanUcapan() untuk melakukan konfigurasi sebelum pengenalan ucapan diaktifkan. Fungsi RecoContext_FalseRecognition() untuk menerima pemberitahuan bahwa pengenalan ucapan gagal melakukan pengenalan. Fungsi RecoContext_Recognition() untuk menerima hasil pengenalan perintah. Fungsi AktifkanPengenalanUcapan() untuk menjalankan sistem pengenalan ucapan. Fungsi MatikanPengenalanUcapan() untuk menghentikan mesin penegenalan ucapan.

7. Grammar, digunakan untuk mengaktifkan dan memuat tata bahasa dan aturan tata bahasa. Fungsi pada class ini yaitu RebuildGrammar() dan GrammarRule(). Fungsi RebuildGrammar() untuk memuat atau memuat ulang tata bahasa. Fungsi GrammarRule() untuk mengaktifkan aturan tata bahasa. 8. Eksekusi, digunakan untuk melakukan eksekusi kode shortcut. Fungsi dalam

class ini yaitu DbEksekusi() untuk melakukan eksekusi kode shortcut yang dimuat dari basis data perintah.

9. DataHwnd, digunakan untuk mengamati setiap perubahan handle window (hWnd) dari aplikasi serta menyimpan hWnd dari setiap perubahan kejadian pada aplikasi. Fungsi dari class ini yaitu KontrolTaskTitle(), KontrolAktifTask(), KontrolDataListTitle(), dan KontrolJumlahTask(). Fungsi KontrolTeksTitle() untuk mengamati dan mencatat perubahan task title dari aplikasi. Fungsi KontrolAktifTask() untuk menempatkan task aplikasi pada posisi on top dengan memanggil task title-nya. Fungsi KontrolDataListTitle() untuk menyimpan seluruh daftar title aplikasi. Fungsi KontrolJumlahTask() untuk mengatur penambahan daftar perintah baru berdasarkan jumlah task dari aplikasi yang aktif.

10.TextToSpeech, digunakan untuk merubah string teks ke suara. Fungsi dari

(20)

58

teks ke ucapan. Fungsi TeksRespons() untuk memilih respons dari sistem, disampaikan melalui suara atau pesan teks.

11.Agen, digunakan untuk menampilkan animasi aplikasi MS Agen. Fungsi dari

class ini yaitu AgenTeks() untuk menampilkan respons teks dari sistem.

3.4 SEQUENCE DIAGRAM

Sequence diagram digunakan untuk menunjukkan aliran fungsionalitas dalam use case. Disusun berdasarkan urutan waktu dan digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah kejadian (event) untuk menghasilkan keluaran tertentu. Berdasarkan urutan waktu proses, aliran fungsionalitas dalam masing-masing use case dijelaskan dalam sequence diagram berikut.

a. Sequence diagram mengaktifkan pengenalan ucapan

(21)

59

Pada sequence diagram mengaktifkan pengenalan ucapan (Gambar 3.15), pengguna mengaktifkan RecognitionContext dengan mengaktifkan fungsi AktifkanPengenalanUcapan(). Data perintah dalam tb_aplikasi akan dimuat ke DataDb dengan menggunakan fungsi MemuatPerintah(), demikian juga data perintah yang ada dalam PerintahBaku juga akan dimuat ke DataDb dengan fungsi DataPerintahBaku(). Setelah semua data perintah berhasil dimuat, RecognitionContext akan menggunakannya untuk melakukan konfigurasi sebelum pengaktifan dengan menggunakan fungsi InisialisasiPengenalanUcapan(). Setelah itu RecogntionContext akan mengaktifkan Grammar. Grammar kemudian akan memuat aturan tata bahasa dengan menggunakan fungsi GrammarRule() dan memuat ulang tata bahasa ketika ada perubahan dalam daftar perintah dengan menggunakan fungsi RebuildGrammar(). Hasilnya, RecognitionContext siap melakukan pengenalan ucapan.

b. Sequence diagram membuka aplikasi

Gambar 3.16, Sequence Diagram Membuka Aplikasi

Pada sequence diagram membuka aplikasi (Gambar 3.16), ketika fungsi RecoContext_Recognition() pada RecognitionContext berhasil melakukan pengenalan ucapan. Perintah yang dikenali akan memicu Eksekusi untuk melakukan pembukaan file berdasarkan lokasi (PathFile) dan nama file (ExeFile)

(22)

60

dengan menggunakan fungsi DbEksekusi(PathFileDanExeFile, Open). DataWhnd akan melakukan menyimpan title dari aplikasi yang dibuka dengan fungsi KontrolDataListTitle(). Setiap ada aplikasi yang dibuka daftar perintah akan ditambah dengan perintah untuk menempatkan aplikasi yang baru dibuka tersebut pada posisi on top yang dilakukan oleh DataDb dengan fungsi DbTambahData(). RecognitionContext akan memperbaharui perubahan perintah dengan memanggil fungsi InisialisasiPengenalanUcapan() dan RebuidGrammar(). Sistem akan menyampaikan pesan ketika berhasil melakukan pembukaan file melalui fungsi TeksRespons(). Sedangkan fungsi RecoContext_FalseRecognition() untuk menangani apabila sistem gagal melakukan pengenalan ucapan dan menyampaikan pesan kegagalan pengenalan melalui fungsi TeksRespons().

c. Sequence diagram menutup aplikasi

Gambar 3.17, Sequence Diagram Menutup Aplikasi

Pada sequence diagram menutup aplikasi (Gambar 3.17), ketika fungsi RecoContext_Recognition() pada RecognitionContext berhasil mengenali perintah. Perintah yang dikenali akan digunakan oleh Eksekusi untuk melakukan penutupan aplikasi berdasarkan nama file (ExeFile) dengan menggunakan fungsi DbEkekusi(ExeFile, Close). DataHwnd akan menghapus title yang tersimpan dari aplikasi yang ditutup dengan fungsi KontrolDataListTitle(). DataDb akan

(23)

61

memperbaharui daftar perintah dengan fungsi DbTambahData(). Perubahan pada daftar perintah akan memicu RecognitionContext untuk melakukan inisialisasi dan pembuatan tata bahasa ulang dengan fungsi InisialisasiPengenalanUcapan() dan RebuildGrammar(). Ketika aplikasi berhasil ditutup Eksekusi akan mengaktifkan fungsi TeksRespons() untuk menyampaikan pesan bahwa aplikasi berhasil ditutup. Sedangkan fungsi RecoContext_FalseRecognition() pada RecognitionContext untuk menangani apabila gagal melakukan pengenalan ucapan. Pesan kegagalan ini akan disampaikan dengan fungsi TekRespons().

d. Sequence diagram membuka folder

Gambar 3.18, Sequence Diagram Membuka Folder

Pada sequence diagram membuka folder (Gambar 3.18), ketika fungsi RecoContext_Recognition() pada RecognitionContext berhasil mengenali perintah yang diucapkan pengguna. Berdasarkan perintah yang dikenali ini Eksekusi akan menggunakan lokasi folder (PathFolder) untuk membukanya dengan fungsi DbEkeskusi(PathFolder, Folder). Folder tersebut dibuka dengan aplikasi windows explorer. DataHwnd akan menyimpan title dari pembukaan

windows explorer tersebut dengan fungsi KontrolDataListTitle(). Fungsi DbTambahData() pada DataDb akan menambahkan perintah baru ke dalam daftar perintah, sehingga RecognitionContext akan melakukan konfigurasi ulang dan

(24)

62

pemuatan ulang tata bahasa dengan fungsi InisialisasiPengenalanUcapan() dan RebuildGrammar(). Setelah folder terbuka Eksekusi akan mengirimkan pesan dengan fungsi TeksRespons(). Sedangkan apabila fungsi RecoContext_FalseRecogntition() menerima kegagalan pengenalan maka RecognitionContext akan mengirimkan pesan kegagalan pengenalan dengan fungsi TeksRespons().

e. Sequence diagram memilih task

Gambar 3.19, Sequence Diagram Memilih Task

Pada sequence diagram memilih task (Gambar 3.19), ketika fungsi RecoContext_Recognition() pada RecognitionContext berhasil mengenali perintah pengguna. Berdasarkan perintah, DataHwnd akan mengambil nomor urut task title

yang dipanggil dengan fungsi KontrolJumlahTask(). Dengan menggunakan task title dari aplikasi yang diambil dengan fungsi KontrolTaskTitle(), fungsi KontrolAktifTask() akan menempatkan aplikasi yang dipanggil pada posisi on top. Setelah proses berhasil Eksekusi akan mengirimkan pesan melalui fungsi TeksRespons(). Apabila fungsi RecoContext_FalseRecognition() menerima

(25)

63

kegagalan pengenalan, RecognitionContext akan mengirimkan pesan kegagalan pengenalan dengan fungsi TeksRespons().

f. Sequence diagram mengakses keyboard

Gambar 3.20, Sequence Diagram Mengakses Keyboard

Pada sequence diagram mengakses keyboard (Gambar 3.20), ketika fungsi RecoContext_Recognition() pada RecognitionContext berhasil mengenali perintah. Perintah yang dikenali akan memicu Eksekusi untuk mengakses tombol

keyboard dengan fungsi DbEksekusi(KodeTombolKeyboard, Shortcut). Apabila eksekusi tombol shortcut dari aplikasi berpengaruh pada title aplikasi, maka DataHwnd akan mencatat perubahan dari title task tersebut dengan fungsi KontrolTaskTitle(). Setelah berhasil melakukan eksekusi, Eksekusi akan mengirimkan pesan melalui fungsi TeksRespons(). Apabila fungsi RecoContext_FalseRecognition() menerima kegagalan pengenalan, RecognitionContext akan mengirimkan pesan kegagalan melalui fungsi TeksRespons().

(26)

64

Gambar 3.21, Sequence Diagram Memilih Menu Power

Pada sequence diagram memilih menu power (Gambar 3.21), ketika fungsi RecoContext_Recognition() pada RecognitionContext berhasil mengenali perintah. Menu power yang dipilih meliputi logoff, restasrt, dan shutdown. Berdasarkan perintah yang dikenali Eksekusi akan melakukan eksekusi pada menu power dengan fungsi DbEksekusi(KodeShutdown, System). Setelah berhasil melakukan eksekusi, Eksekusi akan mengirim pesan melalui fungsi TeksRespons(). Sedangkan apabila fungsi RecoContext_FalseRecognition() menerima kegagalan pengenalan, RecognitionContext akan mengirimkan pesan melalui fungsi TeksRespons().

h. Sequence diagram mengatur respons suara

(27)

65

Gambar 3.22, Sequence Diagram Mengatur Respons Suara

Pada sequence diagram mengatur respons suara (Gambar 3.22), ketika pengguna memilih pada pilihan menu Enable Speech atau Disable Speech. Apabila pengguna memilih Enable Speech maka fungsi TTS(Kalimat, True) pada TextToSpeech akan mengaktifkan sistem teks ke ucapan. Apabila sistem teks ke ucapan telah aktif maka hasil dari setiap ekeskusi dari fungsi DbEksekusi() akan membuat Eksekusi mengirimkan pesan suara kepada pengguna dengan menggunakan fungsi TeksRespons(). Apabila pengguna memilih Disable Speech

maka fungsi TTS(Kalimat, False) pada TextToSpeech akan menonaktifkan sistem teks ke ucapan, sehingga pesan yang disampaikan oleh fungsi TeksRespons() akan ditampilkan dalam format teks dengan terlebih dahulu mengaktifkan aplikasi Agen dan mengaktifkan fungsi AgenTeks().

(28)

66

Gambar 3.23, Sequence Diagram Menambah Perintah

Pada sequence diagram menambah perintah (Gambar 3.23), pengguna memilih salah satu dari tipe shortcut yang meliputi tipe Open, Close, Folder, Shortcut dan System. Open untuk membuka aplikasi, Close untuk menutup aplikasi, Folder untuk membuka folder, Shortcut untuk eksekusi tombol keyboard

dan System untuk eksekusi menu power. Selanjutnya PengaturTabel akan melakukan koneksi ke basis data dengan fungsi KoneksiBasisData() dan kemudian menampilkan daftar perintah dari basis data dengan fungsi TampilTabel(). Untuk tipe Shortcut, pengguna harus menentukan kombinasi tombol keybord. Untuk membentuk kode shortcut dari tombol yang dipilih pengguna, KodeShortcut menggunakan fungsi KombinasiTombolKeyboard(). Untuk tipe Open, Close, dan Folder pengguna harus menentukan file aplikasi yang akan dibuka atau ditutup maupun folder yang akan dibuka. Untuk membentuk kode shortcut, KodeShortcut menggunakan fungsi PencarianFile() dan SetDirPath(). Setelah semua data perintah lengkap pengguna melakukan penyimpanan perintah dengan fungsi TambahPerintah(), dan sistem akan

(29)

67

melakukan penyimpanan perintah ke basis data dengan fungsi TambahDataBasisData().

j. Sequence diagram mengubah perintah

Gambar 3.24, Sequence Diagram Mengubah Perintah

Pada sequence diagram mengubah perintah (Gambar 3.24), pengguna memilih tipe shortcut. Setelah melakukan koneksi basis data dengan fungsi KoneksiBasisData(), PengaturTabel akan menampilkan daftar perintah melalui fungsi TampilTabel(). Pengguna harus memilih data yang akan dirubah dari tabel. Pengubahan yang dilakukan meliputi kombinasi tombol dengan fungsi KombinasiTombolKeyboard(), nama file dengan fungsi PencarianFile() atau folder dengan fungsi SetDirPath(). Setelah data diubah menggunakan fungsi UbahPerintah(), data tersebut akan disimpan ke basis data dengan fungsi UpdateDataBasisData().

(30)

68

Gambar 3.25, Sequence Diagram Menghapus Perintah

Pada sequence diagram menghapus perintah (Gambar 3.25), pengguna memilih tipe shortcut. Setelah itu PengaturTabel akan melakukan koneksi ke basis data dengan fungsi KoneksiBasisData() dan menampilkan daftar perintah dalam tabel dengan fungsi TampilTabel(). Pengguna kemudian memilih data perintah yang akan dihapus dengan fungsi PilihData(), kemudian pengguna melakukan penghapusan dengan fungsi HapusPerintah(). Selanjutnya PengaturTabel akan melakukan penghapusan data dari basis data dengan fungsi HapusDataBasisData().

3.5 COMPONENT DIAGRAM

Komponen piranti lunak adalah modul berisi code, baik berisi source code

(31)

69

penyusun sistem Perintah Suara yaitu tb_aplikasi, PemuatDataDb, ShortcutSuara, SAPI, sapisvr, PengontrolHwnd, AgentCtl, dan AgentSvr.

Gambar 3.26, Component Diagram

Rincian dari masing-masing komponen pada component diagram (Gambar 3.26) tersebut dapat dijelaskan sebagai berikut.

1. tb_aplikasi, merupakan komponen berjenis tabel. Basis data dari sistem ini hanya terdiri dari sebuah tabel saja yaitu tb_aplikasi tersebut. Komponen ini terhubung dengan class PengaturTabel dan KodeShortcut.

2. PemuatDataDb, merupakan komponen berjenis library. Komponen ini berfungsi untuk menampung seluruh daftar perintah dari basis data sebelum digunakan. Komponen ini terhubung dengan class DataDb dan PerintahBaku. 3. ShortcutSuara, merupakan komponen berjenis executable. Komponen ini

merupakan komponen utama yang berjalan pada saat run time untuk melakukan pengenalan ucapan dan eksekusi. Komponen ini terbentuk dari

class Grammar, RecognitionContext dan class Eksekusi.

4. SAPI, merupakan komponen berjenis library. File library tersebut bernama sapi.dll. Komponen ini digunakan oleh class Grammar, RecognitionContext dan TextToSpeech.

5. sapisvr, merupakan komponen executable yang aktif secara otomatis pada saat sapi.dll dijalankan. Komponen ini aktif karena jenis mesin pengenalan yang digunakan menggunakan konteks pengenalan yang bisa digunakan untuk berbagi pakai ( Shared Recognition Context ).

(32)

70

6. PengontrolHwnd, merupakan komponen berjenis library. Komponen ini untuk mengamati hWnd dan menyimpannya. Komponen ini terhubung dengan class

DataHwnd.

7. AgenCtl, merupakan komponen berjenis library. Komponen ini untuk mengaktifkan aplikasi MS Agen. Komponen ini digunakan oleh class Agen. 8. AgenSvr, merupakan komponen berjenis executable. Komponen ini berjalan

pada saat run time ketika MS Agen aktif.

3.6 RANCANGAN ANTARMUKA

Rancangan antarmuka dibagi menjadi dua bagian. Antarmuka yang pertama secara umum berfungsi untuk mendaftar semua aplikasi yang telah dibuka oleh sistem. Antarmuka kedua untuk mengelola basis data sistem. Kedua rancangan antarmuka ini dibuat menggunakan Microsoft Visio 2003.

(33)

71

Antarmuka yang pertama disebut Application Monitor (Gambar 3.27). Antarmuka ini memiliki tiga frame. Frame yang pertama (Frame1) berisi kontrol untuk memuat daftar teks. Daftar0 merupakan seluruh daftar teks perintah dari sistem. Daftar0 akan menampilkan teks perintah yang dipanggil. Kontrol yang terdapat dalam Frame1 termuat dalam komponen yang bernama PemuatDataDb (Gambar 3.26). Frame yang kedua (Frame2) berisi kontrol untuk menampilkan daftar aplikasi yang aktif. Daftar1 berisi nomor urut dari task aplikasi (Kolom1), Daftar2 berisi title dari task aplikasi (Kolom2), Daftar3 berisi hWnd dari task

aplikasi. Kontrol yang terdapat dalam Frame2 termuat dalam komponen yang bernama PengontrolHwnd (Gambar 3.26). Frame yang ketiga (Frame3) terdapat dua kontrol, untuk mematikan sistem teks ke ucapan (Pilihan1) dan untuk mematikan sistem pengenalan ucapan (Pilihan2).

(34)

72

Antarmuka yang kedua disebut Database Manager (Gambar 3.28). Antarmuka ini memiliki empat frame. Frame yang pertama (Frame1) terdiri dari empat kontrol, untuk memilih tipe Shortcut Biasa (Pilihan1), untuk tipe Shortcut

Buka Aplikasi (Pilihan2), untuk tipe Shortcut Tutup Aplikasi (Pilihan3) dan untuk tipe Shortcut Khusus (Pilihan4). Frame yang kedua (Frame2) terdapat kontrol untuk menampilkan data dari basis data sesuai tipe shortcut yang dipilih. Frame

yang ketiga (Frame3) terdiri dari 16 kontrol. Teks1 untuk memasukkan kata perintah, Teks2 untuk memasukkan kode perintah, Teks3 untuk memasukkan nama aplikasi yang dijalankan, Teks4 untuk memasukkan tipe shortcut, Teks5 untuk memasukkan kata komentar sebagai respons sistem, Teks6 untuk memasukkan fungsi tombol. Tombol1 untuk mengosongkan Teks1 sampai Teks6. Tombol2 untuk menambah perintah yang baru, Tombol3 untuk memperbaharui data, Tombol4 untuk menghapus data, Tombol5 untuk mengosongkan Teks2, Tombol6 untuk mengosongkan Teks6. Drive dan Folder untuk mencari file dan

folder. Teks7 untuk menampilkan lokasi (Path Folder) yang dipilih. Daftar1 untuk memilih file exe dari aplikasi yang akan diakses. Frame yang keempat

(Frame4) berisi kontrol yang semuanya berfungsi membentuk konfigurasi dan fungsi keyboard. Kontrol dalam Frame4 ini untuk memasukkan kombinasi tombol

shortcut atau shortcut yang menggunakan tombol-tombol fungsi dari keyboard.

3.7 RANCANGAN MENU

Menu pada Aplikasi Perintah Suara dirancang untuk tampil ketika menunjuk ikon dari Aplikasi Perintah Suara pada system tray bukan ditampilkan pada antarmuka Application Monitor. Rancangan menu pada Aplikasi Perintah Suara dibuat dibuat dengan Microsoft Visio 2003 untuk menjelaskan menu apa saja yang disediakan oleh sistem Perintah Suara. Rancangan menu tersebut seperti dalam gambar dibawah ini.

(35)

73

Gambar 3.29, Rancangan Menu

Peran dari masing-masing menu tersebut berfungsi untuk mempermudah dalam menggunakan dan mengatur Aplikasi Perintah Suara. Disable Recognition

berfungsi untuk menonaktifkan mesin pengenalan ucapan. Disable Speech

berfungsi untuk menonaktifkan mesin teks ke ucapan. Hide Assistant berfungsi untuk menyembunyikan aplikasi Agen. Command List berfungsi untuk mencetak seluruh daftar perintah. Database Manager berfungsi untuk membuka antarmuka

Database Manager. Sound Properties berfungsi untuk melakukan pengaturan suara dari perangkat kartu suara dan pengeras suara. Speech Properties berfungsi untuk mengatur sistem pengenalan ucapan dan teks ke ucapan termasuk pengaturan level dan konfigurasi mikropon serta melakukan pelatihan dan penyimpanan profil pengenalan.

Gambar

Gambar 3.1, Aplikasi Perintah Suara Dengan Speech API
Gambar 3.2, Use Case Diagram
Gambar 3.3, Activity Diagram Mengaktifkan Pengenalan Ucapan
Gambar 3.4, Activity Diagram Membuka Aplikasi
+7

Referensi

Dokumen terkait

Pemakaian terhadap cerobong asap semu pada bangunan Panti Asuhan Vincentius Putra dapat juga dijumpai pada berbagai bangunan dari karya Hulswit & Cuyper di awal abad

Manajemen panen dan transport di Afdeling 1 Bangun Bandar Estate telah dilakukan dengan baik, tetapi dalam beberapa hal belum memenuhi kriteria standar

Paraplegia pada penyakit yang sudah tidak aktif/sembuh terjadi oleh karena tekanan  pada jembatan tulang kanalis spinalis atau oleh pembentukan jaringan fibrosis yang  progresif

Objek yang diteliti adalah infiltrasi pada lahan terbuka, semak belukar dan perkebunan karet dengan kelerengan 0 – 8%, 8 – 15% dan 15 – 25%.Peralatan yang digunakan

8 Menimbang bahwa terlebih dahulu, dari surat permohonan Pemohon dapat disimpulkan pada pokoknya adalah mohon untuk Pengadilan memberi izin kepada Pemohon untuk berikrar

Berdasarkn hasil penelitian, faktor terbesar yang mempengaruhi minat siswa SMA untuk melanjutkan studi pada jurusan PTI dengan adanya penerapan kurikulum 2013

Berdasarkan permasalahan tersebut maka perlu dilakukan perancangan ulang tata letak fasilitas yang tepat dengan mempertimbangkan type sistem produksi yang diterapkan

Peta Penyebaran Kerusakan Bangunan di Kota Padang Akibat Gempa 30 September 2009. Korelasi Data-data