2011-1-00602-mtif 2
-
Upload
christofel-jacobs -
Category
Documents
-
view
217 -
download
0
Transcript of 2011-1-00602-mtif 2
-
7/25/2019 2011-1-00602-mtif 2
1/35
BAB 2
LANDASAN TEORI
2.1 Pengertian Musik
Musik adalah bunyi yang diterima oleh individu dan berbeda-beda berdasarkan
sejarah, lokasi, budaya dan selera seseorang. Definisi sejati tentang musik juga
bermacam-macam:
Bunyi yang dianggap enak oleh pendengarnya.
egala bunyi yang dihasilkan secara sengaja oleh seseorang atau kumpulan
dan disajikan sebagai musik.
Beberapa orang menganggap musik tidak ber!ujud sama sekali. Musik menurut
"ristoteles mempunyai kemampuan mendamaikan hati yang gundah, mempunyai terapi
rekreatif dan menumbuhkan ji!a patriotisme.
2.2 Jenis-Jenis Musik
Berikut adalah daftar aliran#genre utama dalam musik. Masing-masing genre
terbagi lagi menjadi beberapa sub-genre. $engkategorian musik seperti ini, meskipun
terkadang merupakan hal yang subjektif, namun merupakan salah satu ilmu yang
dipelajari dan ditetapkan oleh para ahli musik dunia.
Dalam beberapa dasa!arsa terakhir, dunia musik mengalami banyak
perkembangan. Banyak jenis musik baru yang lahir dan berkembang. %ontohnya musik
triphop yang merupakan perpaduan antara beat-beat elektronik dengan musik pop yang
ringan dan enak didengar. %ontoh musisi yang mengusung jenis musik ini adalah &rou
&rou, neaker $imps dan 'amb. "da juga hip-hop rock yang diusung oleh 'inkin $ark.
-
7/25/2019 2011-1-00602-mtif 2
2/35
2
Belum lagi dance rock dan neo !ave rock yang kini sedang in. Banyak kelompok musik
baru yang berkibar dengan jenis musik ini, antara lain &ran( &erdinand, Bloc $arty, )he
*illers, )he Bravery dan masih banyak lagi.
Bahkan sekarang banyak pula grup musik yang mengusung lagu berbahasa
daerah dengan irama musik rock, ja(( dan blues. +rup musik yang memba!a aliran baru
ini di ndonesia sudah cukup banyak salah satunya adalah &unk de ava yang
mengusung lagu berbahasa a!a dalam musik rock.
Musik klasik
merupakan istilah luas yang biasanya mengacu pada musik yang dibuat di
atau berakar dari tradisi kesenian Barat, musik kristiani, dan musik orkestra,
mencakup periode dari sekitar abad ke- hingga abad ke-/0.
Musik rakyat#tradisional
Musik keagamaan
Blues
adalah sebuah aliran musik vokal dan instrumental yang berasal dari "merika
erikat.
Jazz
adalah aliran musik yang berasal dari "merika erikat pada a!al abad ke-/1
dengan akar-akar dari musik "frika dan 2ropa. Musik jazz banyak
menggunakan gitar, trombon, piano, terompet, dan saksofon. alah satu
elemen penting dalam ja(( adalah sinkopasi.
Country
-
7/25/2019 2011-1-00602-mtif 2
3/35
Rock
adalah salah satu aliran musik yang berirama keras.
2.3 Bentuk Penyi!anan Musik
Musik dari jaman ke jaman sangat digemari sehingga setiap jaman pun memiliki
gaya yang khas pada jamannya. Begitu juga bagaimana mendokumentasi atau
mengabadikannya Dahulu kita pernah mendengar : piringan hitam, kaset adalah salah
satu sarana untuk menyimpan dan musik tersebut berbentuk data analog.
Dengan berjalannya !aktu cara penyimpanannya sudah berbentuk digital,
seperti: .mp3, .ogg, dll. edangkan sarananya seperti: Compact Disc 4CD5, DVD, dll
2." MPEG-1 Layer 3
Mengacu pada perlindungan alamiah dari perusahaan yang mengembangkan
mp3, spesifikasi dari mp3 tidak dirincikan secara detil tentang proses encoding mereka
yang sebenarnya, proses tersebut tersajikan dalam pseudocode tingkat tinggi sehingga
perusahaan lain harus menghasilkan encoders buatan mereka sendiri. truktur untuk
mp3 encoder tersaji pada gambar /.0.
-
7/25/2019 2011-1-00602-mtif 2
4/35
#a$ar 2.1 MPEG-1 Layer 3 Encoder %ISO&IE' 1(()*
+ Su$er, Atra!3!/ 0
nput audio sampel dimasukkan ke dalam encoder dan proses pemetaan
menghasilkan sebuah filter dan sub-sample yang menggambarkan audio stream yang
masuk, yang disebut transformed sub-band samples, model psychoacoustic yang cocok
dipergunakan untuk menyajikan satu set data yang dapat digunakan untuk mengontrol
quantization dan codin. 67#2%, 089 mengusulkan agar mempergunakan estimasi
maskin threshold untuk mengontrolnya. $roses quantizer dan codin menghasilkan
satu set simbol coding dari sample input yang telah dipetakan. etelah tahap
pengelompokan frame kemudian mengumpulkan hasil encoding bitstream dari data ini,
dan menambahkan data yang diperlukan seperti kode koreksi kesalahan. $ada !"#$-%,
semakin bertambahnya layer, maka begitu juga tingkat kerumitan pada encoder juga
meningkat. &ayer 3 terbentuk dari layer-layer sebelumnya, dan termasuk fitur-fiturnya.
$ada layer 0, input dipetakan ke dalam 3/sub-bands dengan segmentasi yang pasti dari
data ke dalam blok-blok.
-
7/25/2019 2011-1-00602-mtif 2
5/35
Model psychoacoustic menentukan penyesuaian diri pada alokasi bit, dan
quantization dilaksanakan dengan menggunakan penghalang companding
4compression dan e'pandin5 dan formattin. &ayer / menggunakan codin tambahan
pada alokasi bit, faktor skala dan sampel, serta teknik pembuatanframeberbeda.&ayer 3
menambahkan peningkatan frekuensi resolusi dengan cara hibrida filterbank, sebuah
non-uniform quantizer, penyesuaian segmentasi dan entropy codin 4seperti ;uffman
Codin5 pada quantized data.
2.".1 SearaMPEG-1 Layer 3
Di a!al abad ke-0, matematika!an $erancis oseph &ourier menyusun
beberapa persamaan matematik untuk menggambarkan cara panas menyebar. $ersamaan
itu bisa dipergunakan untuk menggambarkan segala macam bentuk gelombang sebagai
urutan nomor, termasuk gelombang suara. Di tahun 1an, ?amaha, perusahaan ilmu elektronika epang, mempergunakan
rumusan matematika yang sama untuk merevolusionerkan industri musik dengan
memperkenalkan keyboard elektronik. Dan hari ini, persamaan &ourier hidup sebagai
bagian kerangka matematik yang menggambarkan mp3. "spek yang benar-benar
mempesona dari mp3 adalah aspek yang menggabungkan matematika dengan sistem
pendengaran manusia.
-
7/25/2019 2011-1-00602-mtif 2
6/35
#a$ar 2.2 StrukturDecoding mp3
+ Su$er, Aen 'eng an4 'i-5ung 'eng2662!2 0
2.".2 MPEG Layer 1-3 frame header
ebuah file !"#$ audio dibentuk dari bagian-bagian kecil yang disebutframes.
ecara umum,frames adalah sesuatu yang dapat berdiri sendiri 4independent5. Masing-
masing frame mempunyai header dan audio information masing-masing. 7leh karena
itu, anda bisa mengambil bagian mana pun dari file !"#$, menyimpannya dan lalu
memainkannya dengan baik. $ada 'ayer , ini tidak 011@ benar. *arena pengaturan
internal data di file !"#$ versi 0 'ayer , framebiasanya tergantung satu sama lain
danframe tersebut tidak bisa diambil begitu saja.
-
7/25/2019 2011-1-00602-mtif 2
7/35
Aaktu anda ingin membaca informasi mengenai sebuah file !"#$, biasanya
cukup menemukan frame pertama, membaca headernya dan mengasumsikan bah!a
frame lain juga mengandung informasi yang sama. Mungkin tidak semuanya
mengandung informasi yang sama seperti itu. ariable bitrate file !"#$ biasanya
disebut dengan bitrate s(itchin, yang berarti bah!a bitrate berubah berdasarkan isi
pada masing-masing frame. Disini lo(er bitrates mungkin digunakan padaframe yang
tidak menurunkan kualitas dari suara. ni diperbolehkan untuk dilakukan selama
menghasilkan kompresi yang tetap mempertahankan kualitas suara yang baik.
)rame header terletak pada empat bytepertama 43/bits5 di dalam satuframe. 00
bit yang pertama 4atau pada dua belas bit pertama, terlihat tentang framesync5 pada
frame header selalu diatur dan disebut framesync. 7leh karena itu, anda bisa
menemukan 0 byte dengan nilai /88 dan diikuti dengan 3 atau C bit yang penting pada
framesync yang pertama. 'alu anda membaca seluruh header dan cek jika nilainya
benar. "nda akan dapatkan pada tabel berikut arti sebenarnya pada setiap bit pada
header dan isinya mungkin diperiksa untuk validitas. Masing-masing isi adalah spesifik
sesuai yang ditentukan. )idak valid, cacat ataupun yang tidak dijinkan akan
mengindikasikan data header yang salah. ngat, ini tidaklah cukup, framesync bisa
dengan mudah 4dan sangat sering5 ditemukan pada setiapfilebiner mana pun. Dan juga
mungkinfile !"#$ berisi sampah pada a!alnya, yang berisisync yang salah. Dengan
begitu, anda harus memeriksa dua atau lebihframe selanjutnya untuk memastikan anda
benar-benar berhadapan denganfile !"#$ audio.
)rame mungkin memiliki pemeriksa CRC. CRC adalah sebuah bit yang
panjangnya 0< bit dan, jika ada, ini mengikutiframeheader. etelah CRC terdapat audio
data. "nda bisa memperhitungkan panjang frame dan menggunakan ini jika anda
-
7/25/2019 2011-1-00602-mtif 2
8/35
memerlukannya untuk membaca headers lainnya juga, atau hanya mau
memperhitungkan CRC dariframe tersebut untuk membandingkannya dengan yang anda
baca dari file. ebenarnya, ini adalah sebuah metode yang baik jika mencek validitas
!"#$ header.
Berikut ini ialah raphical penggambaran isi dari header. $eran dari " sampai
M dipergunakan untuk menunjukkan bagian-bagian yang berbeda. $ada tabel, anda bisa
memahami detail tentang isi masing-masing bagian.
AAAAAAAA AAABBCCD EEEEFFGH IIJJKLMM
784e Jua +$its0 P8sisi +$its0 Peneasan
" 00 430-/05 &rame sync
B / 4/1,05 D versi M$2+ "udio
11 M$2+ versi /.8
10 reserved
01 M$2+ versi /
00 M$2+ versi 0
% / 40>,0E5 $enjelasan 'ayer
11 reserved
10 layer
01 layer
00 layer
-
7/25/2019 2011-1-00602-mtif 2
9/35
D 0 40
-
7/25/2019 2011-1-00602-mtif 2
10/35
0 M$2+ versi 0
/ M$2+ versi / dan /.8
'0 'ayer
'/ 'ayer
'3 'ayer
Bitrate ingle
%hann
&ree yes
3/ yes
C> yes
8< yes
1 yes
< yes
00/ yes
0/> yes
0C no
-
7/25/2019 2011-1-00602-mtif 2
11/35
& / 400,015 samplin rate frequency inde'
Bits M$2+0 M$2+/ M$2+ /.8
11 CC011 ;( //181 ;( 001/8 ;(
10 C>111 ;( /C111 ;( 0/111 ;(
01 3/111 ;( 0111 ;(
00 reserved reserved reserved
+ 0 45 "addin bit
1 frame tidak di-pad
0 frame di-pad dengan satu eFtra slot
"addin digunakan untuk membuat pas bitrate.
%ontohnya 0/>kbps CC.0 k;( layer
menggunakan banyak frame yang panjangnya
C0>bytes dan beberapa yang panjangnya C0Ebytes
untuk membuat pas bitrate 0/>k. Intuk slot layer
panjangnya 3/bits dan slot layer dan
panjangnya >bits.
; 0 4>5 "ri*ate bit. ;anya bersifat informatif
/ 4E,
-
7/25/2019 2011-1-00602-mtif 2
12/35
00 ingle %hannel 4mono5
Hote: file dual channel terdiri dari dua mono
channel. etiap channel menggunakan tepat
setengah dari bitrate filenya. *ebanyakan decoder
menerjemahkan mereka sebagai stereo, padahal
belum tentu sama hasilnya. alah satu contohnya,
sebuah audio yang berisi suara dengan dua bahasa
yang berbeda 4bi-lingual5 yang diba!a dalam
bitstream yang sama, dan decodernya akan
menterjemahkan salah satu bahasa yang dipilih
saja.
/ 48,C5 Mode eFtension 4hanya digunakan di oint stereo5
'ayer G 'ayer
alue 'ayer G intensity stereo ms stereo
11 bands C to 30 off off
10 bands > to 30 on off
01 bands 0/ to 30 off on
00 bands 0< to 30 on on
* 0 435 Copyriht
1 audio tidak di-copyriht
0 audio di-copyriht
-
7/25/2019 2011-1-00602-mtif 2
13/35
Copyriht disini punya arti yang sama dengan
copyriht yang ada di %D dan video D"), yaitu
memberitahukan bah!a illegal bila menggandakan
isinya bila bit-nya di-set 0.
' 0 4/5 7riginal
1 copy dari media original
0 media original
7riginal bit menunjukkan, bila di-set 0, maka
frame berada di media originalnya.
M / 40,15 2mphasis
11 none
10 81 # 08 ms
01 reserved
00 %%) .0E
ndikasi emphasis disini untuk memberitahukan
decoder bah!a file harus di de-emphasized, yaitu
decoder harus menata ulang suara setelahDolby
seperti penghilangan noise. arang digunakan
Ta$e 2.1 5eader bit
-
7/25/2019 2011-1-00602-mtif 2
14/35
2.".3 MPEG Audio Tag ID3v1
+he +,$ dipergunakan untuk menggambarkan file !"#$ audio. Berisi
informasi tentang penyanyi 4artist5, judul, album, tahun terbit dan gaya. "da suatu
tempat ekstra untuk komentar. eluruhnya memiliki panjang 0/> byte dan diletakkan
pada akhir audio data. "nda bisa mendapatkan ini dengan membaca 0/> byte terakhir
file !"#$ audio.
784e Jua +$ytes0 P8sisi +$ytes0 Peneasan
" 3 41-/5 identifikasi tag. ;arus berisi J)"
B 31 43-3/5
jika ada tag dan benar.
udul
% 31 433-
-
7/25/2019 2011-1-00602-mtif 2
15/35
& 31 4E-0/
-
7/25/2019 2011-1-00602-mtif 2
16/35
< N+rungeN /< N"mbientN C N2thnicN N=aveN
NMetalN / Na((O&unkN C N+othicN N)echnoN 3> N+ospelN 8> N%ultN E> N=ock G =ollN
0 NndustrialN 3 NHoiseN 8 N+angstaN E N;ard =ockN
Ta$e 2.3 #enre
-
7/25/2019 2011-1-00602-mtif 2
17/35
alah satu pengembang Ainamp menambahkan jenis lainnya, sebagai berikut :
>1 N&olkN /N$rogressive
=ockN
01CN%hamber
MusicN
00< NBalladN
>0 N&olk-=ockN 3N$sychedelic
=ockN
018 NonataN 00EN$o!eer
BalladN
>/ NHational &olkN CNymphonic
=ockN
01< NymphonyN 00> N=hytmic oulN
>3 N!ingN 8 Nlo! =ockN 01E NBooty BrassN 00 N&reestyleN
>C N&ast &usionN < NBig BandN 01> N$rimusN 0/1 NDuetN
>8 NBebobN E N%horusN 01 N$orn +rooveN 0/0 N$unk =ockN
>< N'atinN >N2asy
'isteningN
001 NatireN 0// NDrum oloN
>E N=evivalN N"cousticN 000 Nlo! amN 0/3 N" %apelaN
>> N%elticN 011 N;umourN 00/ N%lubN 0/C N2uro-;ouseN
> NBluegrassN 010 NpeechN 003 N)angoN 0/8 NDance ;allN
1 N"vantgardeN 01/ N%hansonN 00C NambaN
0 N+othic =ockN 013 N7peraN 008 N&olkloreN
Ta$e 2." #enre 9ersi :inA!
2.) 5u;;an '84e
;uffman coding adalah algoritma yang dipakai untuk mengurangi kehilangan
data pada kompresi. $ada bagian ini dianjurkan untuk menggunakan table variable-
-
7/25/2019 2011-1-00602-mtif 2
18/35
length code untuk encoding sebuah sumber data symbol 4seperti sebuah karakter pada
file5 di mana table variable-length code sudah dapat memperkirakan setiap nilai
kemungkinan dari sebuah sumber data simbol. ni dikembangkan oleh David ".
;uffman ketika beliau sedang mengambil $h.D. di M), dan menerbitkan sebuah
makalah pada tahun 08/ J, !ethod for the Construction of !inimum-Redundancy
Codes. ;uffman menjadi seorang anggota fakultas M) setelah kelulusan dan
kemudian menjadi anggota pendiri Bagian lmu $engetahuan *omputer di Iniversitas
%alifornia, anta %ru(.
;uffman coding digunakan secara spesifik untuk memilih gambaran untuk setiap
symbol data, dan menghasilkan kode pada prefiF-free code 4kadang-kadang disebut
dengan prefiF codes5 4yang adalah, strin bit yang menggambarkan suatu lambang
khusus yang tidak pernah digambarkan oleh lambang-lambang lain mana pun5 yang
menggambarkan karakter yang biasa digunakan menjadi sebuah string dari sebuah bit
yang lebih pendek. ;uffman juga dapat mendesain metode yang paling efesien untuk
kompresi hal ini: tak ada pemetaan lain dari sumber lambang symbol bitperseorangan
yang unik, yang akan menghasilkan hasil ukuran rata-rata yang lebih kecil dengan
frekuensi lambang yang telah disetujui untuk membuat sebuah code. ebuah metode
yang kemudian ditemukan untuk menjalankan linear time jika data input
kemungkinan4diketahui beratnya5 sudah disortir.
Intuk satu set lambang dengan distribusi probabilitas uniform, ;uffman coding
adalah sepadan dengan simple binary block encodin, contohnya, "% coding.
;uffman coding adalah metode sebaran luas seperti untuk membuat prefiF-free codes
sementara. ;uffman code adalah secara luas dipakai sebagai sinomin untuk prefiF
free code !alaupun kode tersebut tidak dihasilkan oleh algoritma ;uffman .
-
7/25/2019 2011-1-00602-mtif 2
19/35
Aalaupun ;uffman coding secara optimal digunakan untuk lambang-lambang
coding dengan diketahui distribusi probabilitasnya, kemampuan optimalisasinya
terkadang melakukan kesalahan yang berlebihan yang tidak disangka. Misalnya,
aritmatika coding dan 'PA coding sering mempunyai kemampuan kompresi yang lebih
baik. *edua metode tersebut dapat mengkombinasikan sebuah symbol angka arbitrer
sehingga menghasilkan coding yang lebih effisien, dan secara umum diadaptasikan pada
statistika, yang terakhir sangat berguna ketika probabilitasnya tidak diketahui secara
persis pada stream.
Intuk kompresi yang lebih baik koefisien Quanti(ed MD%) 4untuk blok yang
panjang5 diatur dari frekuensi terendah sampai frekuensi tertinggi. eluruh jarak di bagi
menjadi 3 bagian, setiap bagian kode dibagi menjadi table ;uffman yang berbeda.
2./ ! +yc"ic !edundancy hec#0
Cyclic redundancy check 4CRC5 adalah sejenis fungsi yang mengambil input
data stream dengan panjang berapa pun dan menghasilkan sebuah hasil nilai dengan
ukuran tertentu. CRC sering dipergunakan untuk menunjukkan baik fungsi atau hasil
dari fungsi. CRC bisa dipakai sebagai checksum untuk mendeteksi perubahan yang tak
terduga pada data selama pengiriman atau penyimpanan. CRC mulai populer karena
mereka sederhana untuk diimplementasikan ke dalam biner pada perangkat keras,
mudah untuk dianalisa secara matematis, dan mengetahui kesalahan biasa yang
disebabkan oleh gangguan dari luar pada saluran pengiriman. CRC diciptakan oleh A.
Aesley $eterson, dan diterbitkan di kertasnya pada tahun 0
-
7/25/2019 2011-1-00602-mtif 2
20/35
polynomial5 ditempatkan di ba!ah akhir sebelah kiri jajaran. ni perhitungan pertama
untuk menghitung sebanyak 3 bit CRC.
00101100010011 L---/nput
0100 L--- di*isor 01 Bits2
--------------
10011100010011 L--- hasil
ika bit input diatas pembagi paling kiri adalah 1, tidak perlu melakukan apa-apa
dan pindahkan pembagi 0 bit ke kanan. ika bit input diatas pembagi paling kiri adalah
0, pembagi adalah eksklusif-7= 4R7=5 ke dalam input 4dengan kata lain, bit input di
atas tiap-tiap sebanyak 0 bit di pembagi, dikotakkan5. $embagi kemudian dipindahkan
satu bit ke sebelah kanan, dan proses diulangi sampai pembagi mencapai akhir sebelah
kanan pada baris input. ni perhitungan terakhir:
11111111110001 L--- result of multiplication calculation
0100 L--- di*isor
--------------------
11111111111010 L--- remainder 43 bits5
ejak pembagi paling kanan dinolkan setiap input bit itu bersentuhan, ketika
proses ini berakhir satu-satunya bit di barisan input yang bukan nol adalah bit ke-H di
akhir barisan paling kanan. H bit ini adalah pengingat dari langkah pembagian, dan juga
akan menjadi nilai fungsi CRC 4kecuali kalau spesifikasi CRC yang dipilih memerlukan
beberapapostprocessin5.
-
7/25/2019 2011-1-00602-mtif 2
21/35
-
7/25/2019 2011-1-00602-mtif 2
22/35
#a$ar 2." '8nt8 B8k 4aaMDT
+ Su$er, D?T D'T MD'T DST an4 Signa ?8urier S!etru Anayis2666!2 0
Di mp3, !DC+ tidak digunakan pada audio signal secara langsung, tetapi lebih
ke hasil 35-band polyphase quadrature filter 4"6)5 bank. ;asil !DC+ ini setelah
diolah oleh alias reduction formula untuk mengurangi yang aliasing khas "6)
filterbank. *ombinasi filter bank dengan !DC+ sering disebut dengan hybrid filter
bank atau subband !DC+. ,,C, pada umumnya menggunakan murni !DC+S hanya
4jarang digunakan5 !"#$-1 ,,C-77R 4oleh ony5 menggunakan C-band "6) bank
yang diikuti oleh !DC+. ,+R,C menggunakan Quadrature mirror filters 46!)5 yang
diikuti oleh!DC+.
ebagai transform, !DC+ tidak biasa membandingkan bit dengan &ourier
transform yang lain memiliki setengah dari hasilnya adalah input 4contohnya dengan
jumlah sama5. $ada hal ini, adalah fungsi linear ) : R/ - R 4 dimana = adalah
bilangan real 5
Bilangan real /H dari '1, ..., '/-0 di ubah menjadi bilangan real H dengan 81, ..., 8-
0menjadi sebagai berikut:
-
7/25/2019 2011-1-00602-mtif 2
23/35
4eperti pada DC+-/V, orthoonal transform, bentuk in*erse memiliki bentuk
yang menyerupai bentuk for!ard transform5
Di kasus !indo!ed !DC+ dengan !indo! normali(ation 4melihat di ba!ah5
normali(ation koefisien didepan /!DC+ sebaiknya dilipatgandakan di samping / 4i.e.,
menjadi /#H5.
2.( IMDT +Inver%e Modified o%ine Tran%form 0
/!DC+ merupakan kebalikan proses dari !DC+. /!DC+ dihitung dengan
rumusan
/!DC+ 0/n*erse !odified Discrete Cosine +ransform2 mengubah baris frekuensi
4Rk5 ke sample polyphase subband filter 4Ri5. Bentuk /!DC+ dapat dilihat pada 4/./5,
di mana n adalah 0/ untuk blok pendek dan 3< untuk blok panjang.
-
7/25/2019 2011-1-00602-mtif 2
24/35
#a$ar 2.) O!erasi !ena$aan tu!ang tin4i
+ Su$er, 7risten Lagerstr82662!23 0
Aalaupun aplikasi pengguna !DC+ akan memerlukan 7 4H/5 pelaksanaan,
tetapi memungkinkan untuk menghitung hal yang sama dengan hanya 7 4H log H5
kerumitan pada pengulangan perhitungan pemfaktoran, seperti pada )ast )ourier
+ransform 4))+5. ;al tersebut juga dapat dihitung !DC+s melalui transform yang lain,
biasanya D)+ 0))+5 atau DC+, yang digabungkan dengan 7 4H5 langkah pre- dan
pasca-processing. eperti yang sudah digambarkan sebelumnya, algoritma yang mana
pun dariDC+-/Vbiasanya menyediakan metode untuk menghitung!DC+ dan/!DC+.
2.16 De;inisi 4an 7arakteristik Piranti Lunak
Menurut $ressman 4/101, p015, definisi piranti lunak adalah:
0. $erintah 4program komputer5 yang bila dieksekusi akan memberikan fungsi dan
unjuk kerja seperti yang diinginkan.
-
7/25/2019 2011-1-00602-mtif 2
25/35
/. truktur data yang memungkinkan program memanipulasi informasi secara
proporsional.
3. Dokumen yang menggambarkan operasi dan kegunaan program.
$iranti lunak adalah suatu elemen sistem yang bersifat loic, bukan fisik, jadi
piranti lunak memiliki karakteristik yang berbeda dengan perangkat keras 4hard(are5.
"dapun karakteristik dari piranti lunak menurut $ressman 4/101, pp01-035 adalah:
0. $iranti lunak dibangun dan dikembangkan, tidak dibuat dalam bentuk yang
klasik.
/. $iranti lunak tidak pernah usang, tidak mudah rusak dan tidak habis pakai.
3. $iranti lunak dibuat secara custom-built 9 khusus, serta tidak dapat dirakit dari
komponen yang sudah ada.
2.16.1 Dasar Peranangan Piranti Lunak
Menurut Mahyu(ir 400, pE>5, perancangan merupakan proses penerapan
bermacam-macam teknik dan prinsip dengan tujuan untuk mendefinisikan peralatan,
proses atau sistem secara rinci. $erancangan dilakukan dalam tahap a!al
pengembangan.
2.16.2 78nse! Dasar Rekayasa Piranti Lunak
2.16.2.1 Pengertian Rekayasa Piranti Lunak
$engertian rekayasa piranti lunak pertama kali diperkenalkan oleh &rit( Bauer
sebagai penetapan dan penggunaan prinsip-prinsip rekayasa dalam usaha mendapatkan
piranti lunak yang ekonomis, yaitu piranti lunak yang terpercaya dan bekerja efisien
pada mesin atau komputer 4$ressman, /101, p05.
-
7/25/2019 2011-1-00602-mtif 2
26/35
)ujuan perancangan adalah menghasilkan model yang akan dibuat.
$erancangan piranti lunak mengalami perubahan jika didapatkan metode yang baru,
analisis yang baik dan penyusunan pengertian yang lebih luas.
2.16.2.2 Para4iga Rekayasa Piranti Lunak
)erdapat lima paradigma 4model proses5 dalam merekayasa suatu piranti lunak,
yaitu"rototypin !odel, piral !odel, +he Classic &ife Cycle atau sering juga disebut
:aterfall !odel, )ourth $eneration +echniques 01$+2, dan Combine !odel. $ada
penulisan skripsi ini dipergunakan :aterfall model.
Menurut $ressman 4/101, p05 piranti lunak telah menjadi elemen kunci dari
evolusi computer based-system dan computer product. elama lebih dari empat dekade
terakhir, piranti lunak telah berkembang dari sebuah pemecahan berorientasi
permasalahan dan alat analisis informasi menjadi sebuah industri sendiri. Hamun
kebiasaan pemrograman a!al dan sejarah telah dengan sendirinya menciptakan
sekumpulan masalah yang hingga kini masih ada. $iranti lunak telah menjadi faktor
pembatas dalam evolusi computer-based systems. Berangkat dari itulah dikembangkan
metode yang menyediakanframe(ork untuk membangun piranti lunak dengan kualitas
lebih tinggi.
=ekayasa piranti lunak 47oft(are #nineerin5 berdasarkan $ressman 4/101,
p/35 adalah studi pendekatan untuk pengaplikasian secara sistematis, pendekatan terukur
untuk pengembangan, operasi, dan pemeliharaan dari sebuah piranti lunak.
-
7/25/2019 2011-1-00602-mtif 2
27/35
2.16.2.3 ?ase Penge$angan Piranti Lunak
Metode pengembangan "rototypin mena!arkan pendekatan alternatif yang
menghasilkan model piranti lunak yang dapat dijalankan sehingga kebutuhan calon
pengguna dapat direvisi kembali. ebagai konsekuensinya, spesifikasi kebutuhan
dianalisis kembali.Re*ie(bersama antara pengembang sistem dan calon pengguna akhir
sangat penting sehingga mereka memiliki persepsi yang sama terhadap sistem.
$ada 7piral model, langkah-langkahnya meliputi komunikasi dengan user atau
customer untuk mengetahui kebutuhan mereka, plannin 4tahap perencanaan5, risk
analysis 4tahap menganalisa masalah teknis dan yang mungkin terjadi5, enineerin
4tahap membuat aplikasi5, construction and release 4tahap untuk mengimplementasikan
aplikasi yang sudah jadi5 dan yang terakhir evaluasi dari pengguna 4$ressman, /101,
pCE5.
)ourth $eneration +echniques 4C+)5 merupakan suatu deretan dari soft(are
tools yang mempunyai satu kesamaan, yaitu semuanya memungkinkan soft(are
enineer untuk menspesifikasikan karakteristik tertentu dari sebuah piranti lunak pada
level tinggi. edangkan Combine model merupakan kombinasi dari model-model
lainnya yang dianggap sesuai dengan kebutuhan pengguna 4$ressman, /101, pCC-C85.
alah satu cara perancangan piranti lunak adalah dengan menggunakan
(aterfall model 4model air terjun5, Model ini mengusulkan sebuah pendekatan kepada
pengembangan piranti lunak yang sistematik dan sekuensial yang mulai pada tingkat dan
kemajuan sistem pada seluruh analisis kebutuhan, desain, implementasi, integrasi,
pengujian, pengoperasian dan pemeliharaan. Menurut ommerville 40
-
7/25/2019 2011-1-00602-mtif 2
28/35
0. "nalisis *ebutuhan
$ada tahap ini, dianalisis apa yang menjadi kebutuhan dan yang menjadi tujuan
dari dibuatnya piranti lunak ini.
/. Desain sistem dan piranti lunak
$roses desain sistem terbagi dalam kebutuhan perangkat keras dan piranti
lunak. ;al ini menentukan arsitektur piranti lunak secara keseluruhan. Desain
piranti lunak me!akili fungsi sistem piranti lunak dalam suatu bentuk yang
dapat ditransformasikan ke dalam satu atau lebih program yang dapat
dieksekusi.
3. mplementasi dan pengujian unit
Dalam tahap ini, desain piranti lunak direalisasikan dalam suatu himpunan
program atau unit-unit program. $engujian unit mencakup kegiatan verifikasi
terhadap setiap unit sehingga memenuhi syarat spesifikasinya.
C. ntegrasi dan pengujian sistem
Init program secara individual diitegrasikan dan diuji sebagai satu sistem yang
lengkap untuk memastikan bah!a kebutuhan piranti lunak telah terpenuhi.
etelah pengujian, sistem piranti lunak disampaikan kepada pengguna.
8. $engoperasian dan $emeliharaan
ecara normal, !alaupun tidak selalu diperlukan, tapi merupakan tahap siklus
hidup yang terpanjang. istem telah terpasang dan sedang dalam penggunaan.
$emeliharaan mencakup perbaikan kesalahan yang tidak ditemukan dalam
tahap-tahap sebelumnya, meningkatkan implementasi unit-unit sistem dan
mempertinggi pelayanan sistem sebagai kebutuhan baru yang ditemukan.
-
7/25/2019 2011-1-00602-mtif 2
29/35
"nalisis
*ebutuhan
Desain sistem danpiranti lunak
mplementasi dan
pengujian unit
ntegrasi dan
pengujian sistem
$engoperasian dan
pemeliharaan
#a$ar 2./ 'aterfa"" Mode"
2.11 (tate Tran%ition Diagram +STD0
7tate +ransition Diaram merupakan sebuah modelin tool yang digunakan
untuk mendeskripsikan sistem yang memiliki ketergantungan terhadap !aktu. )D
merupakan suatu kumpulan keadaan atau atribut yang mencirikan suatu keadaan pada
!aktu tertentu.
*omponen komponen utama )D adalah:
a. 7tate, disimbolkan den
7tate merepresentasikan reaksi yang ditampilkan ketika suatu tindakan
dilakukan. "da dua jenis state, yaitu: state a!al danstate akhir. 7tate akhir
dapat berupa beberapa state, sedangkan state a!al tidak boleh lebih dari
satu.
gan
-
7/25/2019 2011-1-00602-mtif 2
30/35
b. ,rro(, disimbolkan dengan
,rro( sering disebut juga dengan transisi state yang diberi label dengan
ekspresi aturan, label tersebut menunjukan kejadian yang menyebabkan
transisi terjadi.
c. Condition dan,ction, disimbolkan dengan
Condition
,ction
7tate 0 7tate /
#a$ar 2.< Si$8 ondition 4an action
Intuk melengkapi )D diperlukan dua hal lagi, yaitu Condition dan,ction
seperti yang dapat dilihat pada gambar /.E diatas. Condition adalah suatu
e*entpada lingkungan eksternal yang dapat dideteksi oleh sistem, sedangkan
action adalah yang dilakukan oleh sistem bila terjadi perubahan state atau
merupakan reaksi terhadap kondisi. "ksi akan menghasilkan keluaran atau
tampilan.
2.12 Interaksi Manusia 78!uter
aat ini sistem atau program yang interaktif lebih populer dan digemari, karena
itu penggunaan komputer telah berkembang pesat sebagai suatu program yang interaktif
dan membuat orang tertarik untuk menggunakannya. $rogram yang interaktif ini perlu
dirancang dengan baik sehingga pengguna dapat merasa senang dan juga ikut
berinteraksi dengan baik dalam menggunakannya.
-
7/25/2019 2011-1-00602-mtif 2
31/35
nteraksi Manusia dan *omputer 4M*5 atau ;uman-Computer /nteraction
4;%5 adalah disiplin ilmu yang berhubungan dengan perancangan, evaluasi, dan
implementasi sistem komputer interaktif untuk digunakan oleh manusia, serta studi
fenomena fenomena besar yang berhubungan dengannya.
2.12.1 Tuuan Rekayasa Siste Interaksi Manusia 4an 78!uter
)ujuan rekayasa sistem interaksi manusia dan komputer seperti disebutkan oleh
hneiderman4/101,p00-0C5 adalah sebagai berikut :
&ungsionalitas yang sesungguhnya
;arus dapat menentukan fungsi-fungsi apa saja yang harus dilaksanakan dan
bagaimana cara untuk mencapai fungsionalitas yang lengkap tersebut.
*ehandalan, ketersediaan, keamanan dan integritas data
*ehandalan disini diartikan dapat berfungsi seperti yang diinginkan,
ketersediaan berarti selalu ada ketika hendak digunakan, keamanan berarti
terlindung dari akses yang tidak diinginkan dan intergritas data berarti
terdapat perlindungan data terhadap kerusakan baik disengaja maupun tidak.
tandarisasi, integrasi, konsistensi dan portabilitas
tandarisasi disini mengacu kepada keseragaman sifat-sifat user interface
pada aplikasi yang berbeda-beda, integrasi diantara paket aplikasi dan
peralatan piranti lunak, konsistensi atau keseragaman di dalam suatu program
aplikasi dan portabilitas yang mengacu pada dimungkinkannya data
dikonversi pada berbagai bentuksoft(are dan hard(are.
-
7/25/2019 2011-1-00602-mtif 2
32/35
$enjad!alan dan anggaran
$enjad!alan yang sesuai target dan anggaran yang rasional akan menjamin
kualitas produk tersebut. $roduk yang terlambat atau terlalu mahal akan
membuat produk tersebut tidak kompetitif.
2.12.2 Pr8gra Interakti;
uatu program yang interaktif dan baik harus bersifat user friendly. hneiderman
4/101, p085 menjelaskan lima kriteria yang harus dipenuhi oleh suatu program yang user
friendly, yaitu:
0. Aaktu belajar yang tidak lama.
/. *ecepatan penyajian informasi yang tepat.
3. )ingkat kesalahan pemakaian rendah.
C. $enghafalan sesudah melampaui jangka !aktu.
8. *epuasan pribadi.
uatu program yang interaktif dapat dengan mudah dibuat dan dirancang dengan
suatu perangkat bantu pengembang sistem antarmuka, seperti: !acromedia )lash !8
Visual Basic Borland Delphi dan sebagainya. *euntungan penggunaan perangkat bantu
untuk mengembangkan antarmuka menurut antosa 40E, pE5 yaitu:
0. "ntarmuka yang dihasilkan menjadi lebih baik.
/. $rogram antarmukanya menjadi lebih mudah ditulis dan lebih ekonomis
untuk dipelihara.
-
7/25/2019 2011-1-00602-mtif 2
33/35
2.12.3 Pe48an untuk Meranang )%er Interface
)erdapat beberapa pedoman yang dianjurkan dalam merancang program guna
mendapatkan suatu program yang user friendly.
-
7/25/2019 2011-1-00602-mtif 2
34/35
perancangannya harus sederhana agar pengguna tidak perlu banyak
menghapal5
2.12.3.2 Pe48an Meranang Pena!ian Data
Beberapa pedoman yang disarankan untuk digunakan dalam merancang
tampilan data yang baik menurut mith and Mosier yang dikutip hneiderman 4/101,
p>15 yaitu:
0. *onsistensi tampilan data, istilah, singkatan, format, dan sebagainya harus
standar.
/. Beban ingatan yang sesedikit mungkin bagi pengguna. $engguna tidak
perlu mengingat informasi dari layar satu ke layar yang lain.
3. *ompatibilitas tampilan data dengan peinput data. &ormat tampilan
informasi perlu berhubungan erat dengan tampilan peinput data.
C. &leksibilitas kendali pengguna terhadap data. $emakai harus dapat
memperoleh informasi dari tampilan dalam bentuk yang paling
memudahkan.
2.12.3.3 Te8ri :aktu Res!8n
Aaktu respon dalam sistem komputer menurut hneiderman 4/101, p38/5
adalah jumlah detik dari saat pemakai memulai aktivitas 4misalnya dengan penekanan
tombol enter atau tombol mouse5 sampai ditampilkannya hasil pada display atauprinter.
Beberapa pedoman yang disarankan mengenai kecepatan !aktu respons pada
suatu program menurut hneiderman 4/101, p3
-
7/25/2019 2011-1-00602-mtif 2
35/35
/. Aaktu respons yang panjang 4lebih dari 08 detik5 menggangu.
3. Aaktu respons yang lebih pendek menyebabkan !aktu pengguna berpikir
lebih pendek.
C. 'angkah yang lebih cepat dapat meningkatkan produktivitas, tetapi juga
dapat meningkatkan tingkat kesalahan.
8. Aaktu respons harus sesuai dengan tugasnya.
a. Intuk mengetik, menggerakan kursor, memilih dengan mouse: 81-081
milidetik.
b. )ugas sederhana yang sering: L0 detik
c. )ugas biasa: /-C detik.
d. )ugas kompleks: >-0/ detik.