BAB 2
TINJAUAN PUSTAKA
2.1 Landasan Teori
Teori umum merupakan analisis hubungan antara fakta ya
satu dengan fakta
yang lain pada sekumpulan fakta yang bersifat universal atau menyeluruh
2.1.1 Sinyal Analog dan Sinyal Digital
Secara umum, sinyal dapat didefinisikan suatu besaran fisis yang
merupakan sebuah fungsi waktu, ruangan dan beberapa variable(Stoneytiti.2010).
Sinyal adalah kuantitas terstruktur yang rentang waktunya bervariasi. Sebuah
sinyal dapat din yatakan sebagai fungsi dari waktu dan frekuensi. Secara umum
sinyal terbagi ke dalam 2 jenis yaitu sinyal analog d an sinyal digital menurut
Menurut Rec ITU - T G.701(International Telecomunication Union.1993) :
1. Sinyal analog adalah suatu sinyal dimana salah satu besaran
karakteristiknya mengikuti secara kontinyu perubahan dari besaran fisik
lainnya yang melambangkan informasi, secara fisik sinyal an alog berarti
selalu mempunyai nilai di sepanjang waktu. Karakteristik yang dimiliki
oleh sin yal analog antara lain: Amplitudo, frekuensi dan fasenya.
2. Sinyal digital adalah sebuah sinyal diskrit dimana informasinya
dilambangkan oleh sejumlah deretan sinyal diskrit yang telah ditentukan
jumlahnya.
Sin yal digital merupakan hasil teknologi yang dapat mengubah signal
menjadi kombinasi urutan bilangan 0 dan 1 (juga dengan biner), sehin gga tidak
mudah terpengaruh oleh noise, proses informasinya pun mudah, cepat dan akurat,
tetapi transmisi dengan sinyal digital hanya mencapai jarak jangkau pengiriman
data yang relatif dekat. Biasan ya sinyal ini juga dikenal dengan sinyal diskret.
Sin yal yang mempunyai dua keadaan ini biasa disebut dengan bit. Bit merupakan
istilah khas pada sinyal digital. Sebuah bit dapat berupa nol (0) atau satu (1).
Kemungkinan nilai untuk
|
sebuah bit adalah 2 buah (21). Kemun gkinan nilai untuk 2 bit adalah sebanyak 4
(22),
berupa 00, 01, 10, dan 11. Secara umum, jumlah kemungkinan nilai yang
terbentuk oleh kombinasi n bit adalah sebesar 2n b uah.
Sistem digital merupakan bentuk sampling dari sitem analog. digital pada
dasarnya di kodekan dalam bentuk biner atau Hexa. besarn ya nilai suatu sistem
digital dibatasi oleh lebarn ya / jumlah bit (bandwidth). jumlah bit juga sangat
mempengaruhi nilai akurasi sistem digital.
Sinyal digital ini memiliki berbagai keistimewaan yang unik yang tid ak
dapat ditemukan pada teknologi an alog yaitu :
1. Mampu mengirimkan informasi dengan kecepatan cahaya yang dapat
membuat informasi dapat dikirim dengan kecepatan tinggi.
2. Penggunaan yang berulang ulang terhadap informasi tidak
mempengaruhi kualitas dan kuantitas informsi itu sendiri.
3. Informasi dapat den gan mudah diproses dan dimodifikasi ke dalam
berbagai b entuk.
4. Dapat memproses informasi dalam jumlah yang sangat besar dan
mengirimnya secara interaktif.
Sebagian besar sinyal-sinyal yang ditemukan dalam sains dan teknologi
adalah analog(Yarlagadda,Rao.2010, p5). Yaitu, sinyal-sinyal yang merupakan
fungsi dari suatu variab el kontinu, seperti waktu atau ruan g, dan yang biasanya
mengambil nilai-nilai dalam interval yang kontinu. Sinyal-sin yal seperti itu dapat
diproses secara langsung dengan sistem analog yang tepat atau pengganda
frekuensi yang bermaksud mengubah karakteristikn ya atau mengambil beberapa
informasi yang diinginkan. Itu artinya sinyal telah diproses secara langsung dalam
bentuk analognya, dengan sinyal masukan maupun keluarann ya adalah sinyal
analog.
Proses ini diilustrasikan pada gambar berikut :
|
![]() Gambar 2.1 Sistem Proses Sinyal Analog
(Yarlagadda,Rao.2010, p 5)
Pemrosesan sinyal digital men yediakan suatu metode altern atif untuk
pemrosesan sinyal analog, seperti yang diilustrasikan pada gambar berikut :
Gambar 2.2 Sistem Proses Sinyal Digital
(Yarlagadda,Rao.2010, p6)
Untuk melakukan pemrosesan sinyal digital, diperlukan suatu interface
yang dinamakan pengkonversi sinyal analog menjadi sinyal digital (A/D).
Keluaran pengkonversi A/D adalah sinyal digital yang cocok dengan masukan
terhadap prosesor digital. Untuk pemakaian dengan keluaran digital dari prosesor
sin yal digital akan disampaikan kepada pemakai dalam bentuk analog.
Untuk itu, diperlukan sebuah interface lain untuk mengubah sinyal digital
menjadi sinyal analog, yan g
dinamakan dengan pengkonversi sinyal digital
menjadi sinyal analog (D/A). Namun pada beberapa aplikasi, pengkonversi D/A
tidak diperlukan, dikarenakan aplikasi tersebut hanya melakukan analisis sin yal
|
dengan informasi yang ingin disampaikan dalam bentuk digital. Pro gram aplikasi
yang diteliti oleh penulis merupakan salah satu aplikasinya.
2.1.2 File Audio Wave
File Wave adalah format sebuah file untuk menyimpan audio digital yang
dibuat oleh Microsoft dan menjadi standar dari format file audio komputer untuk
segala sesuatu mulai dari suara sistem dan permainan, hin gga format file untuk
CD audio. File Wave dapat diidentifikasi dengan nama file berekstension WAV
(.wav).(Bosi,Marina.201 4) File Wave merupakan format umum yang paling
sederhan a untuk menyimpan data sinyal audio.
File Wave terdiri dari 3 chunk (potongan) informasi yaitu :
1. RIFF chunk yang men gidentifikasikan bahwa file tersebut adalah file
Wave.
2. Format chunk yang berisi format dari informasi file suara seperti
jumlah channel, sample r ate, resolusi..
3. Data chunk yang men unjukkan ukuran dari informasi file suara dan di
dalamnya terdapat kump ulan data.
Sebuah file RIFF dimulai dengan urutan poton gan. Sebuah file WAVE
seringkali han ya terdiri file RIFF den gan potongan sebuah WAVE yang terdiri
dari dua sub potongan -a fmt merupakan potongan untuk menentukan format
data dan poton gan yang berisi data sampel yang sebenarnya(Truesdell,Cliff.2007
p162).
Formulir ini disebut bentuk Canocinal, berikut adalah bentuk dari
Canonical WAVE file format :
|
![]() Gambar 2.3 The Canonical WAVE file format
(Truesdell,Cliff.2007 p163)
2.1.3 Transformasi Diskrit Fourier
Transformasi Fourier, yang ditemukan oleh Jean Baptiste Joseph Fou rier
pada tahun 1807, sering digunakan untuk mentransformasikan sebuah sinyal
domain waktu yang bersifat kontinu menjadi sinyal domain
frekuensi(Nyeon,Do.2010,p 41). Transformasi Fourier merupakan sebuah
transformasi integral yang menyatakan ulang sebuah fungsi ke dalam bentuk
fungsi berbasis sinus, yaitu sebagai sebuah penjumlahan ataupun integral dari
fungsi sinus yang dikalikan dengan suatu koefisien
|
![]() Transformasi kontinu Fourier menggambarkan spektrum dari sebuah
sinyal waktu non-periodik yang bersifat kontinu(Ronald,Bracewell.2004).
Transformasi kontinu Fourier X ( f ) dari sebu ah fungsi waktu bersifat kontinu
x(t) dapat ditulis sebagai berikut :
(1)
Transformasi kontinu Fourier merupakan sebuah metode yang sangat
berguna untuk menentukan komponen frekuensi dari sebuah sinyal waktu,
menentukan distribusi momentum dari partikel, dan untuk berbagai aplikasi
lainnya. Transformasi kontinu Fourier sebetulnya merupakan dekomposisi dari
sebuah fungsi menjadi bentuk fungsi berbasis sinus, yang biasanya diekspresikan
sebagai eksponensial yang rumit.
Oleh kar ena untuk mengerjakan transformasi kontinu Fourier diperlukan
kalkulus untuk menghitung integral yan g ada, di mana komputer dapat
menampilkan transformasi Fourier berupa fungsi-fungsi yang diskrit, membuat
Joseph Fourier menciptakan transformasi diskrit Fourier dengan mengganti
fungsi integral menjadi fungsi penjumlahan yan g terbatas.
Transformasi diskrit Fourier (DFT) atau yang sering disebut seb agai
transformasi Fourier terbatas, adalah sebuah transformasi Fourier yang seringkali
digunak an dalam pemrosesan sinyal dan bidang-bidang yang berkaitan dengan
analisis frekuensi yang terkandung di dalam sebu ah sinyal, untuk menyelesaikan
persamaan diferensial parsial, dan untuk operasi seperti konvolusi.
DFT diperkenalkan sebagai aproksimasi metode numerik untuk
mengerjakan fun gsi tr ansformasi Fou rier(Orion,Julius.2007,p 69). DFT X (m)
dari sebuah sinyal waktu yang diskrit x(n) dapat ditulis sebagai berikut :
(2)
Dengan fungsi penjumlahan yang terbatas, tidak dijumpai kesulitan
dengan fungsi yang tak terbatas bersifat kontinu. Dalam bid ang proses sinyal
|
![]() digital, sin yal dan spektra diproses hanya dalam bentuk sampel, sehingga DFT
adalah sesuatu yan g benar-benar dipakai untuk memrosesn ya. Implementasi dari
DFT dapat menggunakan transformasi Fourier cepat atau fast Fourier transform.
DFT merupakan metode yang lebih relevan untuk komputasional serta
lebih sederhana secara matematika dibandingkan dengan tra
ormasi Fourier.
2.1.4 Fast F ourier Transform
Walaupun DFT adalah prosedur matematika yang paling tepat untuk
menentukan isi frekuen si dari berbasis-waktu, namun penggunaann ya tidak
efisien(Ronald,Bracewell.2004). Ketika jumlah cuplikan dalam DFT bertambah,
maka perhitungannya akan bertambah jauh lebih ban yakPada tahun 1965,
ilmuwan Cooley dan Tukey menciptakan suatu algoritma yang sangat efisien
dalam mengimplementasikan DFT. Algoritma itu dikenal dengan nama fast
Fourier transform (FFT). Dalam perkembangannya, ada berbagai macam
algoritma yang dikembangkan untuk FFT ini, namun yang akan dipakai adalah
algoritma FFT radix-2(Nyeon,Do.2010,p 40).
Algoritma FFT radix-2 sangat efisien ketika menghitung DFT dengan
batasan adalah ukuran dari DFT haruslah dalam bentuk perpangkatan dari 2 (N =
2k). Jumlah dari perhitungan yang dibutuhkan untuk memproses FFT sejumlah
N-titik adalah
Dari persamaan pada N-titik pada DFT, yaitu :
(3)
FFT memisahkan input data x(n) menjadi dua bagian, yaitu elemen ganjil
dan elemen genap, sehingga persamaan 3 berubah menjadi :
(4
)
|
![]() Dengan mengeluarkan fase sudut yang konstan dari penjumlahan tersebut :
(5)
Persamaan berikut disederhanakan dengan menetapkan notasi baku, yaitu
sehingga persamaan 5 berubah menjadi :
(6)
Karena
kita bisa menggantikan dengan
sehingga persamaan menjadi :
(7)
Sekaran g kita mempunyai 2 buah penjumlahan N / 2 yang akan
mengh asilkan N-titik DFT. Dengan menggantikan nilai m pada persamaan 7
dengan m+ N / 2 , maka didapat :
(8)
Melihat hubungan :
(9)
Untuk semua n bilangan bulat, maka faktor yan g disebut dengan twiddle
factor di depan penjumlahan dapat disederhan akan menjadi :
(10)
Dengan menggunak an persamaan 2-11 dan 2-12, maka nilai X (m+ N / 2)
pada persamaan 8 berubah menjadi :
|
![]() (11)
Sehingga di dapat 2 persamaan baru, yaitu :
(12)
dan
(13)
Dengan hanya merubah tanda pada twiddle factor maka kita mendapatkan
2 buah persamaan, yaitu X (m) dan X (m+ N / 2) . Sehingga kita hanya
membutuhkan m sebanyak N / 2 mulai dari 0 hingga (N / 2) -1 untuk
mendapatkan semua nilai outputnya. Dengan mengambil contoh kasus
N=8(Hidayat,Risanuri.2011).
Dengan x [n] adalah fungsi waktu dalam bentuk d iskret, dan X[k] adalah
transformasi fouriernya. Dan n = 0 1 2 .. N-1, serta k = 0 1 2 .. N-1. Persamaan
(1) jika dijabarkan secara detail akan membentuk sebuah persamaan matriks
seperti berikut ini,
(14)
Gambar 2.4 adalah bentuk diagram DFT dengan N=8. Anggap b ahwa WN
0 = e0 = 1, dan perkalian dengan angka 1 tidak perlu dilakukan. Dengan N=8
jumlah perkalian dan penjumlahan DFT murni berturut-turut adalah 56 d an 56.
Di dalam berbagai buku tentang DFT dikatakan jumlah perkalian sama d engan
|
![]() N2. Namun jumlah itu dengan menyertakan perkalian dengan WN 0 (=1). Di sini
perkalian dengan WN 0 dianggap tidak perlu (tidak dilakukan), sehingga jumlah
perkaliann ya adalah N2-N. Dari diagram dan/atau persamaan matriks, tampak
pula bahwa jumlah penjumlahannya adalah juga N2-N. Untuk mempermudah
penjelasan pada Ga mbar 2.4
Gambar 2.4 Penjelasan untuk persamaan 14
(Nyeon,Do.2010,p 42)
Dengan membagi menjadi 2 kelompok , yaitu kelompok genap dan
kelompok ganjil den gan menggun akan persamaan 7 , dan dijabarkan menjadi :
(15)
|
![]() Catatan bahwa pada perkalian WNk dengan (W8k) adalah sebuah perkalian
array/vektor. Perkalian array A dan B dengan perintah A.*B adalah perkalian
elemen-demi elemen dari vektor-vektor A dan B, menghasilkan vector d engan
ukuran yang sama dengan vektor A atau B (seperti operasi penjumlahan). Vektor
A dan B harus mempun yai ukuran yang sama, kecuali salah satunya adalah
bilangan scalar. Dapat dibuktikan bahwa, jika n dan k adalah integer (bilangan
bulat), maka
Sehingga persamaan 15 dapat disederhanakan menjadi :
(16)
Lihat matriks yang berisi W. Empat baris di bawah adalah sama dengan
empat baris yang atas. Persamaan 16 jika digambarkan dalam bentuk
diagram adalah seperti Ga mbar 2.5. Disini jumlah perkalian dan
penjumlahan berturut-turut adalah (4x4x 2)=32 dan (3x 4x 2 + 8)=32.
|
![]() Gambar 2.5 Implementasi FFT dari 8-titik DFT menggunakan dua buah 4-titik DFT
dan empat buah 2-titik DFT menggunakan persamaan 16.
(Nyeon,Do.2010,p 46)
Telah kita ketahui dari persamaan 12 bahwa p ersamaan Transformasi
Fourier terbagi menjadi dua kelompok, yaitu kelompok genap dan k elompok
ganjil. Anggap bahwa fungsi genap x[2r] menjadi fungsi baru, katakanlah xe[n],
dan fungsi ganjil x[2r+1] menjadi fungsi baru xo[n]. Dengan penjabaran seperti
berikut,
(17)
(18)
(19)
|
![]() Kelompok genap dan kelompok ganjil masing masing tersebut
membentuk persamaan yang mirip seperti persamaan 12. Sehingga masing
masing kelompok tersebut dapat di dekomposisi seperti langkah
sebelu mnya.
Dengan penjabaran pada persamaan 20, maka persamaan Tr ansformasi Fourier
dapat dikembangkan menjadi seperti persamaan 21.
(20)
(21)
(22)
Dari definisi W N, maka WN0 = e-
j2 0/ N =1 dan WNN/2 = e- 2pN /
-1
sehingga bagian 2-titik DFT ditunjukkan oleh Gambar 2.6
|
![]() Gambar 2.6 Sebuah titik titik DFT
(Nyeon,Do.2010,p 50)
(23)
Dekomposisi seperti langkah di atas terus dilakukan hingga unit
terkecil DFT untung panjang-2 terbentuk. Sebuah DFT panjang 2
membentuk diagram kupu-kupu seperti terlihat pada Gambar 2.6
Gambar diagram dapat dilihat pada Gambar 2.7. Terlihat bahwa
tingkat kerumitan dalam hal jumlah perkalian dan penjumlahan dapat
dikurangi. Di sini jumlah perkalian dan penjumlahan berturut-turut adalah
(2x2x2x2 + 4x2)=24 dan (2x2x2 + 4x2 +8)=24. Inilah dekomposisi
terkecil DFT untuk N=8.
|
![]() Gambar 2.7 Dekomposisi terkecil DFT, N=8
(Nyeon,Do.2010,p 57)
Tabel 2.1 menunjukkan perbandingan jumlah operasi perkalian
dan penjumlahan antara DFT langsung dengan setelah melalui
dekomposisi menjadi FFT. Terdapat selisih penghematan operasi
perkalian/penjumlahan yang signifikan pada FFT, sehingga operasi ini
jauh lebih popular di banding DFT secara langsung.
Tabel 2.1 Perbandingan jumlah perkalian penjumlahan DFT dan FFT
|
![]() 2.1.5 Software Development Life Cycle
Menurut Turban, et. al., Software Development Life Cycle (SDLC) adalah
keran gka terstruktur yang terdiri dari beberapa proses yang berurutan vang
diperlukan untuk membangun suatu sistem informasi(Turban,Efraim.1998).
Pendekatan waterfall digunakan untuk menggambarkan SDLC. SDLC dirancang
dengan tujuan untuk membangun alur pemrograman yang terstruktur dan untuk
membantu manajemen proyek dalam perhitungan estim asi waktu dan sumber
yang dibutuhkan suatu proyek
Menurut (Roger S Pressman, 2010, p79) langkah-langkah
Waterfall, sebagai berikut :
1. Feasibility
Mempelajari konsep sistem d
permasalahan yang hendak
diselesaikan. apakah sistem baru terse
realistis dalam
masalah pembiayaan, waktu, se
perbedaan dengan sistem
yang ada sekaran g.
Gambar 2.8 System development life cycle
(Pressman.2010, p 80)
2. Analysis System
Tahap yang menganalisis masalah yang perlu diselesaikan.
Tahap ini mendefenisikan permasalahan dan
mengidentifikasik an permasalahan , informasi informasi
yang dip erlukan dan penyeb ab serta menspesifikasikan solusi.
|
3. Design
Desain fokus pada program apa yan g akan dibutuhkan
meliputi :
Desain Tingkat Rendah
Desain Antarmuka
Desain Data
4. Implementation
Fase penterjemahkan berbagai desain yang telah dirancang
menjadi sebuah kode. Kode tersebut ditulis dalam bentuk
bahasa pemrograman seperti C++, Pascal, Java tergantung
dari kebutuhan yang sesuai untuk menyelesaikan masalah
yang timbul pada saat menganalisis di tahap sistem analisis.
5. Test
Tahap yan g digunakan untuk memeriksa apakah
pemrograman telah menghasilkan hasil yang diinginkan dan
diharapkan atas situasi tertentu. Testing dilakukan untuk
mendeteksi adanya kesalahan pada sistem.
6. Maintain
Tahap ini dilakukan untuk memelihara sistem ba
yang akan
dioperasikan dalam suatu periode waktu.
2.1.6 Bahasa Pemrograman
Bahasa Pemrograman adalah bahasa khusus ya
digunakan
dalam suatu komputer yan g berisikan perintah
perintah untuk
menyelesaikan suatu masalah. Bahasa Pemrogram
yang sudah jadi
bisa disebukan suatu praogam atau software unt
mengerjakan suatu
perintah perintah untuk mendapatkan suatu ha
atau output yang
diinginkan(Friedman,Daniel.2008,p 12).
2.1.7 Object Oriented Programming
|
OOP (object oriented programing) adalah cara berfikir serta berlogika
dalam menghadapi masalah masalah dalam sistem yang coba diatasi dimana
objek adalah entitas tunggal yang memiliki kombinasi struktur data dan fungsi
tertentu(Marrer,Gary.2009, p30). OOP ini d apat diterapkan pada perancangan
sistem secara umum menyangkut perangkat lunak (software), p erangkat keras
(hardware), serta sistem informasi (information system).
Menurut Gary Marrer(2009,p 31) Ada beberapa konsep yang terd apat
dalam OOP ini diantaranya adalah sebagai b erikut :
a. Objek
Objek adalah orang, tempat, benda, kejadian atau konsep-konsep
yang ada didunia nyata yang penting bagi aplikasi.
b. Kelas (class)
Kelas adalah kumpulan/himpunan objek dengan atribut yang mirip
misalkan dua anak laki-laki kembar mereka memiliki nama yan g
berbeda misalkan afrin dan andi ini menunjukan bahwa mereka objek
yang berbeda tetapi memiliki kelas yang sama yaitu anak kembar.
c. Atribut
Atribut adalah data yang dimiliki objek dalam kelas. Untuk lebih
jelasnya dapat dilihat pada gambar berikut ini :
2.1.8 User Interface Design
User Interface (UI) Design adalah perancangan tampilan antarmuka yan g
bersifat visual dari suatu aplikasi agar aplikasi tersebut dapat berinteraksi dengan
baik dengan
user dan dapat digunakan dengan
maksimal(Shneiderman,Ben.2010).
Tujuan dari User Interface Design adalah merancang interface yang
efektif .Efektif disini diartikan siap digunakan,dan hasil yang didap at sesuai
kebutuhan.
Proses perancangan UI harus mengandung arti dari unsur-unsur visual
yang seimbang, yang dapat memodelkan inti dari operasi aplikasi yang akan
|
dijalankan. Selain itu p erancangan UI yang baik juga harus dapat membuat
aplikasi hingga mudah digunakan d an dapat disesuaikan dengan kebutuhan
masing-masing user(Wiley,John,2011,p 35).
Dalam perancangan UI, terdapat delapan aturan emas yang mendukung
sebuah perancangan UI yang baik. Delapan aturan emas tersebut antara lain:
1. Usaha untuk konsistensi dalam tampilan.
Konsistensi dilakukan pada urutan tindakan, perintah, dan
istilah yang digunakan pada prompt, menu, serta layar
bantuan.
2. Memungkinkan user yang rutin untuk menggunakan shortcut.
Ada kebutuhan dari pengguna yang sudah ahli untuk
meningkatkan kecepatan interaksi, sehingga diperlukan
singkatan, tombol fungsi, perintah tersembunyi, dan fasilitas
makro
3. Memberikan umpan balik yang informatif.
Untuk setiap tindakan o perator, sebaiknya disertakan suatu
sistem umpan balik. Untuk tindakan yang sering dilakukan
dan tidak terlalu penting, dapat diberikan umpan balik yang
sederhana. Tetapi ketika tindakan merupakan hal yang
penting, maka umpan balik sebaikn ya lebih substansial.
Misalnya muncul suatu suara ketika salah menekan tombol
pada waktu input data atau muncul pesan kesalahannya.
4. Memunculkan dialog box pada penutupan.
Urutan tindak an sebaiknya dio rganisir dalam suatu
kelompok dengan bagian awal, tengah, dan akhir. Umpan
balik yan g informatif akan memberikan indikasi bahwa
cara yang dilakukan sudah benar dan dapat
mempersiapkan kelompok tindakan berikutnya.
5. Mempunyai error-handling sederhana.
Sedapat mungkin sistem dirancang sehingga pengguna tidak
dapat melakukan kesalahan fatal. Jika kesalahan terjadi,
|
sistem dapat mendeteksi kesalahan dengan cepat dan
memberikan mekanisme yang sedeh ana dan mudah dipahami
untuk penanganan kesalahan.
6. Mudah kembali ke tindakan sebelumnya.
Hal ini dapat mengurangi kekuatiran pengguna karena
pengguna mengetahui kesalahan yang dilakukan dapat
dibatalkan, sehingga pengguna tidak takut untuk
mengeksplorasi pilihan-pilihan lain yang b elum biasa
digunak an.
7. Mendukung pusat kendali internal
Pengguna ingin menjadi pengontrol
sistem dan sistem akan
merespon tindakan yang dilakukan pengguna daripada
pengguna merasa bahwa sistem mengontrol pengguna.
Sebaiknya sistem dirancang sedemikan rupa sehingga
pengguna menjadi inisiator daripad a responden.
8. Mengurangi penggunaan memori jangk a pendek.
Keterbatasan ingatan manusia membutuhkan tampilan yan g
sederhana atau ban yak tampilan halaman yang sebaiknya
disatukan, serta diberikan cukup waktu pelatihan untuk kode,
mnemonic, dan urutan tindakan
2.1.9 Android
Android merupakan operasi sistem pada telepon gen ggam yan g
dikembangk an oleh google(Thompson.2008). Android merupakan open
source(source code dapat dikembangkan oleh orang lain bersifat terbuka)
dan berbasis kepada open source project seperti Linux, WebKit, SQLite
dan Freetype. Android menggunakan Java dan aplikasi framework berbasis
Java. Android merupakan sistem operasi smartphone pertama dengan
platform mobile yan g lengkap.
Len gk ap (Complete Platform)
|
Developer (pengembang) dapat melakukan pendekatan yang
komprehensif pad a saat melakukan pengembangan pada platform
android, selain sistem operasi yang aman android juga
menyediakan tools dalam membangun dan mengembangkan
software berbasis android sehingga memung peluang untuk
mengembangkan aplikasi.
Terbuka (Open Source Platform)
Developer (pengembang) dapat mengemban gkan aplikasi secara
bebas dan gratis karena sudah disediakan melalui open source
license dan menggunakan Kernel Linux 2.6.
Bebas (Free Platform)
Developer (pengembang) dapat mengembangkan aplikasi pada
android secara bebas tanpa ada biaya royalty, biaya kontrak, serta
biaya pengujian. Aplikasi yan g ada juga dapat langsung di
distribusikan dan diperdagangkan melalui bentuk apapun.
Android SDK(Software Development Kit) adalah tools API(Application
Programming Interface) yang digunakan dalam mengembangkan aplikasi berbasis
android, dengan menggunakan bahasa pemograman Java(Hoog,Andrew.2011,p
71). Berikut adalah beberapa fitur dalam Android :
Intergrated Browser d idasarkan pada Engine Open Source
WebKit.
Grafis lebih optimal karena didukung oleh beberapa libraries
seperti grafis 2D dan gr afis 3D berdasarkan spesifikasi OpenGL
ES 1.0.
Framework Aplikasi yang mendukung pergantian komponen.
Lingkungan Development yang lengkap dan kaya, termasuk
diantaranya perangkat emulator, tools untuk debugging, profil dan
kinerja memori, serta plugin untuk Eclipse IDE.
Media Support yang mendukung audio, video dan picture seperti
MPEG4, H.26, MP3, AAC, AMR, KPG, PNG, GIF.
|
2.1.10 MySQL
MySQL merupakan salah satu sistem database yang sangat handal karena
menggun akan sistem SQL. Pada awalnya SQL berfungsi sebagai bahasa
penghubung antara program database dengan bahasa pemrograman yang kita
gunakan. Dengan adanya SQL maka para pemrogram jaringan dan aplikasi tidak
mengalami kesulitan sama sekali di dalam menghubungkan aplikasi yang mereka
buat. MySQL merupakan sistem manajemen database, relasional sistem database
dan software open sour ce(Tahaghogi,Seyed.2007).
2.1.11 SQLite
Menurut Mike Owens(2006, p73)SQLite merupakan sebuah sistem
manajemen basis data relasional yang bersifat ACID-compliant dan memiliki
ukuran pustaka kode yang relatif kecil, ditulis dalam bahasa C.
SQLite merupak an proyek yang bersifat public domain. Tidakseperti pada
paradigma client-server umumnya, Inti SQLite bukanlah sebu ah sistem yan g
mandiri yang berkomunikasi dengan sebuah program, melainkan sebagai bagian
integral dari sebuah program secara keseluruhan. Sehingga protokol ko munikasi
utama yang digunakan adalah melalui pemanggilan API secara langsung melalui
bahasa pemrograman. Mekanisme seperti ini tentunya membawa keuntungan
karena dap at mereduksi overhead, latency times dan secara keseluruhan lebih
sederhana. Seluruh elemen basisdata(d efinisi data, tabel, indeks dan data)
disimpan sebagai sebuah file. Kesederhanaan dari sisi disain tersebut bisa diraih
dengan cara mengunci keseluruhan file basis data pada saat sebuah transaksi
dimulai.
2.1.12 Data
Turban et. al. (2003, p15) mengemukakan bahwa data
merupakan fakta-fakta yang belum diolah atau gamb aran-gambaran
lebih lanjut dari benda-
benda, kejadian-kejadian, kegiatan-kegiatan
pdiklasifikasikan, tetapi tidak disusun untuk menyampaikan arti
khusus lainnya.
|
Data ad alah fakta-fakta atau hasil observasi mengenai
kejadian atau transaksi bisnis yang masih belum diolah (OBrien,
2003, p13).
Adapun data-d ata yang digunakan dalam MySQL berdasarkan
Paul DuBois(2008,p201), SQL Server mempunyai tipe data sebagai
berikut:
1. Char digunakan untuk men yimpan panjang string yang
telah fixed ( dapat mengandung angka, huruf, dan karakter
spesial dengan besar memori yang digunakan tidak dapat
diubah setalah di tentukan pertama kali, dapat menyimpan
sampai 255 karakter).
2. Varchar digunakan untuk men yimpan sejumlah string(
dapat mengandung angka, huruf, dan karakter spesial
dengan besar memori yang digunakan lebih fleksibel
sesuai dengan apa yang diinput,dapat menyimpan sampai
255 karakter).
3. Text untuk menyimpan string dengan panjang
maksimumny mencapai 65,535 karakter.
4. Set dapat men yimpan 64 daftar item dan menyimpan lebih
dari 1 pilihan.
5. Datetime dapat menyimpan tanggal secara otomatis
dengan format mm/dd/yy dan menggunakan memori 8
bytes per transaksi.
6. Int men yimpan seluruh angka dari -2,147,483,648 sampai
2,147,483,647 dan menggunakan memori 4 bytes per
panjangn ya.
7. Float dapat menyimpan data angka -1.79E + 308 sampai
1.79E + 308 dengan menggunkan memori 4-8 bytes.
8. Money dapat menyimpan data keuangan Monetary data
dari -922,337,203,685,477.5808 sampai
|
922,337,203,685,477.5807 dengan men ggunak
memori
8 bytes
2.1.13 Unified Modelling Language
2.1.13.1 Use Case Diagram
Fungsi dari use case adalah untuk menggambarkan dan
mengidentifikasi sebuah peristiwa bisnis, yang menginisiasi mereka dan
bagaimana sistem mereka merespon. Use case menjelaskan "apa" yang
sistem dapat lakukan, bukan "bagaimana" sistem dapat
melakukan( Fowler,Martin.2004,p 102).
Use case diagram merupakan diagram yan g menunjukan sistem
sebagai satu set dari use cases, actor, dan hubungan mereka. Use case
diagram merupak an merupakan inti dalam membuat model perilaku
sistem, subsistem, atau kelas.
Use Case Diagram umumnya terdiri dari :
1. Use Case
2. Aktor
3. Keter gantungan, generalisasi, dan hubungan asosiasi
|
![]() Gambar 2.9 Use Case Diagram
(Fowler,Martin.2004,p 103)
2.1.13.2 Class Diagram
Class Diagram merupakan diagram yang menunjukan satu set
objek (kelas, interface, atau kolaborasi) dan hubungan mereka satu
dengan yang lain(Fowler,Martin.2004,p 35). Class Diagram biasa
digunakan untuk menunjukan kelas pada suatu sistem dan hubungan
mereka, tetapi tidak menjelaskan fungsi bagaimana kelas berinteraksi.
Class Diagram adalah diagram khusus yang membagikan atribut yang
sama seperti diagram yang lain.
Class Diagram umumnya terdiri dari :
1. Class
2. Interface
3. Kolaborasi
4. Ketergantungan, generalisasi, dan asosiasi hubungan
|
![]() Class Diagram menunjukan struktur dan deskripsi kelas, paket,
objek dan hubungan antar mereka seperti warisan dan asosiasi.
Class memiliki tiga bidang utama yaitu nama, atribut dan metode.
Sifat yang dimiliki atribut dan metode :
1. Private : Dapat dipanggil dari kelas yan g
memiliki atribut ini.
2. Protected : Dapat dipanggil dari kelas yan g
memiliki atribut ini dan warisan nya.
3. Public : Dapat dipanggila dari setiap kelas.
Hubungan antar Class terdiri dari :
1. Asosiasi : Hubungan statis antar kelas. Hal ini umumn ya
menunjukan kelas yang memiliki atribut kelas lain, atau kelas
yang harus tahu keberadaan kelas lain. Navigasi panah
menunjukan arah permintaan antar kelas. Ada 2 jenis asosiasi
:
a. Bi-directional, asosiasi yang menunjukan kedua kelas
mengetahui kejadian masing masing. Asosiasi ini
ditunjukan dengan garis utuh antara dua kelas tersebut.
Gambar 2.10 Bi-directional Asosiasi
(Fowler,Martin.2004,p 41).
b. Uni-directional, asosiasi yang menunjukan hubu ngan antara dua
buah kelas di mana hanya satu kelas yang tahu kejadian kelas
|
![]() yang lain. Asosiasi ini ditunjukan dengan garis utuh dengan panah
terbuka menunjuk ke kelas yang diketahui.
Ga mbar 2.11 Uni-directional Asoiasi
(Fowler,Martin.2004,p 42)
2. Aggregation : Sebuah hubungan yang menyatakan bagian (terdiri
dari..). Ada agregasi dasar di mana an ak dari sebuah k elas masih
dapat berdiri sendiri tanpa ada kelas induk. Ada juga komposisi
agregasi dimana anak d ari sebuah kelas hanya bergantung dengan
kelas induk.
3. Generalization : Sebuah hubungan dimana beberapa kelas yang
memiliki atribut yang sama dapat dikelompokan menjadi sebuah
entitas yang disebut supertype. Kemudian properti dan metode dapat
diwariskan ke kelas kelas lain yang disebut subtype.
4. Multiplicity : Sebuah mimimum dan maksimum ukuran dari suatu
objek class dalam suatu event.
|
![]() Gambar 2.12 Class Diagram
(Fowler,Martin.2004,p 3 6).
2.1.13.3 Activity Diagram
Activity diagram adalah sebuah flowchart yang menunjukan alur
proses bisnis, langkah
langkah dari use case, atau logika dari sebuah
objek(Fowler,Martin.2004,p 117). Activity diagram juga digunakan untuk
menunjukan tindakan yang akan dijalankan ketika proses berjalan dan
hasil dari proses tersebut.
Activity diagram umumnya terdiri dari :
1.
Activity
state dan action
2. Transisi
3. Objek
|
![]() Gambar 2.13 Activity Diagram
(Fowler,Martin.2004,p 118)
2.1.13.4 Sequence Diagram
Sequence diagram adalah diagram yang menunjukan bagaimana
setiap objek berinteraksi dan menekankan pada urutan waktu yang
dikirim dan diterima(Fowler,Martin.2004,p 53). Sequence diagram
menunjukan skenario atau langkah langkah yan g telah dilakukan
sebagai respon dari sebuah event untuk menghasilkan output tertentu.
Diagram ini dimulai den gan hal hal ap a yang memicu, proses apa yang
terjadi dan output apa yang dihasilkan. Secara grafis, sequence diagram
adalah tabel yang menunjukan objek yang diatur pada sumbu X dan
pesan berdasarkan urutan waktu pada sumbu Y dengan bar vertikal yang
menunjukan jangka waktu sebuah proses.
|
![]() Gambar 2.14 Sequence Diagram
(Fowler,Martin.2004,p 5 4)
2.1.14 Smartphone
Smartphone adalah telep on genggam yang menyediakan fun gsi
fungsi dasar dari sebuah telepon genggam yaitu menelepon dan
mengirimkan pesan singkat, namun dapat ditambahkan fitur
fitur lain
dimana pada masa lalu fungsi fungsi tersebut hanya dapat ditemukan
pada komputer pribadi(Ilyas.Mohammad.2006,p 2 ).
Sebelum smartphone muncul, device komunikasi yang paling ada
dan paling popular adalah telepon genggam dan Personal Digital
Assistan(PDA). Telepon genggam sebelum er a globalisasi teknologi
dapat digun akan untuk menelepon dan mengirimkan pesan singkat,
sedangkan PDA memiliki fitur fitur yan g lebih canggih seperti
mengirim email, tersinkronasi dengan komputer dan melakukan
browsing. Seiring perkembangan waktu telepon genggam mulai
menambahkan fitur fitur yang ada pada PDA bahkan fitur fitur yang
|
![]() terdapat pada komputer, sehingga telepon genggam dapat disebut
smartphone.
Menurut Mohammad Ilyas(2006,p 3) berikut adalah fitur
fitur yang men yebabkan telepon gen ggam menjadi suatu device telepon
genggam yang disebut smartphone :
1. Sistem Operasi
Smartphone dibangun dengan sistem operasi yang lebih
kompleks disbanding dengan telepon genggam pada masa lalu dan
memungkinkan smartphone untuk menjalankan aplikasi yang lebih
kompleks dan membutuhkan sumber daya yang lebih besar.
2. Aplikasi
Aplikasi yang ada pada smartphone pada masa lalu hanya
dapat ditemui pada komputer pribadi ataupun PDA.
3. Akses Internet
Telepon genggam masa kini atau smartphone dapat
mengakses internet yang berkecepatan tinggi. Karena sebagian
besar smartphone sudah dilengkapi dengan fitur komunikasi
3G/4G.
4. Keyboard QWERTY
Tidak seperti telepon genggam masa lalu dimana huruf
huruf diurutkan secara alfabetik dan dikelompokan kedalam tombol
tombol nomor. Keyboard pada smartphone memiliki fitur seperti
keyboard komputer pada umumnya yang menggunakan sistem
QWERTY.
5. Pesan/Messaging
Seluruh telepon gen ggam dapat melakukan fitur ini yaitu
mengirimkan pesan singkat berupa teks. Perbedaan smartphone
dengan telepon genggam masa lalu, smartphone memiliki fitur yang
lebih canggih seperti mengirim pesan teks melalui sosial media dan
email.
|
![]() 2.1.15 Arduino
Arduino merupakan sebuah papan elektronik yan g
mengandun g mikrokontr oler ATmega328(sebuah keeping yang
secara fungsional bertin dak seperti sebuah computer). Alat ini
dapat dimanfaatkan untuk mewujudkan rangkaian elektronik
dari yang sederhana hingga kompleks (Kadir,Abdul.2013).
Pengendailan LED hingga pengontrolan robot dapat
diimplementasikan dengan menggunakan papan berukuran
relative kecil ini. Bahkan, den gan p enambahan komponen
tertentu, alat ini dap at digunakan untuk pemantauan jarak jauh
melalui internet seperti pengendalian alat alat dirumah.
Gambar 2.15 Arduino Uno
(Kadir,Abdul.2013, p 18)
2.2 Related Works
Berdasark an Jurnal DigitalJournal yang berjudul Siri iPhone 4s Voice app Talk
Naturaly I Understand reply(Cunningham,2011,p. 1) menyatakan aplikasi siri yan g
sudah memiliki Voice Controlling yaitu sebuah fitur dimana kita dap at mengontrol
|
![]() sebuah smartphone menggunak an media suara. Bukanlah sesuatu yang tidak mungkin
untuk mengembangkan konsep fitur Voice Controlling menggunak an smartphone untuk
membuat sebuah aplikasi Voice Recognition untuk rumah pintar.
Berdasarkan jurnal International Jounral of Computer Applications yang
berjudul Voice Recognition in Automobiles (Singh,2010,p. 1)menyatakan untuk
membuat sebuah mobil yang dikontrol menggunakan suara manusia merupakan sebuah
ide yang sangat inovatif. Dengan konsep Speech Recognition algoritma dan algoritma
itulah yang akan mengatur perintah dari pengguna. Konsep switching digunakan untuk
inisiasi awal,dimana menggunakan
sebuah remo te yang memiliki tombol,dimana bila
tombol tersebut ditekan dan Speech Recognition tersebut dimulai. Contoh setelah
pengguna menginkan jendela mobil untuk dibuka, system Speech Recognition akan
memproses untuk membuka jendela mobil, dengan demikian perintah lainnya yang
diinginkan pengguna akan dijalankan.
Dengan mengacu kepada jurnal tersebut dikatakan bahwa ide untuk pembuatan
aplikasi mobil pintar dengan menggukan teknologi Voice Recognition dengan konsep
Speech Recongition merupakan sebuah ide yang inovatif. Membuat aplikasi untuk
rumah pintar den gan menggunakan teknologi dan konsep yang sama meru pakan sebuah
ide yang inovatif .
Berdasarkan jurnal International Journal of Computer Applications yang
berjudul GSM-Bluetooth based Remote Monitoring and Control System with Automatic
Light Controller(Madan,2012,p. 1) menyatakan dalam beberapa tahun terakhir, home
automation(Pengaturan rumah otomatis), remote control, dan sistem yan g monitor telah
berkembang cepat dalam kemajuan teknologi. Di dalam jurnal tersebut mereka
menggunakan GSM (Global System Mobile) Bluetooth yang berbasis remote kontrol dan
monitoring sistem. Dengan sebuah sistem yan g design dengan sederhana dengan
penggunaan alat yang tidak membutuh energi yang besar dan bantuan Infrared sensor
untuk mengatur lampu, fan, dan alat lainnya. Metode yang digunakan
adalah dengan
menggunakan GSM yang berbasis kepada fitur SMS(Short Message Service) yang
dimilikinya. Modul Bluetooth dihubungkan dengan mikrokontoler chip utama. Modul
Bluetooth ini mengeliminasi penggunaan energi dengan cara berkomunikasi ke peralatan
dengan media Bluetooth dengan limit jarak beberapa meter. Sistem ini memberi tahu
|
pengguna berbagai kondisi yang abnormal seperti kenaikan suhu menggunakan fitur
SMS yang dimiliki GSM atau menggunakan modul Bluetooth untuk tersambung ke
smartphone pengguna dan dapat langsung ditindak lanjuti langsu
oleh
pengguna.
Dengan mengacu kepada jurnal ini bukanlah sesuatu yang tid
mungkin untuk
mengatur kerja suatu rumah secara otomatis(rumah pint
menggunakan smartphone
yang dimiliki pengguna.
|