bab 2 landasan teori 2.1 forex - thesis.binus.ac.idthesis.binus.ac.id/doc/bab2/2010-1-00507-mtif bab...
TRANSCRIPT
7
BAB 2
LANDASAN TEORI
2.1 Forex
Valuta asing (valas) atau foreign exchange (forex) atau foreign currency adalah
mata uang asing atau alat pembayaran lain yang digunakan untuk melakukan atau
membiayai transaksi ekonomi keuangan internasional dan yang mempunyai catatan kurs
resmi dari bank sentral (Hady, 1997). Forex merupakan produk investasi yang sifatnya
liquid dan bersifat internasional. Perbedaan nilai mata uang kedua negara yang berubah
dari waktu ke waktulah yang menjadi dasar diperolehnya keuntungan.
Dari banyaknya mata uang yang beredar didunia, hanya terdapat beberapa mata
uang yang sering digunakan sebagai satuan hitung dan banyak dicari dalam transaksi
perdagangan sebagai alat pembayaran internasional. Mata uang yang dimaksud
umumnya berasal dari negara-negara maju yang memiliki perekonomian kuat dan relatif
stabil dan mata uang tersebut sering mengalami apresiasi (kenaikan nilai) dibandingkan
dengan mata uang lainnya, seperti contohnya US Dollar (USD), Euro (EUR), British
Poundsterling (GBP), Swiss Franc (CHF), Japan Yen (JPY), Australian Dollar (AUD),
dan sebagainya.
Terdapat pula mata uang yang jarang digunakan sebagai alat pembayaran dan
kesatuan hitung serta nilainya sering mengalami depresiasi (penurunan nilai). Mata uang
ini pada umumnya berasal dari negara-negara berkembang dan perekonomiannya sedang
tumbuh, seperti contohnya Indonesia, Malaysia, Filipina, dan sebagainya.
Sekarang ini, mata uang negara bukan hanya sebagai alat pembayaran dalam
perdagangan internasional, melainkan juga telah menjadi komoditi yang juga
8 diperdagangkan sebagaimana layaknya dengan barang biasa umumnya. Dalam
perkembangannya, volume transaksi komoditi uang yang diperdagangkan bahkan lebih
besar, sangat lancar, dan cenderung membahayakan perekonomian suatu negara yang
mata uangnya diperdagangkan.
2.1.1 Pasar Forex
Forex (Foreign Exchange) atau Valuta Asing adalah pasar mata uang yang
merupakan pasar derifatif terbesar di dunia. Sebenarnya keberadaan forex trading telah
lama ada sejak ditemukannya teknik mengkonversi mata uang sebuah negara ke mata
uang negara lainnya. Namun secara kelembagaan baru ada setelah didirikannya badan
arbitrase kontrak berjangka (futures).
Pasar forex / valas berjalan selama 24 jam sehari dan 5 hari seminggu. Dimulai
dari pasar Eropa, Amerika, Australia dan Asia. Tidak seperti Bursa Efek Jakarta yang
hanya bisa dapat bertransaksi di siang hari, pada forex trading (khususnya pada online
forex trading) kita dapat bertransaksi kapan saja dan dimana saja.
Tidak semua mata uang dapat diperdagangkan disini. Hanya beberapa mata uang
negara maju yang biasa dipergunakan yaitu US Dollar (USD), Euro (EUR), British
Poundsterling (GBP), Swiss Franc (CHF), Japan Yen (JPY), Australian Dollar (AUD).
Semua mata uang ini diperdagangkan secara berpasang-pasangan (disebut pair),
contohnya GBP/USD, dll.
Forex trading Online adalah perdagangan / pertukaran mata uang asing dengan
mata uang asing lainnya dengan satu satuan kontrak yang disebut lot dan dilakukan
secara online. Selain itu perdagangan di Forex tidak dilakukan secara fisik namun hanya
melibatkan nilainya saja.
9 2.1.2 Pelaku Pasar Forex
Berikut ini adalah para pelaku yang berperan penting didalam perdagangan valas:
a. Bank Sentral
Fungsi Bank Sentral dalam pasar valuta asing umumnya sebagai stabilitator nilai
tukar mata uang lokal.
b. Perusahaan atau individu
Perusahaan atau individu memanfaatkan pasar valuta asing untuk memperlancar
bisnisnya. Yang termasuk dalam kelompok ini adalah eksportir, importir,
investor internasional, perusahaan multinasional dan sebagainya.
c. Spekulan dan Arbitrator
Spekulan dan arbitrator bertindak atas kehendak mereka sendiri untuk mendapat
keuntungan dari perubahan atau fluktuasi harga umum (capital gain).
d. Dealer
Biasanya yang bertindak sebagai dealer adalah pihak Bank, meskipun ada juga
beberapa dari non-bank. Mereka mendapatkan keuntungan dari selisih harga jual
dan harga beli valuta asing.
e. Pialang
Pialang bertindak sebagai perantara yang mempertemukan penawaran dan
permintaan terhadap mata uang tertentu.
10 2.1.3 Faktor – Faktor yang Mempengaruhi Kurs Valuta Asing
Secara umum, faktor yang mempengaruhi nilai kurs valuta asing (Hady,1997) adalah
sebagai berikut :
a. Permintaan dan penawaran valas
Sesuai dengan hukum permintaan dan penawaran, harga valas dapat menjadi
lebih mahal dari nilai nominalnya bila permintaan melebihi jumlah yang
ditawarkan sedangkan penawaran berkurang, begitu pula sebaliknya.
b. Tingkat inflasi
Tingginya angka inflasi yang terjadi pada suatu negara mengindikasikan
mahalnya harga barang (tertentu) di negara tersebut.
c. Tingkat suku bunga
Isu mengenai tingginya tingkat bunga dapat menarik para spekulan uang untuk
memanfaatkan selisih nilai bunga pinjaman dan simpanan. Ketika mata uang
asing masuk ke suatu negara dalam jumlah banyak, permintaan mata uang lokal
akan makin tinggi sehingga nilai mata uang lokal akan naik, sedangkan nilai
mata uang asing relatif akan menurun.
d. Tingkat pendapatan dan produksi
Makin besar nilai barang yang diimpor, makin besar juga permintaan mata uang
asing tersebut sehingga harganya relatif naik dari harga semula terhadap mata
uang lokal.
e. Neraca perdagangan
Cadangan devisa adalah total valuta asing yang dimiliki oleh pemerintah dan
swasta dari suatu negara. Cadangan devisa yang bernilai positif mengindikasikan
11
bahwa penawaran mata uang asing lebih besar daripada permintaannya, sehingga
nilai mata uang lokal menguat, begitupun sebaliknya.
f. Pengawasan pemerintah
Cara yang sering dilakukan pemerintah dalam mengawasi nilai mata uangnya,
yaitu dengan cara kebijakan fiskal dan kebijakan moneter. Kebijakan fiskal
dilakukan dengan cara menaikkan nilai pajak, mengetatkan belanja negara, dan
sebagainya dengan tujuan jumlah mata uang lokal makin sedikit. Kebijakan
moneter biasanya berupa pengetatan uang beredar (atau sebaliknya), menaikkan /
menurunkan tingkat suku bunga, dan sebagainya.
g. Perkiraan / spekulasi
Perkiraan, terutama dari orang-orang yang dianggap berpengalaman dalam
bidang perdagangan uang dan bidang politik, apabila sifatnya positif bagi negara
yang bersangkutan, kemungkinan besar menyebabkan naiknya permintaan uang
lokal dari negara tersebut.
2.1.4 Peramalan
2.1.4.1 Pengertian Peramalan
Menurut buku metode peramalan yang ditulis oleh Djauhari (1986, p12),
peramalan adalah menduga atau memprediksi peristiwa yang akan datang atau terjadi di
masa depan dan bertujuan untuk memperkecil resiko yang akan mungkin terjadi akibat
keputusan yang kita ambil, dengan tidak menghilangkan secara penuh faktor-faktor
ketidakpastian yang secara eksplisit diperhitungkan dalam perhitungan.
Jadi, inti dari pengertian peramalan adalah suatu usaha atau kegiatan untuk
menduga, memprediksi apa yang akan terjadi di masa yang akan datang, serta bertujuan
12 untuk memperkecil resiko atau kesalahan yang mungkin terjadi terhadap keputusan yang
akan kita ambil.
Hubungan antara keputusan yang diambil, ramalan, dan galat digambarkan
sebagai berikut:
= +
Gambar 2.1 Hubungan Antara Keputusan Dan Galat
Dari hubungan gambar diatas dapat terlihat bahwa keputusan yang kita ambil itu
selalu berhubungan atau memperhitungkan galat atau error. Jadi pengkajian dari galat
ramalan sama pentingnya dengan cara peramalan yang kita ambil.
Dalam merumuskan masalah peramalan langkah pertama yang harus dilakukan
adalah mengkaji masalah pengambilan keputusan. Hal ini dimaksudkan agar dapat
menuntun kita dalam menentukan apa yang akan kita ramal bentuk ramalan dan
bagaimana tingkat keakuratan hasil keputusan yang kita inginkan.
Langkah selanjutnya adalah mempelajari faktor-faktor yang sifatnya lebih teknis yaitu:
a. Ketersediaan data. Apakah data-data yang kita perlukan dalam melakukan
peramalan tersedia dan dapat kita gunakan.
b. Pola data. Penanganan data yang berubah menurut waktu dengan tingkat
perubahan yang lemah akan sangat brbeda dengan pola data yang tidak teratur.
c. Komputasi. Jumlah variabel yang kecil serta frekuensi peramalan yang rendah
daat ditangani dengan prosedur analisis yang mendalam. Lain halnya dengan
jumlah veriabel yang besar dan frekuensi peramalan yang tinggi.
Keputusan Keputusan hasil ramalan
Galat ramalan
13 2.1.4.2 Kegunaan dan Peran peramalan
Peramalan diperlukan karena adanya perbedaan waktu antara kesadaran akan
dibutuhkannya suatu kebijakan baru dengan waktu pelaksanaan kebijakan tersebut.
Dalam usaha mengetahui atau melihat perkembangan di masa depan, peramalan
dibutuhkan untuk menentukan kapan suatu peristiwa akan terjadi atau suatu kebutuhan
akan timbul, sehingga dapat dipersiapkan kebijakan atau tindakan-tindakan apa yang
perlu dilakukan.
Menurut Makridakis (1999, p14-15), peranan peramalan sangat penting, baik
dalam penelitian, perancangan maupun dalam pengambilan suatu keputusan. Baik
tidaknya hasil suatu penelitian di dalam ekonomi dan dunia usaha, khususnya peramalan
valas, sangat ditentukan oleh ketepatan ramalan yang dibuat, oleh karena itu, ketepatan
dari ramalan tersebut merupakan hal yang sangat penting. Walaupun demikian perlu
disadari bahwa suatu ramalan bukan sesuatu yang harus pasti benar, jadi di dalam
peramalan selalu ada unsur-unsur keasalahannya, biasa disebut juga galat, dimana
kesalahan inilah yang harus kita perkecil kemungkinannya untuk muncul.
2.1.4.3 Jenis-Jenis Peramalan
Menurut Sofjan Assauri (1984, p3-4), jenis-jenis peramalan berdasarkan sifatnya
terbagi menjadi dalam dua buah kategori, yaitu:
a. Teknik peramalan kuantitatif
Teknik peramalan kuantitatif adalah suatu metode peramalan yang dapat
diterapkan apabila terdapat informasi atau data tentang masa lalu dan informasi
atau tersebut dapat dikuantitatifkan serta informasi atau data tersebut dapat
14
dianggap terus menerus berlanjut di masa yang akan datang. Teknik peramalan
kuantitatif ini sendiri dapat dibagi menjadi dua metode lagi yaitu:
1. Metode deret berkala (time series)
Metode deret berkala memperhatikan serangkaian variabel yang diamati pada
suatu interval ruang waktu.
2. Metode kausal atau eksplanatoris (regresi).
Metode kausal adalah suatu pemodelan dari variabel yang tak bebas Y
(independent variable) sebagai fungsi dari sejumlah variabel bebas Xi sampai
dengan Xk (dependent variable), metode ini juga digunakan bila ingin
mengetahui seberapa kuat variabel-variabel X mempengaruhi variabel Y.
b. Teknik peramalan kualitatif (teknologis).
Metode kualitatif atau dikenal juga sebagai metode teknologi digunakan apabila
asumsi pola data konstan tidak dipenuhi (pola yang terdapat di dalam masa lalu
tidak dapat dianggap berlanjut terus di masa yang akan datang), serta pula
informasi atau data tentang masa lalu tidak dapat kita peroleh atau bilamana
ramalannya mengenai suatu masalah atau peristiwa tidak dapat diharapkan di
masa mendatang.
Sedangkan berdasarkan sifat penyusunannya, maka peramalan dapat dibedakan
menjadi 2 macam yaitu:
a. Peramalan yang subjektif, yaitu peramalan yang didasarkan atas perasaan atau
intuisi dari orang yang menyusunnya. Dalam hal ini, pandangan dari orang yang
menyusunnya sangat menentukan baik tidaknya hasil ramalan tersebut.
15
b. Peramalan yang objektif, adalah peramalan yang didasarkan atas data yang
relevan pada masa lalu, dengan menggunakan teknik-teknik dan metode dalam
penganalisaan data tersebut.
2.1.4.4 Langkah-Langkah Peramalan
Mutu dari hasil peramalan yang disusun, sangat ditentukan oleh proses
pelaksanaan penyusunannya. Peramalan yang baik adalah peramalan yang dilakukan
dengan mengikuti langkah-langkah atau prosedur penyusunan yang baik (Assauri,1984).
Pada dasarnya ada tiga langkah peramalan yang penting ,yaitu:
a. Mengumpulkan dan menganalisa data, tahap ini berguna untuk mencari pola dari
data masa lalu. Data yang dikumpulkan haruslah data yang akurat, sebab data
yang tidak akurat atau kurang memadai akan menyebabkan hasil ramalan
menjadi kurang tepat.
b. Menentukan metode yang digunakan, metode peramalan yang baik adalah
metode yang memberikan hasil ramalan yang tidak jauh beda dengan
fakta/kenyataan yang terjadi.
c. Memproyeksikan data yang lalu dengan menggunakan metode yang
dipergunakan dan mempertimbangkan adanya beberapa faktor-faktor perubahan.
2.1.4.5 Peramalan Valuta Asing
Perdagangan internasional pada saat ini semakin meningkat, oleh karena itu
aktivitas perdagangan valas juga turut meningkat. Hal ini menjadikan valas tidak lagi
hanya digunakan sebagai alat pembayaran, tapi juga sebagai benda ekonomi yang dapat
menghasilkan keuntungan. Kini banyak bermunculan para investor atau pemain valas,
16 baik itu perorangan maupun atas nama perusahaan, yang melakukan bisnis perdagangan
valas, yang didasari oleh aturan yang sangat sederhana, yaitu berusaha membeli valas
dengan nilai rendah dan kemudian menjualnya saat nilai tukar valas tersebut sedang
tinggi. Oleh karena itu, para pemain valas/investor ini sangat membutuhkan suatu
informasi prediksi terhadap pergerakkan nilai tukar valas, untuk menentukan kapan ia
perlu menjual atau membeli untuk memperoleh keuntungan.
Ada dua teknik analisis yang digunakan untuk membantu memprediksi pergerakan nilai
tukar valas, yaitu:
a. Analisis Fundamental
Analisis fundamental adalah suatu analisis/studi terhadap faktor-faktor yang
mempengaruhi kondisi perekonomian suatu negara, dimana analisis fundamental
ini mempelajari penyebab-penyebab terjadinya pergerakan pasar (Hidayat,
2005).
The Fei Ming (2000, p25-31) mengelompokkan faktor-faktor fundamental ke
dalam empat kategori besar, yaitu:
1. Faktor Ekonomi
Merupakan faktor yang menggambarkan aktivitas perekonomian suatu
negara. Indikator-indikator utama yang biasanya dipakai untuk melihat
aktivitas perekonomian suatu negara adalah pendapatan nasional bruto,
pendapatan domestik bruto, inflasi, neraca pembayaran, dan tingkat bunga
bank.
2. Faktor Politik
Faktor politik sebagai salah satu indikator untuk memprediksi pergerakkan
nilai tukar, sangat sulit untuk diketahui waktu dimana faktor ini akan
17
berdampak terhadap pergerakan nilai tukar. Ada kalanya faktor ini dapat
mempengaruhi pergerakkan nilai tukar ada dan kalanya faktor ini tidak
terlalu mempengaruhi pergerakkan nilai tukar.
3. Faktor Keuangan
Faktor keuangan memusatkan perhatian terhadap pengamatan terhadap
tingkat suku bunga, karena di dalam perdagangan valas terjadi transaksi
pertukaran dua buah mata uang negara yang berbeda, maka yang harus
diperhatikan adalah tingkat suku bunga kedua negara tersebut.
4. Faktor Eksternal
Faktor eksternal disini adalah bahwa perubahan nilai tukar valas dapat
dipengaruhi oleh keadaan perekonomian dari negara sekitar / negara
tetangga. Sebagai contoh pada tahun 1998 tingkat nilai tukar mata uang
negara-negara di Asia Tenggara melemah terhadap USD.
b. Analisis Teknikal
Anlisis teknikal merupakan suatu analisis terhadap pola pergerakkan harga di
masa lampau dengan tujuan untuk meramalkan/memprediksi pergerakkan harga
di masa yang akan datang (Fei Ming, 2000). Ada dua alat yang dapat digunakan
untuk melakukan analisis teknikal, yaitu dengan menggunakan grafik atau
dengan persamaan matematis yang lalu dituangkan kedalam grafik (Hidayat,
2005). Keuntungan dari menggunakan analisis teknikal adalah bahwa seorang
analisis teknikal tidak perlu lagi mengetahui faktor-faktor yang mengakibatkan
pergerakkan harga, karena semuanya telah terrefleksikan dalam harga pasar.
Selain itu pula analisis teknikal bersifat fleksibel, sehingga dapat diterapkan
untuk melakukan analisis terhadap berbagai macam jenis mata uang.
18 2.2 Artificial Neural Networks (ANN)
2.2.1 Sejarah ANN
Jaringan syaraf tiruan telah dikembangkan sejak tahun 1940. Pada tahun 1943
McCulloch dan W.H.Pitts memperkenalkan pemodelan matematis neuron. Tahun 1949,
Hebb mencoba mengkaji proses belajar yang dilakukan oleh neuron. Teori ini dikenal
sebagai Hebbian Law.
Tahun 1958, Rosenblatt memperkenalkan konsep perseptron suatu jaringan yang
terdiri dari beberapa lapisan yang saling berhubungan melalui umpan maju
(feedforward). Konsep ini dimaksudkan untuk memberikan ilustrasi tentang dasar-dasar
intelejensia secara umum. Hasil kerja Rosenblatt yang sangat penting adalah perceptron
convergence theorem (tahun 1962) yang membuktikan bahwa bila setiap perseptron
dapat memilah-milah dua buah pola yang berbeda maka siklus pelatihannya dapat
dilakukan dalam jumlah yang terbatas.
Pada tahun 1960 Widrow dan Hoff menemukan ADALINE (Adaptive Linear
Neuruon). Alat ini dapat beradaptasi dan beroperasi secara linier. Penemuan ini telah
memperlebar aplikasi jaringan syaraf tiruan tidak hanya untuk pemilihan pola, tetapi
juga untuk pengiriman sinyal khususnya dalam bidang adaptive filtering. Tahun 1969,
Minsky dan Papert melontarkan suatu kritikan tentang kelemahan perseptronnya
Rosenblatt di dalam memilah-milah pola yang tidak linier. Sejak saat itu penelitian di
bidang jaringan syaraf tiruan telah mengalami masa vakum untuk kurang lebih satu
dasawarsa.
Tahun 1982, Hopfield telah memperluas aplikasi ANN untuk memecahkan
masalah-masalah optimasi. Hopfield telah berhasil memperhitungkan fungsi energi ke
dalam jaringan syaraf yaitu agar jaringan memiliki kemampuan untuk mengingat atau
19 memperhitungkan suatu obyek dengan obyek yang pernah dikenal atau diingat
sebelumnya (associative memory). Konfigurasi jaringan yang demikian dikenal sebagai
recurrent network. Salah satu aplikasinya adalah Travelling Salesman Problem (TSP).
Pada tahun 1986 Rumelhart, Hinton dan William menciptakan suatu algoritma
belajar yang dikenal sebagai propagasi balik (backpropagation). Bila algoritma ini
diterapkan pada perseptron yang memiliki lapisan banyak (multi layer perceptron),
maka dapat dibuktikan bahwa pemilahan pola-pola yang tidak linier dapat diselesaikan
sehingga dapat mengatasi kritikan yang dilontarkan oleh Minsky dan Papert.
Usaha manusia dalam mengembangkan suatu sistem yang meniru kemampuan
dan perilaku makhluk hidup telah berlangsung selama beberapa decade belakangan ini.
Jaringan saraf tiruan, merupakan hasil perkembangan ilmu dan teknologi yang kini
sedang berkembang pesat. ANN yang berupa susunan sel-sel syaraf tiruan (neuron)
dibangun berdasarkan prinsip-prinsip organisasi otak manusia. Perhatian yang besar
pada ANN disebabkan adanya keunggulan yang dimilikinya seperti kemampuan untuk
belajar, komputasi paralel, kemampuan untuk memodelkan fungsi nonlinier dan sifat
fault tolerance.
2.2.2 Definisi ANN
Salah satu cabang dari AI (Artificial Intelligence) adalah apa yang dikenal
dengan Jaringan syaraf tiruan (Artificial Neural Network). Jaringan syaraf tiruan
merupakan salah satu sistem pemrosesan informasi yang didesain dengan menirukan
cara kerja otak manusia dalam menyelesaikan suatu masalah dengan melakukan proses
belajar melalui perubahan bobot sinapsisnya. Jaringan syaraf tiruan mampu melakukan
pengenalan kegiatan berbasis data masa lalu. Data masa lalu akan dipelajari oleh
20 jaringan syaraf tiruan sehingga mempunyai kemampuan untuk memberikan keputusan
terhadap data yang belum pernah dipelajari. Dalam analisis ini dicoba untuk dipelajari
dan dicoba penerapannya didalam bidang psikologi yaitu mendeteksi test psikologi pada
manusia. ANN yang berupa susunan sel-sel syaraf tiruan (neuron) dibangun berdasarkan
prinsip-prinsip organisasi otak manusia.
Neuron adalah unit pemroses informasi yang menjadi dasar dalam pengoperasian
jaringan syaraf tiruan (Siang, 2005, p23). Neuron terdiri dari 3 elemen pembentuk
sebagai berikut.
a. Himpunan unit-unit yang dihubungkan dengan jalur koneksi.
b. Suatu unit penjumlah yang akan menjumlahkan masukan-masukan sinyal yang
sudah dikalikan dengan bobotnya.
c. Fungsi aktivasi yang akan menentukan apakah sinyal dari input neuron akan
diteruskan ke neuron lain ataukah tidak.
Jaringan syaraf tiruan ditentukan oleh 3 hal sebagai berikut.
a. Pola hubungan antar neuron (disebut arsitektur jaringan ).
b. Metode untuk menentukan bobot penghubung (disebut algoritma
training/learning/pelatihan/belajar)
c. Fungsi aktivasi.
Di dalam jaringan syaraf tiruan, istilah simpul (node) sering digunakan untuk
menggantikan neuron. Setiap simpul pada jaringan menerima atau mengirim sinyal dari
atau ke simpul-simpul lainnya. Pengiriman sinyal disampaikan melalui penghubung.
Kekuatan hubungan yang terjadi antara setiap simpul yang saling terhubung dikenal
dengan nama bobot.
21
Model-model jaringan syaraf tiruan ditentukan oleh arsitektur jaringan serta
algoritma pelatihan. Arsitektur biasanya menjelaskan arah perjalanan sinyal atau data di
dalam jaringan. Sedangkan algoritma belajar menjelaskan bagaimana bobot koneksi
harus diubah agar pasangan masukan-keluaran yang diinginkan dapat tercapai.
Perubahan harga bobot koneksi dapat dilakukan dengan berbagai cara,
tergantung pada jenis algoritma pelatihan yang digunakan. Dengan mengatur besarnya
nilai bobot ini diharapkan bahwa kinerja jaringan dalam mempelajari berbagai macam
pola yang dinyatakan oleh setiap pasangan masukan-keluaran akan meningkat.
Gambar 2.2 Sebuah Sel Syaraf Tiruan
Pada gambar 2.2 diperlihatkan sebuah sel syaraf tiruan sebagai elemen
penghitung. Simpul Y menerima masukan dari neuron x1, x2 dan x3 dengan bobot
hubungan masing-masing adalah w1, w2 dan w3. Argumen fungsi aktivasi adalah net
masukan (kombinasi linear masukan dan bobotnya). Ketiga sinyal simpul yang ada
dijumlahkan:
net = x1w1 + x2w2 + x3w3
Besarnya sinyal yang diterima oleh Y mengikuti fungsi aktivasi y = f(net).
Apabila nilai fungsi aktivasi cukup kuat, maka sinyal akan diteruskan. Nilai fungsi
aktivasi (keluaran model jaringan) juga dapat dipakai sebagai dasar untuk merubah
bobot.
X1
X2
X3
Y
W1
W2
W3
22 2.2.3 Arsitektur Jaringan
Ada beberapa arsitektur jaringan syaraf, antara lain :
a. Jaringan dengan Lapisan Tunggal (Single Layer Network)
Pada jaringan ini, sekumpulan masukan neuron dihubungkan langsung dengan
sekumpulan keluarannya. Sinyal mengalir searah dari layar (lapisan) masukan
sampai layar (lapisan) keluaran.
Setiap simpul dihubungkan dengan simpul lainnya yang berada diatasnya
dan dibawahnya, tetapi tidak dengan simpul yang berada pada lapisan yang
sama. Model yang masuk kategori ini antara lain : ADALINE, Hopfield,
Perceptron, LVQ, dan lain-lain.
Pada gambar berikut diperlihatkan arsitektur jaringan layar tunggal
dengan n buah masukan (x1, x2,..., xn) dan m buah keluaran (y1, y2,..., ym)
Gambar 2.3 Jaringan Syaraf Tiruan dengan Lapisan Tunggal
b. Jaringan dengan Banyak Lapisan(Multiple Layer Network)
Jaringan dengan banyak lapisan memiliki 1 atau lebih lapisan yang terletak
diantara lapisan input dan lapisan output. Seperti terlihat gambar dibawah ada
X1
X2
Xn
Y1
Y2
Ym
W11
W12 Wm1
W12 W22
Wm2
W1n Wn2
Wmn
23
lapisan lapisan yang terletak diantara 2 lapisan yang bersebelahan. Jaringan
dengan banyak lapisan ini dapat menyelesaikan permasalahan lebih sulit dari
pada jaringan lapisan tunggal, tentu saja dengan pembelajaran yang lebih rumit.
Namun demikian, pada banyak kasus, pembelajaran pada jaringan dengan
banyak lapisan ini lebih sukses dalam menyelesaikan masalah. Model yang
termasuk kategori ini antara lain : MADALINE, backpropagation.
Pada gambar berikut diperlihatkan jaringan dengan n buah unit masukan
(x1, x2,..., xn), sebuah layar tersembunyi yang terdiri dari m buah unit (z1,z2,...,
zm) dan 1 buah unit keluaran.
Gambar 2.4 Jaringan Syaraf Tiruan dengan Banyak Lapisan
c. Jaringan Reccurent
Model jaringan reccurent (reccurent network) mirip dengan jaringan layar
tunggal ataupun jamak. Hanya saja, ada simpul keluaran yanng memberikan
sinyal pada unit masukan (sering disebut feedback loop). Dengan kata lain sinyal
mengalir dua arah, yaitu maju dan mundur. Contoh : Hopfield network, Jordan
network, Elmal network.
24 2.2.4 Algoritma Pembelajaran atau Pelatihan
Ide dasar jaringan syaraf tiruan adalah konsep belajar atau pelatihan. Jaringan-
jaringan belajar melakukan generalisasi karakteristik tingkah laku objek.
Algoritma pelatihan artinya membentuk pemetaan (fungsi) yang menggambarkan
hubungan antara vektor masukan dan vektor keluaran (Sekarwati 2005, p4). Biasanya
diberikan contoh yang cukup penting dalam membangun pemetaan tersebut. Walaupun
untuk pasangan masukan keluaran yang belum pernah digambarkan sebelumnya.
Untuk dapat menyelesaikan suatu permasalahan, jaringan syaraf tiruan
memerlukan algoritma belajar atau pelatihan yaitu bagaimana sebuah konfigurasi
jaringan dapat dilatih untuk mempelajari data historis yang ada. Dengan pelatihan ini,
pengetahuan yang terdapat pada data dapat diserap dan direpresentasikan oleh harga-
harga bobot koneksinya.
Algoritma belajar atau pelatihan digolongkan menjadi sebagai berikut (Siang,
2005, p30):
a. Dengan Supervisi (Supervised Training)
Dalam pelatihan dengan supervisi, terdapat sejumlah pasangan data (masukan-
target keluaran) yang dipakai untuk melatih jaringan. Pada setiap pelatihan, suatu
masukan diberikan ke jaringan. Jaringan akan memproses dan mengeluarkan
keluaran. Selisih antara keluaran jaringan dengan target (keluaran yang
diinginkan) merupakan kesalahan yang terjadi. Jaringan akan memodifikasi
bobot sesuai dengan kesalahan tersebut. Model yang menggunakan pelatihan
dengan supervisi antara lain : Perceptron, ADALINE, MADALINE,
Backpropagation, LVQ.
b. Tanpa Supervisi (Unsupervised Training)
25
Dalam pelatihannya, perubahan bobot jaringan dilakukan berdasarkan parameter
tertentu dan jaringan dimodifikasi menurut ukuran parameter tersebut. Model
yang menggunakan pelatihan ini adalah model jaringan kompetitif.
2.2.5 ANN Backpropagation
Algoritma pelatihan Backpropagation atau bisa juga disebut propagasi balik,
pertama kali dirumuskan oleh Werbos dan dipopulerkan oleh Rumelhart dan McClelland
untuk dipakai pada Artificial Neural Networks, dan selanjutnya algoritma ini biasa
disingkat dengan BP. Algoritma ini termasuk metode pelatihan supervised dan didesain
untuk operasi pada jaringan feedforward multi lapis.
Metode BP ini banyak diaplikasikan secara luas. Sekitar 90% bahkan lebih BP
telah berhasil diaplikasikan di berbagai bidang, diantaranya diterapkan di bidang
finansial, pengenalan pola tulisan tangan, pengenalan pola suara, sistem kendali,
pengolah citra medika dan masih banyak lagi keberhasilan BP sebagai salah satu metoda
komputasi yang handal.
Algoritma ini juga banyak dipakai pada aplikasi pengaturan karena proses
pelatihannya didasarkan pada hubungan yang sederhana, yaitu : Jika keluaran
memberikan hasil yang salah, maka penimbang (Weight) dikoreksi supaya galatnya
dapat diperkecil dan respon jaringan selanjutnya diharapkan akan lebih mendekati harga
yang benar. BP juga berkemampuan untuk memperbaiki penimbang pada lapisan
tersembunyi (hidden layer).
Backpropagation memiliki beberapa unit yang ada dalam satu atau lebih layar
tersembunyi. Gambar berikut adalah arsitektur backpropagation dengan n buah masukan
26 (ditambah sebuah bias), sebuah layar tersembunyi yang terdiri dari p unit (ditambah
sebuah bias), serta m buah unit keluaran.
Gambar 2.5 Arsitektur Jaringan Backpropagation
Vji merupakan bobot garis dari unit masukan xi ke unit layar tersembunyi Vj (Vj0
merupakan bobot garis yang menghubungkan bias di unit masukan ke unit layar
tersembunyi Zj. Wkj merupakan bobot dari unit layar tersembunyi ZJ ke unit keluaran yk
(wko merupakan bobot dari bias di layar tersembunyi ke unit keluaran Zk)
Secara garis besar, mengapa algoritma ini disebut sebagai propagasi balik, dapat
dideskripsikan sebagai berikut: Ketika Jaringan diberikan pola masukan sebagai pola
pelatihan maka pola tersebut menuju ke unit-unit pada lapisan tersembunyi untuk
diteruskan ke unit-unit lapisan keluaran. Kemudian unit-unit lapisan keluaran
memberikan tanggapan yang disebut sebagai keluaran jaringan. Saat keluaran jaringan
tidak sama dengan keluaran yang diharapkan maka keluaran akan menyebar mundur
(backward) pada lapisan tersembunyi diteruskan ke unit pada lapisan masukan. Oleh
karenanya maka mekanisme pelatihan tersebut dinamakan backpropagation / propagasi
balik.
Vj1 Vji
V10 Vj0
Vp0 V11 Vp1 V1i Vpi V1n
Vjn Vpn
1X1 Xi Xn
1Z1 Zj Zp
Y1 Yk Ym
W1
Wk
Wm0
W11 Wk1 Wm1 W1j
Wkj Wmj W1p
Wkp Wmp
27
Tahap pelatihan ini merupakan langkah bagaimana suatu jaringan saraf itu
berlatih, yaitu dengan cara melakukan perubahan penimbang (sambungan antar lapisan
yang membentuk jaringan melalui masing-masin unitnya). Sedangkan pemecahan
masalah baru akan dilakukan jika proses pelatihan tersebut selesai, fase tersebut adalah
fase mapping atau proses pengujian / testing.
Dalam backpropagation, fungsi aktivasi yang dipakai harus memenuhi beberapa
syarat sebagai berikut.
a. Kontinu.
b. Terdiferensial dengan mudah.
c. Merupakan fungsi yang tidak turun.
Salah satu fungsi yang memenuhi ketiga syarat tersebut sehingga sering dipakai
adalah fungsi sigmoid biner yang memiliki range (0,1). Fungsi sigmoid biner
didefinisikan sebagai berikut.
11
, ∞ ∞
dengan f`(x) = σ f(x) [1-f(x)]
Gambar 2.6 Fungsi Sigmoid Biner
Fungsi lain yang sering dipakai adalah fungsi sigmoid bipolar dengan range (-
1,1) yang didefinisikan sebagai berikut.
f(x) y
x
0.5
0 0
1
28
21
1, ∞ ∞
Gambar 2.7 Fungsi Sigmoid Bipolar
Fungsi sigmoid memiliki nilai maksimum 1. Untuk pola yang targetnya lebih
dari 1, pola masukan dan keluaran harus terlebih dahulu ditransformasi sehingga semua
polanya memiliki range yang sama seperti fungsi sigmoid yang dipakai.
Alternatif lain adalah menggunakan fungsi aktivasi sigmoid hanya pada layar
yang bukan layar keluaran. Pada layar keluaran, fungsi aktivasi yang dipakai adalah
fungsi identitas f (x) = x .
2.2.5.1 Pelatihan Backpropagation
Pelatihan pada jaringan feedfoward (umpan maju) dilakukan dalam rangka
perhitungan bobot sehingga pada akhir pelatihan akan diperoleh bobot-bobot yang baik.
Selama proses pelatihan, bobot-bobot diatur secara iteratif untuk meminimumkan error
(kesalahan) yang terjadi. Error (kesalahan) dihitung berdasarkan rata-rata kuadrat
kesalahan (MSE). Rata-rata kuadrat kesalahan juga dijadikan dasar perhitungan unjuk
kerja fungsi aktivasi. Sebagian besar pelatihan untuk jaringan feedfoward (umpan maju)
x
y
f(x)
0
‐1 0
1
29 menggunakan gradien dari fungsi aktivasi untuk menentukan bagaimana mengatur
bobot-bobot dalam rangka meminimumkan kinerja. Gradien ini ditentukan dengan
menggunakan suatu teknik yang disebut backpropagation.
Pada dasarnya, algoritma pelatihan standar backpropagation akan menggerakkan
bobot dengan arah gradien negatif. Prinsip dasar dari algoritma backpropagation adalah
memperbaiki bobot-bobot jaringan dengan arah yang membuat fungsi aktivasi menjadi
turun dengan cepat.
Pelatihan backpropagation meliputi 3 fase sebagai berikut (Kristanto, 2004) :
a. Fase 1, yaitu propagasi maju (feedforward).
Pola masukan dihitung maju mulai dari layar masukan hingga layar keluaran
menggunakan fungsi aktivasi yang ditentukan.
b. Fase 2, yaitu propagasi mundur (backward).
Selisih antara keluaran jaringan dengan target yang diinginkan merupakan
kesalahan yang terjadi. Kesalahan yang terjadi itu dipropagasi mundur. Dimulai
dari garis yang berhubungan langsung dengan unit-unit di layar keluaran.
c. Fase 3, yaitu perubahan bobot. Modifikasi bobot untuk menurunkan kesalahan
yang terjadi. Ketiga fase tersebut diulang-ulang terus hingga kondisi penghentian
dipenuhi.
Algoritma pelatihan untuk jaringan backpropagation dengan satu layar
tersembunyi (dengan fungsi aktivasi sigmoid biner) adalah sebagai berikut.
Langkah 0 : Pemberian insiasialisasi penimbang (diberi nilai kecil secara acak).
Langkah 1 : Jika kondisi tidak tercapai, lakukan langkah 2-9.
Langkah 2 : Untuk setiap pasangan pelatihan, lakukan langkah 3-8.
30 Feedforward:
Langkah 3 : Tiap unit masukan (xi, i = 1,…, n) menerima sinyal xi dan menghantarkan
sinyal ini ke semua unit lapisan di atasnya (unit tersembunyi).
Langkah 4 : Setiap unit tersembunyi (xi, i = 1,…, p) jumlahkan bobot sinyal
masukannya,
z_inj = voj +∑ ivij
voj = bias pada unit tersembunyi j aplikasikan fungsi aktivasinya untuk
menghitung sinyal keluarannya, zj = f (z_inj) = _ ., dan kirimkan
sinyal ini keseluruh unit pada lapisan diatasnya (unit keluaran).
Langkah 5 : Tiap unit keluaran (yk, k = 1,…, m) mejumlahkan bobot sinyal
masukannya,
y_ink = wok + ∑ j wjk
wok = bias pada unit keluaran k dan aplikasikan fungsi aktivasinya untuk
menghitung sinyal keluarannya, yk = f (y_ink) = _ .
Backward:
Langkah 6 : Tiap unit keluaran (yk , k = 1,…, m) menerima pola target yang saling
berhubungan pada masukan pola pelatihan, hitung kesalahan
informasinya,
δk = (tk – yk) f1 (y_ink)
hitung koreksi bobotnya (digunakan untuk memperbaharui wjk nantinya),
Δwjk = α δk zj
31
hitung koreksi biasnya (digunakan untuk memperbaharui wok nantinya),
dan kirimkan δk ke unit-unit pada lapisan dibawahnya.
Langkah 7 : Setiap unit lapisan tersembunyi (zj, j = 1,…, p) jumlahkan hasil
perubahan masukannya (dari unit-unit lapisan diatasnya),
δ_inj =∑ δk wjk
kalikan dengan turunan fungsi aktivasinya untuk menghitung informasi
kesalahannya,
δj = δ_inj f1 (z_inj)
koreksi bobot vij,
Δvij = α δj xi
Dan koreksi bias v0j,
Δv0j = α δj
Lanjutkan ke tahap peng-update-an weight.
Langkah 8 : Tiap unit keluaran (yk, k = 1,…, m) update bias dan bobotnya (j = 0,…, p)
wjk (baru) = wjk (lama) + Δ wjk
Tiap unit lapisan tersembunyi (zj, j = 1,…, p) update bias dan bobotnya
(I = 0,…,n) :
vij (baru) = vij (lama) + Δ vij
Langkah 9 : Test kondisi, jika true maka training berhenti.
Keterangan:
f(x) = fungsi aktivasi
x_setb = (x1,x2,…,xn)
n = jumlah neuron pada input layer
l = banyaknya pasangan data pel atihan
32 p = jumlah neuron pada hidden layer
k = jumlah neuron pada output layer
v = weight lapisan pertama
w = weight lapisan kedua
z_in = sinyal input untuk hidden neuron
y_in = sinyal input untuk output neuron
x = sinyal input
z = sinyal output / level aktivasi dari hidden neuron
y = sinyal output / level aktivasi dari output neuron
α = parameter learning-rate
δk = faktor kesalahan dalam unit output k
Parameter α merupakan laju pemahaman yang menentukan kecepatan iterasi.
Nilai α terletak antara 0 dan 1 (0 ≤ α ≤ 1). Semakin besar harga α , semakin sedikit
iterasi yang dipakai. Akan tetapi jika harga α terlalu besar, maka akan merusak pola
yang sudah benar sehingga pemahaman menjadi lambat. Satu siklus pelatihan yang
melibatkan semua pola disebut epoch.
Pemilihan bobot awal sangat mempengaruhi jaringan syaraf tiruan dalam
mencapai minimum global (atau mungkin lokal saja) terhadap nilai error (kesalahan)
dan cepat tidaknya proses pelatihan menuju kekonvergenan.
Apabila bobot awal terlalu besar maka input (masukan) ke setiap lapisan
tersembunyi atau lapisan output (keluaran) akan jatuh pada daerah dimana turunan
fungsi sigmoidnya akan sangat kecil. Apabila bobot awal terlalu kecil, maka input
(masukan) ke setiap lapisan tersembunyi atau lapisan output (keluaran) akan sangat
33 kecil. Hal ini akan menyebabkan proses pelatihan berjalan sangat lambat. Biasanya
bobot awal diinisialisasi secara random dengan nilai antara -0.5 sampai 0.5 (atau -1
sampai 1 atau interval yang lainnya).
Setelah pelatihan selesai dilakukan, jaringan dapat dipakai untuk pengenalan
pola. Dalam hal ini, hanya propagasi maju (langkah 4 dan 5) saja yang dipakai untuk
menentukan keluaran jaringan.
2.2.5.2 Backpropagation dalam Peramalan
Salah satu bidang, backpropagation dapat diaplikasikan dengan baik adalah
bidang peramalan (forecasting). Peramalan yang sering diketahui adalah peramalan
besarnya penjualan, nilai tukar valuta asing, prediksi besarnya aliran sungai dan lain-
lain.
Secara umum, masalah peramalan dapat dinyatakan dengan sejumlah data runtun
waktu (time series) x1, x2,..., xn. Masalahnya adalah memperkirakan berapa harga xn+1
berdasarkan x1, x2,..., xn.
Langkah-langkah membangun struktur jaringan untuk peramalan sebagai berikut.
a. Transformasi Data
Langkah awal sebelum melakukan proses pelatihan pada jaringan yang akan
digunakan untuk peramalan adalah transformasi data. Data ditransformasi agar
kestabilan taburan data dicapai. Selain itu berguna untuk menyesuaikan nilai data
dengan range fungsi aktivasi yang digunakan dalam jaringan (Siang 2005, p121).
b. Perancangan Struktur Jaringan Yang Optimum
Langkah selanjutnya setelah pembagian data adalah penentuan bilangan simpul
masukan, bilangan lapisan tersembunyi, bilangan simpul lapisan tersembunyi
34
dan bilangan simpul keluaran yang akan digunakan dalam jaringan. Terdapat
beberapa aturan yang dapat membantu perancangan jaringan yang optimum,
yaitu sebagai berikut.
1. Bilangan simpul masukan sama dengan periode dimana data berfluktuasi.
2. Bilangan simpul keluaran sama dengan bilangan keluaran masalah.
3. Mulai dengan satu lapisan tersembunyi dan digunakan lebih dari satu lapisan
tersembunyi jika diperlukan.
4. Jika menggunakan satu lapisan tersembunyi, bilangan simpul tersembunyi
awal adalah 75% dari bilangan simpul masukan.
Penggunaan jaringan dengan dua atau lebih lapisan tersembunyi dalam
masalah peramalan kebanyakan tidak akan memberikan pengaruh yang sangat
besar terhadap prestasi jaringan untuk melakukan peramalan. Selain itu akan
melambatkan proses pelatihan yang disebabkan bertambahnya simpul.
Beberapa kaidah untuk memperkirakan bilangan simpul tersembunyi
yaitu sebagai berikut.
1. h = n, 2n
2. h = n/2
dengan, n = bilangan simpul masukan yang digunakan.
h = bilangan simpul tersembunyi.
Penentuan bilangan simpul tersembunyi yang terbaik diperoleh secara trial and
error dari simpul 1 sampai 2n.
c. Pemilihan Koefisien Pemahaman dan Momentum
Pemilihan koefisien pemahaman dan momentum mempunyai peranan yang
penting untuk struktur jaringan yang akan dibangun. Dalam pembangunan
35
jaringan yang akan digunakan dalam peramalan, hasil keputusan yang kurang
memuaskan dapat diperbaiki dengan penggunaan koefisien pemahaman dan
momentum secara trial and error untuk mendapatkan nilai bobot yang paling
optimum agar MAPE dan MSE jaringan dapat diperbaiki.
d. Memilih dan Menggunakan Struktur Jaringan yang Optimum
Jaringan yang dibangun akan dinilai keakuratan ramalannya. Kaedah penilaian
yang digunakan adalah nilai Percentage Error (PE), Mean Absolute Percentage
Error (MAPE) dan Mean Square Error (MSE). Pendekatan MAPE digunakan
untuk menilai prestasi jaringan yang dilatih karena MAPE mengenal secara pasti
signifikasi hubungan diantara data ramalan dengan data aktual melalui persentase
dari data aktual serta indikator positif atau negatif pada galat (error) diabaikan.
Ketepatan model diukur secara relatif menggunakan PE dan dilihat juga dari nilai
MSE-nya. Nilai PE, MAPE dan MSE didapat dari persamaan di bawah ini.
ŷ x 100 % (Makridakis.1999,p61)
MAPE = ∑ | | (Makridakis.1999,p61)
MSE = ∑ e = ∑ y ŷ (Makridakis.1999,p59)
dengan, n = bilangan ramalan.
yt = nilai aktual pada waktu t.
Ytˆ = nilai ramalan pada waktu t.
|PE| = nilai absolut PE.
36
Berdasarkan nilai MAPE dan PE yang terendah dari proses pelatihan diperoleh
jaringan yang optimum. Keakuratan ramalan jaringan dilihat dari nilai MAPE,
MSE dan PE dari proses pengujian dan validasi.
e. Pemilihan jaringan optimum dan penggunaannya untuk peramalan
Langkah-langkah pemilihan jaringan yang optimum sebagai berikut.
1. Proses pelatihan dilakukan terhadap data pelatihan dengan struktur jaringan
yang memiliki bilangan simpul tersembunyi berbeda akan diperoleh nilai
keluaran jaringan. Nilai PE, MAPE dan MSE-nya dihitung. Jaringan dengan
nilai MAPE terendah dipilih sebagai jaringan yang optimum untuk digunakan
dalam peramalan.
2. Setelah proses pelatihan dilakukan proses pengujian terhadap data pengujian
dengan struktur jaringan yang memiliki bilangan simpul tersembunyi berbeda
yang telah dilatih akan diperoleh nilai keluaran jaringan. Nilai PE, MAPE
dan MSE masing-masing struktur jaringan dihitung. Proses pengujian
dilakukan untuk menguji prestasi pelatihan dan sebagai pendukung bahwa
jaringan terpilih sebagai jaringan yang tepat untuk model peramalan.
3. Proses validasi dilakukan dengan menggunakan jaringan terpilih terhadap
data validasi untuk melihat prestasi ramalannya.
37 2.3 Rekayasa Perangkat Lunak (RPL)
Menurut Pressman (2002, p10) perangkat lunak adalah :
a. Perintah (program komputer) yang bila dieksekusi memberikan fungsi dan unjuk
kerja seperti yang diinginkan.
b. Struktur data yang memungkinkan program dapat memanipulasi informasi secara
proporsional.
c. Dokumen yang menggambarkan operasi dan kegunaan program.
Menurut Pressman (2002, p28), rekayasa perangkat lunak adalah pengembangan
dan pengunaan prinsip pengembangan suara untuk memperoleh perangkat lunak secara
ekonomis yang reliabel dan bekerja secara efisien pada mesin nyata.
2.3.1 Model Proses Rekayasa Perangkat Lunak (RPL)
System Development Life Cycle (SDLC) adalah sistem pengembangan metode
tradisional yang digunakan oleh sebagian besar perusahaan saat ini. SDLC adalah
kerangka kerja yang terstruktur yang terdiri dari urutan proses oleh sistem informasi
yang dikembangkan. Model-model lain untuk SDLC mungkin berisi lebih banyak atau
lebih sedikit dari delapan tahap kami di sini. Namun, sebagian besar masih sama,
terlepas dari beberapa tahap. Di masa lalu, pengembang menggunakan pendekatan
waterfall ke SDLC, di mana tugas-tugas dalam satu tahap telah selesai sebelum
melanjutkan pekerjaan ke tahap berikutnya (Potter, 2003).
38
Gambar 2.8 Waterfall Model
a. Systems Investigation
Pengembangan sistem profesional setuju bahwa semakin banyak waktu yang
diinvestasikan dalam usaha memahami program yang harus dipecahkan, dalam
memahami pilihan teknis untuk sistem dan pemahaman masalah yang mungkin
terjadi selama perkembangan, semakin besar kesempatan untuk benar-benar
berhasil memecahkan masalah.
b. Systems Analysis
Systems analysis adalah pemeriksaan bisnis organisasi terencana untuk
memecahkan masalah dengan sistem informasi. Tahap ini mendefinisikan
masalah bisnis, mengidentifikasi penyebabnya, menentukan solusi dan
39
mengidentifikasi persyaratan informasi bahwa solusi harus terpenuhi.
c. Systems Design
Systems design menggambarkan apa yang harus dilakukan untuk memecahkan
masalah bisnis, dan systems design yang menggambarkan bagaimana sistem akan
menyelesaikan tugas ini.
d. Programming
Programming melibatkan terjemahan spesifikasi desain ke dalam kode
komputer. Proses ini dapat menjadi panjang dan memakan waktu.
e. Testing
Testing akan memeriksa untuk melihat apakah kode komputer akan
menghasilkan hasil yang diharapkan dan mengalami kondisi tertentu. Testing
membutuhkan sejumlah besar waktu, tenaga dan biaya untuk melakukan dengan
benar.
f. Implementation
Implementation adalah proses konversi dari sistem lama ke sistem baru.
g. Operation and Maintenance
Setelah konversi, sistem baru akan beroperasi selama jangka waktu tertentu,
sampai (seperti yang lama digantikan oleh sistem baru) itu tidak lagi memenuhi
tujuannya. Sistem memerlukan beberapa jenis maintenance. Tipe pertama adalah
debugging, sebuah proses yang berlanjut sepanjang hidup dari sistem. Tipe
kedua adalah memperbarui sistem untuk mengakomodasi perubahan dalam
kondisi bisnis.
40 2.3.2 Use Case Diagram
Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah
sistem dan bagaimana sistem berinteraksi dengan dunia luar. Yang ditekankan dalam
Use case diagram adalah ”apa” yang diperbuat sistem, dan bukan “bagaimana” sistem
itu melakukannya. Use case diagram juga menjelaskan manfaat sistem jika dilihat
menurut pandangan orang yang berada diluar sistem (actor).
Gambar 2.9 Use Case Diagram
a. Actor : Actor menggambarkan orang, sistem atau entitas luar yang menyediakan
informasi atau menerima informasi dari sistem. Actor menggambarkan sebuah
tugas/peran dan bukannya posisi sebuah jabatan.
b. Use case : Use case menggambarkan perilaku, termasuk didalamnya interaksi
antara actor dengan sistem. Use case dibuat berdasarkan keperluan actor,
merupakan “apa” yang dikerjakan sistem bukan “bagaimana” sistem
mengerjakannya. Setiap use case harus diberi nama yang menyatakan apa hal
yang dicapai dari hasil interaksinya dengan actor.
41
c. Association: mengidentifikasi interaksi antara actor dan use case. Setiap asosiasi
menjadi sebuah dialog yang harus dijelaskan dalam kasus menggunakan narasi.
Setiap narasi pada gilirannya menyediakan serangkaian skenario yang dapat
membantu dalam pengembangan uji kasus ketika mengevaluasi analisis, desain,
dan implementasi dari penggunaan artefak kasus dan asosiasi.
d. Include relationship: sebuah hubungan dimana sebuah use case (use case dasar)
mengandung fungsi dari use case lainnya. Include relationship mendukung
penggunaan ulang fungsi dalam sebuah model use case.
e. Extend relationship: mengidentifikasi sebuah use case yang menyampaikan
tindakan dari use case lainnya. Tipe hubungan ini menyatakan rincian tentang
sebuah sistem atau aplikasi yang biasanya tersembunyi dalam sebuah use case.
2.3.3 State Transition Diagram
State Transition Diagram adalah suatu modelling tool yang mengambarkan sifat
ketergantungan pada waktu dari sebuah sistem. STD adalah suatu kumpulan keadaan
atau atribut yang mencirikan suatu keadaan pada waktu tertentu.
Komponen-komponen utama STD ialah :
a. State, disimbolkan dengan bentuk kotak/persegi
State merepresentasikan reaksi yang ditampilkan ketika suatu tindakan
dilakukan. Ada 2 jenis state, yaitu : State awal dan state akhir. State akhir dapat
berupa beberapa state, sedangkan state awal tak boleh lebih dari satu.
b. Arrow, disimbolkan dengan tanda panah
42
Arrow sering juga disebut juga dengan transisi state yang diberi label dengan
ekspresi aturan, label tersebut menunjukkan kejadian yang menyebabkan transisi
terjadi.
c. Condition dan Action.
Condition adalah suatu event pada external environment yang dapat dideteksi
oleh sebuah sistem. Action adalah yang dilakukan oleh sistem bila terjadi
perubahan state atau merupakan reaksi terhadap condition. Action akan
menghasilkan output, message display pada screen, menghasilkan kalkulasi.
Ada 2 cara pendekatan untuk membuat STD:
a. Identifikasi setiap kemungkinan state dari sistem dan gambarkan masing-masing
state pada sebuah kotak. Lalu buatlah hubungan antara state tersebut.
b. Kita mulai dengan state pertama dan kemudian dilanjutkan dengan state -state
berikutnya sesuai dengan flow yang diinginkan.
2.3.4 Diagram Alir (Flowchart)
Diagram alir adalah sebuah skema yang mempresentasikan sebuah algoritma atau
sebuah proses. Adapun simbol-simbol dari diagram alir yang digunakan dalam ilmu
komputer seperti pada gambar berikut:
43
Gambar 2.10 Simbol-simbol Dalam Diagram Alir
Keterangan gambar:
a. Simbol yang menyatakan awal dan akhir.
b. Simbol yang menyatakan proses
c. Simbol yang menyatakan input ataupun output.
d. Simbol yang menyatakan aliran data.
e. Simbol yang mempresentasikan sebuah kondisi atau keputusan. Biasanya berisi
pernyataan ya/tidak atau benar/salah.
2.4 Basis Data (Database)
Menurut Richard Johnsonbaugh (1997, p115), database adalah kumpulan catatan
yang dimanipulasi oleh komputer. Sebagai contoh, database penerbangan mungkin
mengandung catatan reservasi penumpang, jadwal penerbangan, peralatan dan
sebagainya. Sistem komputer mampu menyimpan jumlah informasi yang besar dalam
database. Database bisa digunakan untuk berbagai penerapan. Sistem manajemen
44 database (database management system) merupakan program yang membantu pemakai
mengakses informasi dari basis data.
Aplikasi database hanyalah sebuah program yang dalam pelaksanaannya berinteraksi
dengan database pada titik tertentu.
Pendekatan database dapat dikaitkan dengan dua faktor, yaitu :
a. Definisi data tertanam dalam program-program aplikasi, bukannya disimpan
secara terpisah dan mandiri.
b. Tidak ada kontrol dan manipulasi atas akses data di luar yang dipaksakan oleh
program aplikasi.
2.5 Interaksi Manusia dan Komputer
Ini prinsip-prinsip dasar desain antarmuka, heuristik berasal dari pengalaman, harus
divalidasi dan halus (Shneiderman, 1998):
1. Strive for consistency
Prinsip ini yang paling sering dilanggar, karena ada banyak bentuk konsistensi yang
bisa dibentuk, yang umumnya sulit untuk diikuti semuanya. Konsisten urutan
tindakan harus diminta dalam situasi yang mirip. Terminologi identik yang
digunakan untuk prompt, menu, layar bantu, konsistensi warna, tata letak, huruf
besar, huruf kecil, dan sebagainya harus diterapkan di seluruh halaman. Untuk
pengecualian, seperti bagian password atau konfirmasi dari perintah menghapus
dapat dimaklumi namun terbatas jumlahnya.
2. Enable frequent users to use shortcuts
Karena frekuensi penggunaan yang semakin meningkat, pengguna mengininkan
adanya fitur yang bisa dipakai untuk mengurangi jumlah interaksi dan untuk
45
meningkatkan kecepatan interaksi. shortcut, tombol khusus, perintah tersembunyi,
dan fasilitas makro sering dicari oleh pengguna untuk kemudahan. Waktu respon
yang cepat dan kecepatan tampilan adalah atraksi lainnya bagi frequent users.
3. Offer informative feedback
Untuk setiap tindakan pengguna, sistem harus ada umpan balik. Untuk tindakan yang
sering dilakukan atau tindakan kecil mendapat respon sederhana, sedangkan untuk
tindakan yang jarang dan tindakan-tindakan besar, respon yang diberikan harus lebih
baik.
4. Design dialogs to yield closure
Urutan tindakan harus diatur dalam kelompok-kelompok yang memiliki awal,
tengah, dan akhir. Umpan balik yang informatif pada kelompok penyelesaian
tindakan operator memberikan kepuasan prestasi, rasa lega, sinyal untuk
menurunkan rencana kontingensi dan pilihan dari pikiran mereka, dan suatu indikasi
cara yang jelas untuk mempersiapkan kelompok tindakan berikutnya.
5. Offer error prevention and simple error handling
Desain sistem yang dibuat harus sebaik mungkin sehingga pengguna tidak membuat
kesalahan yang serius, misalnya memilih pilihan menu yang salah atau memasukkan
isian huruf karakter abjad di bagian numerik. Jika pengguna membuat kesalahan,
sistem harus mendeteksi kesalahan dan menawarkan konstruksi sederhana/khusus
untuk pemulihan.
6. Permit easy reversal of actions
Tindakan yang diambil harus dapat dikembalikan ke tindakan sebelumnya . Hal ini
bertujuan untuk mengurangi kecemasan, karena pengguna tahu bahwa kesalahan
dapat dibatalkan, sehingga mendorong eksplorasi lebih lanjut.
46 7. Support internal locus of control
Operator berpengalaman menginginkan bahwa mereka yang memegang kendali atas
sistem dan sistem menanggapi tindakan mereka. Sistem yang rusak, kesalahan entry-
data, ketidakmampuan atau kesulitan dalam memperoleh informasi yang diperlukan,
dan ketidakmampuan untuk menghasilkan tindakan yang diinginkan membangun
kecemasan dan ketidakpuasan pengguna.
8. Reduce short-term memory load
Keterbatasan pemrosesan informasi manusia dalam memori jangka pendek
memerlukan tampilan yang tetap sederhana, tampilan beberapa halaman dapat
dikonsolidasikan, jendela-gerak frekuensi dikurangi, dan waktu pelatihan yangg
cukup, serta adanya urutan tindakan. Jika sesuai, akses online ke sintaks perintah-
bentuk, singkatan, kode, dan informasi lainnya harus disediakan.