BAB 2 LANDASAN TEORI 2.1 Sistem Tenaga Listrik

advertisement
BAB 2
LANDASAN TEORI
2.1 Sistem Tenaga Listrik
2.1.1 Pengertian Sistem Tenaga Listrik
Secara umum sistem tenaga listrik terdiri atas komponen tenaga listrik
yaitu pembangkit tenaga listrik, sistem transmisi dan sistem distribusi. Ketiga
bagian ini merupakan bagian utama pada suatu rangkaian sistem tenaga listrik
yang bekerja untuk menyalurkan daya listrik dari pusat pembangkit ke pusatpusat beban. Rangkaian sistem tenaga listrik dapat dilihat pada gambar 2.1
dibawah berikut :
Gambar 2.1 Rangkaian Sistem Tenaga Listrik
Energi listrik yang dihasilkan di pusat pembangkit listrik akan disalurkan
melalui saluran transmisi kemudian melalui saluran distribusi akan sampai ke
konsumen. Berikut ini penjelasan mengenai bagian utama pada sistem tenaga
listrik pada umumnya, yaitu :
1. Pusat Pembangkit Listrik (Power Plant)
Pusat pembangkit listrik merupakan tempat energi listrik pertama
kali dibangkitkan, dimana terdapat turbin sebagai penggerak awal
(PrimeMover) dan generator yang membangkitkan listrik dengan
mengubah tenaga turbin menjadi energi listrik. Biasanya dipusat
pembangkit listrik juga terdapat gardu induk. Peralatan utama pada
gardu induk antara lain : transformer,
yang berfungsi untuk
menaikkan tegangan generator (11,5kV) menjadi tegangan transmisi
atau tegangan tinggi (150kV) dan juga peralatan pengaman dan
pengatur. Secara umum, jenis pusat pembangkit dibagi kedalam dua
bagian besar yaitu pembangkit hidro yaitu PLTA (Pembangkit Listrik
Tenaga Air) dan pembangkit thermal diantaranya yaitu PLTU (Pusat
Listrik Tenaga Uap), PLTG (Pusat Listrik Tenaga Gas), PLTN
(Pusat Listrik Tenaga Nuklir), dan PLTGU (Pusat Listrik Tenaga
Gas Uap).
2. Transmisi Tenaga Listrik
Transmisi tenaga listrik merupakan proses penyaluran tenaga
listrik dari pusat pembangkitan listrik hingga saluran distribusi
listrik sehingga nantinya dapat tersalurkan pada pengguna listrik.
3. Sistem Distribusi
Sistem distribusi ini adalah sub sistem tenaga listrik yang
langsung berhubungan dengan pengguna listrik dan pada umumnya
berfungsi dalam hal penyaluran tenaga listrik ke beberapa tempat.
Sub sistem ini terdiri dari : pusat pengatur atau gardu induk, gardu
hubung, saluran tegangan menengah atau jaringan primer (6 kV
dan 20 kV) yang berupa saluran udara atau kabel bawah tanah,
saluran tegangan rendah atau jaringan sekunder (380 V dan 220 V),
gardu distribusi tegangan yang terdiri dari panel-panel pengatur
tegangan baik tegangan menengah ataupun tegangan rendah, dan
trafo.
(Joko et al, 2010:1-3)
2.1.2 Operasi Sistem Tenaga Listrik
Pada bagian sebelumya bisa dilihat pada gambar bagaimana sistem
tenaga listrik yang mendeskripsikan hubungan antara masing-masing sistem
listrik.Pembangkit-pembangkit listrik memiliki lokasi yang saling berjauhan
satu sama lain dan terhubung satu sama lain melalui sistem transmisi yang
luas untuk mendistribusikan tenaga listrik pada beban yang tersebar. Ini
bisa dapat dikatakan sebagai sistem interkoneksi. Melalui adanya sistem
interkoneksi tersebut menyebabkan :
1. Keandalan sistem yang semakin tinggi
2. Efisiensi pembangkitan tenaga listrik dalam sistem meningkat
3. Mempermudah penjadwalan pembangkit
Sebuah sistem tenaga listrik merupakan sebuah unit usaha dimana selain faktor
teknis, faktor ekonomis juga diperhatikan karena pengaruhnya sangat domiman.
Dalam pengeoperasian sistem tenaga listrik ini, pendapatan dan pengeluaran harus
dijaga agar tercipta kondisi yang seimbang sehingga dapat mencapai keuntungan
yang layak. Pendapatan dalam sistem tenaga listik ini berdasarkan jumlah penjualan
listrik ke konsumen dan biasanya dalam bentuk pemakaian energi (kWh) serta
harganya yang diatur dalam sistem tariftertentu (di Indonesia menggunakan
Keppres). Sedangkan pengeluaran dalam mengoperasikan sistem tenaga listrik ini
meliputi : belanja pegawai, belanja barang dan jasa, pemeliharaan dan penyusutan,
penelitian atau pengembangan, pajak, bahan baku energi (BBM, Batubara, Nuklir,
Air, dsb), Losses, dan lain-lain.
Dalam pembangkitan tenaga listrik ada empat komponen biaya yang biasanya
harus diperhitungkan, yaitu:
1. Komponen A merupakan fixed cost, yakni biaya yang harus tetap
dikeluarkan terlepas dari pembangkit listrik tersebut dioperasikan atau tidak,
misalnya:pekerjaan sipil, biaya pembelian turbin, generator, dan lain-lain.
2. Komponen B merupakan fixed cost, yakni biaya yang tetap dikeluarkan
untuk operasi dan pemeliharaan pembangkit, seperti gaji pegawai, biaya
pemeliharaan, dan lain-lain.
3. Komponen C merupakan fuel cost atau biaya bahan bakar yakni biaya bahan
bakar yang berubah-ubah tergantung dari beberapa faktor. Beberapa faktor
yang mempengaruhi harga komponen ini misalnya banyaknya konsumsi
bahan bakar yang diperlukan, jenis bahan bakarnya, lama waktu penyalaan
pembangkit, dan beberapa hal lainnya.
4. Komponen D merupakan variable cost yakni biaya dapat berubah-ubah.
Misalnya, biaya untuk pelumas. Semakin sering dan berat kerja suatu
pembangkit, semakin juga dibutuhkan banyak pelumas. Maka, biaya
komponen D ini akan meningkat.
Bagian terbesar dari pembiayaan dalam pembangkitan tenaga listrik adalah
komponen C atau biaya bahan bakar yang mencakup hampir 70% dari total
pembiayaan. Naik atau turunnya biaya bahan bakar tergantung pada penggunaan
listrik oleh konsumen. Oleh karena itu, sangat diperlukan cara pengoperasian yang
optimal.
(Nadjamuddin, 2011:141)
2.1.3 Tujuan Operasi Sistem Tenaga Listrik
Tujuan utama dari operasi sistem tenaga listrik ini adalah untuk
memenuhi kebutuhan beban listrik secara efisien (beban terpenuhi dengan
biaya yang minimum), dengan mempertimbangkan sasaran operasi tenaga
listrik yaitu sistem harus dapat memenuhi standar dalam keamanan
lingkungan, memiliki keandalan yang baik, dan dapat melayani permintaan
secara berkala dari waktu ke waktu (Nadjamuddin, 2011:142).
Dalam mencapai tujuan dari operasi sistem tenaga listrik maka perlu
diperhatikan tiga hal berikut ini, yaitu :
1. Ekonomi (economy) berarti listrik harus dioperasikan secara
ekonomis, tetapi dengan tetap memperhatikan keandalan dan
kualitasnya.
2. Keandalan (security) merupakan tingkat keamanan sistem terhadap
kemungkinan terjadinya gangguan. Jika terjadi gangguan pada
pembangkit maupun transmisi dapat diatasi tanpa mengakibatkan
pemadaman di sisi konsumen.
3. Kualitas (quality) tenaga listrik yang diukur dengan kualitas tegangan
dan frekuensi yang dijaga sedemikian rupa sehingga tetap pada
kisaran yang ditetapkan (Wikarsa, 2010:4).
Sebagai gambaran dari tujuan operasi sistem tenaga listrik dapat
dilihat seperti pada gambar 2.2 dibawah ini.
Ekonomi
Keandalan
(Sekuriti)
Mutu
Gambar 2.2 Tujuan Operasi Sistem Tenaga Listrik
2.1.4 Kondisi Operasi Sistem Tenaga Listrik
Kondisi-kondisi yang mungkin terjadi dalam menjalankan sistem tenaga
listrik adalah sebagai berikut :
1. Normal adalah seluruh konsumen dapat dilayani, kendala operasi
teratasi dan keamanan sistem dapat dipenuhi
2. Siaga adalah seluruh konsumen dapat dilayani, kendala operasi dapat
dipenuhi, tetapi keamanan sistem tidak dapat dipenuhi.
3. Darurat adalah konsumen tidak dapat dilayani, kendala operasi tidak
dapat dipenuhi.
4. Pemulihan adalah adalah peralihan kondisi darurat tenaga listrik yang
diukur dengan kualitas tegangan dan frekuensi yang dijaga sedemikian
rupa sehingga tetap pada kisaran yang ditetapkan.
(Wikarsa,2010:6)
2.1.5 Karakteristik Pembangkit Listrik
Sangat penting untuk mengenal karakteristik pembangkit listrik yang
berguna untuk meminimalisir pembiayaan bahan baku energi. Ketika sudah
mengenal karakteristik pembangkit listrik maka pengaturan output pembangkit
dapat diatur dengan baik. Berdasarkan karakteristik pembangkit listrik, dapat
dibuat model secara matematis untuk proses optimasi agar dihasilkan biaya
pembangkitan yang ekonomis.
Ada berbagai macam jenis pembangkit listrik yaitu Pembangkit Listrik
Tenaga air (PLTA), Pembangkit Listrik Tenaga Uap (PLTU), Pembangkit
Listrik Tenaga Gas Alam (PLTG), Pembangkit Listrik Tenaga Panas Bumi
(PLTP), Pembangkit Listrik Tenaga Diesel (PLTD), dan Pembangkit Listrik
Tenaga Gas dan Uap (PLTGU).
Pembangkit listrik tersebut dapat diklasifikasikan menjadi dua bagian
besar berdasarkan karakteristiknya yaitu pembangkit hidro (PLTA) dan
pembangkit thermal (PLTU, PLTG, PLTP, PLTD, PLTGU).
Pengoptimasian pada kedua klasifikasi pembangkit tersebut sangatlah
penting untuk memenuhi kebutuhan beban dengan biaya minimum. Namun, di
antara dua karakteristik pembangkit tersebut, pembangkit thermal cukup
menjadi perhatian dikarenakan biaya bahan bakar dan sering berubah. Oleh
karena itu, untuk lebih lanjutnya akan banyak dibahas mengenai pembangkit
thermal ini.
2.1.6 Pembangkit Listrik
Mengoperasikan suatu sistem tenaga listrik yang tediri dari beberapa
pusat pembangkit listrik memerlukan suatu koordinasi yang tepat dalam
melakukan penjadwalan pembebanan besarnya daya listrik yang dibangkitkan
oleh masing-masing pembangkit listrik, sehingga diperoleh biaya pembangkit
yang minimum.
Terdapat dua pokok permasalahan yang harus dipecahkan dalam operasi
ekonomis pembangkitan pada sistem tenaga listrik yaitu :
1. Pengaturan Unit Pembangkit (Unit Commitment)
Penanganan
biaya
operasi
pembangkit
tenaga
listrik
bisa
diminimalkan dengan cara mencari kombinasi yang tepat dari unit
pembangkit yang ada. Hal ini dikenal dengan pengaturan unit
pembangkit. Pada pengaturan unit akan dibuat skema urutan prioritas,
yaitu metode pengoperasian unit pembangkit berdasarkan total biaya
rata-rata bahan bakar yang paling murah.
Pengaturan unit ini dilakukan untuk menentukan unit mana saja yang
beroperasi dan tidak beroperasi pada jam tertentu sehingga dapat
dibuat kombinasi operasi dari unit-unit yang ada. Dalam mengatur
unit-unit tersebut digunakan pertimbangan teknis dan ekonomis.
2. Penjadwalan Ekonomis (Economic Dispatch)
Penjadwalan ekonomis merupakan suatu usaha untuk menentukan
besar daya yang harus disuplai dari tiap unit generator untuk
memenuhi beban tertentu dengan cara membagi beban tersebut pada
unit-unit pembangkit yang ada dalam sistem secara optimal ekonomis
dengan tujuan meminimumkan biaya operasi pembangkitan.
(Nadjamuddin, 2011:186-187)
Penjadwalan ekonomis (Economic Dispatch) merupakan salah satu
pokok permasalahan dalam operasi ekonomis sistem tenaga listrik yang akan
dibahas lebih detail khususnya dalam kasus pembangkit thermal pada
penulisan ini.
2.1.7 Unit Pembangkit Thermal
Secara umum, unit pembangkit thermal terdiri dari boiler, turbin, dan
generator yang digunakan untuk mengubah bahan bakar menjadi energi
listrik. Unit pembangkit thermal bisa dilihat seperti pada gambar 2.3 berikut
ini:
Gambar 2.3 Sistem Pembangkit Thermal (Penangsang, 2011)
Dari gambar diatas, maka dapat diketahui beberapa karakteristik dari unit
pembangkit thermal yaitu :
1 Karakteristik Input Output Pembangkit Thermal
Karakteristik input-output pembangkit menggambarkan hubungan
antara input bahan bakar (Rp/jam) dan output yang dihasilkan oleh
pembangkit (MW). Dengan mengetahui perbedaan karakteristik di
antara semua pembangkit yang ada, optimasi pengoperasian
pembangkit dapat dilakukan. Secara umum, karakteristik input-output
pembangkit didekati dengan fungsi polinomial yaitu :
F(P) = ai + bi+ ci
Dimana:
atau
= input bahan bakar (Btu/jam)
F = biaya bahan bakar pembangkit thermalke- i (Rp/jam)
Pi = output pembangkit termal ke- I (MW)
ai ,bi,ci = konstanta input-output pembangkitthermal ke- i (
Rp/MW.jam)
i : indeks pembangkit ke i (i =1,2,3,.....N)
Gambar 2.4 Kurva Karakteristik Input-Output Unit Thermal
Gambar 2.4 ini menunjukkan karakteristik input dan output dari
unit thermal dalam bentuk yang ideal. Input dari pembangkit ditunjukkan
pada sumbu tegak yaitu energi panas yang dibutuhkan dalam bentuk
Mbtu/h (Million of btu per hour) karena digunakan satuan British
Temperatur Unit (apabila menggunakan SI menjadi MJ/h atau Kcal/H)
atau biaya total per jam (Rp/jam). Output dari pembangkit ditunjukkan
pada sumbu mendatar yaitu daya listrik, yang memiliki batas-batas kritis
operasi yaitu daya maksimum dan minimum dari pembangkit. Kurva ini
didapat dari hasil tes panas pada pembangkit uap. Gambar ini juga
digambarkan sebagai kurva non-linier yang kontinu. (Saadat,2004:270)
2. Karakteristik Kenaikan Biaya atau Panas Pembangkit Thermal
Karakteristik lain yang perlu untuk diketahui dari suatu unit
pembangkit thermal adalah karakteristik laju kenaikan panas yang dapat
juga dikatakan sebagai karakteristik kenaikan biaya. Bentuk karakteristik
laju kenaikan panas ini dapat dilihat pada gambar dibawah ini.
Karakteristik ini merupakan suatu kemiringan (slope) dari karakteristik
input dan output. Pada karakteristik ini ditunjukkan nilai Btu per kWh
atau Rp/kWh terhadap daya keluaran dalam satuan MW. Karakteristik ini
lebih lanjut digunakan untuk perhitungan pembebanan ekonomis dari
unit pembangkit. Jika persamaan input-output unit pembangkit
dinyatakan dalam pendekatan (aproksimasi) dengan menggunakan
persamaan kuadrat, maka karakteristik kenaikan biaya akan mempunyai
bentuk garis lurus(Saadat,2004:271). Kurva Karakteristik Kenaikan
Biaya atau Panas Pembangkit Thermal dapat dilihat pada gambar 2.5
dibawah ini:
Gambar 2.5 Kurva Karakteristik Kenaikan Biaya atau Panas Unit
Thermal
3. Karakteristik Efisiensi Terhadap Output
Karakteristik laju panas juga salah satu karakteristik yang perlu
diketahui. Pada karakteristik ini, input merupakan jumlah panas per
kilowattjam (Btu/kWh) dan output merupakan daya listrik dalam satuan
MW. Kurva Karakteristik Efisiensi Terhadap Output dapat dilihat pada
gambar 2.6 di bawah berikut:
Gambar 2.6 Kurva Karakteristik Efisiensi terhadap Output
Karakteristik laju panas ini menunjukkan kerja sistem dari sistem
pembangkit thermal seperti kondisi uap, temperatur panas, tekanan
kondensor dan siklus aliran air secara keseluruhan. Pada karakteristik
terlihat bahwa efisiensi yang baik sebuah pembangkit termal terletak
pada daerah limit maksimalnya (Adrianti,2010).
2.2 Economic
Dispatch
pada
Unit
Pembangkit
Thermal
dengan
Memperhitungkan Rugi-rugi Transmisi
Pada subbab 2.1.7 telah dibahas mengenai operasi pada unit pembangkit
thermal dimana terdapat berbagai kurva karakteristik. Di sini, perlu diperhatikan
mengenai kurva karakteristik input output yang selanjutnya akan menjadi dasar
permodelan fungsi biaya dalam Economic Dispatch, selain itu kurva incremental
heat (kenaikan panas) juga penting untuk mengukur berapa besar biaya yang
akan dikeluarkan apabila jumlah daya ditambahkan.
Pengoperasian ekonomis pembangkit tenaga listrik harus memenuhi
batasan-batasan atau constraints tertentu. Dua constraints yang digunakan dalam
penelitian ini adalah equality constraints dan inequality constraints. Equality
constraint merupakan batasan kesetimbangan daya, yang mengharuskan total
daya yang dibangkitkan oleh masing-masing pembangkit harus sama dengan
jumlah total kebutuhan beban dan rugi-rugi transmisi, yang dapat dinyatakan
dengan persamaan berikut:
=
+
Dengan :
Pg =
i
Dimana:
Pgi = Output masing-masing Pembangkit
n
= Total Pembangkit
PD = Total Daya Yang Dibutuhkan
PL = Total Rugi-rugi Transmisi
Sebuah sistem tenaga listrik yang terdiri dari beberapa unit pembangkit
yang terhubung pada rel tunggal untuk melayani beban Pload seperti pada
gambar 2.7. Pi merupakan daya keluaran unit ke i dengan biaya (cost rate) Fi,
total biaya sistem adalah jumlah dari biaya masing masing unit. Kendala yang
mendasar dari pengoperasian sistem tenaga listrik adalah bahwa total keluaran
dari pembangkit harus sama dengan dengan kebutuhan beban ditambah dengan
Transmission Losses.
Gambar 2.7 N Buah Unit Thermal Yang Melayani Beban Pload
(Wood & Wollenberg, 1996:36)
Telah dibahas sebelumnya mengenai input pembangkit thermal yang
merupakan bahan bakar dan outputnya berupa daya aktif. Untuk menghitung
biaya pembangkitannya maka dari persamaan fungsi kenaikan panas pada
subbab 2.1.7 akan dikalikan dengan harga kalor (didapat dari harga bahan bakar
dalam hal ini batubara dibagi dengan nilai kalornya). Oleh karena itu model
matematis fungsi biaya dapat ditulis sebagai berikut :
Keterangan :
= total biaya pembangkitan (Rp)
= fungsi biaya input-output dari pembangkit (Rp/jam)
= koefisien biaya dari pembangkit
= output pembangkit (MW)
= jumlah unit pembangkit
= indeks dari dispatchable unit
= harga batubara (Rp/kg)
nilai kalor (kcal/kg)
Masing-masing pembangkit memiliki batasan yang dirumuskan sebagai
berikut :
Inequality constraint mengharuskan daya outputdari tiap unit lebih besar
dari atau sama dengan dayaminimum yang diperbolehkan serta lebih kecil dari
atau sama dengan daya maksimum yang diperbolehkan (Wood & Wollenberg,
1996:29-32).
Seperti yang dijelaskan sebelumnya bahwa untuk mendapatkan nilai output
pembangkit maka perlu menghitung nilai total Trasmission Losses. Transmission
Losses pada setiap saluran antar bus dapat berubah-ubah nilainya, tergantung
dari besarnya daya yang disalurkan. Untuk mengakomodasikan Transmission
Losses saat menentukan pembebanan pembangkit, maka rugi-rugi transmisi
harus dinyatakan sebagai fungsi dari pembebanan (output) pusat pembangkit.
Untuk itu dapat digunakan rumus umum yang terdiri dari persamaan linier
dan
persamaan
konstan,
yang
dikenal
sebagai
rumus
losses
Kron
(Saadat,2004:279) :
PL =
giBijPij+
i0Pgi+
B00
dengan :
PL
= Rugi-rugi transmisi(Transmission Losses)
Bij
= Koefisien kerugian transmisi atau Loss coefficients.
Pgi
= Output masing-masing Pembangki
Pi,Pj
= Ouput pembangkit ke-i,j.
Bi0,B00 = Konstanta rugi-rugi daya.
Loss coefficients dapat dianggap konstan untuk perubahan daya output
setiap pembangkit didalam sistem.
2.3 Metode Firefly Algorithm
Metode Firefly Algorithm ini merupakan salah satu metode yang mungkin
masih asing terdengar karena merupakan suatu evolusi baru dari algoritma
komputasi yang penerapannya pada masalah optimisasi. Metode ini termasuk
dalam lingkup Computational Intelligence and Metaheuristics.
Metode ini terinspirasi oleh perilaku kunang-kunang, menarik satu sama
lain dengan lampu berkedip. Hal ini sangat berguna untuk optimasi
multimodal.Firefly Algorithm sendiri dibentuk dan dikembangkan oleh Dr.Xin
She Yang di Cambridge University pada tahun 2007. Firefly Algorithm
merupakan algoritma yang didasarkan pada kebiasaan dari kunang-kunang.
Kunang-kunang pada umumnya menghasilkan sinar dalam durasi yang
pendek dan memiliki ritme tertentu. Sinar dari kunang-kunang dihasilkan dari
proses bioluminescence. Terdapat dua fungsi penting pada sinar kunang-kunang
yaitu untuk menarik perhatian kunang-kunang yang lain untuk berkomunikasi
dan untuk bertahan dari serangan pemangsa. Beberapa aturan yang diadopsi dan
disintetis dari kebiasaan kunang-kunang untuk membentuk Firefly Algorithm:
1. Semua kunang-kunang bersifat unisex, kunang-kunang akan tertarik satu
dengan yang lain tanpa menghiraukan jenis kelamin.
2. Daya pikat (Attractiveness) dari kunang-kunang bersifat proporsional,
bergantung pada tingkat intensitas sinar yang dipancarkan. Daya pikat
kunang-kunang akan semakin berkurang pada saat jarak semakin
bertambah. Jika diantara kunang-kunang tidak ada yang bersinar lebih
terang, kunang-kunang akan bergerak dengan random.
3. Terang (Brightness) yang ditimbulkan kunang-kunang ditentukan oleh
nilai fitness dari objective function.
Dari sini kemudian dapat diketahui bahwa Firefly Algorithm memiliki
beberapa strategi yaitu diantaranya :
1. Acctractiveness
Ada dua hal yang berkaitan dan sangat penting dalam firefly algorithm
yaitu itensitas cahaya dan fungsi keatraktifan (Acctractiveness). Dalam hal ini
kebanyakan yang berasumsi bahwa Acctractiveness dipengaruhi oleh tingkat
itensitas cahaya. Untuk kasus yang paling sederhana contohnya masalah
optimisasi minimum, tingkat itensitas cahaya pada sebuah kunang-kunang x
dapat dilihat sebagai
I (x) = 1/f (x)
Dengan nilai I merupakan tingkat itensitas cahaya pada x kunang-kunang
yang sebanding terhadap solusi fungsi tujuan permasalahan yang akan dicari
f(x). Acctractiveness β yang bernilai relative sebab itensitas cahaya harus
dilihat dan dinilai oleh kunang-kunang lain. Dengan demikian, hasil penilaian
akan berbeda tergantung dari jarak antara kunang-kunang yang satu dengan
yang lainnya yaitu rij yang merupakan jarak varaiasi antara kunang-kunang i
dengan kunang-kunang j. Selain itu, itensitas cahaya akan menurun dilihat dari
sumbernya dikarenakan terserap oleh media contohnya udara γ .Dalam bentuk
yang paling sederhana, intensitas cahaya I(r) bervariasi sesuai dengan invers
dari hukum kuadrat : I(r)= .
Dimana Is adalah intensitas pada sumber. Untuk media tertentu dengan
light absorption coefficient tyang tetap yaitu γ, Intensitas cahaya yang
bervariasi dengan jarak r. Maka persamaannya adalah I = I0
. Dimana I0
intensitas cahaya yang asli. Untuk mengurangi nilai r=0 pada persamaan
,
kombinasi antara invers dari hukum kuadrat dengan absorpsi dapat dilakukan
pendekatan sebagai persamaan Gaussian berikut:
I(r) = I0
Maka, Fungsi Acctractiveness ialah sebagai berikut:
β(r) = β0
2. Distance Between Fireflies
Jarak antara kunang-kunang i dan j pada lokasi x, xi dan xj dapat
ditentukan ketika dilakukannya peletakan titik dimana firefly tersebut disebar
secara random dalam diagram kartesius dengan fungsi sebagai berikut:
rij = || xi - xj|| =
atau
rij =
Dimana selisih dari koordinat lokasi kunang-kunang i terhadap kunangkunang j merupakan jarak diantara keduanya (rij).
3. Movement of Firefly
Pergerakan kunang-kunang i yang bergerak menuju tingkat itensitas
cahaya yang terbaik dapat dilihat dari persamaan berikut:
=
+ β0
+(
) + α ( rand - )
Dimana variable awal xi menunjukan posisi awal kunang-kunang yang
berada pada lokasi x, kemudian persamaan kedua yang terdiri dari variable β0 =
1, variabel ini merupakan nilai keaktraktifan awal pada firefly, variabel (exp)
bilangan eksponensial, variabel γ =1 merupakan nilai untuk tingkat penyerapan
pada lingkungan sekitar firefly yaitu udara dan terakhir rij merupakan variabel
selisih jarak awal antara firefly i dan j . Semua variabel pada persamaan kedua
tersebut diberikan dari fungsi keatraktifan firefly yang mana menentukan
tingkat kecerahan. Selanjutnya persamaan ketiga terdiri dari selisih nilai solusi
pada firefly i terhadap firefly j.
Kemudian fungsi persamaan pergerakan firefly secara random (rand) yang
menunjukan adanya bilangan random yang kisarannya antara [0,1]. variabel α
yang memiliki kisaran antara [0,2]. Semua variabel yang terbentuk pada
persamaan pergerakan firefly menjamin cara kerja algoritma cepat menuju
solusi yang optimal (Yang,2010:221-224).
2.3.1 Parameter Firefly Algorithm
Tabel 2.1 Parameter Firefly Algorithm
Parameter
Notasi di dalam algoritma
Tingkat kecerahan
Objective Function
Beta(β)
Attractiveness parameter
Alpha(α)
Paramater acak
Gamma(γ)
Absorption coefficient
Number of Generation
Iterasi
Jumlah kunang-kunang
Populasi
Dimension
Problem dimension
R
Radius, interval waktu,dll
Tabel 2.1 menunjukan parameter-parameter yang dipakai didalam firefly
Algorithm. Dalam Firefly Algorithm, parameter alpha (α) merupakan kontrol
eksplorasi dan parameter gamma (γ) merupakan kontrol eksploitasi.
Parameter ini menggambarkan variasi fungsi keaktraktifan dan nilai untuk
kecepatan konvergensi firefly algorithm. Untuk sebagian besar kasus,
parameter acak (α) bernilai kisaran antara [0, 10] dan parameter keaktraktifan
(ß) sama dengan 1. Koefisien absorbs (γ) bervariasi antara [0,1-1,0]. Nilai
parameter dari algoritma yaitu fungsi keaktraktifan kunang-kunang,
pengacakan dan koefisien absorbsi diatur sedemikian rupa bahwa adanya
keseimbangan antara eksplorasi dan eksploitasi yang perlu dipetahankan dan
solusi optimal yang dinginkan dapat diperoleh. Semakin banyak jumlah
iterasi dan lebih banyak jumlah populasi sebenarnya memberikan hasil yang
lebih baik dalam optimasi (Panigrahi et all,2015).
2.3.2 Algoritma Metode Firefly
Berikut langkah-langkah algoritma dari metode Firefly sebagai berikut
ini :
1. Membaca sistem data seperti koefisien persamaan biaya, batas daya
minimum dan maksimum dari semua unit pembangkit, total dari Pdemand.
2. Menginisialisasi parameter dan syarat dari algoritma Firefly. Dalam hal ini
melingkupi , , β0, jumlah dimensi, jumlah kunang-kunang dan itermax
(jumlah maksimum pada iterasi).
3. Membangkitkan secara random populasi awal sebanyak m fireflies (berarti
banyak kunang-kunang dan jumlah dimensi sebanyak pembangkit yang
ada).
4. Hitung intensitas cahaya awal tiap fireflies yaitu ‫ ݔܫ‬berdasarkan nilai fungsi
tujuan yaitu ݂‫ݔ‬.
5. Intensitas cahaya tiap firefly dibandingkan dengan firefly lainnya. Apabila
terdapat firefly j yang intensitas cahayanya lebih besar dari firefly i,
lakukan update pergerakan firefly menggunakan persamaan movement
yaitu : ‫݅ݔ = ݓ݁݊݅ݔ‬+ ߚ0݁−ߛ‫݆݅ݎ‬2( ‫ ݆ݔ‬− ‫ )݅ݔ‬+ ߙ( ‫ ݀݊ܽݎ‬−1/2) Dimana rand
adalah bilangan random berdistribusi uniform pada interval [0,1] dan ‫||=݆݅ݎ‬
‫݅ݔ‬− ‫=|| ݆ݔ‬
6. G-best adalah solusi terbaik yang pernah didapatkan. Untuk iterasi
pertama, firefly terbaik (firefly dengan intensitas terbesar) adalah G-best.
7. Tentukan nilai alpha (α) dengan iterasi yang mengikuti persamaan berikut :
α(iter) = αmaks –((αmaks-αmin) (jumlah iterasi saat ini)/itermax)
8. Melakukan proses movement kepada firefly terbaik dengan memasukkan
nilai yang didapat dan menggabungkannya dengan firefly yang lain untuk
menjadi populasi awal pada iterasi selanjutnya.
9. Jumlah iterasi selalu bertambah dan jika batas iterasi dipenuhi maka akan
berhenti, sedangkan jika tidak terpenuhi maka kembali ke langkah 3.
10. G-best akan memberikan solusi yang optimal pada masalah economic
dispatch (Subramanian &Thanushkodi,2013).
2.4 Interaksi Manusia dan Komputer (IMK)
2.4.1 Pengertian Interaksi Manusia dan Komputer
Interaksi Manusia dan Komputer (IMK) adalah suatu ilmu yang
mempelajari
hubungan
antara
manusia
dan
komputer
yangmeliputi
perancangan, evaluasi, dan implementasi antarmuka computer agar mudah
digunakan oleh manusia, serta studi fenomena – fenomena besar yang
berhubungan dengannya.User Interface atau antarmuka pengguna adalah
bagian sistem komputer yang memungkinkan manusia berinteraksi dengan
komputer. Komputer dan user interface menjadi suatu dasar dari
perkembangan pesat berbagai bidang profesi. Dari sini terlihat bahwa
interaksi manusia dan komputer menjadi sangat penting karena merupakan
suatu dasar pembelajaran mengenai hubungan antara manusia dan komputer
yang meliputi perancangan, evaluasi, dan implementasi antarmuka pengguna
komputer (user interface) agar mudah digunakan oleh manusia tersebut.
(Meena &Sivakumar, 2015 :2)
2.4.2 Delapan Aturan Emas Design User Interface
Dalam mendesain sistem terdapat aturan yang terkenal dan menjadi dasar
dari perancangan sebuah interface sistem. Aturan tersebut dikenal dengan
sebutan delapan aturan emas (8 Golden Rules) yaitu (Shneiderman &
Plaisant, 2010: 88-89) :
1. Berusaha untuk konsisten
Diperlukan suatu urutan aksi yang konsisten pada situasi yang sama.
Konsistensi ini diperlukan pada promps, menus, dan layar bantu. Hal-hal
yang perlu diperhatikan untuk dijaga tetap konsisten adalah warna, layout,
huruf kapital, jenis huruf, dan sebagainya.
2. Memungkinkan penggunaan secara universal
Masing-masing pengguna memiliki kemampuan yang berbeda-beda.Ada
pengguna yang pemula (novice) dan ada pula pengguna yang ahli (expert).
Oleh karena itu, dibutuhkan rancangan yang dapat memfasilitasi
perubahan konten sesuai dengan kemampuan pengguna. Misalnya,
penambahan fitur penjelasan untuk pemula atau fitur shortcut untuk yang
ahli.
3. Memberikan umpan balik yang informatif
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)
Sebuah aksi hendaknya dilakukan secara berurut dengan dikelompokkan
seperti mulai dari awal, tengah, dan akhir. Umpan balik yang informatif
akan memberikan tanda yang jelas pada akhir suatu aksi yang
mengindikasikan bahwa itu merupakan akhir dari aksi tersebut dan siap
untuk melanjutkan ke proses selanjutnya.
5. Memberikan pencegahan kesalahan dan penanganan kesalahan sederhana
Sistem yang dibuat diharapkan tidak memungkinkan user untuk membuat
kesalahan serius. Jika terjadi kesalahan, sistem harus dapat mendeteksi
kesalahan tersebut dan menawarkan penanganan kesalahan yang
sederhana.
6. Memungkinkan untuk kembali ke aksi sebelumnya
Suatu sistem dirancang sehingga jika pengguna mengalami kesalahan
maka pengguna dapat kembali ke keadaan sebelumnya. Hal ini dapat
mengurangi kecemasan pengguna karena pengguna mengetahui kesalahan
yang dilakukan dapat dibatalkan, sehingga pengguna tidak takut untuk
mengeksplorasi pilihan-pilihan lain yang belum biasa digunakan.
2. Mendukung pusat kendali internal
Menjadikan user sebagai yang mengendalikan sistem, bukan yang
dikendalikan oleh sistem.
3. Mengurangi beban ingatan jangka pendek
Mengingat keterbatasan manusia untuk memproses informasi dalam
jangka pendek, sebuah sistem diharapkan dibuat dengan tampilan
sesederhana mungkin, beberapa halaman dijadikan satu, frekuensi
pergerakan window dikurangi dan harus ada waktu yang cukup bagi user
untuk mempelajari kode-kode, singkatan, serta urutan aksi. Informasi
seperti singkatan atau kode sebaliknya tersedia.
2.4.3 Evaluasi Interface
Setelah mengetahui aturan-aturan yang penting dalam merancang sebuah
sistem antarmuka, perlu juga mengetahui suatu ukuran yang digunakan dalam
mengevaluasinya.Terdapat lima kategori yang dijadikan ukuran evaluasi
antarmuka ini yaitu :(Shneiderman & Plaisant, 2010: 32)
1.
Waktu pembelajaran (time to learn)
Berapa lama waktu yang dibutuhkan oleh anggota dari komunitas
pengguna untuk mempelajari cara menggunakan perintah-perintah yang
digunakan untuk menyelesaikan suatu tugas.
2.
Kecepatan kinerja (speed of performance)
Berapa lama waktu yang diperlukan untuk menyelesaikan sebuah 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
karena
membutuhkan
pembelajaran yang luas.
4.
Daya ingat jangka panjang (retention over time)
Bagaimana pengguna menjaga pengetahuan mereka setelah beberapa
jam, hari, atau minggu. Daya ingat sering dikaitkan dengan waktu
pembelajaran dan biasanya frekuensi penggunaan juga memainkan peran
penting.
5.
Kepuasan subjektif (subjective satisfication)
Seberapa besar ketertarikan pengguna terhadap berbagai aspek interface.
Hal ini dapat diketahui dengan melakukan wawancara atau survey kepada
pengguna.
2.4.4 Empat Pilar Desain User Interface
Keempat pilar desain user interface dapat membantu user interface
mengubah ide-ide yang baik dalam kesuksesan sistem. Keempat pilar desain
user interface dapat dilihat pada gambar 2.8 ini.
Gambar 2.8 Empat Pilar Desain User Interface
(Shneiderman & Plaisant, 2010 : 121)
Keempat pilar desain user interface, antara lain :
1.
Persyaratan
atau
kebutuhan
user
interface
(User
Interface
Requirements) yang menentukan kebutuhan pengguna yang jelas
merupakan hal utama dalam keberhasilan setiap pengembangan
sistem. Tujuan dari dibutuhkannya persyaratan user interface ini
diperuntukkan untuk komunitas pengguna dan juga mengenai tugastugas atau tasks yang pengguna bisa lakukan. Meletakkan user
interfacerequirement adalah bagian dari keseluruhan persyaratan
dari proses pengembangan dan manajemen.
2.
Pedoman dokumen dan proses (Guidelines Documents & Process)
Pada awal proses desain, designer user interface harus menghasilkan
sekumpulan pedoman kerja. Setiap proyek memiliki kebutuhan yang
berbeda-beda,
namun
beberapa
pedoman
yang
harus
dipertimbangkan, antara lain :
a. Word, icon, dan graphics.
-Sekumpulan karakter, fonts, ukuran font, dan gaya penulisan
(bold, italic, underline).
- Icons, tombol, grafik, dan ketebalan garis.
- Penggunaan warna, backgrounds, penyorotan /highlighting dan
kedipan/blinking.
b. Masalah tata letak layar (Screen layout issues)
- Menu selection, form fill-in, format pada dialog-box.
- Wording of prompts, feedback, dan pesan error.
- Justifikasi, white space, dan margin.
- Entri data dan menampilkan format untuk item dan daftar.
- Penggunaan dan isi dari header dan footer.
- Strategi untuk beradaptasi dengan tampilan yang besar dan kecil.
c. Perangkat input dan output (Input and output devices).
- Keyboard, display, cursor control, dan pointing device.
- Audible sound, voice feedback, speech I/O, touch input, dan device
spesial lainnya.
- Alternatif bagi pengguna penyandang cacat
d. Action Sequences
- Direct manipulation clicking, dragging, dropping dan gestures.
- Command syntax, semantics, dan sequences.
- Shortcuts dan programmed function keys.
- Navigasi layar sentuh untuk device.
- Penanganan kesalahan dan prosedur perbaikan.
e. Training
- Online help, tutorials dan support group
- Training dan referensi materi terkait
3. Peralatan perangkat lunak user interface (User Interface Software Tools) .
Persoalan yang utama dalam merancang suatu sistem yang interaktif adalah
customer dan user tidak mempunyai ide yang jelas bagaimana sistem tersebut
akan terlihat pada akhir perancangan. Oleh karenanya,sistem interaktif adalah
baru di berbagai situasi, maka user tidak menyadari implikasi dari berbagai
keputusan desain. Sayangnya, itu menjadi hal yang sulit, memakan biaya yang
besar, dan memerlukan waktu yang lama untuk melakukan perubahan yang
besar ke sistem tersebut ketika sistem itu telah diimplementasikan. Sehingga,
User Interface Software Tools dapat menangani masalah tersebut.
4. Review dari ahli dan pengujian kegunaan (Expert Reviews & Usability
Testing).
Beberapa metode dalam Expert Review misalnya dengan melakukan tes ke
calon user yang akan menggunakan sistem tersebut, survei dan automated
analysis tools. Prosedur yang digunakan dalam metode tersebut berbeda-beda
tergantung dengan apa yang akan dicapai dari testing tersebut, berapa user
yang diharapkan, dan seberapa tingkat bahaya dalam implementasi sistem baru
itu, serta level investasi untuk sistem itu.(Shneiderman & Plaisant, 2010 : 120126)
2.5 Peranti Lunak Berbasis Web dan Bahasa Pemograman
2.5.1
Perangkat Lunak
Menurut Pressman(2010:4) software adalah :
a. Sebuah instruksi (program komputer) yang ketika dieksekusi akan
menampilkan fitur-fitur, fungsi, dan sebuah tampilan yang diinginkan.
b. Struktur data yang dapat membuat sebuah program memanipulasi
informasi secara proporsional.
c. Deskripsi informasi baik dalam bentuk nyata ataupun bentuk virtual yang
menjelaskan tentang operasi dan kegunaan program.
Selain itu, perangkat lunak (software) juga memiliki beberapa karakteristik
yang berbeda dengan dari perangkat keras,yaitu :
1. Perangkat lunak dibangun dan dikembangkan tidak dibuat dalam bentuk
klasik.
2. Perangkat lunak tidak pernah usang.
3. Meskipun industri bergerak menuju pembangunan berdasarkan kompenen
yang ada, sebagian besar perangkat lunak dibuat secara custom-built.
(Presmann,2010:4-7)
Rekayasa piranti lunak dapat dikelompokkan dalam beberapa lapisan layers
seperti pada gambar 2.9, yaitu:
1. A quality focus : landasan dari suatu piranti lunak di mana semua proses
dalam rekayasa piranti lunak mengacu pada kualitas yang dihasilkan.
2. Process : pondasi dasar yang berfungsi sebagai penghubung lapisan
teknologi, pengembangan rasional, dan pengembangan piranti lunak yang
teratur.
3. Methods : menyediakan teknis bagaimana membangun sebuah piranti
lunak yang mencakup array yang luas dari tugas-tugas yang terdiri atas
analisis kebutuhan, desain, konstruksi program, pengujian, dan
dukungan.
4. Tools : menyediakan dukungan otomatis atau semi otomatis untuk
methods dan process .
(Presmann,2010:14)
Gambar 2.9 Software Engineering Layers
2.5.2
Web Application
Terdapat tujuh cakupan perangkat lunak komputer yang sampai saat ini
masih terus dikembangkan, di antaranya adalah aplikasi web. Aplikasi web
yang biasa disebut WebApps merupakan kategori perangkat lunak yang
berpusat pada jaringan yang dapat menjangkau susunan aplikasi secara luas.
Secara sederhana, WebApps merupakan kumpulan dari berkas-berkas
hypertext yang menampilkan informasi menggunakan tulisan dan gambar
yang terbatas. Saat web terus dikembangkan dan muncul Web 2.0 yang
merupakan perkembangan dari Web 1.0, web dapat berinteraksi lebih baik
dengan pengguna. WebApps telah berevolusi menjadi suatu lingkungan
komputerisasi yang menarik yang tidak hanya menyediakan fitur-fitur
mandiri, fungsi komputer, dan isi kepada pengguna, namun juga dapat
terhubung dengan database dan dapat digunakan sebagai aplikasi bisnis, yang
artinya lebih interaktif terhadap pengguna.
WebApps yang telah berevolusi dan berkembang sampai kini, memang
merupakan salah satu kategori software. Namun, Powell mengatakan bahwa
WebApps berbeda karena WebApps merupakan campuran antara publikasi
tercetak dan pengembangan perangkat lunak, antara pemasaran dan
komputerisasi, antara komunikasi internal dan hubungan eksternal, dan antara
seni dan teknologi. Atribut-atribut di bawah ini merupakan hal-hal yang
berpengaruh dalam keseluruhan WebApps, yaitu (Pressman, 2010:11-12) :
1.
Network intensiveness
Sebuah WebApps tak dapat dipisahkan dari jaringan karena berada dalam
jaringan itu sendiri dan harus melayani berbagai kebutuhan pengguna
darimana saja dan kapan saja, sehingga harus dapat diakses secara
mendunia ataupun diakses secara terbatas.
2.
Concurrency
Banyak pengguna yang dapat mengakses WebApps secara bersamaan
pada suatu waktu. Dalam banyak kasus, pola penggunaan di kalangan
pengguna akhir akan bervariasi.
3.
Unpredictable load
Banyaknya pengguna bervariasi dari hari ke hari karena tidak bisa
diprediksi mungkin hari ini hanya 1000 pengguna dan besok bisa saja
terdapat 10.000 pengguna.
4.
Performance
Performa dari WebApps perlu diperhatikan misalnya jika pengguna harus
menunggu terlalu lama untuk mengakses maka pengguna dapat
berpindah ke tempat lain yang lebih cepat
5.
Availability
Meskipun harapan ketersediaan 100 persen adalah tidak masuk akal,
tetapi pengguna menginginkan akses 24/7/365 atau dengan kata lain 100
persen situs yang diakses selalu tersedia. Padahal, bisa saja situs tersebut
sedang dalam masa pemeliharaan (maintenance).
6.
Data Driven
Fungsi utama sebuah WebApps adalah untuk menampilkan pesan berupa
tulisan, gambar, suara atau video kepada pengguna.Webapps biasanya
digunakan untuk mengakses informasi yang ada pada database yang
bukan merupakan bagian integral dari lingkungan berbasis web
(misalnya, e-commerce atau aplikasi keuangan) sehingga membutuhkan
tempat penyimpan yang cukup besar untuk menampungnya.
7.
Content sensitive
Kualitas dan keindahan konten yang akan ditampilkan dalam sebuah
WebApps perlu diperhatikan.
8.
Continuous evolution
Tidak seperti aplikasi perangkat lunak konvensional yang berkembang
sesuai dengan rencana, WebApps justru bisa berubah terjadi setiap
detiknya guna memenuhi permintaan kebutuhan pengguna.
9.
Immediacy
WebApps dapat dibuat dan diluncurkan dalam waktu yang relatif lebih
cepat dibandingkan aplikasi software lainnya.
10. Security
Karena WebApps tersedia di jaringan maka Pengguna WebApps sangatlah
banyak dan tak terbatas sehingga dibutuhkan sistem keamanan yang kuat
untuk melindungi konten-konten yang rahasia dan mencegah terjadinya
hal-hal yang tidak diinginkan.
11. Aesthetics
Keindahan tampilan merupakan hal utama yang akan langsung terlihat
oleh pengguna yang akan membuatnya menarik untuk digunakan. Oleh
karena itu, hal keindahan dan kemudahan interaksinya dengan pengguna
menjadi salah satu hal penting yang tak boleh diabaikan.
2.5.3
Pemrograman Web dengan PHP
Dalam pembuatan sebuah aplikasi berbasis web, tentu HTML tidak dapat
diabaikan. Sebuah halaman web yang hanya dibuat dari HTML bersifat statis.
Semua pengguna melihat halaman yang sama. Tentu hal ini akan bertolak
belakang dengan prinsip-prinsip web application. Oleh karena itu diperlukan
halaman web yang bersifat dinamis dimana pengguna yang berbeda dapat
melihat halaman web yang berbeda. Contohnya saja pengguna A yang
melihat halaman sebuah web dan memilih kategori makanan, sedangkan
pengguna B melihat halaman web yang sama dan memilih kategori pakaian.
Kedua pengguna tersebut mengakses halaman web pada waktu yang
bersamaan tetapi dapat melihat halaman kategori yang berbeda. Untuk
membuat hal ini menjadi mungkin, maka diperlukan bahasa lain sebagai
tambahan dari HTML.
Salah satu bahasa untuk membuat web menjadi dinamis adalah
JavaScript. JavaScript sangat berguna untuk berbagai kepentingan seperti
fungsi mouse-overs atau memvalidasi informasi di mana pengguna
memasukkan formulir ke dalamweb. JavaScript lebih banyak digunakan
untuk interaksi dengan user. Namun, JavaScript kurang interaktif dengan
database.
PHP merupakan salah satu bahasa yang sangat cocok dengan keperluan
database. PHP dapat menerima dan memvalidasi informasi yang user
masukkan dalam formulir web dan juga memasukkannya ke database. PHP
erat kaitannya dengan MySQL sebagai database.
PHP merupakan bahasa scripting yang didesain khusus untuk
menciptakan web yang dinamis. PHP memiliki banyak fitur yang membuat
desain sebuah web menjadi lebih indah dan lebih mudah dibuat.
PHP merupakan singkatan dari HyperText Preprocessor. Pada awal
pengembangannya oleh Rasmus Lerdorf, PHP ini dikenal dengan nama
Personal Home Page tools. Saat PHP menjadi lebih terkenal, namanya
kemudian disesuaikan. PHP memiliki sintaks yang mirip dengan bahasa C.
Oleh karena itu, bagi pengguna yang pernah belajar bahasa C, tidak akan
merasa kesulitan untuk memulai belajar PHP.
Kepopuleran PHP berkembang dikarenakan banyaknya keuntungan yang
didapat oleh pengguna. Beberapa di antaranya adalah :
1.
Performance : PHP ini sangat cepat. Karena di-embedd pada koding
HTML, maka waktu responnya cenderung cepat.
2.
Scalability : Rasmus Lerdorf sering menyebut bahwa PHP adalah
“shared-nothing” architecture. Artinya adalah, pengguna PHP dapat
mengimplementasikan PHP dengan efektif dan murah untuk skala yang
besar.
3.
Database Integration : PHP memiliki kemampuan koneksi langsung ke
berbagai sistem database. Selain MySQL, PHP juga bisa dikoneksikan
ke PostgreSQL, Oracle, dbm, FilePro, DB2, Hyperwave, Informix,
InterBase, dan Sybase.
4.
Built-in Libraries : PHP didesain untuk merancang web, sehingga
memiliki banyak fungsi untuk membuat web yang baik.
5.
Cost : PHP dapat diunduh gratis dan langsung digunakan untuk
keperluan pembuatan web (open source).
6.
Ease of Learning PHP : Sintaks pada PHP merupakan sintaks dasar yang
dapat dijumpai pada bahasa C atau Perl.
7.
Object-Oriented Support : PHP versi 5 memiliki fitur object-oriented
yang baik dan lengkap.
8.
Portability : PHP tersedia untuk berbagai sistem operasi.
9.
Flexibility of Development Approach : PHP akan mempermudah
pengerjaan tugas yang pada dasarnya mudah dan beradaptasi untuk
mengerjakan tugas yang rumit menggunakan framework seperti Model
View Controller.
10. Source Code : PHP berbasis open source sehingga penggunanya tidak
perlu menunggu hadirnya patch terbaru PHP untuk dapat memodifikasi
source code sesuai dengan keinginan pengguna.
11. Availability of Support and Documentation : Dokumentasi PHP dan
komunitas penggunanya memiliki banyak informasi yang dapat dilihat
oleh pengguna.
(Welling & Thomson, 2009:4-6)
2.5.4
Object-Oriented PHP
Dalam pembahasan perangkat lunak berorientasi objek, objek merupakan
sebuah benda ataupun konsep, sesuatu yang terlihat secara fisik seperti meja
atau pelanggan, atau suatu objek konseptual yang ada di dalam sebuah
perangkat lunak, seperti area input tulisan atau dokumen yang tersimpan.
Umumnya, orang akan lebih tertarik pada objek yang nantinya akan
diperlihatkan dalam sebuah perangkat lunak.
Sebuah perangkat lunak berorientasi objek memiliki attributes dan
operations. Attributes adalah properti atau variabel yang berhubungan dengan
objek, sedangkan operations adalah method, aksi atau fungsi dimana
objek dapat memodifikasi dirinya atau menjalankan fungsi tertentu.
Objek-objek dapat dikelompokkan ke dalam suatu class. Class
merepresentasikan kumpulan objek yang berbeda satu sama lain namun
memiliki satu kesamaan. Sebuah class berisi objek-objek yang memiliki
operasi yang sama, memiliki tingkah laku yang sama dan juga atribut yang
mempresentasikan hal yang sama, meskipun nilai dari atribut-atribut berbeda
antar objeknya.
Salah satu keuntungan terbesar perangkat lunak berorientasi objek adalah
kemampuan untuk mendukung adanya encapsulation atau dikenal juga
dengan penyembunyian data. Akses data di dalam objek hanya tersedia
melalui operasi objek, atau interface dari objek. Selain itu, pemprograman
berorientasi objek ini juga dapat membantu mengatur kompleksitas suatu
proyek, meningkatkan kegunaan kembali code yang ada, dan meminimalisir
biaya pemeliharaan.
(Welling & Thomson, 2009:160-161)
2.5.5
Waterfall Model
Proses merupakan kumpulan dari aktivitas, aksi dan tugas yang
dilaksanakan untuk membuat suatu produk. Aktivitas akan langsung
mencapai tujuannya dan digunakan untuk aplikasi, besarnya sebuah proyek,
kompleksitas usaha, dan rekaya perangkat lunak apa yang akan digunakan.
Aksi meliputi kumpulan tugas-tugas untuk membuat suatu produk. Tugas
memfokuskan diri pada detail sasaran yang sudah terbentuk untuk
menghasilkan hasil yang nyata.
Proses itu sendiri hanyalah sebuah definisi yang mendeskripsikan
bagaimana pembuatan sebuah produk (misalnya software) dilakukan. Untuk
menjalankan proses tersebut maka dibuatlah suatu kerangka proses (process
framework).
Kerangka
proses
ini
merupakan
fondasi
dasar
untuk
menghasilkan suatu rekayasa piranti lunak yang lengkap dengan cara
mengindentifikasi sejumlah aktivitas yang dapat digunakan untuk seluruh
proyek perangkat lunak, tidak peduli ukuran dan kompleksitasnya.
Pada umumnya, kerangka proses terdiri dari 5 aktivitas yaitu :
1.
Communication
Sebelum projek dapat mulai dikerjakan, penting untuk mengetahui
kebutuhan yang menjadi tujuan dibuatnya projek tersebut. Oleh karena
itu, komunikasi dan kolaborasi sangatlah penting untuk mengetahui halhal apa saja yang dibutuhkan untuk memenuhi tujuan software seperti
misalnya fungsi dan fitur yang diinginkan ada pada software.
2.
Planning
Untuk membangun sebuah projek software yang merupakan hal yang
kompleks, diperlukan suatu peta atau panduan sehingga tugas-tugas yang
ada dapat dikerjakan secara tersusun dan terpadu. Panduan yang disebut
software project plan tersebut akan mendeskripsikan tugas-tugas teknikal
yang harus dilakukan, resikonya, sumber-sumber yang dibutuhkan,
bagian-bagian produk yang harus dihasilkan, dan jadwal pekerjaan.
3.
Modelling
Pekerjaan apapun membutuhkan suatu model agar lebih mudah melihat
bentuk nyata dari produk yang akan dihasilkan. Model tersebut misalnya
berupa gambar sketsa perkiraan bentuk produk tersebut akan seperti apa.
Dalam pembuatan software, model akan membuat pemahaman akan
kebutuhan software menjadi lebih dalam dan desainnya juga membantu
dalam mencapai tujuan tersebut.
4.
Construction
Pada bagian ini akan dibuat suatu code atau biasa disebut coding yang
merupakan bantuan secara komputasi. Setelah itu hasil coding-an
tersebut akan diuji apakah ada kesalahan yang harus diperbaiki atau
tidak.
5.
Deployment
Produk software yang telah jadi akan dipublikasikan untuk dicoba oleh
konsumen yang akan membantu mengevaluasi hasil produk tersebut
untuk dijadikan feedback demi perkembangan produk selanjutnya.
Terkadang ada kalanya saat kebutuhan yang diperlukan dalam sebuah
penyelesaian permasalahan dapat dimengerti dengan mudah, saat pekerjaan
mengalir begitu saja dari communication hingga deployment dalam garis
lurus. Situasi ini dapat terjadi ketika membuat sebuah sistem yang diadaptasi
dengan baik atau penambahan pada sistem yang telah ada. Hal ini juga dapat
terjadi pada usaha pembuatan sebuah program baru namun hanya jika
kebutuhan permasalahan jelas dan stabil. (Presmann,2010:39)
Gambar 2.10 Waterfall Model (Presmann,2010:39)
2.6 Unified Modelling Language (UML)
Dalam bukunya, Whitten & Bentley (2007: 371) mengatakan bahwa UML
versi 2.0 sekumpulan konvensi pemodelan yang digunakan untuk menentukan
atau menggambarkan sebuah sistem piranti lunak yang terkait dengan objek.
UML dapat diibaratkan sebagai blueprints sebuah perangkat lunak. UML
digunakan untuk memvisualisasikan, menspesifikasikan, mengkonstruksi dan
mendokumentasi sebuah perancangan perangkat lunak. Dengan kata lain, seperti
halnya para arsitek yang membuat rancangan blueprints dalam membangung
proyeknya, ‘arsitek’ perangkat lunak juga membuat diagram UML untuk
membantu perancang perangkat lunak membuat perangkat lunaknya.
Terdapat 13 macam diagram UML yang masing-masing memiliki fungsi
dan tujuan berbeda dalam perancangan suatu perangkat lunak. Dalam
pengembangan perangkat lunak, tidak selalu harus ke-13 diagram tersebut
digunakan. Cukup digunakan sesuai yang dibutuhkan dengan syarat sudah dapat
menggambarkan proses pengembangan sistem dengan jelas sesuai dengan
tujuannya.
Pada penulisan ini, penulis menggunakan 4 diagram UML yang dibutuhkan
yaitu use case diagram, activity diagram, class diagram, dan sequence diagram.
2.6.1
Use Case Modelling
Use case diagram mendeskripsikan bagaimana seorang user berinteraksi
dengan sistem dengan cara mendefinisikan langkah-langkah yang dibutuhkan
untuk mencapai tujuan. Use case Diagram terbagi menjadi 2 bagian yang
saling berkaitan yaitu use case diagram dan use case narrative.
2.6.1.1 Use Case Diagram
Use case diagram merupakan suatu diagram yang menggambarkan
interaksi antara sebuah sistem internal, eksternal, dan penggunanya. Dengan
kata lain, diagram ini menggambarkan siapa yang akan menggunakan sistem
dan dengan cara yang seperti apa pengguna akan berinteraksi dengan sistem.
(Whitten & Bentley, 2007:246)
Gambar 2.11 Use Case Diagram (Whitten & Bentley, 2007:246)
Pada gambar 2.11 menjelaskan tentang Use Case Diagram. Dari sana,
terdapat 3 komponen utama dalam use case modelling yaitu:
1. Use case (Skenario)
Use case mendeskripsikan fungsi dari sebuah sistem dari perspektif
pengguna dalam kondisi yang dimengerti oleh pengguna. Use case
digambarkan dalam bentuk horizontal elips dengan nama use case di
bagian dalam, atas atau bawah horizontal elips tersebut.
Use case 1
Gambar 2.12 Simbol Use Case
2. Actor
Use case akan bekerja jika dijalankan oleh pengguna yang disebut actor.
Aktor merupakan pengguna yang akan berinteraksi dengan sistem untuk
saling bertukar informasi. Aktor digambarkan berupa stick figure, dengan
label peran actor/user dalam sistem yang dapat dilihat pada gambar 2.13
dibawah ini.
Gambar 2.13 Simbol Actor
3. Relationship
Relationship merupakan hubungan dari actor dan use case yang
digambarkan dalam bentuk garis. Arti dari hubungan ini bisa berbeda
tergantung dari bentuk garis dan tipe simbol yang dihubungkan. Berikut
beberapa tipe hubungan dalam use case diagram.
a.
Associations
Hubungan antara use case dan aktor terjadi ketika use case
menjelaskan interaksi antara kedua simbol tersebut. Associations
digambarkan berupa garis solid yang menghubungkan use case
dengan aktor. Garis yang memiliki anak panah berarti aktor berperan
sebagai pelaku dari use case, sedangkan garis tanpa anak panah berarti
aktor berperan sebagai external database atau penerima use case
tersebut. Untuk lebih jelas gambarnya dapat dilihat seperti yang
ditunjukkan pada gambar 2.14 ini.
Gambar 2.14 Contoh Associations (Whitten & Bentley, 2007:248)
b.
Extends
Use case dapat berisikan sebuah fungsi yang kompleks yang dapat
membuatnya susah dimengerti. Oleh karena itu, dengan tujuan untuk
mempermudah use case tersebut, dibuatlah extension use case yaitu
hubungan extends antara use case awal yang rumit dengan use case
baru yang mewakili fungsi tertentu use case awal. Sebagai contoh
dapat dilihat pada gambar 2.15 dibawah ini.
Gambar 2.15 Contoh Extends (Whitten & Bentley, 2007:249)
c.
Uses/Includes
Use case dapat berisikan sebuah fungsi yang kompleks yang dapat
membuatnya susah dimengerti. Oleh karena itu, dengan tujuan
mempermudah use case tersebut, dibuatlah Uses/Includes dimana
pada kondisi ini sebuah use case adalah bagian dari use case lainnya.
Sebagai contoh dapat dilihat pada gambar 2.16 ini.
Gambar 2.16 Contoh Uses/Includes (Whitten & Bentley,
2007:249)
d.
Depends On
Depends on menunjukan hubungan keterkaitan antara use case dimana
sebuah use case tidak dapat dijalankan jika use case yang lain belum
dijalankan.Sebagai contoh dapat dilihat pada gambar 2.17 dibawah
ini.
Gambar 2.17 Contoh Depends On (Whitten & Bentley, 2007:250)
e.
Inheritance
Apabila dua atau lebih aktor menggunakan use case yang sama, maka
diperlukan abstract actor untuk mengurangi redudansi komunikasi
dengan sistem. Hubungan antara abstract actor dengan aktor-aktor
sebenarnya dalam use case diagram inilah yang disebut inheritance.
Sebagai contoh dapat dilihat pada gambar 2.18 ini.
Gambar 2.18 Contoh Inheritance (Whitten & Bentley, 2007:250)
2.6.1.2 Use Case Narrative
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. Use case narrative ini berguna terutama untuk
menjelaskan use case yang cukup rumit. Gambar 2.19 dan gambar 2.20
menunjukkan contoh use case narrative.
Gambar 2.19 Use Case Narrative (Whitten & Bentley, 2007:259)
Gambar 2.20 Use Case Narrative (Whitten & Bentley, 2007:260)
2.6.2
Activity Diagram
Activity diagram merupakan diagram yang secara grafik digunakan untuk
menggambarkan aliran dari suatu rangkaian aktifitas baik proses bisnis,
langkah-langkah usecase, dan logika perilaku dari objek (method). Diagram
ini digunakan untuk memodelkan action yang akan dilakukan ketika operasi
dieksekusi dan memodelkan hasil dari action tersebut. Penggambaran
diagram ini mirip dengan flowchart namun, activity diagram ini juga dapat
menunjukan proses yang berjalan bersamaan (Whitten & Bentley, 2007:391393). Sebagai contoh dapat dilihat pada gambar 2.21.
Gambar 2.21 Contoh Activity Diagram (Whitten & Bentley, 2007:392)
Terdapat beberapa notasi yang digunakan dalam pembuatan activity
diagram yang ditunjukan pada tabel 2.2 di bawah ini.
Tabel 2.2 Notasi Activity Diagram
Notasi
Initial Node
Keterangan
menggambarkan awal proses
dari activity diagram
Menggambarkan aktivitas
Actions
dalam sistem
menggambarkan jalannya
Flow
aktivitas dalam activity
diagram.
Menggambarkan suatu kondisi
Decision
dimana suatu keputusan harus
diambil
Menggabungkan kembali
Merge
proses yang sebelumnya
dipisahkan oleh Decision
Fork
Menunjukkan kegiatan yang
dilakukan secara bersamaan
Menggabungkan 2 kegiatan
Join
atau lebih yang dilakukan
bersamaan menjadi satu
Subactivity
Menunjukkan adanya
Indicator/Rake dekomposisi
Simbol
Activity Final
2.6.3
menggambarkan akhir proses
dari activity diagram
Class Diagram
Class diagram menggambarkan gambaran grafik dari sebuah struktur
objek pada suatu sistem statis dan juga menunjukkan class-class objek yang
terdapat pada sistem serta hubungan antara class tersebut. Pada diagram ini
terdapat multiplicity, generalization/specialization dan aggregation. Sebagai
contoh dapat dilihat pada gambar 2.22 dibawah ini.(Whitten & Bentley,
2007:400)
Gambar 2.22 Contoh Class Diagram (Whitten & Bentley, 2007:406)
Notasi-notasi yang tedapat pada class diagram, yaitu
1. Class
Merupakan elemen utama dari class diagram. Class ini akan
membentuk suatu objek yang akan memiliki semua elemen class
tersebut. Class digambarkan sebagai sebuah kotak yang terdiri dari 3
bagian yaitu :
a. Bagian atas : class name
b. Bagian tengah : attribute
c. Bagian bawah : operational
2. Relationship
a. Association
Merupakan
salah
satu
jenis
hubungan
antar
class
yang
memungkinkan suatu class untuk menggunakan atau mengetahui
attribute atau operation yang dimiliki oleh class lain. Association
juga menggambarkan interaksi yang mungkin terjadi antara satu
class dengan class yang lain. Hubungan ini digambarkan dengan
sebuah garis tanpa tanda panah.Sebagai contoh dapat dilihat pada
gambar 2.23 dibawah ini.
Gambar 2.23 Notasi Association dan Multiplicity (Whitten & Bentley, 2007:377)
b. Aggregation
Merupakan hubungan antar class yang jauh lebih kuat dari
association. Hubungan ini dapat diartikan bahwa suatu class
merupakan bagian dari class lain namum bersifat tidak wajib.
Hubungan ini digambarkan sebagai sebuah garis yang memiliki
bentuk diamond kosong di salah satu ujungnya.Sebagai contoh
dapat dilihat pada gambar 2.24 dibawah ini.
Gambar 2.24 Notasi Aggregation (Whitten & Bentley, 2007:379)
c. Composition
Hubungan ini merupakan
yang paling kuat dibandingkan
association atau aggregation. Hubungan ini berarti suatu class
merupakan bagian wajib dari class lain. Hubungan ini digambarkan
dengan sebuah garis yang memiliki bentuk diamond utuh di salah
satu ujung garisnya.Sebagai contoh dapat dilihat pada gambar 2.25
ini.
Gambar 2.25 Notasi Composition (Whitten & Bentley, 2007:379)
d. Generalization
Generalization memungkinkan suatu class mewarisi attribute dan
operation yang dimiliki oleh base class. Attribute dan operation
yang dapat diwarisi adalah yang memiliki access modifier public,
protected, dan default. Hubungan ini digambarkan dengan garis
yang memiliki tanda panah tertutup kosong pada salah satu
ujungnya yang mengarah ke base class. Sebagai contoh dapat
dilihat pada gambar 2.26 ini.
Gambar 2.26 Notasi Generalization (Whitten & Bentley, 2007:376)
e. Dependency
Melambangkan suatu koneksi antar class yang disimbolkan dengan
garis putus-putus. Sebuah class bergantung pada class lain apabila
perubahan pada sebuah class akan membuat class lain ikut
berubah.
3. Multipilicity
Pada akhir sebuah relationship biasanya terdapat angka pada salah
satu ujung garis relationship yang melambangkan jumlah objek dari
class tersebut yang berasosiasi dengan class lain. Multiplicity
dilambangkan dengan angka sebagai berikut :
a. Angka “0..1” yang berarti ada 0 atau 1 objek pada akhir
association.
b. Angka “1..*” yang berarti ada 1 atau lebih objek.
c. Angka “0..*” atau biasa dituliskan “*” berarti ada 0 atau lebih
objek.
4. Sifat Attribute dan Method
Attribute dan method dalam class 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
c. Public (+) : dapat dipanggil oleh semua class lain
(Whitten & Bentley, 2007:373-380)
2.6.4
Sequence Diagram
Sequence diagram membangun logika dari use case yang tergambarkan
dari interaksi antar objek dalam suatu urutan waktu. Logika use case akan
terbentuk dengan menggambarkan interaksi pesan antar objek pada suatu
waktu .Berikut ini contoh Sequence diagram yang dijelaskan opada gambar
2.27.(Whitten & Bentley, 20007:659)
Gambar 2.27 Contoh Sequence Diagram (Whitten & Bentley, 2007:659)
Terdapat beberapa notasi yang digunakan dalam pembuatan sequence
diagram yang akan dijelaskan pada tabel 2.3 berikut ini
Tabel 2.3 Notasi Sequence Diagram
Notasi
Keterangan
Menggambarkan user
Actor
yang berinteraksi dengan
sistem
Menggambarkan instance
System
dari sebuah class pada
class diagram
Menggambarkan
Lifelines
keberadaan sebuah objek
dalam suatu waktu atau
waktu dari sequence
Menggambarkan waktu
Activation Bars
dimana user sedang aktif
berinteraksi dengan sistem
Menggambarkan pesan
Input Messages
masuk yang dikirimkan
berupa behavior
Menggambarkan balasan
Output Messages
dari pesan masuk yang
berupa attribute
Aktor lainnya atau sistem
Receiver Actor
external yang menerima
pesan dari sistem
Menggambarkan area
pada sistem yang
Frame
mengalami perulangan
(loop), seleksi (alternate
fragments), atau kondisi
opsional (optional)
Simbol
2.7 Flowchart Diagram
2.7.1 Pengertian Flowchart
Flowchart adalah diagram alir yang baik untuk menggambarkan proses
kerja karena dapat membantu mendefinisikan dokumen dan menganalisis
proses. Flowchart dapat memberikan garis besar ringkasan dan deskripsi
keseluruhan proses transaksi dalam suatu sistem. Tujuan dari flowchart
adalah untuk menyajikan yang jelas, ringkas dan deskripsi dari sistem atau
operasi, baik manual atau otomatis.
(Vallabhaneni, 2015 : 189-190)
Flowchart menjelaskan alur suatu algoritma dengan gambaran logis
berupa simbol-simbol. Simbol-simbol tersebut dihubungkan dengan garisgaris dan biasanya flowchart dimulai dengan simbol start dan diakhiri dengan
simbol finish. Ada beberapa jenis flowchart, diantaranya adalah :
1.
Bagan alir sistem (systems flowchart)
Bagan alir sistem dapat didefinisikan sebagai bagan yang menunjukan
alur kerja atau apa yang sedang dikerjakan di dalam sistem secara
keseluruhan dan menjelaskan urutan dari prosedur-prosedur yang ada di
dalam sistem.
2.
Bagan alir program (program flowchart)
Bagan alir program ini dihasilkan dari bagan alir sistem yang merupakan
keterangan yang lebih rinci tentang bagaimana setiap langkah program
atau prosedur sesungguhnya dilaksanakan dalam urutan yang tepat saat
terjadi. Bagan alir program terdiri dari dua macam, yaitu bagan alir
logika program (program logic flowchart) dan bagan alir program
komputer terinci
(Kindersley, 2011 : 231-232)
2.7.2 Simbol dan Notasi Flowchart
Simbol dan notasi flowchart merupakan alat bantu yang menggambarkan
proses dalam program. Simbol-simbol yang biasa dipakai adalah simbol
standar yang dikeluarkan oleh ANSI dan ISO. Simbol ini dibagi menjadi tiga
kelompok yaitu (Kindersley, 2011 : 232-234).
1.
Flow Direction Symbols
Simbol ini digunakan untuk menghubungkan antara simbol yang satu
dengan simbol lainnya. Simbol pada Flow Direction Symbols akan
ditunjukkan pada tabel 2.4 dibawah ini:
Tabel 2.4 Flow Direction Symbols
Nama Simbol
Simbol
Keterangan
Digunakan
Simbol arus/flow lines
untuk
menghubungkan
simbol. Garis-garis ini menunjukkan
langkah-langkah dan arah alirnya.
Simbolcommunication
link
Menyatakan transmisi data dari suatu
lokasi ke lokasi lain
Menyatakan sambungan dari proses ke
Simbol connector
proses lainnya dalam halaman yang
sama
Menyatakan sambungan dari proses ke
Simbol offline
connector
proses lainnya dalam halaman yang
berbeda
Digunakan
Simbol annotation
untuk
memberikan
tambahan informasi tentang simbol
flowchart yang lain. Isinya mungkin
dalam bentuk komentar deskriptif,
pernyataan, atau catatan penjelasan.
2.
Processing Symbols
Simbol ini menunjukkan jenis operasi pengolahan dalam suatu prosedur.
Simbol pada Processing Symbol akan ditunjukkan pada tabel 2.5 berikut
ini
Tabel 2.5 Processing Symbols
Nama Simbol
Simbol
Keterangan
Menyatakan suatu tindakan/proses yang
Simbol process
dilakukan oleh komputer
Menunjukkan suatu kondisi tertentu
Simbol decision
yang
akan
menghasilkan
duakemungkinan (ya/tidak)
Menyatakan permulaan atau akhir suatu
Simbol terminal
program
Menyatakan
Simbol
predefined
penyediaan
tempat
penyimpanan suatu pengolaha untuk
memberi harga awal
process
Menyatakan suatu tindakan/proses yang
Simbol manual
Simbol
predefined
process
3.
tidak dilakukan oleh komputer
Merepresentasikan operasi atau proses
yang sebelumnya telah ditentukan di
tempat lain.
Input/Output Symbols
Simbol ini menunjukkan jenis peralatan yang digunakan sebagai media
input atau output. Simbol pada Input/Output symbols akan ditunjukkan
pada tabel 2.6 berikut ini.
Tabel 2.6 Input/Output Symbols
Nama Simbol
Simbol
Keterangan
Menyatakan proses input atau output
Simbol
tanpa tergantung jenis peralatannya
input/output
Simbol manual
input
Memasukkan
data
secara
manual
dengan menggunakan online keyboard
Menyatakan input yang berasal dari
Simbol punched
kartu atau output ditulis ke kartu
card
Simbol online
storage
Menyatakan input berasal dari disk
atau output disimpan ke disk
Menyatakan input berasal dari pita
Simbol
magnetic tape
magnetis atau output disimpan ke
dalam pita magnetis
Mencetak
Simbol display
Simbol
magnetic disk
keluaran
dalam
layar
monitor
Merepresentasikan data input atau
output dari dan ke magnetic disk.
Mencetak keluaran dalam bentuk
Simbol
dokumen (melalui printer)
document
Simbol
Digunakan untuk merepresentasikan
multipage
sebuah dokumen dengan berbagai
document
halaman
Berikut ini adalah contoh flowchart secara utuh yang dapat dilihat pada gambar 2.28
di bawah ini :
Start
Input value
of variables
Processing
Output
Values
Stop
Gambar 2.28 Contoh Flowchart (Garrido, 2012 : 87)
Download