BAB 2 LANDASAN TEORI Saham dan Indeks Harga Saham (IHSG
of 31/31
9 BAB 2 LANDASAN TEORI 2.1 Saham dan Indeks Harga Saham Gabungan (IHSG) Definisi 1 (Saham) Saham adalah surat berharga yang menunjukkan kepemilikan seorang investor di dalam suatu perusahaan yang artinya jika seseorang membeli saham suatu perusahaan, itu berarti dia telah menyertakan modal ke dalam suatu perusahaan tersebut sebanyak jumlah saham yang dibeli. (Fakhruddin, 2008:30) Definisi 2 (Indeks Harga Saham Gabungan) Indeks Harga Saham Gabungan (IHSG) adalah suatu rangkaian informasi historis mengenai pergerakan harga saham gabungan, sampai tanggal tertentu dan mencerminkan suatu nilai yang berfungsi sebagai pengukuran kinerja suatu saham gabungan di bursa efek. (Sunariyah, 2003:147) Dalam perhitungan indeks, IHSG menggunakan seluruh saham tercatat sebagai komponen perhitungan indeks. (Tandelilin, 2010:86). 2.2 Logika Fuzzy Definisi 3 (Logika Fuzzy) Logika fuzzy merupakan sebuah logika yang memiliki nilai kekaburan atau kesamaran antara benar dan salah. Dalam teori logika fuzzy sebuah nilai bisa bernilai benar dan salah secara bersamaan namun berapa besar kebenaran dan kesalahan suatu nilai tergantung kepada bobot keanggotaan yang dimilikinya. (Matondang, Kusumawati, & Abidin, 2011) Fuzzy logic dapat diangggap sebagai kotak hitam yang menghubungkan antara ruang input dengan ruang output. Kotak hitam tersebut berisi cara atau metode
BAB 2 LANDASAN TEORI Saham dan Indeks Harga Saham (IHSG
Text of BAB 2 LANDASAN TEORI Saham dan Indeks Harga Saham (IHSG
Microsoft Word - 2013-2-00403-MTIFBab2001.docDefinisi 1
(Saham)
Saham adalah surat berharga yang menunjukkan kepemilikan seorang
investor
di dalam suatu perusahaan yang artinya jika seseorang membeli saham
suatu
perusahaan, itu berarti dia telah menyertakan modal ke dalam suatu
perusahaan
tersebut sebanyak jumlah saham yang dibeli.
(Fakhruddin, 2008:30)
Indeks Harga Saham Gabungan (IHSG) adalah suatu rangkaian
informasi
historis mengenai pergerakan harga saham gabungan, sampai tanggal
tertentu
dan mencerminkan suatu nilai yang berfungsi sebagai pengukuran
kinerja suatu
saham gabungan di bursa efek.
(Sunariyah, 2003:147)
komponen perhitungan indeks.
Logika fuzzy merupakan sebuah logika yang memiliki nilai kekaburan
atau
kesamaran antara benar dan salah. Dalam teori logika fuzzy sebuah
nilai bisa
bernilai benar dan salah secara bersamaan namun berapa besar
kebenaran dan
kesalahan suatu nilai tergantung kepada bobot keanggotaan yang
dimilikinya.
(Matondang, Kusumawati, & Abidin, 2011)
Fuzzy logic dapat diangggap sebagai kotak hitam yang menghubungkan
antara
ruang input dengan ruang output. Kotak hitam tersebut berisi cara
atau metode
10
yang dapat digunakan untuk mengolah data input menjadi output dalam
bentuk
informasi yang baik. Nilai keanggotaan atau derajat keanggotaan
atau
membership function menjadi ciri utama dari penalaran dengan fuzzy
logic
tersebut.
Konsep logika fuzzy diperkenalkan oleh Prof. Lotfi Zadeh dari
Universitas California di Berkeley pada 1965. Logika fuzzy adalah
cabang dari
sistem kecerdasan buatan (Artificial Intelligent) yang
mengemulasi
kemampuan manusia dalam berfikir ke dalam bentuk algoritma yang
kemudian
dijalankan oleh mesin. Algoritma ini digunakan dalam berbagai
aplikasi
pemrosesan data yang tidak dapat direpresentasikan dalam bentuk
biner.
Dalam bahasa Inggris, fuzzy berarti kabur atau tidak jelas. Jadi,
logika
fuzzy merupakan logika yang mengandung unsur ketidakjelasan
atau
ketidakpastian. Logika fuzzy merupakan metode yang mempunyai
kemampuan
untuk memproses variabel yang bersifat samar-samar atau yang tidak
dapat
dideskripsikan secara pasti dan digunakan untuk menerjemahkan suatu
besaran
yang diekspresikan menggunakan bahasa (linguistic), misalnya
besaran
kecepatan laju kendaraan yang diekspresikan dengan pelan, agak
cepat, cepat,
dan sangat cepat. Logika fuzzy menginterpretasikan statement yang
samar
menjadi sebuah pengertian yang logis.
Logika fuzzy dikembangkan karena logika Boolean/boolean logic
hanya
mempunyai logika 0 (nol) dan 1 (satu) saja sehingga diperlukan
sistem yang
dapat memiliki logika diantara 0 (nol) dan 1 (satu). Logika fuzzy
menyediakan
sebuah kerangka kerja matematis untuk merepresentasikan dan
memperlakukan ketidakpastian dalam bentuk kekaburan,
ketidaktepatan,
kebocoran informasi, dan bagian kebenaran (Tettamanzi and
Tomassini, 2001).
Menurut Saelan (2009), beberapa alasan digunakannya logika fuzzy
antara lain:
a. Konsep logika fuzzy mudah dimengerti. Konsep matematis
yang
mendasari penalaran fuzzy sederhana dan mudah dimengerti.
b. Logika fuzzy sangat fleksibel.
c. Logika fuzzy memiliki toleransi terhadap data-data yang tidak
tepat.
d. Logika fuzzy mampu memodelkan fungsi-fungsi non linear
yang
kompleks.
11
pengalaman para pakar secara langsung tanpa harus melalui
proses
pelatihan.
f. Logika fuzzy dapat bekerja sama dengan teknik-teknik kendali
secara
konvensional.
Definisi 4 (Himpunan Fuzzy)
semesta U. Keanggotaan suatu nilai pada himpunan dinyatakan dengan
derajat
keanggotaan yang nilainya antara 0.0 sampai 1.0.
(Saelan, 2009)
konsep himpunan dalam matematika. Himpunan fuzzy adalah rentang
nilai-
nilai dengan tingkat keanggotaan elemen berada pada interval [0,1],
yang
artinya masing-masing nilai pada himpunan tersebut mempunyai
derajat
keanggotaan (membership) antara 0 sampai dengan 1. Ungkapan
logika
Boolean menggambarkan nilai “benar” atau “salah”. Logika
fuzzy
menggunakan ungkapan misalnya : “sangat rendah”, ”cukup rendah”,
“sangat
tinggi” dan ungkapan lain-lain untuk mengungkapkan derajat
intensitasnya.
Logika fuzzy menggunakan suatu set aturan untuk menggambarkan
perilakunya. Aturan-aturan tersebut menggunakan kondisi yang
diharapkan dan
hasil yang diinginkan dengan menggunakan statement “Jika –
Maka”.
Suatu himpunan fuzzy A dalam semesta pembicaraan dinyatakan
dengan
fungsi keanggotaan (membership function) , yang harganya berada
dalam
interval [0,1]. Secara matematis, hal ini dinyatakan dengan :
Himpunan fuzzy A dalam semesta pembicaraan U biasa dinyatakan
sebagai sekumpulan pasangan elemen u (u anggota U) dan besarnya
derajat
keanggotaan (grade of membership) elemen tersebut sebagai berikut
:
12
keanggotaannya. Jika U adalah diskrit, maka A dapat dinyatakan
dengan :
Definisi 5 (Variabel Linguistik)
Variabel linguistik yaitu sebuah variabel yang memiliki nilai
berupa kata-kata
dalam bahasa alamiah bukan angka.
(Kusumadewi, 2003)
dengan symbol “” adalah sebuah operator maka dikatakan
“disebabkan”
oleh , relasi yang ada antara dan dinotasikan dengan
.
dan adalah , maka dikenal dengan “sisi kiri” dan
dikenal dengan “sisi kanan”.
Definisi 7 (Grup Relasi Logika Fuzzy)
Relasi logika fuzzy di mana memiliki “sisi kiri” yang identik,
dapat digrupkan
menjadi grup relasi logika fuzzy.
Sebagai contoh, diberikan dua buah relasi logika fuzzy dengan sisi
kiri yang
sama , sebuah grup relasi logika fuzzy dapat dibentuk dengan:
(Sah & Degtiarev, 2005:376)
2.4 Time Series
13
berurutan dalam waktu. Waktu atau periode yang dibutuhkan untuk
melakukan
suatu peramalan itu biasanya disebut sebagai lead time yang
bervariasi pada
tiap persoalan.
(Halim, 2006:1)
Data time series merupakan data yang dikumpulkan, dicatat atau
diobservasi
sepanjang waktu secara berurutan. Periode waktu observasi dapat
berbentuk
tahun, kuartal, bulan, minggu, dan di beberapa kasus dapat juga
hari atau jam.
(Subekti, 2010:61)
semesta pembicaraan yang dinyatakan oleh himpunan fuzzy .
terdiri
dari didefinisikan sebagai fuzzy time series pada .
(Xihao & Yimin, 2008:105)
logika fuzzy) sebagai dasarnya. Sistem peramalan dengan fuzzy time
series
menangkap pola dari data yang telah lalu kemudian digunakan
untuk
memproyeksikan data yang akan datang.
2.6 Fuzzy Time Series Menurut Song dan Chissom
Song dan Chissom menjelaskan definisi dari fuzzy time series pada
tahun
1993. Andaikan adalah himpunan semesta (universal of discourse),
dengan
, dan fuzzy set dengan definisi sebagai
berikut:
14
di mana adalah fungsi keanggotaan dari fuzzy set , adalah elemen
dari
fuzzy set , dan adalah derajat keanggotaan dari pada ,
Jika dinyatakan bahwa , disebabkan oleh ,
maka grup relasi logika fuzzynya (fuzzy logical relationship group)
dinyatakan
dengan → ,. Jika ada beberapa fuzzy logical relationship group
berasal
dari suatu state, misalkan state A2, dan transisi yang terjadi
terhadap state lain
, misalkan → , → → , maka fuzzy
suatu fuzzy logical relationship group baru : → .
Berdasarkan teorema-teorema tersebut, maka langkah-langkah
dalam
metode fuzzy time series menurut Song & Chissom adalah sebagai
berikut :
1) Definisikan himpunan semesta untuk data historikal yang
tersedia.
Data minimum dan data maksimum dari data historikal
masing-masing
secara berurutan dilambangkan dengan dan . Himpunan
semesta dapat didefinisikan sebagai [ - , + ], di mana
dan adalah bilangan positif yang sesuai.
2) Bagi himpunan semesta menjadi sejumlah ganjil interval yang
sama
. Panjang interval dapat diperoleh dari :
3) Jadikan , menjadi suatu himpunan-himpunan fuzzy yang
variabel linguistiknya ditentukan sesuai dengan keadaan
semesta.
4) Lakukan fuzzifikasi terhadap data historikal. Jika sebuah data
time series
.
oleh , maka fuzzy logical relationship group-nya
didefinisikan sebagai → .
peramalan pada dapat ditentukan dengan menggunakan beberapa
prinsip berikut :
1) Jika fuzzy logical relationship group dari adalah himpunan
kosong
(contoh : → Ø), maka hasil peramalan untuk adalah
(midpoint dari ):
(contoh : → ), maka hasil peramalan untuk adalah
midpoint (nilai tengah) dari , yaitu :
3) Jika fuzzy logical relationship group dari adalah
one-to-many
(contoh : → , maka hasil peramalan untuk adalah
nilai rata-rata dari (midpoint dari ):
(Tsaur, 2012)
Rantai markov (markov chain) merupakan salah satu model yang
sering
digunakan untuk menggambarkan proses stokastik. Analisa rantai
markov
adalah suatu metode yang mempelajari sifat-sifat suatu variabel
pada masa
sekarang yang didasarkan pada sifat-sifatnya di masa lalu dalam
usaha
menaksir sifat-sifat variabel tersebut di masa yang akan
datang.
(Sanny & Sarjono, 2012:139)
{ } yang membentuk suatu deret yang memenuhi sifat
Markov.
umumnya digunakan dalam melakukan pemodelan bermacam-macam
kondisi.
Teknik ini digunakan untuk membantu dalam memperkirakan perubahan
yang
mungkin terjadi di masa mendatang. Perubahan-perubahan tersebut
diwakili
dalam variabel-variabel dinamis di waktu-waktu tertentu. Sehingga
perlu untuk
menyimpan nilai dari variabel keadaan pada tiap-tiap waktu tertentu
itu.
Dalam kenyataannya, penerapan analisa Markov bisa dibilang
cukup
terbatas karena sulit untuk menemukan permasalahan yang memenuhi
semua
sifat yang diperlukan untuk analisa Markov, terutama persyaratan
bahwa
probabilitas transisi harus konstan sepanjang waktu.
Proses Markov Chain terdiri dari dua prosedur, yaitu menyusun
matriks
probabilitas transisi, dan kemudian menghitung kemungkinan market
share di
waktu yang akan datang dengan mengalikan nilai matriks dari
waktu
sebelumnya dengan matriks probabilitas transisi.
2.8 Sifat Markov
Dalam sifat Markov, jika diberikan kejadian-kejadian yang telah
berlalu (past
states) dan kejadian yang sedang berlangsung , maka
kejadian yang akan datang (future state) bersifat bebas
(independen) dari
kejadian-kejadian yang telah berlalu (past states) . Artinya,
kejadian yang akan datang (future state) hanya bergantung pada
kejadian
yang sedang berlangsung (present state) .
Untuk suatu pengamatan yang prosesnya sampai untuk waktu ke n,
maka
distribusi nilai proses dari waktu ke hanya bergantung pada nilai
dari
.
Jika , maka suatu proses dikatakan terjadi pada state pada waktu
.
Kapanpun suatu proses berada pada state , akan ada probabilitas
tetap yang
menyatakan bahwa state berikutnya (dari state ) adalah state .
Nilai dari
merepresentasikan probabilitas suatu proses yang berada pada state
dan
17
melakukan transisi ke state . Probabilitas bernilai positif dan
diasumsikan
bahwa suatu proses harus melakukan transisi ke suatu state, maka
dari itu
diperoleh :
dengan
dengan
State dikatakan accessible dari state jika , untuk beberapa
. Hal ini berarti bahwa state accessible dari state jika dan hanya
jika,
proses transisi dimulai dari state , dan ada probabilitas bahwa
proses tersebut
menuju ke state . Jika j tidak accessible dari , maka .
Dua state dan dikatakan berkomunikasi (communicate), jika
state
dan state saling accessible satu sama lain, sehingga dapat ditulis
.
(Ross, 2010:204)
Asumsi-asumsi yang perlu diperhatikan dalam rantai Markov adalah
sebagai
berikut :
2. Probabilitas transisi adalah tidak berubah selamanya.
3. Probabilitas transisi hanya tergantung pada masa sekarang, bukan
pada
periode sebelumnya.
(Yakub, 2008:18)
Keadaan transisi didapatkan setelah keadaan awal diberikan
perubahan melalui suatu matriks yang disebut Matriks Probabilitas
Transisi
( ) sebagai berikut: .
Matriks probabilitas transisi dari suatu rantai Markov adalah
suatu
matriks berderajat n dimana n tergantung kepada jumlah kejadian
atau state
pada rantai Markov tersebut. Elemen pada matriks probabilitas
transisi adalah
probabilitas perubahan suatu keadaan berada pada kejadian i jika
pada masa
sebelumnya berada pada keadaan j. Matriks probabilitas transisi
Markov ( )
dinyatakan sebagai berikut:
yang akan datang berdasarkan pada beberapa variabel peramal,
sering
berdasarkan data deret waktu historis.
(Gaspersz, 2005:72)
efektifitas dan efisiensi sistem peramalan, antara lain sebagai
berikut
(Gaspersz, 2005 : 74) :
b. Memilih item yang akan diramalkan
c. Mentukan horizon waktu peramalan, apakah jangka panjang (lebih
dari 1
tahun), jangka menengah (1-12 bulan), atau jangka pendek (1-30
hari).
d. Memilih model-model peramalan
f. Validasi model peramalan
Peramalan biasanya diklasifikasikan berdasarkan horizon waktu
masa
depan yang dicakupnya. Menurut Taylor (2004) dalam hubungannya
dengan
horizon waktu peramalan terbagi atas beberapa kategori,
yaitu:
19
harian.
b. Ramalan jangka menengah (medium-range forecast) mencakup
jangka
waktu satu atau dua bulan sampai satu tahun. Ramalan jangka waktu
ini
umumnya lebih berkaitan dengan rencana produksi tahunan dan
akan
mencerminkan hal-hal seperti puncak dan lembah dalam suatu
permintaan
dan kebutuhan untuk menjamin adanya tambahan untuk sumber
daya
untuk tahun berikutnya.
c. Ramalan jangka panjang (long-range forecast) mencakup periode
yang
lebih lama dari satu atau dua tahun. Ramalan ini berkaitan dengan
usaha
manajemen untuk merencanakan produk baru untuk pasar yang
berubah,
membangun fasilitas baru, atau menjamin adanya pembiayaan
jangka
panjang.
model keputusan untuk meramal:
pengambilan keputusan, emosi, pengalaman pribadi, dan sistem
nilai.
b. Peramalan Kuantitatif
dengan data masa lalu dan variabel sebab akibat untuk
meramalkan
permintaan. Pada dasarnya metode peramalan kuantitatif ini
dibedakan
menjadi dua:
Model ini melihat pada apa yang terjadi selama periode waktu
menggunakan seri data masa lalu untuk membuat ramalan.
2. Metode kausal (causal methods) atau metode korelasi
Metode kausal, bergabung menjadi variabel atau hubungan yang
bisa
mempengaruhi jumlah yang sedang diramal.
(Ekawanti, 2009:17-18)
Mean Absolute Percentage Error (MAPE) adalah rata-rata
persentase
kesalahan absolut, merupakan persentase kesalahan hasil peramalan
terhadap
permintaan aktual selama periode tertentu yang akan memberikan
informasi
persentase kesalahan terlalu tinggi atau terlalu rendah. Secara
matematis,
MAPE dirumuskan sebagai berikut:
adalah jumlah data peramalan
Mean Absolute Deviation (MAD) adalah rata-rata penyimpangan
absolut,
merupakan rata-rata kesalahan mutlak selama periode tertentu
tanpa
memperhatikan apakah hasil peramalan lebih besar atau lebih
kecil
dibandingkan kenyataannya. Secara matematis, MAD dirumuskan
sebagai
berikut:
adalah jumlah data peramalan
(teks, gambar, suara, animasi, video) di dalamnya yang menggunakan
protokol
HTTP (Hypertext Transfer Protocol) dan untuk mengaksesnya
menggunakan
perangkat lunak yang disebut browser.
(Arief, 2011:7)
Definisi 16 (Aplikasi Berbasis Web)
Aplikasi berbasis web adalah aplikasi yang berjalan di atas
platform browser,
meskipun mungkin dioptimasi untuk jenis browser tertentu.
Kelebihan aplikasi berbasis web :
1. Dapat diakses kapan pun dan darimana pun selama ada
internet.
2. Dapat diakses dengan hanya menggunakan web browser (umumnya
sudah
tersedia di PC, PDA, dan handphone terbaru), tidak perlu
menginstall
aplikasi khusus.
Kekurangan aplikasi berbasis web :
1. Antar muka yang dapat dibuat terbatas sesuai spesifikasi standar
untuk
membuat dokumen web dan keterbatasan web browser untuk
menampilkannya.
lambat.
PHP singkatan dari Hypertext Preprocessor yang digunakan sebagai
bahasa
script server side dalam pengembangan web yang disisipkan pada
dokumen
HTML.
Pada awalnya PHP merupakan kependekan dari Personal Home Page
(Situs personal). PHP pertama kali dibuat oleh Rasmus Lerdorf pada
tahun
1995. Pada waktu itu PHP masih bernama Form Interpreted (FI),
yang
22
wujudnya berupa sekumpulan skrip yang digunakan untuk mengolah
data
formulir dari web. Pada Juni 1998, singkatan PHP diubah menjadi
Hypertext
Preprocessor.
PHP merupakan bahasa pemrograman server side yang di desain
khusus
untuk aplikasi web yang ditambahkan ke dalam HTML. Bahasa
pemrograman
PHP dapat digabungkan dengan HTML dengan terlebih dahulu
memberikan
tanda tag buka dilanjutkan tanda tanya ( <? ) kemudian ditutup
dengan tanda
tanya dilanjutkan tanda tag tutup ( ?> ). Sifat server side
berarti pengerjaan
skrip akan dilakukan di server, baru kemudian hasilnya dikirim ke
browser.
Menurut Prasetyo (2008:14), kelebihan PHP dari bahasa
pemrograman
lain adalah:
1. Web Server yang mendukung PHP dapat ditemukan di mana-mana
dari
mulai IIS sampai dengan Apache, dengan konfigurasi yang relatif
mudah.
2. Dalam sisi pemahamanan, PHP adalah bahasa scripting yang paling
mudah
karena banyak referensinya.
3. PHP adalah bahasa open source yang dapat digunakan di berbagai
mesin
(Linux, Unix, Macintosh, Windows).
4. Dalam sisi pengembangan lebih mudah, karena banyaknya
milis-milis dan
developer yang siap membantu.
utama di dalamnya.
Dalam XAMPP terdapat instalasi modul PHP, MySQL, dan web
server
Apache.
sebagai server yang berdiri sendiri (localhost), yang terdiri atas
program
Apache HTTP Server, MySQL database, dan penerjemah bahasa yang
ditulis
dengan bahasa pemrograman PHP dan Perl. Nama XAMPP merupakan
23
singkatan dari X (empat sistem operasi apapun), Apache, MySQL, PHP
dan
Perl. Program ini tersedia dalam GNU General Public License dan
gratis,
merupakan web server yang mudah digunakan yang dapat melayani
tampilan
halaman web yang dinamis.
Definisi 19 (Web Hosting)
Web Hosting adalah jasa penyedia hosting di internet. Tugas web
hosting
adalah menyediakan dan mengelola ruang harddisk yang akan disewa
oleh
pemilik suatu domain untuk menyimpan file-file nya agar halaman web
si
pemilik domain dapat ditampilkan di browser internet. Pada
dasarnya,
perusahaan web hosting adalah lembaga bisnis yang menyediakan
komputer
server yang mampu melayani banyak permintaan data, akses internet
24 jam,
dan IP public.
(Danuri & Darmanto, 2014:24)
web authoring tool, yaitu perangkat lunak yang digunakan untuk
mendesain
tampilan halaman web. Adobe Dreamweaver CS3 mempunyai
kemampuan
untuk mengedit kode pada aplikasi web dengan bahasa pemrograman
yang
berbeda-beda, seperti PHP, ASP, Java Server Pages (JSP), dan
lain-lain.
2.19 Waterfall Model
Waterfall model adalah sebuah contoh dari proses perencanaan,
dimana semua
proses kegiatan harus terlebih dulu direncanakan dan dijadwalkan
sebelum
dikerjakan.
24
Model ini melakukan pendekatan secara sistematis dan
berurutan.
Disebut dengan waterfall karena tahap demi tahap yang dilalui
harus
menunggu selesainya tahap sebelumnya dan berjalan berurutan.
Berikut fase-
fase dalam model waterfall menurut referensi Sommerville:
1. Requirements Definition
sistem. Kemudian akan ditunjukan dengan sebuah spesifikasi
sistem
dengan rinci.
Pada tahapan ini, membentuk arsitektur dari sistem secara
keseluruhan
dengan cara membuat desain dari alokasi spesifikasi sistem
untuk
hardware maupun software.
Pada tahapan ini, desain dari software direalisasikan dalam
sejumlah set
program atau unit program. Pengujian dilakukan untuk memverifikasi
dari
setiap unit agar memenuhi spesifikasi.
4. Integration and System Testing
Program akan diintegrasikan dan diuji sebagai sebuah sistem yang
lengkap
untuk memastikan bahwa spesifikasi software yang diinginkan
telah
dipenuhi. setelah melakukan pengujian, maka sistem software
akan
dikirimkan kepada konsumen.
Tahapan ini biasanya merupakan fase yang paling lama. Sistem
sudah
berjalan dan sudah dapat digunakan. Pemeliharaan mencakup
adanya
koreksi pada error yang tidak ditemukan pada tahap-tahap
terdahulu,
dan/atau peningkatkan kemampuan sistem dengan menambahkan
beberapa
kriteria yang baru ditemukan dengan melakukan penyesuaian
pada
perubahan-perubahan di lingkungan eksternalnya atau konsumen
yang
membutuhkan perkembangan fungsional atau unjuk kerja.
Pemeliharaan
perangkat lunak mengaplikasi lagi setiap fase sebelumnya,
lalu
memperbaiki program yang sebelumnya dan tidak membuat yang
baru
lagi.
langkah-langkah penyelesaian suatu masalah. Flowchart merupakan
cara
penyajian dari suatu algoritma.
terurai, rapi, dan jelas.
2. Menggunakan simbol-simbol standar.
1. Flow direction symbols
• Disebut juga connecting line.
3. Input / Output symbols
output.
26
Symbol arus / flow, yaitu menyatakan jalannya arus suatu
proses.
Simbol communication link, yaitu menyatakan transmisi data dari
satu lokasi ke lokasi lain.
Simbol connector, berfungsi menyatakan sambungan dari proses ke
proses lainnya dalam halaman yang sama.
Simbol offline connector, menyatakan sambungan dari proses ke
proses lainnya dalam halaman yang berbeda.
Tabel 2.2 Processing Symbols
Simbol process, yaitu menyatakan suatu tindakan (proses) yang
dilakukan oleh komputer.
Simbol manual, yaitu menyatakan suatu tindakan (proses) yang tidak
dilakukan oleh komputer.
Simbol decision, yaitu menunjukkan suatu kondisi tertentu yang akan
menghasilkan dua kemungkinan (ya/tidak).
Simbol preparation, yaitu menyatakan penyediaan tempat penyimpanan
suatu pengolahan untuk memberi harga awal.
Simbol predefined process, untuk menyatakan sekumpulan
langkah-langkah proses yang ditulis sebagai prosedur.
Simbol terminal, yaitu menyatakan permulaan atau akhir suatu
program.
Simbol keying operation, menyatakan segala jenis operasi yang
diproses menggunakan suatu mesin yang memiliki keyboard.
27
Simbol offline-storage, menyatakan bahwa data dalam simbol ini akan
disimpan ke suatu media tertentu.
Tabel 2.3 Input/Output Symbols
Simbol manual input, memasukan data secara manual dengan
menggunakan online keyboard.
Simbol input/output, menyatakan proses input atau output tanpa
tergantung jenis peralatannya.
Simbol punched card, menyatakan input berdasarkan dari kartu atau
output ditulis ke kartu.
Simbol magnetic tape, menyatakan input berasal dari pita magnetis
atau output disimpan ke pita magnetis.
Simbol disk storage, menyatakan input berasal dari disk atau output
disimpan ke disk.
Simbol document, mencetak keluaran dalam bentuk dokumen (melalui
printer)
Simbol display, mencetak keluaran dalam layar monitor.
28
Object Oriented Programming atau pemrograman berorientasi objek
adalah
suatu strategi pembangunan perangkat lunak sebagai kumpulan objek
yang
berisi data dan operasi yang diberlakukan terhadapnya. Berikut ini
adalah
beberapa konsep yang terdapat di dalam pemrograman berorientasi
objek:
• Kelas (Class)
Sebuah kelas akan mempunyai sifat (atribut), kelakuan (metode),
dan
hubungan (relationship).
• Objek (Object)
Objek adalah abstraksi dan sesuatu yang mewakili dunia nyata seperi
benda,
manusia, tempat, atau hal-hal lain yang bersifat abstrak. Objek
merupakan
suatu entitas yang mampu menyimpan informasi (status) dan
mempunyai
operasi (kelakuan) yang dapat diterapkan atau dapat berpengaruh
pada
objeknya.
• Metode (Method)
Metode pada sebuah kelas hampir sama dengan fungsi atau prosedur
pada
metodologi struktural. Sebuah kelas boleh memiliki lebih dari satu
metode.
Metode merupakan fungsi atau transformasi yang dapat dilakukan
terhadap
objek atau dilakukan oleh objek.
• Atribut (Attribute)
Atribut dalam sebuah kelas adalah variabel global yang dimiliki
oleh sebuah
kelas. Atribut dapat berupa nilai atau elemen-elemen data yang
dimiliki oleh
objek dalam sebuah kelas objek. Atribut sebaiknya bersifat privat
untuk
menjaga konsep enkapsulasi.
menyembunyikan implementasi dan objek sehingga objek lain
tidak
mengetahui cara kerjanya.
seluruh definisi dan objek lain sebagai bagian dan dirinya.
• Polimorfisme (Polymorphism)
Kemampuan suatu objek untuk digunakan di banyak tujuan dengan
nama
yang sama sehingga menghemat baris program.
• Reusability
(Sukamto & Shalahuddin, 2013:100-110)
2.22 Perancangan Program
Menurut Whitten & Bentley, UML (Unified Modelling Language)
adalah
sebuah kumpulan dari konvensi permodelan yang digunakan untuk
menentukan atau menggambarkan sebuah sistem software yang terkait
dengan
objek. Dalam memodelkan suatu sistem, UML dapat dikelompokan
menjadi
empat kelompok diagram, yaitu: Use case diagram, Activity diagram,
Class
diagram, dan Sequence diagram.
Berdasarkan pengertian Whitten & Bentley, Use Case Diagram
adalah diagram
yang menggambarkan interaksi antara sistem dengan hal-hal eksternal
dari
sistem dan user. Dengan kata lain, secara grafis menjelaskan siapa
yang akan
mempergunakan sistem dan dengan cara apa user diharapkan
untuk
berinteraksi dengan sistem.
(Whitten & Bentley, 2007:246)
30
Dalam use case diagram terdapat tiga komponen utama yaitu actor,
use
case, dan hubungan, seperti dijelaskan dalam tabel berikut:
Tabel 2.4 Komponen Use Case Diagram
No. Simbol Gambar Keterangan
perlu berinteraksi dengan sistem
dilakukan dalam sistem berupa
untuk mencapai tujuan tertentu.
dua simbol pada use case diagram.
(Whitten & Bentley, 2007:384)
Use Case1
31
Use case narrative merupakan salah satu bagian dari use case
modeling yang
berisikan rincian dari setiap event dan menerangkan bagaimana
user
berinteraksi dengan sistem selama event terjadi. Menurut Whitten
& Bentley
(2007:256), penjelasan secara narasi akan membantu mempercepat
pemahaman
terhadap sistem.
Activity Diagram adalah diagram yang dipergunakan untuk
menggambarkan
alur dari proses bisnis secara grafis, langkah-langkah dari use
case, dan logika
dari karakteristik objek.
(Whitten & Bentley, 2007:390)
activity diagram:
Notasi Keterangan
Initial Node
Actions
disusun secara keseluruhan akan menggambarkan
keseluruhan aktivitas dalam activity diagram
Flow
diagram. Jika notasi ini keluar dari decision dibutuhkan
kata-
kata untuk mengidentifikasikannya.
dan merge.
1. Decision
menghasilkan dua atau lebih flow lainnya yang
32
2. Merge
Dua atau lebih flow hasil dari decision akan masuk ke
dalam merge dan menggabunkannya menjadi satu flow.
Activity Final
Gambar 2.2 Contoh Activity Diagram
Definisi 27 (Class Diagram)
penggambaran grafis dan deskripsi dari class dan objek, beserta
hubungannya
satu sama lain. Diagram ini menunjukkan kelas-kelas objek yang
menyusun
sebuah sistem dan juga yang menghubungkan antar kelas objek
tersebut.
Dalam class diagram terdapat tiga aspek utama, yaitu:
1. Class Name
Gambar 2.3 Struktur Class
Attribute dan behavior dalam class diagram dapat memiliki salah
satu sifat
berikut:
bersangkutan.
b. Protected (#) : hanya dapat dipanggil oleh class yang
bersangkutan dan
anak-anak yang mewarisinya.
Menurut Whitten & Bentley (2007, p373-380) hubungan antar class
terdiri dari
3 hubungan:
1. Asosiasi, hubungan statis antar class. Umumnya menggambarkan
class
yang memiliki atribut berupa class lain, atau class yang harus
mengetahui
eksistensi class lain. Hubungan ini diperlukan agar sebuah class
dapat
menyampaikan pesan kepada class lainnya. Asosiasi digambarkan
dengan
sebuah garis tanpa tanda panah.
2. Generalisasi dan Spesialisasi, merupakan hubungan yang
menyatakan
mengandung supertype class ataupun subtype class. Supertype class
jika
mengandung atribut dan behavior yang dapat diwariskan kepada class
lain.
Dikatakan subtype class jika memiliki atribut dan behavior yang
unik dan
mewarisi atribut dan behavior dari supertype class.
Generalisasi
digambarkan dengan garis yang memiliki tanda panah tertutup
kosong
pada salah satu ujungnya yang mengarah ke supertype class.
Atribut dan behavior dalam class diagram dapat memiliki salah satu
sifat
berikut:
a. Private (-), tidak dapat dipanggil di luar class yang
bersangkutan.
b. Protected (#), hanya dapat dipanggil oleh class yang
bersangkutan dan
anak-anak yang mewarisinya.
3. Agregasi, hubungan yang menyatakan bagian dari objek lainnya,
dapat
didefinisikan seperti objek a mengandung objek b dan objek b bagian
dari
objek a. Hubungan asimetris, artinya tidak berlaku sebaliknya.
Hubungan
34
agregasi merupakan suatu bentuk relasi yang jauh lebih kuat dari
asosiasi.
Agregasi dapat diartikan bahwa suatu class merupakan bagian dari
class
yang lain namun bersifat tidak wajib. Agregasi digambarkan
dengan
sebuah garis yang memiliki bentuk diamond kosong di salah satu
ujung
garisnya.
4. Komposisi, merupakan relasi yang paling kuat dibandingkan
dengan
asosiasi maupun agregasi. Pada komposisi diartikan bahwa suatu
class
merupakan bagian wajib dari class yang lain. Komposisi
digambarkan
dengan sebuah garis yang memiliki bentuk diamond utuh di salah
satu
ujung garisnya.
diagram UML yang memodelkan logika dari sebuah use case
dengan
menggambarkan bagaimana objek berinteraksi satu dengan yang lain
melalui
pesan. Notasi yang digunakan dalam sequence diagram adalah sebagai
berikut:
Tabel 2.6 Notasi Sequence Diagram
Notasi Keterangan
berinteraksi dengan system
pada class diagram
sedang aktif berinteraksi dengan system
35
dikirimkan yaitu berupa behavior
Tabel 2.6 Notasi Sequence Diagram (lanjutan)
Notasi Keterangan
yang mengalami perulangan (loops), seleksi
(alternate fragments), atau kondisi opsional
(optional).
36
Model View Controller (MVC) adalah sebuah sebuah metode untuk
membuat
sebuah aplikasi dengan memisahkan data dari tampilan dan cara
memprosesnya. MVC diperkenalkan pertama sekali oleh para peneliti
di
XEROC PARAC yang bekerja untuk pembuatan bahasa pemrograman
Smalltalk pada tahun 1970-1980. Metode MVC membagi aplikasi menjadi
tiga
bagian yaitu:
1. Model, berfungsi sebagai pengelola perilaku dan data pada domain
aplikasi,
melakukan tanggapan terhadap permintaan informasi dan
merespons
instruksi untuk merubah suatu kondisi (state).
2. View, menerjemahkan informasi yang berasal dari model ke dalam
sebuah
bentuk yang sesuai untuk berinteraksi dengan user. Biasanya berupa
satu
atau lebih elemen antarmuka user.
3. Controller, menerima masukan dari user dan memicu respons
dengan
membuat pemanggilan ke objek-objek model.
Kelebihan-kelebihan metode MVC adalah sebagai berikut:
37
1. Bagian model memberikan penempatan detil data yang terpisah dan
tidak
disebar di dalam keseluruhan aplikasi sehingga meningkatkan
fleksibilitas
dalam proses pemeliharaan aplikasi.
2. Pemisahan model juga membuat objek model dapat digunakan oleh
aplikasi
lain dengan kebutuhan yang sama (reuse).
3. Pemisahan view memudahkan perakitan/integrasi dengan
komponen
aplikasi lainnya tanpa harus memperhatikan detil proses. Desainer
hanya
berkonsentrasi pada bentuk dan tampilan antarmuka pemakai
(user
interface).
mengganggu antarmuka pemakai. Detil proses disembunyikan oleh
controller sehingga tidak mengganggu presentasi ke user
maupun
pengelolaan data/informasi (manajemen database).
1. Peningkatan kompleksitas aplikasi karena arsitektur aplikasi
yang terbagi
menjadi tiga bagian.
ke komponen lainnya dengan sedikit/tanpa informasi detil dari
komponen
yang diacu tersebut).
(Rahmadiansyah & Irwan, 2012)
Definisi 30 (Interaksi Manusia dan Komputer (IMK))
Interaksi manusia komputer adalah disiplin ilmu yang mempelajari
hubungan
antara manusia dan komputer yang meliputi perancangan, evaluasi,
dan
implementasi antarmuka pengguna komputer agar mudah digunakan
oleh
manusia. Sebuah sistem dapat disebut interaktif apabila sistem
tersebut dapat
berkomunikasi dengan pengguna, dengan tujuan agar sistem dapat
berguna
bagi pengguna.
emas yang perlu diperhatikan (Shneiderman & Plaisant,
2010:88-89) :
1. Berusaha untuk konsisten.
Diperlukan urutan aksi yang konsisten pada situasi yang sama.
Konsistensi
juga harus diterapkan pada prompts, menus, dan layar bantu.
2. Memungkinkan penggunaan yang universal.
Mengenali kebutuhan pengguna yang beragam dari pengguna
pemula
(novice) sampai pengguna ahli (expert) dengan merancang konten
yang
beragam, misal: penjelasan untuk pengguna pemula sampai shortcut
untuk
pengguna yang sudah ahli.
Untuk setiap tindakan yang dilakukan user, diharapkan adanya umpan
balik
dari sistem. Untuk tindakan yang sering terjadi dan tidak
membutuhkan
banyak aksi, umpan balik dapat dibuat sederhana, sedangkan tindakan
yang
jarang dilakukan dan memerlukan banyak aksi harus lebih
ditonjolkan.
4. Merancang dialog yang memberikan penutupan (keadaan
akhir).
Urutan aksi yang harus disusun ke dalam kelompok awal, tengah, dan
akhir.
Suatu umpan balik yang informatif pada akhir pekerjaan sebaiknya
dibuat
untuk mengindikasikan bahwa pekerjaan tersebut telah selesai dan
siap
melanjutkan ke aksi berikutnya.
kesalahan serius. Jika terjadi kesalahan, sistem harus dapat
mendeteksi
kesalahan tersebut dan menawarkan penanganan kesalahan yang
sederhana.
6. Memungkinkan pengembalian aksi yang sebelumnya.
Fitur untuk mengurangi kekhawatiran user karena user tahu bahwa
jika ada
kesalahan yang dibuat dapat dikembalikan lagi ke aksi
sebelumnya.
7. Mendukung pusat kendali internal.
Menjadikan user sebagai yang mengendalikan sistem, bukan yang
dikendalikan oleh sistem.
Mengingat keterbatasan manusia dalam pemrosesan informasi dalam
jangka
pendek, sebuah sistem diharapkan dibuat dengan tampilan
sesederhana
mungkin, beberapa halaman dijadikan satu, frekuensi pergerakan
window
39
dikurangi dan harus ada waktu yang cukup bagi user untuk
mempelajari
kode-kode, singkatan, serta urutan aksi. Informasi seperti
singkatan atau
kode sebaliknya tersedia.
terdapat juga lima faktor manusia terukur yang digunakan untuk
mengevaluasi
perancangan desain antarmuka, yaitu (Shneiderman & Plaisant,
2010:32) :
1. Waktu pembelajaran (time to learn)
Berapa lama waktu yang dibutuhkan oleh anggota dari
sekelompok
komunitas pengguna untuk mempelajari cara menggunakan
perintah-
perintah yang digunakan untuk menyelesaikan sebuah tugas.
2. Kecepatan kinerja (speed of performance)
Berapa lama waktu yang diperlukan untuk menyelesaikan suatu
tugas.
3. Tingkat kesalahan pengguna (rate of errors by users)
Mengukur berapa banyak kesalahan yang terjadi saat aplikasi
menyelesaikan suatu tugas. Penanganan kesalahan merupakan hal
yang
penting dalam penggunaan antarmuka dan membutuhkan
pembelajaran
yang luas.
hari, atau minggu. Daya ingat sering dikaitkan dengan waktu
pembelajaran
dan biasanya frekuensi penggunaan juga memainkan peran
penting.
5. Kepuasan subjektif (subjective satisfication)
Mengukur sebarapa jauh pengguna menyukai berbagai aspek dari
antarmuka pengguna.