bab 2 landasan teori -...
TRANSCRIPT
BAB 2
LANDASAN TEORI
Pada bab ini, akan dijelaskan mengenai landasan teori yang akan dipakai dan
gambaran umum objek, seperti konsep–konsep Pengenalan Pola, Pengenalan Suara,
Sinyal Percakapan, Sinyal Digital, Metode Fourier, LPC.
2.1 Pengenalan Pola
Pola (pattern) adalah entitas yang terdefinisi dan dapat diberikan suatu
identifikasi atau nama misalkan buku, wajah manusia, dan sebagainya (Murni dan
Setiawan,1992,p6). Pola adalah bentuk atau model (atau, lebih abstrak, suatu set
peraturan) yang bisa dipakai untuk membuat atau untuk menghasilkan suatu atau bagian
dari sesuatu, khususnya jika sesuatu yang ditimbulkan cukup mempunyai suatu yang
sejenis untuk pola dasar yang dapat ditunjukkan atau terlihat, yang mana sesuatu itu
dikatakan memamerkan pola (http://id.wikipedia.org/wiki/Pola). Deteksi pola dasar
disebut pengenalan pola.
Riset untuk pengenalan suara otomatis sudah lama dilakukan, sekitar lebih dari
empat dekade, yang awalnya terinspirasi oleh film fiksi yang berjudul A Space Odysses.
Pengenalan pola digunakan untuk mengenali objek kompleks dari bentuk sifat dari objek
yang akan dikenali ciri–ciri dari objeknya. Pengenalan pola secara formal dapat
dideskripsikan sebagai sebuah proses yang menerima pola atau sinyal berdasarkan hasil
pengukuran yang kemudian diklasifikasikan ke dalam satu atau lebih kategori atau kelas
tertentu (Haykin,1999,p67).
10
Suatu sistem pengenalan pola pada dasarnya terdiri atas tiga tahap, yaitu
penerimaan data, pengenalan data, dan pengenalan objek atau pembuatan keputusan.
Adapun pendekatan utama dalam pengenalan pola adalah pendekatan geometrik dan
pendekatan struktural. Pendekatan struktural dilakukan dengan penentuan dasar yang
mendeskripsikan objek yang akan dikenali (pendekatan pola melalu diskripsi dan
kesimpulan).
Pengenalan pola merupakan bidang dalam pembelajaran mesin dan dapat
diartikan sebagai "tindakan mengambil data mentah dan bertindak berdasarkan
klasifikasi data” (http://id.wikipedia.org/wiki/Pengenalan_pola). Dengan demikian, ia
merupakan himpunan kaidah bagi pembelajaran diselia (supervised learning).
2.2. Pengenalan Suara
Pengenalan suara adalah proses yang dilakukan komputer untuk mengidentifikasi
kata–kata yang diucapkan kepadanya. Penelitian dibidang pengenalan suara (speech
recognition) oleh mesin telah dilakukan hampir selama lima dekade, dimana percobaan
awal oleh mesin dibuat tahun 1950-an, yaitu pada saat berbagai penelitian mencoba
untuk mengekspolitasi ide fundamental dari acoustic-phonetics.
Sejarah penelitian di bidang pengenalan suara (speech recognition) antara lain :
a. Tahun 1952, di Labotorium Bell, Davis, Bidullph, Balashek membuat suatu sistem
pengenalan digit terisolasi untuk seorang pembicara. Sistem tersebut sangat
tergantung kepada pengukuran resonasi spectral di daerah vokal dari setiap digit;
11
b. Tahun 1956, sebuah usaha independen pada Labotorium RCA, Olson dan Belar
berusaha untuk mengenali sepuluh suku kata yang berbeda dari setiap pembicara
yang juga bergantung pada pengukuran spectral pada area vokal;
c. Tahun 1959, Universitas Collage di Inggis, Fry and Denes mencoba untuk membuat
suatu pengenalan fenom untuk mengenali empat vokal dan sembilan konsonan.
Mereka menggunakan keputusan dari pengenalan;
d. Usaha lain pada periode ini adalah mengenalkan vokal oleh Forgie dan Forgie,
dikonstruksikan di Labotorium Lincoln MIT pada tahun 1959, di mana sepuluh
vokal disisipkan dalam format a/b/-vokal-/t dapat dikenali. Sekali lagi sebuah filter
bank analyzer digunakan untuk menyediakan informasi spectral dan pengukuran
waktu yang dipakai untuk memperkirakan resonasi jejak vokal yang menentukan
vokal mana yang diucapkan;
e. Pada tahun 1960-an, sejumlah ide fundamental dalam speech recognition mucul
kepermukaan dan diterbitkan. Dekade ini dimulai dengan beberapa Labotorium
Jepang yang memasuki arena pengenalan dan membangun special-purpose
hardware sebagai bagian dari sistem mereka. Awal dari sistem Jepang dimulai dari
Suzuki dan Nakata dari Lab. Penelitian Radio di Tokyo yang merupakan hardware
pengenalan huruf vokal;
f. Usaha lainnya dilakukan oleh Sakai dan Doshita dari Universitas Kyoto tahun 1962,
yang membangun sebuah hardware pengenalan fenom. Usaha yang ketiga
merupakan hardware pengenalan digit oleh Nagata dan rekan kerjanya di Lab. NEC
pada tahun 1963. Usaha ini mungkin yang paling dikenali sebagai percobaan
12
perdana dari speech recognition pada NEC dan menjadi awal bagi sebuah program
penelitian yang produktif;
g. Di era 60-an, terdapat tiga proyek penelitian kunci, yang pertama adalah usaha yang
dilakukan oleh Martin dan rekannya pada labotorium RCA, untuk membangun solusi
realistik bagi problem yang berkaitan dengan ketidakseragaman dalam interval
waktu, dari speech event. Martin membangun sistem dengan dasar pada kemampuan
unutk mendeteksi awal dan akhir dari suatu speech. Martin membangun metodenya
dan mendirikan satu perusahaan bernama Threshold Technology yang membuat,
memasarkan, dan menjual produk–produk speech recognition. Sementara pada
waktu yang bersamaan di Uni Sovyet, Vintsyuk mengajukan penggunaan dari
metode dynamic programming untuk penyamaan waktu dari sepasang pengutaraan
speech;
h. Pencapaian yang akhir tahun 1960-an merupakan penelitian pioneer dari Reddy
dalam bidang continues speech recognition dan dynamic tracking dari fenom;
i. Pada tahun 1970-an penelitian speech recognition meraih sejumlah batu pijakan
yang signifikan. Pertama, area dari kata terisolasi atau pengenalan ucapan diskrit
menjadi suatu teknologi yang mungkin dan berguna berdasarkan pada pembelajaran
fundamental oleh Velicho dan Zagoruyko di Rusia, Sakoe dan Chiba di Jepang, dan
Itakura di Amerika. Pembelajaran di Rusia membantu memajukan penggunaan dari
ide pattern recognition dalam speech recognition. Penelitian di Jepang memajukan
bagaimana metode dynamic programming dapat diterapkan dengan sukses dan
penelitian di Itakura menunjukkan bagaimana ide dari Linear Predictive Logic
13
(LPC) yang mana telah digunakan dengan sukses pada pengkodean speech ber-bit
rendah;
j. Penelitian speech pada tahun 1980-an bercirikan pada pergeseran teknologi dari
pendekatan berbasis template menjadi statistik modeling, terutama pendekatan model
Hidden Markov Model. Ide lain diperkenalkan pada akhir 1980-an adalah penerapan
neural network pada speech recognition. Neural networks pertama kali dikenalkan
tahun 1950, tapi tidak terbukti berguna pada awalnya karena terlalu banyaknya
masalah praktikal.
2.3 Sinyal dan Sinyal Percakapan
2.3.1 Sinyal
Sinyal dapat didefinisikan sebagai kuantitas yang fisik yang bervariasi seiring
waktu atau variabel bebas lainnya yang menyimpan suatu informasi (M.J.Roberts,
Signals and System Analysis Using Transform Methods and Matlab, New York :
McGraw-Hill,2004,h.1). Contoh dari sinyal adalah suara manusia, kode morse, tegangan
listrik di kabel telepon, variasi intensitas cahaya pada sebuah jaringan serat optik yang
digunakan dalam telepon atau jaringan komputer, dan lainnya. Sinyal dapat
diklarifikasikan menjadi beberapa jenis yaitu, sinyal waktu, sinyal nilai, sinyal random,
dan sinyal non-random. Untuk Sinyal Waktu dapat dibagi menjadi dua, yaitu Sinyal
Waktu Kontinu/Sinyal Analog yang merupakan sinyal yang belum melalui proses
apapun dan Sinyal Waktu Diskrit/Sinyal Digital yang merupakan sinyal analog
yang telah melalui proses sampling quantization, dan encoding.
14
Pada dasarnya semua suara audio, baik vokal maupun bunyi tertentu merupakan
suatu bentukan dari getaran. Ini menandakan semua suara memiliki bentuk
gelombangnya masing-masing. Umumnya bentukan gelombangnya disebut dengan
sinyal analog. Bentuk dari sinyal analog bisa dilihat pada Gambar 2.1.
Gambar 2.1 Diagram Gelombang Sinyal Analog
Namun sebuah teknik memungkinkan sinyal ini diubah dan diproses sehingga
menjadi lebih baik. Teknik ini memungkinkan perubahan sinyal analog menjadi bit
digital. Teknik itu disebut teknik sampling. Jika telah menjadi sinyal digital maka sinyal
ini jauh lebih baik, sedikit noise-nya dan juga dapat diproses dengan mudah. Digital
Signal Prosessing merupakan perkembangan dari teknik ini yang memungkinkan untuk
membentuk contoh-contoh yang berupa suara seperti yang ada pada keyboard,
synthesizer, Audio Prosessing, dan lain–lain.
Digital Signal Processor atau DSP adalah sejenis mikroprosesor yang di
desain/dirancang khusus untuk pemrosesan isyarat digital (digital signal processing).
Biasanya komponen elektronika digital ini dipakai untuk komputer yang memerlukan
15
waktu tanggap (response time) yang cepat (untuk real-time applications)
(http://id.wikipedia.org/wiki/Digital_signal_processor).
Ciri khas dari DSP meliputi:
a. dipakai untuk pemrosesan real-time;
b. mempunyai ADC (Analog to Digital Converter) pada bagian input dan DAC pada
bagian output (lihat Gambar 2.5);
c. mempunyai kinerja (performance) yang optimal untuk streaming-data;
d. menggunakan arsitektur Harvard (memori program dan data terpisah);
e. memiliki instruksi khusus untuk pemrosesan SIMD (Single Instruction, Multiple
Data);
f. tidak memerlukan hardware khusus untuk operasi multitasking;
g. mempunyai kemampuan DMA (Direct Memory Access) jika dipakai sebagai host
system.
Semua operasi DSP sebetulnya bisa dilakukan pada mikroprosesor umum
(general-purpose microprocessor). Akan tetapi, DSP memiliki sistem arsitektur yang
telah dioptimasikan untuk lebih dapat mempercepat pemrosesan sinyal (isyarat).
Optimasi ini juga penting sekali artinya dalam kaitannya untuk menekan biaya,
penghantaran panas (heat emission), dan penggunaan daya (power consumption).
Proses sampling adalah proses pengambilan nilai–nilai sinyal pada titik diskrit
sepanjang variabel peubah waktu dari sinyal waktu kontinu, sehingga didapatkan sinyal
waktu diskrit. Pada proses ini terjadi suatu pencuplikan dari bentukan sinyal analog.
Pencuplikan dilakukan pada bagian-bagian sinyal analog. Ini dilakukan dengan sinyal-
sinyal sample.
16
Gambar 2.2 Bentukan Sinyal Sample
Ada suatu aturan tertentu dari sinyal ini. Teori Shannon menyatakan frekuensi
sinyal ini paling sedikit adalah dua kali frekuensi sinyal yang akan di-sampling (sinyal
analog). Ini adalah batas minimum dari frekuensi sample agar nantinya cuplikan yang
diambil menunjukkan bentukan sinyal yang asli (analog). Lebih besar tentunya lebih
baik, karena cuplikan akan lebih menggambarkan sinyal yang asli. Kesimpulan yang
didapat, proses sampling menunjukkan berapa sinyal analog yang akan dicuplikkan
dalam satu detik, misalkan sinyal dicuplik sebesar 11025 Hz, yang berarti dalam satu
detik, sinyal dibagi–bagi sebanyak 11025 kali.
Setelah dilakukan proses ini, maka terbentuklah suatu sinyal analog-diskrit yang
bentuknya menyerupai aslinya namun hanya diambil diskrit-diskrit saja. Quantization
adalah proses pemetaan nilai–nilai dari sinyal kontinu menjadi nilai–nilai yang diskrit,
sehingga didapatkan sinyal nilai diskrit. Setelah diquantisasi maka tiap-tiap diskrit yang
17
Gambar 2.3 Bentukan Proses Pencuplikan
ada telah memiliki tetapan tertentu. Tetapan ini dapat dijadikan kombinasi bilangan
biner, maka terbentuklah bilangan-bilangan biner yang merupakan informasi dari sinyal.
Kesimpulannya, proses quantization bertujuan untuk menunjukkan jumlah bit sinyal
analog yang dicuplik, misalkan empat bit, delapan bit. Semakin tinggi jumlah bit yang
digunakan maka semakin bagus hasil suara yang didapat.
Setelah menjadi sinyal digital maka proses-proses perekayasaan dapat dilakukan.
Yang harus dilakukan adalah mengubah informasi digital tersebut dengan proses digital
sehingga menjadi suara-suara yang diinginkan, proses inilah yang disebut encoding.
Proses dapat dilakukan dengan berbagai macam alat-alat digital (contohnya komputer).
Sample-sample yang ada juga digunakan sebagai informasi untuk menciptakan suara
dari berbagai macam alat elektronik misalkan keyboard dan synthesizer. Penyimpanan
suara juga akan lebih baik karena informasinya adalah digital sehingga berkembanglah
CD dan DAT (Digital Tape).
Dalam proses pengolahan sinyal analog, sinyal input masuk ke Analog Signal
Processing (ASP), diproses atau diberi perlakuan misalkan pemfilteran, penguatan, dan
output-nya berupa sinyal analog.
18
Gambar 2.4 Sistem Pengolahan Sinyal Analog
Proses pengolahan sinyal secara digital memiliki bentuk sedikit berbeda.
Komponen utama sistem ini berupa sebuah processor digital yang mampu bekerja
apabila inputnya berupa sinyal digital. Untuk sebuah input berupa sinyal analog perlu
proses awal yang bernama digitalisasi melalui perangkat yang bernama analog-digital
conversion (ADC), di mana sinyal analog harus melalui proses sampling, quantifizing,
dan encoding. Demikian juga output dari processor digital harus melalui perangkat
digital-to-analog conversion (DAC) agar outputnya kembali menjadi bentuk analog. Hal
ini bisa diamati pada perangkat seperti PC, digital sound system, dan lain sebagainya.
Secara sederhana bentuk diagram blognya dapat digambar seperti Gambar 2.5.
Sinyal yang berbentuk digital dapat disimpan dalam media penyimpanan di
komputer. WAV file (berasal dari kata wave) merupakan format umum yang paling
sederhana untuk menyimpan data sinyal audio. WAV file terdiri dari tiga potongan
informasi yaitu : RIFF chunk yang berisi informasi yang menandakan bahwa file
19
Gambar 2.5 Sistem Pengolahan Sinyal Digital
berbentuk WAV, FORMAT chunk yang berisi parameter–parameter seperti jumlah
channel, sample rate, resolusi, dan DATA chunk yang berisi aktual sinyal digital.
2.3.2 Sinyal Percakapan
Sinyal percakapan adalah sinyal yang dihasilkan dari suara manusia sewaktu
melakukan percakapan. Sinyal percakapan merupakan kombinasi kompleks dari variasi
tekanan udara yang melewati pita suara dan vocal tract, yaitu mulut, lidah, gigi, bibir,
dan langit–langit. Speech (wicara) dihasilkan dari sebuah kerjasama antara lungs (paru–
paru), glottis (dengan vocal cords) dan articulation tract (mouth atau mulut dan nose
cavity/rongga hidung). Sinyal suara terdiri dari serangkaian suara yang masing–masing
menyimpan sepotong informasi. Berdasarkan cara menghasilkannya, suara dapat dibagi
menjadi voiced dan unvoiced. Voiced sounds atau suara ucapan dihasilkan dari getaran
pita suara, sedangkan unvoiced sounds dihasilkan dari gesekan antara udara dengan
vokal tract.
20
Sinyal percakapan memiliki beberapa karakteristik, seperti formant, pitch dan
intensitas yang berguna dalam melakukan analisis sinyal suara. Pitch adalah frekuensi
dari sinyal atau yang sering disebut intonasi. Intensitas adalah kekuatan suara.
Gambar 2.6 Produksi Suara Manusia (http://lecturer.eepis-its.edu/~tribudi/LN_SIP_Prak/rev_01_Speech_prak_1_Matlab.pdf)
Impuls tekanan pada umumnya disebut sebagai pitch impulses dan frekuensi
sinyal tekanan adalah pitch frequency atau fundamental frequency. Sederet impuls
(fungsi tekanan suara) dihasilkan oleh pita suara untuk sebuah suara. Ini merupakan
bagian dari sinyal voice (suara) yang mendefinisikan speech melody (melodi wicara).
Ketika berbicara dengan pitch yang stabil, suara sinyal wicara monotonous tetapi dalam
kasus normal sebuah perubahan permanen pada frekuensi terjadi. Impuls pitch
21
merangsang udara dalam mulut dan untuk suara tertentu (nasals) juga merangsang
nasal cavity (rongga hidung). Ketika rongga beresonasi, akan menimbulkan radiasi
sebuah gelombang suara yang mana merupakan sinyal percakapan. Kedua rongga
beraksi sebagai resonators dengan karakteristik frekuensi resonansi masing–masing yang
disebut formant frequencies, sehingga formant merupakan variasi resonasi yang
dihasilkan oleh vocal tract. Pada saat rongga mulut mengalami perubahan besar, kita
mampu untuk menghasilkan beragam pola ucapan suara yang berbeda. Di dalam kasus
unvoiced sounds, exitansi pada vocal tract lebih menyerupai noise atau derau.
2.4 Linear Predictive Coding (LPC)
Linear Predictive Coding atau LPC adalah sebuah alat yang digunakan dalam
sebagian besar pemrosesan sinyal audio dan pemrosesan wicara untuk mewakili spectral
envelope dari sinyal digital pembicaraan dikompresi, menggunakan informasi dari linear
input model. LPC adalah salah satu yang paling baik dalam teknik analisi wicara, dan
salah satu metode yang paling berguna untuk encoding berkualitas pada bit-rate yang
rendah dan menyediakan yang baik mengenai perkiraan pembicaraan parameter
(http://en.wikipedia.org/wiki/Linear_predictive_coding). LPC juga termasuk cukup
efisien untuk komputasi.
LPC banyak digunakan aplikasi pengenalan suara, karena (Rabiner dan Juang,
1993,pp 97-100) :
a. Menyediakan suatu model yang baik untuk sinyal ucapan, di mana LPC
menyediakan suatu perkiraan yang baik untuk sinyal spectral envelope. Selama
unvoiced dan daerah sementara dari sinyal ucapan, model LPC tetap saja
22
menyediakan suatu model yang berguna yang dapat diterima untuk tujuan
pengenalan suara;
b. LPC diterapkan untuk analisis sinyal ucapan mengarah pada suatu sumber yang
layak, untuk pemisahan bidang suara, sehingga menghasilkan suatu representasi
sederhana dari karakteristik bidang suara menjadi jelas;
c. LPC lebih tepat secara matematika, sederhana dan dapat langsung
diimplementasikan ke perangkat lunak atau perangkat keras;
d. LPC lebih baik dari metode Digital Signal Processing (DSP).
LPC memiliki dua komponen kunci, yaitu encoding dan decoding. Pada bagian
encoding atau analisa, LPC melakukan pengecekan terhadap sinyal suara dan
memecahkannya menjadi beberapa segmen atau beberapa blok. Setelah itu, setiap
segmen dapat menyelesaikan beberapa pertanyaan, yaitu :
a. Apakah segmen itu voiced (terucap dan terdengar) atau unvoiced (terucap tapi tidak
terdengar) ?;
b. Apakah segmen dari pitch tersebut ?;
c. Parameter apakah yang dibutuhkan untuk membentuk filter yang dapat dimodelkan
sinyal suara menjadi segmen–segmen tersebut?.
Pada bagian decoding atau sintesa, LPC berfungsi untuk memanipulasi suara
yang diproduksi sebelumnya. Voice Coder atau suara yang dihasilkan dari mesin,
memodelkan dua hal dari suara manusia, yaitu Eksitasi dan Artikulasi. Eksitasi adalah
tipe suara yang melewati filter suara sedangkan artikulasi adalah transformasi dari sinyal
eksitasi menjadi speech (suara yang terucap).
23
Pada Gambar 2.7, direpresentasikan tentang perbedaan suara manusia dan mesin.
Di mana pada manusia, suara dikeluarkan melalui tekanan paru-paru dan menghasilkan
dua jenis suara, yaitu suara voiced dan unvoiced, kemudian suara ini akan dikeluarkan
dalam bentuk artikulasi pengucapan. Sedangkan pada mesin, suara dihasilkan melalui
energi listrik dalam hal ini pada PC, dihasilkan oleh sound card dan dikeluarkan melalui
speaker.
Gambar 2.7 Human vs. Voice Coder Speech Production
24
2.4.1 Penentuan Voiced dan Unvoiced
Sebelum sebuah segmen dari sinyal suara ditentukan sebagai voiced atau
unvoiced, terlebih dahulu dilakukan pemfilteran melalui low-pass filter dengan
bandwidth sebesar 1 kHz. Menentukan sebuah segmen voiced atau unvoiced sangatlah
penting karena kedua segmen tersebut mempunyai bentuk gelombang yang sangat
berbeda. Perbedaan dari kedua bentuk gelombang ini menimbulkan sebuah kebutuhan
akan penggunaan dua sinyal input untuk LPC filter pada bagian sintesa.
Satu input sinyal untuk voiced dan satu lagi untuk unvoiced. Bagian encoding
akan mengirimkan single bit kepada bagian decoding untuk memberitahukan segmen
tersebut voiced atau unvoiced.
Gambar 2.8 Voiced Waveform
(http://neural.cs.nthu.edu.tw/jang/books/audioSignalProcessing/example/audioIntro/output/voicedShow01.png)
25
Gambar 2.9 Unvoiced Waveform
(http://neural.cs.nthu.edu.tw/jang/books/audioSignalProcessing/example/audioIntro/output/unvoicedShow01.png)
Dari Gambar 2.8 dan Gambar 2.9, dipresentasikan perbedaan antara voiced dan
unvoiced. Pada Gambar 2.8, gelombang frekuensi dari huruf ‘s’ pada kata ‘Sunday’,
memiliki amplitudo yang lebih rendah dan frekuensinya yang renggang atau rendah bila
dibandingkan dengan unvoiced (Gambar 2.9). Suara unvoiced memiliki energi yang
lebih lemah sehingga amplitudonya terlihat lebih kecil dan memiliki frekuensi yang
lebih tinggi. Suara yang bertipe unvoiced, biasanya, adalah bunyi non-vokal atau
konsonan dan memiliki gelombang frekuensi yang lebih tidak beraturan dan acak.
Untuk menentukan apakah suara segmen tersebut voiced atau unvoiced, dapat
dilakukan dengan dua langkah. Langkah pertama, adalah dengan melihat amplitudo dari
gelombang sinyal suara tersebut. Jika amplitudonya besar, maka segmen dari sinyal
26
suara tersebut digolongkan voiced, namum jika amplitudonya kecil, maka segmen dari
sinyal suara tersebut digolongkan unvoiced. Karena pada langkah pertama, kita tidak
bisa langsung menentukan bahwa sebuah segmen dari sinyal suara itu voiced dan
unvoiced jika hanya melihat amplitudonya saja, maka diperlukan langkah lain untuk
menentukannya. Langkah kedua ini berguna mengambil informasi dari fakta bahwa
segmen dari voiced speech memiliki amplitudo yang besar, sedangkan segmen dari
unvoiced speech memiliki frekuensi yang tinggi dan rata–rata nilai dari kedua segmen
mendekati nol, sehingga pada akhirnya, dari ketiga informasi ini dapat diambil
kesimpulan bahwa unvoiced speech harus melintasi x-axis lebih sering dibandingkan
voiced speech. Sehingga pada akhirnya, kita dapat menentukan antara voiced dan
unvoiced dengan menghitung berapa kali gelombang tersebut melintas x-axis dan
membandingkan nilai tersebut dengan nilai dari kisaran normal kebanyakan voiced dan
unvoiced speech.
2.4.2 LPC Model
Ide dasar LPC adalah suatu ucapan yang diberikan pada waktu n, s(n) bisa
diperkirakan sebagai kombinasi linier dari p sinyal suara manusia sebelumnya yang
dapat ditulis dengan persamaan :
1 2( ) ( 1) ( 2) ..... ( )ps n a s n a s n a s n p≈ − + − + + −
Dimana 1... pa a diasumsikan bernilai konstanta dari sebagian analisis suara manusia.
Dengan menyertakan suatu kondisi eksitasi, persamaan (2.1) menjadi :
1( ) ( ) . ( )
p
ii
S n a S n i G u n=
= − +∑
(2.1)
(2.2)
27
Dimana u(n) adalah kondisi eksitasi yang ternormalisasi dan G adalah hasil eksitasi. Jika
persamaan (2.2) diekspresikan dalam domain Z, maka persamaan tersebut dapat diubah
menjadi :
1( ) ( ) . ( )
pi
ii
S z a z s z G u z−
=
= +∑
Yang bisa menjadi suatu fungsi :
1
1
( ) 1( )1. ( ) 1( )
p
ii
S zH zGU z a z
A z−
=
= =− =∑
Interpretasi dari persamaan (2.4) dapat digambarkan seperti Gambar 2.10 yang
memperlihatkan sumber eksitasi yang ternormalisasi, u(n) yang diskalakan oleh hasil G
dan berlaku sebagai masukan ke semua kutub sistem, 1( )( )
H zA z
= , untuk
menghasilkan sinyal ucapan, s(n).
Gambar 2.10 Linear Predictive Model dari Suara
Berdasarkan pengetahuan kita bahwa fungsi eksitasi yang sebenarnya untuk
sinyal ucapan intinya adalah suatu quasiperiodic getaran train (untuk voiced speech
sounds) atau sebuah sumber random noise (untuk unvoiced speech sounds) sesuai
(2.3)
(2.4)
28
dengan synthesis model untuk suara, berhubungan dengan analisis LPC, yang terlihat di
Gambar 2.11.
Gambar 2.11 Speech Synthesis Model berdasarkan LPC Model
Disini, sumber eksitasi ternormalisasi dipilih oleh sebuah switch yang posisinya
dikendalikan oleh karakter voiced dan unvoiced dari suara yang ditentukan baik oleh
getaram quasiperiodic train sebagai eksitasi dari suara, atau urutan sumber random
noise untuk suara unvoiced. Hasil yang didapatkan, G, dari sumber diperkirakan dari
sinyal ucapan dan sumber yang diskalakan digunakan sebagai masukkan ke filter digital
(H(z)), yang dikendalikan oleh karakteristik parameter suara dari ucapan yang
diproduksi puncak untuk voiced, parameter hasil, dan koefisien dari penyaring digital
ka . Parameter–parameter ini semuanya berubah seiring waktu.
2.4.3 Analisis LPC
29
Gambar 2.12 Blok Diagram Processor LPC
Gambar 2.12 menunjukkan blok diagram processor LPC yang biasa digunakan
dalam sistem pengenalan suara manusia. Langkah-langkah analisis LPC untuk
pengenalan suara adalah sebagai berikut (Rabiner and Juang, Fundamentals of Speech
recognition,p.112-117):
a. Preemphasis
Sinyal suara yang telah diubah menjadi sinyal digital, s(n), dilewatkan pada sebuah
filter yang berorde rendah. Rangkaian preemphasis yang paling sering digunakan
adalah sebuah sistem orde satu yaitu :
Dengan demikian, output dari rangkaian filter tersebut, ( )s n% , dalam fungsi
input, ( )s n , adalah sebagai berikut :
%( ) ( ) ( 1)s n s n as n= − −%
Dengan ( )s n adalah sample ke-n dan harga %a yang paling sering digunakan adalah
0.95.
b. Frame Blocking
(2.5)
(2.6)
% 1( ) 1 , 0.9 1H z az a−= − ≤ ≤
30
Pada tahap ini, sinyal yang telah di-preemphasis diblok menjadi beberapa bagian
dengan jumlah sample N, dan tiap bagian dipisahkan dengan sejumlah M. Gambar
2.13 menunjukkan penggambaran sinyal yang telah di blok dengan nilai M=(1/3)N.
Bagian pertama terdiri dari sejumlah N sampel, kemudian bagian kedua dimulai dari
sampel ke M, juga sejumlah N sampel dan begitu seterusnya. Dengan demikian ada
sinyal yang overlap dari setiap bagian sinyalnya. Hal ini memberikan hasil spektrum
LPC yang akan berkorelasi tiap bagiannya. Semakin M<<N, semakin baik perkiraan
spectral LPC dari frame ke frame.
Gambar 2.13 Frame Blocking Sinyal
c. Windowing
Langkah berikutnya adalah melakukan proses window pada setiap bagian sinyal
yang telah dibuat sebelumnya. Hal ini dilakukan untuk meminimalkan
diskontinyuitas pada bagian awal dan akhir sinyal. Jika didefinisikan sebuah window
w(n) dan sinyal tiap bagian adalah x(n) maka sinyal hasil proses windowing ini
adalah sebagai berikut:
%( ) ( ). ( ), 0 1x n x n w n n N= ≤ ≤ − (2.7)
31
Model window yang paling sering digunakan untuk model LPC dengan metode
autokorelasi adalah Hamming Window yang direpresentasikan dengan persamaan
berikut:
2( ) 0,54 0,46cos( ), 0 11
nw n n NNπ
= − ≤ ≤ −−
Hasil yang didapatkan lalu dikalikan dengan sampel.
d. Analisis Autokorelasi
Tiap bagian yang telah diberi window kemudian akan dibentuk autokorelasinya
dengan menggunakan persamaan berikut:
% %1
1 110
( ) ( ) ( ), 0,1,...,N m
nr m x n x n m m p
− −
=
= + =∑
Di mana nilai tertinggi dari autokorelasi tersebut, p, adalah orde dari analisis LPC
yang akan dilakukan. Nilai yang umum untuk orde analisis LPC adalah antara 8
sampai 16. Keuntungan dari penggunaan metode autokorelasi adalah bahwa nilai ke-
nol, r(0), adalah energi dari sinyal yang dibuat autokorelasinya.
e. Analisis LPC
Langkah berikutnya adalah analisis LPC adalah mengubah p+1 buah hasil
autokorelasi pada masing-masing frame menjadi sebuah parameter LPC. Parameter
ini bermacam-macam, ada yang disebut dengan nama koefisien LPC, koefisien
pantulan (PARCOR), koefisien cepstral atau transformasi lain yang diinginkan.
Metode yang umum untuk menyelesaikan koefisien autokorelasi di atas menjadi
koefisien LPC adalah dengan menggunakan metode Durbin yang algoritmanya
adalah sebagai berikut :
(2.8)
(2.9)
32
(0)
1( 1)
1( 1)
( )
( ) ( 1) ( )
( ) 2 ( 1)
(0)
{ ( ) (| |)}, 1
(1 )
ii
jj
i i
ii i
i i ij j i i j
i ii
E r
r i r i jk i p
Ek
k
E k E
α
α
α α α
−−
=−
−−
−
=
− −= ≤ ≤
=
= −
= −
∑
Kemudian, koefisien LPC yang didapatkan adalah sebagai berikut :
( ) , 1pj ja a j p= ≤ ≤
Dengan r(0) : hasil autokorelasi
( )iE : error
ik : koefisien pantulan
( )ija : koefisien prediksi
f. Pengubahan Parameter LPC menjadi koefisien cepstral
Parameter LPC yang sangat penting yang dapat diturunkan dari koefisien LPC
adalah koefisien cepstral LPC, c(m). Persamaan yang digunakan untuk
menghitungnya adalah :
1
, 11
1
, 1
( )
( )
m
m m k m k m pk
m
m k m k m pk
kc a c am
kc c am
−
− ≤ ≤=
−
− >=
= +
=
∑
∑
Koefisien cepstral ini adalah koefisien dari representasi transformasi fourier pada
spectrum logaritmis.
(2.10)
(2.11)
(2.12)
(2.13)
(2.14)
(2.15)
(2.16)
(2.17)
33
2.5 Transformasi Fourier
Transformasi Fourier, dinamakan atas Joseph Fourier, adalah sebuah
transformasi integral yang menyatakan-kembali sebuah fungsi dalam fungsi basis
sinusioidal, yaitu sebuah fungsi sinusoidal penjumlahan atau integral dikalikan oleh
beberapa koefisien ("amplitudo") (http://id.wikipedia.org/wiki/Transformasi_Fourier).
Ada banyak variasi yang berhubungan-dekat dari transformasi ini tergantung jenis
fungsi yang ditransformasikan.
Misalkan f(x) adalah suatu fungsi kontinu dari variabel riil (x), maka formula
Transformasi Fourier tersebut adalah :
2( ) ( ) i uxF u f x e dxπ−
−= ∫
Dengan memasukkan persamaan euler, persamaan (2.18) dapat diubah menjadi
( ) (cos 2 sin 2 )F u f ux i ux dxπ π−
= −∫
Jika diberikan suatu fungsi F(u), f(x) dapat dihasilkan dengan Inverse Fourier
Transform :
2( ) ( ) i uxf x F u e duπ−
= ∫
Gambar 2.14 Fungsi Sederhana Fourier dan Spektrum Fourier
(2.18)
(2.19)
(2.20)
34
2.5.1 Transformasi Fourier Diskrit
Transformasi Fourier Diskrit (TFD) adalah salah satu bentuk transformasi
Fourier sebagai ganti integral, digunakan penjumlahan. Dalam matematika sering pula
disebut sebagai Transformasi Fourier berhingga (Finite Fourier transform), yang
merupakan suatu transformasi fourier yang banyak diterapkan dalam pemrosesan sinyal
digital dan bidang-bidang terkait untuk menganalisis frekuensi-frekuensi yang
terkandung dalam suatu contoh sinyal atau isyarat, untuk menyelesaikan persamaan
diferensial parsial, dan untuk melakukan sejumlah operasi, misalnya saja operasi-operasi
konvolusi.
Jika x(t), mewakili sinyal suara, maka mendapatkan persamaan:
( ) ( ) j tX x t e dtωω∞
−
−∞
=∑
Dimana : ( )X ω : fungsi kompleks dari variabel frekuensi
( )x t : fungsi kompleks dari variabel waktu
Dengan teknik sampling, secara berurutan sinyal kontinu ( )x t , dikonversikan ke
dalam bentuk sinyal tidak kontinu ( )x nT dengan tekanan sampling setiap t detik. Karena
nilai dari t selalu tetap (frekuensi sampling yang digunakan tetap), maka dalam
penulisan ( )x nT umumnya ditulis dengan ( )x n . Maka, transformasi fourier dari sinyal
yang tidak kontinu adalah (Hayes,1998,p262) :
( ) ( ) j tX x n e ωω∞
−
−∞
=∑
Dimana : ω : besaran frekuensi dengan range : 0 < < 2 ,
( )X ω : hasil sample dari ( )x n dan bersifat periodik dengan periode 2π
(2.21)
(2.22)
35
Dalam memroses data dengan menggunakan DFT (Discrete Fourier Transform)
harus ditetapkan sebuah konstanta N yang menyatakan banyaknya sample dalam frame,
karena dalam sebuah proses digital tidak mungkin dapat dilakukan perhitungan
penjumlahan dari nilai n= sampai nilai n=- . Sehingga, persamaan
Dimana 2fN
NW eπ
= dan merupakan besaran dengan nilai kompleks. Persamaan
(2.23) biasa dikenal dengan Discrete Fourier dengan N titik, dan untuk melakukan
perhitungan diatas diperlukan sejumlah perkalian bilangan kompleks sebanyak 2N buah
dalam sebuah frame dengan sebanyak sample N. Metode Discrete Fourier ini
mempunyai kelemahan yaitu membutuhkan waktu yang sangat lama untuk N bernilai
besar, yang dikarenakan jumlah operasi perkalian bilangan kompleks yang harus
dilakukan, naik secara kuadratis dengan naiknya nilai N secara linier. Karena itu,
dikembangkan metode yang bernama Fast Fourier Transform yang dapat memperkecil
jumlah perhitungan yang harus dilakukan.
2.5.2 Transformasi Fourier Cepat
Transformasi Fourier cepat (Fast Fourier Transform/FFT) adalah suatu
algoritma untuk menghitung transformasi Fourier diskrit (Discrete Fourier
Transform/DFT) dengan cepat dan efisien. Transformasi fourier cepat diterapkan dalam
beragam bidang, mulai dari pengolahan sinyal digital, memecahkan persamaan
(2.23)
36
diferensial parsial, dan untuk algoritma mengalikan bilangan bulat besar
(http://id.wikipedia.org/wiki/Transformasi_Fourier_cepat).
Prinsip dari FFT adalah mentransformasikan bentuk simetri dari fungsi bilangan
kompleks yang bersifat periodik sebesar 2π menjadi bentuk spektrum frekuensi. Ada dua
macam bentuk simetri dari bilangan kompleks yang digunakan yaitu sifat dari besaran
ini mempunyai besar yang sama. Sifat simetri yang kedua didapat dari sifat bilangan
kompleks yang mempunyai periode 2π.
Sehingga, perhitungan FFT dapat disederhakan menjadi perhitungan bagian
genap dari perhitungan bagian ganjil (Hopes,1989,p262).
Misalkan :
Bagian genap : ( ) (2 )y n x n=
Bagian ganjil : ( ) (2 1)z n x n= +
dimana : n=0,1,2,3,…., ( 12N− )
Dengan mengsubtitusikan Persamaan (2.3), maka dapat ditulis persamaan baru yaitu
1 4 2 (2 1)2
0( ) ( ) ( )
Nj nk j n k
N N
nX k y n e z n e
π π− − − +
=
⎡ ⎤= +⎢ ⎥
⎣ ⎦∑
Komponen 2j k
k Nw eπ−
= dapat dikeluarkan karena bukan merupakan fungsi dari n,
sehingga
( ) ( ) ( )kX k Y k W z k= + ,
dimana k=0,1,2,3,…., ( 12N− )
(2.24)
(2.25)
(2.26)
(2.27)
37
dan 1 14 42 2
0 0
( ) ( ) , ( ) ( )
n nj nk j nk
N N
n n
y k y n e z k z n eπ π− −− −
= =
= =∑ ∑
Sifat periodik pada fungsi eksponensial juga membuat perhitungan dalam FFT
menjadi lebih sederhana sehingga perhitungan yang dilakukan untuk 0k = sampai
dengan 12Nk = − sama dengan perhitungan yang dilakukan
2Nk = sampai dengan
1k N= − , sehingga persamaan (2.27) dapat diubah menjadi :
'
' ' '
'
( ) ( )2
( ) ( ) ( ) ( )2 2 2
( ) ( ) ( )
NX k X k
N N NX k Y k W k Z k
X k Y k W Z k
= +
= + + + +
= −
Persamaan 2.27 dan 2.28 dikenal sebagai Metode Fast Fourier Transform
Butterfly yang merupakan bagian FFT yang memperoleh dua buah input menjadi dua
buah keluaran. Dua buah masukkannya adalah Y(k) dan Z(k) yang merupakan hasil
perhitungan dari metode DFT dengan menggunakan 2N titik.
Metode FFT Butterfly merupakan langkah pertama dalam perhitungan total
motode FFT. Y(k) dan Z(k) juga mempunyai sifat simetris bilangan kompleks, karena itu,
Y(k) dan Z(k) dapat dihitung dengan dua buah metode DFT 4N titik. Tahap di mana
dilakukan perhitungan ini disebut sebagai langkah kedua dalam perhitungan total FFT.
Tahap ketiga adalah melakukan perhitungan dengan 8N titik, dan demikian seterusnya
hingga tersisa menjadi dua buah titik (Hayes,1999,p.264).
(2.28)
38
Karena sifat kesimetrisannya, nilai N yang ditentukan untuk membentuk sebuah
garis frame merupakan bilangan pangkat dari 2(2 )n dan jumlah tahap yang diperlukan
untuk menyelesaikan metode FFT secara lengkap sebanyak 2 log N dengan masing-
masing tahap harus melakukan perhitungan FFT sebanyak 2N kali. Jumlah total
pengoperasian perkalian bilangan kompleks yang harus dilakukan dalam FFT secara
lengkap adalah 2. log2N N , di mana pengoperasian perkalian ini jauh lebih sedikit untuk
nilai N yang besar dibandingkan dengan operasi perkalian bilangan kompleks yang
diperlukan jika menggunakan metode DFT secara langsung (Hayes,1999.p265).
2.6 Kebutuhan Perancangan Program
2.6.1 Rekayasa Piranti Lunak
Rekayasa Piranti Lunak menurut Fritz Bauer (Pressman, 2005, p23) adalah
penetapan dan pemakaian prinsip-prinsip rekayasa dalam rangka mendapatkan piranti
lunak yang ekonomis yaitu terpecaya dan bekerja efisien pada mesin (komputer).
Menurut Pressman (2005, p24), rekayasa piranti lunak mencakup tiga elemen
yang mampu mengontrol proses pengembangan piranti lunak,yaitu:
a. Metode-metode (methods),
Yaitu menyediakan cara-cara teknis untuk membangun piranti lunak;
39
b. Alat-alat bantu (tools)
Mengadakan dukungan otomatis atau semi otomatis untuk metode-metode seperti
CASE (Computer Aided Software Engineering) yang mengkombinasikan software,
hardware, dan software engineering database.
c. Prosedur-prosedur (procedurs)
Yaitu merupakan pengembangan metode dan alat bantu.
Dalam perancangan software dikenal istilah software life cycle yaitu serangkaian
kegiatan yang dilakukan selama masa perancangan software. Pemakaian jenis software
life cycle yang cocok salah satunya ditentukan oleh jenis bahasa pemrograman yang
cocok. Contohnya, Waterfall Model merupakan model yang paling umum dan paling
dasar pada software life cycle pada umumnya, Rapid Application Development (RAD)
dan Joint Application Development (JAD) cocok untuk software berbasis objek (OOP),
sedangkan Sync+Stabilize dan Spiral Model yang merupakan pengembangan model
waterfall dengan komponen prototyping cocok untuk sebuah aplikasi yang rumit dan
cenderung mahal pembuatannya.
Menurut Dix (1997, p180), berikut adalah visualisasi dari kegiatan pada software
life cycle model waterfall:
a. Spesifikasi kebutuhan (Requirement specification)
Pada tahap ini, pihak pengembang dan konsumen mengidentifikasi apa saja fungsi-
fungsi yang diharapkan dari sistem dan bagaimana sistem memberikan layanan yang
diminta. Pengembang berusaha mengumpulkan berbagai informasi dari konsumen.
40
b. Perancangan arsitektur (Architectural design)
Pada tahap ini, terjadi pemisahan komponen-komponen sistem sesuai dengan
fungsinya masing-masing.
c. Detailed design
Setelah memasuki tahap ini, pengembang memperbaiki deskripsi dari komponen-
komponen dari sistem yang telah dipisah-pisah pada tahap sebelumnya.
d. Coding and unit testing
Pada tahap ini, disain diterjemahkan ke dalam bahasa pemrograman untuk
dieksekusi. Setelah itu komponen-komponen dites apakah sesuai dengan fungsinya
masing-masing.
e. Integration and testing
Setelah tiap-tiap komponen dites dan telah sesuai dengan fungsinya, komponen-
komponen tersebut disatukan lagi. Lalu sistem dites untuk memastikan sistem telah
sesuai dengan kriteria yang diminta konsumen.
f. Pemeliharaan (maintenance)
Setelah sistem diimplementasikan, maka perlu dilakukannya perawatan terhadap
sistem itu sendiri. Perawatan yang dimaksud adalah perbaikan error yang ditemkan
setelah sistem diimplementasikan.
41
Gambar Error! No text of specified style in document..15 Software Life Cycle Model
Waterfall (Dix (1997, p181))
2.6.2 Rich Picture
2.6.2.1 Tujuan
Rich picture pada awalnya dikembangkan sebagai bagian dari Soft Systems
Metodology yang diciptakan oleh Peter Checkland untuk mengumpulkan informasi
tentag sebuah situasi yang rumit (Checkland, 1981; Checkland and Scholes, 1990). Ide
untuk menggunakan gambar atau foto untuk berpikir tentang suatu masalah sangat
umum untuk kasus problem solving atau metode berpikir kreatif (termasuk terapi),
karena sesuai denga intuisinya, manusia dapat berkomunikasi dengan lebih mudah bila
diekpresikan dengan simbol dibanding dengan kata-kata.
42
Gambar dapat memunculkan sekaligus merekam pengartian yang mendalam
terhadap sebuah situasi. Sementara itu dan teknik visualisasi yang berbeda seperti visual
brainstorming, manipulasi penggunaan ibarat dalam tulisan, telah dikembangkan
sebelumnya, tetapi hanya memenuhi satu tujuan dari dua tujuan yang ada. (Garfield,
1976; McKim, 1980; Shone, 1984; Parker, 1990).
Rich picture digambar pada masa pra-analisis, sebelum diketahui secara jelas
bagian mana dari suatu situasi yang terbaik untuk dijadikan bagian dari suatu proses dan
bagian mana dibuat sebagai sebuah struktur.
Gambar 2.16 Contoh rich picture
(http://systems.open.ac.uk/materials/t552/pages/rich/richAppendix.html)
43
Rich picture atau yang juga dikenal sebagai rangkuman situasi digunakan untuk
menggambarkan situasi yang rumit. Rich picture adalah suatu usaha untuk
menggabungkan situasi yang sesungguhnya melalui representasi kartun secara bebas
tentang semua ide mengenai layout, connections, relationships, pengaruh, sebab dan
akibat, dan lain sebagainya. Seperti ide-ide objektif ini, rich picture harus dapat
menggambarkan elemen-elemen subjektif seperti karakter dan karakteristik, sudut
pandang dan dugaan, semangat dan tingkah laku manusia.
2.6.2.2 Elemen
Pada umumnya rich picture terdiri dari beberapa elemen, yaitu:
a. Simbol bergambar;
b. Kata kunci;
c. Kartun;
d. Sketsa;
e. Simbol;
f. Judul.
2.6.3 Use Case Diagram
Use Case menunjukkan hubungan interaksi antara aktor dengan use case di
dalam suatu sistem (Mathiassen, 2000, p343) yang bertujuan untuk menentukan
bagaimana aktor berinteraksi dengan sebuah sistem. Aktor adalah orang atau sistem lain
yang berhubungan dengan sistem.
44
Ada tiga simbol yang mewakili komponen sistem seperti terlihat pada gambar
dibawah ini.
Gambar 2.17 Notasi Use Case Diagram
(Mathiassen (2000, p343))
Menurut Schneider dan Winters, ada lima hal yang harus diperhatikan dalam
pembuatan diagram use case (Schneider dan Winters, 1997, p26):
a. Aktor: segala sesuatu yang berhubungan dengan sistem dan melaksanakan use case
yang terkait.
b. Precondition: kondisi awal yang harus dimiliki aktor untuk masuk ke dalam sistem
untuk terlibat dalam suatu use case.
c. Postcondition: kondisi akhir atau hasil apa yang akan diterima oleh aktor setelah
menjalankan suatu use case.
d. Flow of Events: kegiatan-kegiatan yang dilakukan pada sebuah proses use case.
e. Alternative Paths: kegiatan yang memberikan serangkaian kejadian berbeda yang
digunakan dalam Flow of Events.
45
2.6.4 Sequence Diagram
Menggambarkan bagaimana objek berinteraksi satu sama lain melalui pesan pada
pelaksanaan use case atau operasi. Diagram sequence mengilustrasikan bagaimana
pesan dikirim dan diterima antar objek secara berurutan. (Whitten et. al., 2004, p441).
Beberapa notasi diagram sequence terlihat pada gambar dibawah ini.
Gambar 2.18 Notasi Sequence Diagram
(Whitten (2004, p441))
2.6.5 Interaksi Manusia dan Komputer
Menurut Shneiderman (2005, p4), Interaksi manusia dan komputer merupakan
disiplin ilmu yang berhubungan dengan, perancangan, evaluasi, dan implementasi sistem
komputer interaktif untuk digunakan oleh manusia, serta studi fenomena-fenomena
besar yang berhubungan dengannya.
Pada interaksi manusia dan komputer ditekankan pada pembuatan antarmuka
pemakai (user interface), dimana user interface yang dibuat diusahakan sedemikian rupa
46
sehingga seorang user dapat dengan baik dan nyaman menggunakan aplikasi perangkat
lunak dibuat.
Antar muka pemakai (user interface) adalah bagian sistem komputer yang
memungkinkan manusia berinteraksi dengan komputer. Tujuan antar muka pemakai
adalah agar sistem komputer dapat digunakan oleh pemakai (user interface), istilah
tersebut digunakan untuk menunjuk kepada kemampuan yang dimiliki oleh piranti lunak
atau program aplikasi yang mudah dioperasikan dan dapat membantu menyelesaikan
suatu persoalan dengan hasil yang sesuai dengan keinginan pengguna, sehingga
pengguna merasa betah untuk mengoperasikan program tersebut.
2.6.5.1 Program Interaktif
Suatu program yang interaktif dan baik harus bersifat user friendly.
(Scheiderman, p15) menjelaskan lima kriteria yang harus dipenuhi oleh suatu program
yang user friendly, yaitu:
a. Waktu belajar yang tidak lama;
b. Kecepatan penyajian informasi yang tepat;
c. Tingkat kesalahan pemakaian rendah;
d. Penghafalan sesudah melampaui jangka waktu;
e. Kepuasan pribadi.
2.6.5.2 Pedoman Merancang User Interface
Beberapa pedoman yang dianjurkan dalam merancang suatu program, guna
mendapatkan suatu program yang user friendly yaitu:
47
a. Delapan aturan emas (Eight Golden Rules)
Untuk merancang sistem interaksi manusia dan komputer yang baik, harus
memperhatikan delapan aturan emas dalam perancangan antarmukan, seperti: strive for
consistency (konsisten dalam merancang tampilan), enable frequent user to use shorcuts
(memungkinkan pengguna menggunakan shortcuts secara berkala), offer informative
feed back (memberikan umpan balik yang informatif), design dialogs to yield closure
(merancang dialog untuk menghasilkan keadaan akhir), offer simple error handling
(memberikan penanganan kesalahan), permit easy reversal of actions (mengijinkan
pembalikan aksi dengan mudah), support internal locus of control (mendukung
pengguna menguasai sistem), dan reduce short-term memory load (mengurangi beban
jangka pendek pada pengguna).
b. Teori waktu respon
Waktu respon dalam sistem komputer menurut (Scheiderman, p352) adalah
jumlah detik dari saat pengguna program memulai aktifitas sampai menampilkan
hasilnya di layar atau printer. Beberapa pedoman yang disarankan: pemakai lebih
menyukai waktu respon yang pendek, waktu respon yang panjang mengganggu, waktu
respon yang pendek menyebabkan waktu pengguna berpikir lebih pendek, waktu respon
harus sesuai denga tugasnya, dan pemakai harus diberi tahu mengenai penundaan yang
panjang.