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-toone (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 titiktitik 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 sebabakibat 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
ρ k > ρ 2 k > ρ 4 k 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) => Yt = a + b1Yt −1 + b2Yt − 2 + ... + bk Yt − k + et Dimana : Yt = variabel yang diramalkan (dependent variable). k = delay time. et = unsur kesalahan yang menunjukkan peristiwa acakan yang tidak dapat diuraikan oleh model. Y t −1, Yt − 2 ,..., Yt − k 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 => Yt = a + b1Yt −1 + et Pendugaan parameter dapat diduga dari nilai tengah dan autokorelasi.
µ=
a 1 − b1
ρ = b1
Dimana : ρ = autokorelasi antara Xt dengan Xt-1
µ = rata-rata deret waktu Untuk AR (2) model Yt = a + b1Yt −1 + b2Yt − 2 + et Pendugaan parameter a, b1 dan b2 dapat melalui metode hubungan autokorelasi menurut Yule-Walker, yaitu :
ρ1 = b1 + b2 ρ1 ρ 2 = b1 ρ1 + b2
µ=
a 1 − b1 − b2
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 :
Keputusan =
Keputusan hasil ramalan dengan anggapan cara peramalan tepat
+
Galat ramalan yang diperbolehkan
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
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:
[
] [ 2
]
[
]
Rd(t)2 = X(t) − X NN(t) + X(t +k) − X NN(t +k) +...+ X(t +(d −1)k) − X NN((t +d −1)k)
2
Dimana: d = dimensi embedding Dengan menggunakan RT dicari kriteria untuk FNN. X (t + kd ) − X NN (t + kd ) Rd (t )
> RT
Dengan kriteria di atas, urutan titik-titik dapat diuji. Nilai RT berada di antara selang 10 ≤ RT ≤ 50 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) ME =
2)
(
1 n ∑ X t − Xˆ t n t =1
Rata-rata akar kesalahan kuadrat (Root mean Squared Error)
RMSE =
3)
)
(
i n ∑ X t − Xˆ t n t =1
)
2
Galat Persentase (Percentage Error) ⎛ X − Xˆ t ⎞ ⎟(100) PEt = ⎜⎜ t ⎟ X t ⎝ ⎠
4)
Nilai Tengah Galat Persentase (Mean Absolute Percentage Error) MAPE =
1 N
N
∑ PE t =1
t
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 :
Er =
1 N (xi − xˆ i )2 ∑ N − 1 i −1 1 N ( x i − x )2 ∑ N − 1 i −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 :
1 N −k
2.8
∑ t (X
i
(
− X ) Xˆ t + k − Xˆ
)
( X sd )(Xˆ sd )
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 ifthen-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. Kondisi Tugas pertama Tugas berikutnya
F
T Bagian Then
Bagian else
Urutan If-then-else e s a c i s i d n o k
T
F
F
F
Tugas Loop
case
T
T
T F F
Kondisi Loop Do-while
T Repeat-Until
Pengulangan Pemilihan
(Gambar 2.2). Konstruksi Flowchart
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 email.
-
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 lainlain. 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 elemenelemennya 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.