BAB 2
LANDASAN TEORI
2.1 Sistem Dinamika
Berdasarkan atas pendapat Keith Clayton (1997,p1) Sistem dinamika
merupakan sekumpulan fungsi-fungsi (peraturan, perhitungan) yang menggambarkan
bagaimana variabel-variabel berubah setiap waktunya. Misalkan : tinggi Alice
berkurang setengah cm setiap menitnya.
Dalam hal ini terdapat perbedaan-perbedaan yang penting untuk diketahui:
· Variabel-variabel (dimensi) dengan parameter
· Diskrit dengan variabel kontinu
· Stokastik dengan sistem dinamika deterministik
Perbedaannya adalah :
· Variabel-variabel berubah setiap waktunya, parameter tidak.
· Variabel diskrit terbatas untuk nilai bertipe integer, sedangkan variabel
kontinu tidak.
· Sistem stokastik memiliki karakteristik one-to-many (satu untuk
semua) sedangkan sistem deterministik memiliki karakteristik one-to-
one (satu untuk satu).
Kondisi awal dari suatu sistem dinamika dijelaskan oleh nilai saat ini (current
value) dari variabel-variabelnya misalnya : x, y, z, ...
Proses mengkalkulasi kondisi baru dari sistem diskrit dinamakan iterasi
(iteration).
7
2.2 Proses dinamika Non-linear di Atmosfer
Berdasarkan atas pendapat Keith Clayton (1997,p3-p4), pengertian nonlinear
memiliki sifat :
• Tak terprediksi (unpredictable).
• Memiliki konsep keragaman (variability).
• Perangkat baru (tools) dalam menjelaskan data deret waktu dan
pemodelannya.
Dinamika non-linear merupakan suatu bidang yang mempelajari sistem
dinamika yang memiliki fungsi tidak linear. Fungsi linear adalah fungsi dimana titik-
titik dari suatu deret waktu mengikuti suatu garis lurus. Secara matematis hubungan
linear ini memiliki persamaan garis lurus y=a+bx yang dalam hal ini a menyatakan
intersep atau perpotongan dengan sumbu tegak, dan b adalah kemiringan atau
gradiennya. Sedangkan fungsi non-linear adalah fungsi yang memperlihatkan suatu
pergerakan berubah secara tidak linear (kurva membentuk garis lengkung).
Sistem dinamika non-linear sederhana dapat menunjukkan suatu perilaku yang
tidak dapat diramalkan, dimana sistem akan terlihat acak.
Dinamika atmosfer mempunyai karakter turbulen dan galau yang ditandai
dengan keadaan irregular (tak teratur) dan disorder (tak terurut) dari besaran fisis
seperti kecepatan angin, temperatur, kelembapan, curah hujan dan besaran fisis
lainnya, dimana besaran fisis pada lapisan tersebut berfluktuasi secara acak dalam
ruang dan waktu.
8
2.3 Teori Chaos
Berdasarkan atas pendapat Michael Small (2005, p63). Proses dinamika yang
bersifat chaos memiliki berbagai karakteristik sebagai berikut :
- Deterministik yaitu kemampuan untuk meramalkan masa depan dari masa lampau.
- Dibatasi
- Periodik
Teori chaos pada awalnya dikembangkan oleh Edward Lorenz yang tertarik
dengan teori ini dimana secara tidak sengaja meneliti prediksi cuaca pada tahun 1961.
Edward Lorenz menggunakan seperangkat komputer, Royal McBee LGP-30, untuk
menjalankan simulasinya. Dari hasil simulasi didapatkan suatu data berurutan. Hasil
perhitungannya itu kemudian digambarkan dalam bentuk kurva yang dicetak diatas
sehelai kertas. Pada awalnya dia mencetak kurvanya dalam format enam angka di
belakang koma (…,506127). Kemudian, untuk menghemat waktu dan kertas, dia
memasukkan hanya tiga angka di belakang koma (…,506) dan cetakan berikutnya
diulangi pada kertas sama yang sudah berisi hasil cetakan tadi dan untuk menghemat
waktu dia kembali menjalankan simulasi dimulai dari pertengahan simulasi. Sejam
kemudian, dia dikagetkan dengan hasil yang sangat berbeda dengan yang diharapkan.
Pada awalnya kedua kurva tersebut memang berimpitan, tetapi sedikit demi sedikit
bergeser sampai membentuk corak yang sama sekali berbeda. Maka Lorenz
menemukan bahwa perubahan kecil pada kondisi awal akan menghasilkan perubahan
yang besar dalam jangka panjang kedepannya. Inilah yang kemudian dikenal sebagai
“efek kupu-kupu” (butterfly effect).
9
(Gambar 2.1) Orbit-orbit dari perhitungan Lorenz ditampilkan dalam
bentuk kawat logam utuk menunjukkan arah dan struktur tiga dimensi
Fenomena inilah yang kemudian melahirkan teori chaos. Jika suatu sistem
dimulai dengan kondisi awal 2 maka hasil akhir dari sistem yang sama akan jauh
berbeda jika dimulai dengan 2,000001 di mana 0,000001 sangat kecil sekali dan
wajar untuk diabaikan. Atau dengan kata lain: kesalahan yang sangat kecil akan
menyebabkan bencana dikemudian hari.
Pada dasarnya Teori chaos adalah teori yang berkenaan dengan sistem yang
tidak teratur. Sistem semacam ini bisa kita temui pada objek-objek seperti awan,
pohon, garis pantai, ombak dsb. Sekilas, sistem-sistem tersebut nampak acak, tidak
teratur dan anarkis. Namun bila dilakukan pembagian (fraksi) atas bagian-bagian
10
yang kecil, maka sistem yang besar yang tidak teratur ini didapati sebagai
pengulangan dari bagian-bagian yang teratur. Secara statistik bisa dinyatakan bahwa
chaos adalah kelakuan stokastik dari sistem yang deterministik. Sistem yang
deterministik (sederhana, satu solusi) bila ditumpuk-tumpuk akan menjadi sistem
yang stokastik (rumit, solusi banyak).
2.4 Analisis Deret Waktu Non-Linear ( Non-linear Time Series Analysis )
Menurut Makridakis, WheelWright dan McGee (1999, p21) terdapat dua
jenis model peramalan yang utama, yaitu : model deret waktu dan model regresi
(kausal). Pada jenis pertama, pendugaan masa depan dilakukan berdasarkan nilai
masa lalu dari suatu variabel dan atau kesalahan masa lalu. Tujuan metode peramalan
dengan deret waktu ini adalah menemukan pola dalam deret data histories
mengekstrakpolasikan pola tersebut ke masa depan. Model kausal di pihak lain
mengasumsikan bahwa faktor yang diramalkan menunjukkan suatu hubungan sebab-
akibat dengan satu atau lebih variabel bebas. Misalnya, penjualan = f(pendapatan,
harga, iklan , persaingan, dan lain-lain). Maksud dari model kausal adalah
menemukan bentuk hubungan tersebut dan menggunakannya untuk meramalkan nilai
mendatang dari suatu variabel tak bebas.
Menurut George E.P.Box (1994, p1,3rd ed) deret waktu adalah data-data
observasi yang dikumpulkan sesuai dengan urutan waktu. Banyak kumpulan data
yang dibilang data deret waktu : angka kejadian kecelakaan lalu lintas yang diambil
secara berurutan setiap minggunya, proses kimia yang diobservasi setiap jamnya.
11
Metode peramalan deret waktu (time series) merupakan suatu metode dimana
sejumlah observasi diambil selama beberapa periode dan digunakan sebagai dasar
dalam penyusunan suatu ramalan untuk beberapa periode di masa depan yang
diinginkan.
Analisis deret waktu ( time series analysis) merupakan metode yang
mepelajari deret waktu, baik dari segi teori yang menaunginya maupun untuk
membuat peramalan.
Analisis deret waktu non-linear adalah bidang yang mempelajari data deret
waktu dengan teknik perhitungan yang peka terhadap ke-nonliner-an data.
Peramalan berdasarkan sifatnya dapat dibedakan menjadi dua yaitu peramalan
kualitatif dan peramalan kuantitatif.
Pada umumnya peramalan kuantitatif dapat diterapkan bila terdapat tiga kondisi
berikut :
1. Tersedia informasi tentang masa lalu (data historis)
2. Informasi tersebut dapat dikuantitatifkan dalam bentuk numerik
3. Dapat diasumsikan bahwa beberapa aspek pola masa lalu akan terus
berlanjut di masa mendatang.
Sedangkan prosedur peramalan kualitatif melibatkan penaksiran yang bersifat
subjektif dan diperoleh melalui misalnya pendapat para ahli.
Langkah penting dalam memilih suatu metode deret waktu yang tepat adalah
dengan mempertimbangkan jenis pola datanya. Menurut Djauhari (1986, p1.9) pola
data dapat dibedakan menjadi empat, yaitu :
12
1. Pola stasioner, yakni bila data berfluktuasi sekitar mean yang konstan
(stasioner dalam data).
2. Pola musiman akan terjadi jika data dipengaruhi oleh faktor musim. Musim
di sini dapat berupa waktu setengah tahunan, seperempat tahunan,
mingguan atau bahkan harian.
3. Pola data siklik (periodik), hampir sama dengan pola musiman. Pada pola
musiman panjang interval dari suatu musim sampai musim itu lagi adalah
konstan dan pergantian pola data berjalan secara berulang. Sedangkan
pada pola siklik, pengulangan pola data tidak konstan baik dalam panjang
intervalnya maupun dalam harganya.
4. Pola trend, variasi data dari suatu waktu ke waktu lainnya memiliki
kecenderungan (trend) naik atau turun.
Jika terdapat deret data yang mencakup kombinasi dari pola-pola data
tersebut, maka metode peramalan yang dapat membedakan setiap pola harus
digunakan bila diinginkan adanya pemisahan komponen pola tersebut.
Data temperatur termasuk dalam pola data musiman. Apabila pola tersebut
konsisten, maka koefisien autokorelasi dengan time delay 24 jam akan mempunyai
nilai positif yang tinggi yang memperlihatkan adanya pengaruh musiman. Ciri
periodik musiman dapat dilihat secara nyata dari kenyataan bahwa
kkk 42 ρρρ >> dan ketiganya nyata berbeda dari nol jika k adalah variabel
setelahnya.
13
2.5 Autokorelasi
Berdasarkan atas pendapat Assauri (1984), autokorelasi menyatakan berapa
besar hubungan yang terdapat antara nilai yang satu dengan nilai lainnya yang
berturut-turut dari variabel yang sama tetapi waktu terjadinya berbeda.
Diketahui persamaan autoregressive (AR):
AR(k) => tktkttt eYbYbYbaY +++++= −−− ...2211
Dimana :
Yt = variabel yang diramalkan (dependent variable).
k = delay time.
et = unsur kesalahan yang menunjukkan peristiwa acakan yang tidak dapat
diuraikan oleh model.
kttt YYY −−− ,...,, 21 seluruhnya merupakan nilai-nilai periode sebelumnya dari
variabel yang diramalkan. Untuk masing-masing pasangan dari variabel-variabel
terdapat koefisien korelasi yang bersangkutan, yang menunjukkan kepentingan atau
peranannya, misalkan suatu koefisien yang besarnya 0,80 diantara Y dan Y1
menunjukkan nilai diantara keduanya adalah secara positif berkorelasi dengan yang
lainnya, dan karena itu cenderung untuk bergerak dengan arah yang sama. Demikian
pula halnya dengan koefisien -0,70 diantara Y dan Y2 menggambarkan bahwa nilai di
antara keduanya adalah berkorelasi secara negatif dan cenderung untuk bergerak
dengan arah yang berlawanan. Koefisien autokorelasi yang mendekati nol
menunjukkan suatu deret waktu yang nilainya secara berurutan tidak berhubungan
satu dengan yang lainnya. Bila variabel-variabel Y1,Y2,Y3 dengan yang sebenarnya
diperoleh dari variabel asal yang sama Y, maka hal ini disebut auto (self) correlation.
14
Dengan mengetahui nilai koefisien autokorelasi, dapat diketahui pola, ciri dan jenis
data.
Untuk AR (1) model => ttt eYbaY ++= −11
Pendugaan parameter dapat diduga dari nilai tengah dan autokorelasi.
11 ba
−=µ 1b=ρ
Dimana : ρ = autokorelasi antara Xt dengan Xt-1
µ = rata-rata deret waktu
Untuk AR (2) model tttt eYbYbaY +++= −− 2211
Pendugaan parameter a, b1 dan b2 dapat melalui metode hubungan
autokorelasi menurut Yule-Walker, yaitu :
1211 ρρ bb +=
2112 bb += ρρ
211 bba
−−=µ
Dimana : 1ρ = autokorelasi antara Xt dengan Xt-1
2ρ = autokorelasi antara Xt dengan Xt-2
Menurut George E.P.Box (1994, p26) autokorelasi dapat dirumuskan sebagai
berikut :
15
Dimana :
k = delay time
n = jumlah data
x = rata-rata sampel
Dalam fungsi autokorelasi dari deret waktu yang dibangun oleh dinamika
deterministik galau titik-titiknya tidak saling bebas satu sama lain dan kesamaan diri
(self-similarity) ada dalam proses.
2.6 Time Delay
Time Delay adalah waktu senjang antara kesadaran akan peristiwa atau
kebutuhan mendatang dengan peristiwa itu sendiri, menurut Makridakis,
WheelWright, McGee (1999, p421).
Sering terdapat waktu senjang antara kesadaran akan peristiwa atau kebutuhan
mendatang dengan peristiwa itu sendiri. Adanya waktu tenggang ini merupakan
alasan utama bagi perencanaan dan peramalan. Jika waktu tenggang ini nol atau
sangat kecil, maka perencanaan tidak diperlukan. Jika waktu tenggang ini panjang
dan hasil peristiwa akhir bergantung pada faktor-faktor yang dapat diketahui, maka
perencanaan dapat memegang peranan penting. Dalam situasi seperti ini, peramalan
diperlukan untuk menetapkan kapan suatu peristiwa akan terjadi, sehingga tindakan
yang tepat dapat dilakukan.
Time delay atau kadang juga disebut time lag merupakan selang waktu dari
suatu state space pada time series (deret waktu), dengan state space yang lain. Vektor
16
pada ruang yang baru, ruang embedding, dibentuk dari kumpulan data yang diambil
berdasarkan time delay :
Xn = (Xn, Xn+k, Xn +2k, ..., Xn + (d-1)k)
Dimana d merupakan dimensi dimensi embedding ( embedding dimension)
dan k adalah time delay. Untuk hubungan antara jumlah data, embedding dimension
dan time delay :
(d-1) * k < N
Dimana N adalah jumlah data.
Nilai dari time delay yang disarankan mencakup point – point sebagai berikut:
1. Autokorelasi antara data pada suatu state space dan data selang
time delay, mendekati satu.
2. Nilai time delay tidak terlalu besar, disarankan dibawah 1/10 dari
jumlah data.
3. Nilai time delay juga tidak terlalu kecil, karena dapat
mengakibatkan masuknya noise (data yang tidak relevan untuk
peramalan ) dalam peramalan.
Jika time delay bernilai k, maka data yang dimaksud memiliki waktu senjang
seharga k. Xn+k memiliki arti bahwa k data setelahnya dan data tersebut masih dalam
satu populasi yang sama. Jika time delay bernilai dua, maka Xn+2, yang berarti bahwa
dua data setelahnya. Dalam hal peramalan cuaca, perencanaan merupakan kebutuhan
yang besar, karena waktu tenggang untuk pengambilan keputusan dapat berkisar dari
17
beberapa tahun (dalam kasus peramalan temperatur dan curah hujan), sampai
beberapa hari, bahkan jam.
2.7 Peramalan (Forecasting)
Metode peramalan merupakan bagian dari ilmu statistika. Menurut Djauhari
(1986, p1.2) Peramalan sesungguhnya adalah menduga atau memprediksi peristiwa di
masa depan dan bertujuan memperkecil resiko yang mungkin terjadi akibat suatu
pengambilan keputusan. Hubungan antara keputusan yang diambil, ramalan, dan galat
(error), ramalan dapat dirumuskan sebagai berikut :
Salah satu metode peramalan adalah deret waktu. Metode ini disebut sebagai
metode peramalan deret waktu karena memiliki karakteristik bahwa data yang
dianalisis bersifat deret waktu. Periode waktu dari data deret waktu dapat berupa
tahunan, mingguan, bulanan, semester, kuartal dan lain-lain.
Peramalan dengan deret waktu berarti memprediksikan apa yang akan terjadi
di masa datang berdasarkan pola deret data masa lalu serta kemudian
mengekstrapolasikan pola tersebut ke masa depan. Oleh karena itu peramalan deret
waktu bertujuan memprediksikan apa yang akan terjadi, tanpa mengetahui mengapa
hal itu terjadi. Pada dasarnya tidak ada metode statistika yang secara otomatis dapat
menentukan pola metode yang tepat untuk suatu peramalan, semuanya tergantung
Keputusan =
Keputusan hasil ramalan dengan anggapan cara
peramalan tepat +
Galat ramalan yang
diperbolehkan
18
dari pertimbangan kita. Namun metode statistika dapat digunakan untuk mencocokan
pola metode tersebut.
2.7.1 Metode False Nearest Neighbours (FNN).
FNN memiliki pengertian tetangga terdekat yang salah. FNN terjadi
pada suatu kondisi dimana jarak antara titik-titik (data) pada saat dimensi
tertentu, jauh melampaui tresshold pada saat titik-titik tersebut berada di
dimensi lainnya.
Untuk menghitung jarak antara sebuah titik dengan tetangga
terdekatnya dengan jarak Euclidean menggunakan rumus:
[ ] [ ] [ ]222 ))1(())1((...)()()()()( kdtXkdtXktXktXtXtXtRd NNNNNN −+−−++++−++−=
Dimana:
d = dimensi embedding
Dengan menggunakan RT dicari kriteria untuk FNN.
T
NN
RtRd
kdtXkdtX>
+−+
)(
)()(
Dengan kriteria di atas, urutan titik-titik dapat diuji.
Nilai RT berada di antara selang 5010 ≤≤ TR untuk segala situasi. Jika
hasilnya lebih besar dari RT, maka Nearest Neighbours dengan jumlah
dimensi yang digunakan merupakan FNN , sehingga proses akan terus
diiterasikan lagi dengan jumlah dimensi selanjutnya sampai ditemukan nilai
FNN = 0. Jika nilai FNN = 0, maka iterasi berhenti. Semakin dimensi
19
meningkat, didapatkan maka diperoleh nilai FNN yang semakin mendekati 0
(Nol). Langkah selanjutnya adalah menghitung jumlah FNN untuk setiap
dimensinya.
2.7.2 Prediksi Data pada Periode Selanjutnya.
Diberikan dengan persamaan :
2.7.3 Ketepatan Peramalan
Ketepatan peramalan mengacu pada dua kriteria dibawah ini :
a) Akurasi peramalan
Manfaat suatu ramalan bergantung pada seberapa baik akurasi ramalan
tersebut. Akurasi peramalan adalah perbedaan antara data peramalan dengan
kenyataannya bergantung pada tujuan peramalan.
b) Jangka-waktu peramalan
Selain akurasi perlu juga dipertimbangkan jangka-waktu peramalan
karena berkaitan dengan ketepatwaktuan. Semakin pendek jangka-waktu
peramalan, semakin tinggi akurasi peramalan. Menurut Makridakis,
WheelWright dan McGee (1996,p61-63) ketepatan yang menyatakan seberapa
jauh hasil ramalan mendekati kenyataan pada umumnya dinyatakan dengan :
20
1) Rata-rata kesalahan (Mean Error)
( )∑=
−=n
ttt XX
nME
1
ˆ1
2) Rata-rata akar kesalahan kuadrat (Root mean Squared Error)
( )∑=
−=n
ttt XX
niRMSE
1
2ˆ
3) Galat Persentase (Percentage Error)
( )100ˆ
⎟⎟⎠
⎞⎜⎜⎝
⎛ −=
t
ttt X
XXPE
4) Nilai Tengah Galat Persentase (Mean Absolute Percentage Error)
∑=
=N
ttPE
NMAPE
1
1
Digunakan untuk mengetahui presentase penyimpangan hasil ramalan.
MAPE ini yang akan menentukan ketepatan suatu metode peramalan.
Peramalan akan semakin akurat jika nilai MAPE semakin kecil.
5) Untuk validasi model prediksi dengan metoda non-linear digunakan
rumus untuk menghitung kesalahan prediksi relatif (Er) yaitu :
( )
( )∑
∑
−
−
−−
−−
=N
ii
N
iii
r
xxN
xxN
E
1
2
1
2
11
ˆ1
1
21
Persamaan diatas adalah nisbah kesalahan prediksi dibagi atas standar
deviasinya untuk mengukur kualitas prediksi.
6) Korelasi antara (r) data hasil prediksi dengan data observasi dengan
rumus :
( )( )
( )( )sdsd
kti
XX
XXXXt
kN ˆ
ˆˆ1
−−
−
+∑
2.8 Aplikasi Perangkat Lunak
Menurut Pressman (2002, p10) perangkat lunak adalah :
1. Perintah (program komputer) yang bila dieksekusi memberikan fungsi
dan unjuk kerja seperti yang diinginkan.
2. Struktur data yang memungkinkan program memanipulasi informasi
secara proporsional. Struktur data adalah suatu metode untuk
mengorganisasikan data di dalam memori komputer, sehingga data
dapat diolah secara efisien, yaitu dengan :
- Menggunakan tempat yang sehemat mungkin di
memori.
- Menggunakan waktu yang secepat mungkin untuk
menyimpan dan mengambil data.
3. Dokumen yang menggambarkan operasi dan kegunaan program.
22
Perangkat lunak memiliki beberapa karakteristik yang membedakannya dari
perangkat keras, yaitu :
1. Perangkat lunak dibangun dan dikembangkan, tidak dibuat dalam
bentuk yang klasik.
2. Perangkat lunak tidak pernah usang. Perangkat keras mengalami laju
kegagalan yang sangat tinggi di awal hidupnya ( kegagalan-kegagalan
itu sering disebabkan oleh perancangan atau cacat pembuatan). Cacat –
cacat tersebut harus dikoreksi, dan laju kegagalan turun ke keadaan
steady-state (diharapkan, sangat rendah ) untuk beberapa periode
waktu. Tetapi dengan seiring perjalanan waktu, laju kegagalan
bertambah lagi pada saat komponen perangkat keras terkena pengaruh
penumpukan debu, getaran, ketidak-hati-hatian, suhu tinggi, serta
beberapa kerusakan yang disebabkan oleh lingkungan. Secara singkat
dikatakan bahwa perangkat keras sudah mulai menjadi usang.
Perangkat lunak sebaliknya tidak rentan terhadap pengaruh lingkungan
yang merusak yang menyebabkan perangkat keras menjadi usang
Kesalahan-kesalahan yang tidak dapat ditemukan akan menyebabkan
tingkat kegagalan menjadi sangat tinggi pada awal hidup program.
Tetapi hal itu dapat diperbaiki secara terus menerus dan selalu
dikembangkan (diharapkan tidak lagi ditemukan kesalahan yang lain ).
3. Sebagian besar perangkat lunak dibuat secara custom-built, serta tidak
dapat dirakit dari komponen yang sudah ada.
23
Perangkat lunak digolongkan dalam beberapa area yang menunjukkan luasnya
aplikasi potensial :
1. Perangkat Lunak Sistem
Merupakan sekumpulan program yang ditulis untuk melayani
program-program yang lain. Contohnya : compiler, editor, utilitas
pengatur file, komponen sistem operasi dan prosesor telekomunikasi .
2. Perangkat Lunak Real-Time
Merupakan program-program yang memonitor, menganalisis dan
mengontrol kejadian dunia nyata pada saat terjadinya. Contohnya :
Contohnya : ATM (Automatic Teller Machine ) untuk memantau data
keuangan yang disimpan di Bank.
3. Perangkat Lunak Bisnis
Aplikasi dalam area ini menyusun kembali struktur data yang ada
dengan suatu cara tertentu untuk memperlancar operasi bisnis atau
pengambilan keputusan manajemen. Contohnya : account receivable/
payable, inventory dan pemrosesan transaksi point of sale.
4. Perangkat Lunak Teknik dan Ilmu Pengetahuan
Perangkat lunak ini memiliki jangkauan aplikasi mulai dari astronomi
sampai vulkanologi, dari analisis otomotif sampai dinamika orbit
pesawat ruang angkasa, dan dari biologi molekul sampai pabrik yang
sudah diotomatisasi. Contohnya : analisa otomotif, dinamika orbit
24
pesawat ruang angkasa, program penyelidikan biomolekul dan
penyelidikan cuaca.
5. Embedded Software
Perangkat ini terletak di dalam Read Only Memory dan dipakai untuk
mengontrol hasil serta sistem untuk keperluan konsumen dan pasar
industri. Perangkat ini dapat melakukan fungsi yang tak terbatas serta
fungsi esoteric (misal key pad control untuk microwave) atau
memberikan kemampuan kontrol dan fungsi yang penting. Contohnya:
fungsi digital dalam sebuah automobile, penampilan dash-board dan
sistem rem ).
6. Perangkat Lunak Komputer Personal
Yang termasuk dalam perangkat ini misalnya spread sheet, grafik
komputer, multimedia, hiburan, manajemen database, aplikasi
keuangan bisnis dan personal. Contohnya : aplikasi pengolah kata,
spreadsheet, grafik computer, multimedia, hiburan, manajemen
database, aplikasi keuangan bisnis dan personal serta akses database.
7. Perangkat Lunak Kecerdasan Buatan
Perangkat ini menggunakan algoritma non-numeris untuk
memecahkan masalah kompleks yang tidak sesuai untuk perhitungan
atau analisis secara langsung. Contohnya : aplikasi pengenalan pola
(image dan voice ), pembuktian teorema dan permainan game.
25
2.8.1 Diagram Alir (Flowchart)
Berdasarkan pendapat Roger S.Pressman (2002, p476), bagan alir
merupakan proses representasi grafis yang paling luas dipakai untuk desain
prosedural. Desain prosedural diperlukan untuk menetapkan detail algoritma
yang akan dinyatakan dalam suatu bahasa ibu seperti bahasa Inggris. Pada
tahun 1960-an, Djikstra dan rekan-rekannya mengusulkan penggunaan
serangkaian gagasan logis, yang dari sana sembarang program dapat
dilakukan. Gagasan tersebut menekankan “pemeliharaan dan domain
fungsional,” yaitu masing-masing gagasan memiliki suatu struktur logis yang
dapat diprediksi, dimasukkan pada puncak, dan keluar melalui dasar, yang
memungkinkan seorang pembaca mengikuti aliran prosedural dengan lebih
mudah. Gagasan tersebut adalah urutan, kondisi dan pengulangan. Gagasan
terstruktur diusulkan untuk membatasi desain prosedural perangkat lunak ke
sejumlah kecil operasi yang dapat diprediksi. Penggunaan gagasan terstruktur
mengurangi kompleksitas program sehingga mempertinggi readibilitas,
kemampuan pengujian, dan maintainabilitas. Dengan flow chart, seorang
pembaca dapat mengenali elemen-elemen prosedural dari suatu modul
daripada sekedar membaca desain atau kode baris per baris. Bagan alir secara
gambar sangatlah sederhana. Sebuah kotak digunakan untuk mengindikasikan
suatu langkah pemrosesan. Diamond merepresentasikan suatu kondisi logis,
dan anak panah memperlihatkan aliran kontrol. Kondisi yang juga disebut if-
then-else, digambarkan sebagai diamond keputusan yang bila bernilai true
akan menyebabkan pemrosesan bagian then, dan bila false akan menyebabkan
26
dikerjakannya bagian else. Pengulangan diwakilkan dengan menggunakan dua
bentuk yang sangat berbeda. Do-While menguji suatu kondisi dan
mengerjakan sebuah tugas loop secara berulang selama kondisi bernilai true.
Repeat-Until mengerjakan tugas loop terlebih dahulu, kemudian menguji
sebuah kondisi dan mengulangi tugas tersebut sampai kondisi bernilai false.
Gagasan pemilihan (select-case) yang diperlihatkan pada gambar sebenarnya
merupakan kondisi ekstensi dari if-then-else. Sebuah parameter diuji oleh
keputusan yang berurutan sampai sebuah kondisi benar (true) terjadi dan
sebuah jalur pemrosesan bagian case dikerjakan.
(Gambar 2.2). Konstruksi Flowchart
Bagian Then
esac isidnok
Kondisi
Repeat-Until
Tugas berikutnya
Tugas pertama
Bagian else
If-then-else Urutan
F case
T
T
T
T
F
T
F
F T
F
F
Tugas Loop
Kondisi Loop
Do-while
Pengulangan Pemilihan
27
2.8.2 Interaksi Manusia dan Komputer
Berdasarkan atas pendapat Ben Shneiderman (1998,ed.3 p5)
pengembangan aplikasi dimana dapat memadukan antara prinsip yang dianut
manusia dengan proses komputer menghasilkan suatu sistem yang interaktif.
Sistem yang interaktif adalah sistem yang memerlukan keterlibatan manusia
(user) dalam pelaksanaannya (adanya komunikasi antara manusia dan
komputer ) sehingga mode interaktif berorientasi pada perintah (command
oriented). Suatu program yang interaktif juga dimaksudkan untuk
mempermudah pemakaian bagi user sehingga program yang interaktif
bertujuan untuk membuat orang tertarik untuk menggunakannya. Software
yang interaktif berarti software yang mampu mengolah informasi secara
menarik, misalnya dalam menyediakan fasilitas visual yang attraktif baik
dalam fungsi input, output, dan search (pencarian file). Software yang
interaktif juga menyajikan fasilitas musik, gambaran tiga dimensi, animasi
dan video. Program yang interaktif ini perlu dirancang dengan baik sehingga
pengguna dapat merasa puas, dan juga dapat ikut berinteraksi dengan baik
dalam menggunakannya. Dalam level individual, aplikasi user interface ini
merubah banyak hal dalam kehidupan, misalnya: seorang dokter dapat
menganalisa dengan lebih akurat, anak-anak dapat belajar dengan lebih
efektif, pilot dapat menerbangkan pesawat dengan lebih aman.
Standard Militer Amerika Serikat tentang kriteria desain mesin
menyatakan tujuan-tujuan program aplikasi interaktif, yaitu:
28
- Memperoleh hasil dan kualitas terbaik yang bisa didapatkan oleh
bagian operator, kontrol, dan pengembangan.
- Memperkecil kelebihan (skill) dan peryaratan personil serta
waktu pelatihan.
- Membuat standarisasi desain diantara sistem.
Beberapa langkah untuk membuat suatu human interface yang baik
yaitu:
- Memiliki fungsi yang cukup serta mudah dimengerti oleh
pemakai.
- Keandalannya terjaga. data yang ditampilkan harus
menggambarkan isi database, harus terus diupate. Adanya
jaminan keamanan dan integritas data.
- Standarisasi fitur-fitur user interface pada aplikasi yang berbeda.
- Terjadwal dengan baik dan memperhitungkan pemakaian biaya
yang tidak berisiko.
Beberapa kriteria yang harus dimiliki dari suatu user interface yang
baik yaitu:
- Waktu mempelajari program harus efektif.
- Penyajian informasi yang cepat.
- Tingkat kesalahan yang rendah dalam pemakaian.
- Waktu mengingat yang cepat setiap waktunya.
29
- Tingkat kepuasan pemakai dalam mengeksplorasi sistem tinggi.
Aplikasi program secara interaktif sudah digunakan dalam berbagai
bidang kehidupan yaitu:
- Sistem-sistem penting terkait dengan kehidupan seperti program
kontrol lalu-lintas, reaktor nuklir, operasi militer dan peralatan
medis.
- Bidang industri dan ekonomi seperti dalam perbankan, asuransi,
pemesanan tiket hotel maupun penerbangan, penyewaan mobil
serta manajemen kartu kredit.
- Bidang hiburan seperti video games, Word Processing dan e-
mail.
- Bidang pendidikan seperti kamus elektronik, World Wide Web
browsing, sistem penghasil keputusan bisnis serta sistem
komposisi musik.
2.8.3 Sistem Basis Data
Berdasarkan atas pendapat Thomas Connolly (2005, p4 4thed),
database merupakan sekumpulan data-data yang saling berhubungan. Data
Base Management System (DBMS) adalah perangkat lunak yang mengontrol
akses-akses ke dalam database. Aplikasi database secara sederhana
merupakan program yang berinteraksi dengan database saat eksekusi
dijalankan. Sistem database adalah kumpulan program aplikasi yang
30
berinteraksi dengan database bersama DBMS dan database itu sendiri.
Beberapa aplikasi database yaitu : database pembayaran di kasir.
Ketika seseorang membeli barang dari supermarket, kasir akan mengakses
database. Untuk mengakses digunakan pembaca bar code untuk membaca
kode produk yang akan dibeli. Alat ini digunakan untuk mengetahui harga
dari produk tersebut. Program akan mengurangi stok dari produk tersebut. Jika
stok yang tersedia sudah melampaui ambang yang sudah ditetapkan, maka
sistem akan secara otomatis membuat pesanan untuk stok barang yang baru.
Aplikasi database lainnya juga dapat ditemukan dalam sistem pembayaran
kartu kredit, sistem pemesanan tiket perjalanan, sistem perpustakaan, dan lain-
lain.
Sebagai suatu perangkat lunak, DBMS memiliki beberapa fasilitas,
yaitu:
1) Fasilitas mendefinisikan data.
Melalui Data Definiton Language (DDL). DDL diperlukan
sehingga dapat menspesifikasikan tabel data dan elemen-
elemennya seperti tipe data. Contohnya :
ALTER TABLE table
ADD COLUMN column data type (size)
DROP COLUMN column
31
2) Fasilitas memanipulasi data.
Melalui Data Manipulation Language (DML), seseorang dapat
memanipulasi data sehingga dapat melakukan berbagai proses
manipulasi seperti proses penyisipan (insert), menghapus data
(delete), dan mengembalikan (retrieve) data ke database.
Contohnya dalam penggunaan adalah :
- INSERT Nama = Vivi where NIM = 0541. Dimana perintah
tersebut berarti menyisipkan data nama yaitu Vivi dimana
data tersebut memiliki NIM yaitu 0541.
- DELETE FROM table WHERE condition
- UPDATE table
SET column 1 = value 1, column 2, ….
WHERE condition
3) Fasilitas pengendalian akses ke dalam database.