bab 2 landasan teori 2.1 teknik industri -...
TRANSCRIPT
BAB 2
LANDASAN TEORI
2.1 Teknik Industri
Definisi menurut institute of industrial and system (IIE) :
Teknik industri adalah suatu rekayasa yang berkaitan dengan desain, pembaruan,
dan instalasi dari sistem terintegrasi yang meliputi manusia, material, peralatan (mesin),
energi dan informasi.
Teknik industri juga membutuhkan pengetahuan dan keterampilan khusus dalam
bidang matematika, fisik, dan ilmu sosial yang digabungkan dengan prinsip-prinsip dan
metode-metode analisa teknik untuk memprediksi dan mengevaluasi hasil dalam
merancang suatu sistem (Turner,2000,p21).
Perencanaan produksi merupakan suatu proses penetapan tingkat output secara
keseluruhan guna memenuhitingkat penjualan / permintaan yang direncanakan dan dan
inventori yang diinginkan (Gaspersz,2001,p128).
2.1.1 Peramalan
Kegiatan untuk memperkirakan apa yang terjadi pada masa yang akan datang
dikenal dengan apa yang disebut dengan peramalan (Forecasting). Peramalan diperlukan
untuk menetapkan kapan suatu peristiwa akan terjadi atau timbul, sehingga tindakan
yang tepat dapat dilakukan.
Tujuan dari peramalan itu sendiri adalah melihat atau memperkirakan prospek
ekonomi atau kegiatan usaha serta pengaruh lingkungan terhadap prospek tersebut.
Peramalan kini mempunyai peranan yang penting dalam suatu bagian organisasi. Suatu
11
sistem peramalan harus mempunyai kaitan di antara ramalan-ramalan yang dibuat pada
bidang manajemen yang lain. Jika peramalan ingin berhasil, maka harus diperhatikan
adanya saling ketergantungan yang tinggi di antara ramalan berbagai divisi atau
departemen. Peramalan yang baik adalah peramalan yang dilakukan dengan mengikuti
langkah-langkah atau prosedur-prosedur penyusunan yang baik.
Bilamana data yang diperlukan tersedia, suatu hubungan peramalan dapat
dihipotesiskan baik sebagai fungsi dari waktu atau sebagai fungsi dari variabel bebas,
kemudian diuji. Langkah penting dalam memilih suatu metode deret berkala yang tepat
adalah dengan mempertimbangkan jenis pola data, sehingga metode yang paling tepat
dengan pola tersebut dapat diuji. Pola data dapat dibedakan menjadi empat jenis :
1. Pola Horisontal (H)
Terjadi bilamana nilai data berfluktuasi di sekitar nilai rata-rata yang konstan.
Deret seperti itu stasioner terhadap nilai rata-ratanya. Suatu produk yang
penjualannya tidak meningkat atau menurun selama waktu tertentu termasuk
jenis ini.
Y
waktu
Gambar 2.1 Pola Data Horisontal
12
2. Pola Musiman (S)
Terjadi bilamana suatu deret dipengaruhi oleh faktor musiman (misalnya kuartal
tahun tertentu, bulanan, atau hari-hari pada minggu tertentu). Penjualan dari
produk seperti minuman ringan, es krim, dan bahan bakar pemanas ruangan
semuanya menunjukkan jenis pola ini.
Y
waktu
Gambar 2.2 Pola Data Musiman
3. Pola Siklis (C)
Terjadi bilamana datanya dipengaruhi oleh fluktuasi ekonomi jangka panjang
seperti yang berhubungan dengan siklus bisnis. Penjualan produk seperti mobil,
baja, dan peralatan utama lainnya menunjukkan jenis pola data ini.
13
Y
w a k tu
Gambar 2.3 Pola Data Siklis
4. Pola Trend (T)
Terjadi bilamana terdapat kenaikan atau penurunan sekuler jangka panjang
dalam data. Penjualan banyak perusahaan, produk bruto nasional (GNP) dan
berbagai indikator bisnis atau ekonomi lainnya mengikuti suatu pola data trend
selama perubahannya sepanjang waktu.
Y
w a k tu
h h
h
h
h
hh h
h
h
Gambar 2.4 Pola Data Trend
Situasi peramalan sangat beragam dalam horison waktu peramalan, faktor yang
menentukan hasil sebenarnya, tipe pola data dan berbagai aspek lainnya. Untuk
menghadapi penggunaan yang luas seperti itu, beberapa teknik telah dikembangkan.
14
Teknik tersebut dibagi dalam dua kategori utama, yaitu metode kuantitatif dan metode
kualitatif atau teknologis. Peramalan kuantitatif dapat diterapkan bila terdapat tiga
kondisi berikut :
1. Tersedia informasi tentang data masa lalu
2. Informasi tersebut dapat dikuantifisir (dikuantitatifkan) dalam bentuk data
numerik
3. Dapat diasumsikan bahwa beberapa aspek pola masa lalu akan terus berlanjut di
masa mendatang.
2.1.2 Metode peramalan
A. Metode Double Moving Average
Model rata-rata bergerak menggunakan sejumlah data aktual permintaan yang
baru untuk membangkitkan nilai ramalan untuk permintaan dimasa yang akan datang.
Metode rata-rata bergerak akan efektif diterapkan apabila kita harus mengasumsikan
bahwa permintaan pasar terhadap produk akan tetap stabil sepanjang waktu.
Metode rata-rata bergerak n-periode mengugunakan formula sebagai berikut
( )n
terdahuluperiodendalamtaanperPeriodenbergerakrataRata ∑ −
=−−min
dimana n adalah banyaknya periode dalam rata-rata bergerak.
Persamaan yang dipakai adalah :
( )
( )
mbaF
SSN
b
SSSSSaN
SSSSS
Nxxxx
S
ttmt
ttt
tttttt
nttttt
nttttt
+=
−−
=
−=−+=
++++=
++++=
+
−−−−
−−−−
"'1
2"'2"''
'...'''"
...'
121
121
15
B. Metode Double Eksponential Smoothing Satu Parameter
Dasar pemikiran dari pemulusan eksponensial satu parameter dari Brown adalah
dengan menggunakan rumus pemulusan secara langsung dimana pemulusan
eksponensial linear yang dapat digunakan untuk meramal data dengan suatu pola trend
dasar. Pendekatan ini hampir serupa dengan rata-rata bergerak linear, karena kedua nilai
pemulusan tunggal dan ganda ketinggalan dari data yang sebenarnya bilamana terdapat
unsur trend. Perbedaan nilai pemulusan tunggal dan ganda dapat ditambahkan kepada
nilai pemulusan tunggal dan disesuaikan untuk trend.
Model Peramalan Pemulusan eksponensial bekerja hampir serupa dengan alat
thermostat, dimana apabila galat ramalan (forecast error) dalah positif, yang berarti nilai
aktual permintaan lebih tinggi daripada nilai ramalan (A - F > 0), maka model
pemulusan eksponesial akan secara otomatis meningkatkan nilai ramalan. Sebaliknya
apabila galat ramalan (forecast error) adlaah negatif, yang berarti nilai aktual
permintaan lebih rendah daripada nilai ramalan (A - F < 0), maka model pemulusan
eksponensial akan secara otomatis menurunkan nilai ramalan. Proses penyesuaian ini
beralngsung terus menerus kecuali galat ramalan telah mencapai nol. Kenyataan inilah
yang mendorong peramal (forecaster) lebih suka menggunakan model pramalan
pemulusan eksponensial, apabila pola hisotris dari data aktual permintaaan bergejolak
atau tidak stabil dari waktu ke waktu.
Permasalahan umum yang dihadapi apabila menggunakan model pemulusan
eksponensial adalah memilih konstanta pemulusan α yang diperkirakan tepat. Nilai
konstanta pemulusan alpha dapat dipilih diantara nilai 0 dan 1 karena berlaku: 0 < α < 1.
Bagaimanapun juga untuk penetapan nilai α yang diperkirakan tepat, kita dapat
16
menggunakan panduan berikut:
1. Apabila pola historis dari data aktual permintaan sangat bergejolak atau tidak
stabil dari waktu ke waktu, kita memilih nilai α yang mendekati satu. Biasanya
dipilih nilai α = 0,9; namun dapat dicoba nilai-nilai α yang lain yang mendekati
satu (α = 0,8; 0,95; 0,99, dan lain-lain) tergantung pada sejauh mana gejolak dari
data itu. Semakin bergejolak, nilai α yang dipilih harus semakin tinggi menuju
ke nilai satu.
2. Apabila pola historis dari data aktual permintaan tidak berfluktuasi atau relatif
stabil dari waktu ke waktu, kita dapat memilih nilai α yang mendekati nol.
Biasanya yang dipilih nilai α = 0,1; namun dapat dicoba nilai-nilai α yang lain
yang mendekati nol (α = 0,2; 0,15; 0,05; 0,01, dan lain-lain) tergantung pada
sejauh mana kestabilan dari data itu. Semakin stabil nilai α yang dipilih harus
semakin kecil menuju ke nilai nol.
Persamaan yang dipakai dalam implementasi pemulusan eksponensial linear satu
parameter dari Brown adalah sebagai berikut :
Inisialisasi Awal : 11
''1
' XSS ==
( ) ( )1-ttt S'*1X* S' αα −+=
( ) ( )1-ttt S"*1S'* S" αα −+=
ttt SSa '''.2 −=
( )ttt SSb '''
1−
−=
αα
17
Dimana : S’t = nilai pemulusan eksponensial tunggal
S”t = nilai pemulusan eksponensial ganda
α = konstanta antara 0 – 1
m = jumlah periode ke muka yang diramalkan
C. Metode Peramalan Dekomposisi
Metode dekomposisi biasanya mencoba memisahkan tiga komponen terpisah
dari pola dasar yang cenderung mencirikan deret data ekonomi dan bisnis. Komponen
tersebut adalah faktor trend, siklus dan musiman. Faktor trend menggambarkan perilaku
data dalam jangka panjang, dan dapat meningkat, menurun, atau tidak berubah. Faktor
siklus menggambarkan naik turunnya ekonomi atau industri tertentu dan sering terdapat
pada deret data seperti Produk Bruto Nasional (GNP), indeks produksi industri,
permintaan untuk perumahan, penjualan barang industri seperti mobil, harga saham,
tingkat obligasi, penawaran uang, dan tingkat bunga. Faktor musiman berkaitan dengan
fluktuasi periodik dengan panjang konstan yang disebabkan oleh hal-hal seperti
temperatur, curah hujan, bulan pada suatu tahun, saat liburan, dan kebijaksanaan
perusahaan. Perbedaan antara musiman dan siklus adalah bahwa musiman itu berulang
dengan sendirinya pada interval yang tetap seperti tahun, bulan atau minggu. Sedangkan
faktor siklus mempunyai jangka waktu yang lebih lama dan lamanya berbeda dari siklus
yang satu ke siklus yang lain.
Dekomposisi mempunyai asumsi bahwa data itu tersusun sebagai berikut :
( ) mbaF ttmt .+=+
18
Data = pola + galat
= f (trend, siklus, musiman) + galat
Jadi disamping komponen pola, terdapat pula unsur galat atau keacakan. Galat
ini dianggap merupakan perbedaan antara pengaruh gabungan dari tiga sub-pola deret
tersebut dengan data yang sebenarnya.
Terdapat beberapa pendekatan alternatif untuk mendekomposisikan suatu deret
berkala, yang semuanya bertujuan memisahkan setiap komponen deret data seteliti
mungkin. Konsep dasar dalam pemisahan tersebut bersifat empiris dan tetap yang mula-
mula memisahkan musiman, lalu trend, dan akhirnya siklus. Residu yang ada dianggap
unsur acak yang walaupun tidak dapat ditaksir, tetapi dapat diidentifikasi. Penulisan
matematis umum dari pendekatan dekomposisi adalah :
Xt = f (It, Tt, Ct, Et)
Dimana : Xt adalah nilai deret berkala (data yang aktual) pada periode t
It adalah komponen musiman (indeks) pada periode t
Tt adalah komponen trend pada periode t
Ct adalah komponen siklus pada periode t
Et adalah komponen galat atau acak pada periode t
Bentuk fungsional yang pasti bergantung pada metode dekomposisi yang
digunakan. Untuk semua metode tersebut proses dekomposisinya adalah serupa dan
terdiri atas langkah-langkah sebagai berikut :
1. Pada deret data yang sebenarnya(Xt) hitung rata-rata bergerak yang panjangnya
(N) sama dengan panjang musiman. Maksud dari rata-rata bergerak ini adalah
menghilangkan unsur musiman dan keacakan. Merata-ratakan sejumlah periode
19
yang sama dengan panjang pola musiman akan menghilangkan unsur musiman
dengan membuat rata-rata dari periode yang musimnya tinggi dan periode yang
musimnya rendah. Karena galat acak tidak mempunyai pola yang sistematis,
maka perata-rataan ini juga mengurangi keacakan.
2. Pisahkan rata-rata bergerak N periode (langkah 1) dari deret data semula untuk
memperoleh unsur trend dan siklus.
3. Pisahkan faktor musiman dengan menghitung rata-rata untuk tiap periode yang
menyusun panjang musiman secara lengkap.
4. Identifikasi bentuk trend yang tepat (linear, eksponensial, kurva-S, dan lain-lain)
dan hitung nilainya untuk setiap periode, (Tt).
5. Pisahkan hasil langkah 4 dari hasil langkah 2 (nilai gabungan dari unsur trend
dan siklus) untuk memperoleh faktor siklus.
6. Pisahkan musiman, trend dan siklus dari data asli untuk mendapatkan unsur acak
yang ada, Et.
Dalam melakukan langkah 1 dari prosedur di atas, tugas awalnya adalah
menentukan panjang musiman dari data sehingga jumlah periode tersebut dapat
digunakan untuk menghitung rata-rata bergerak. Lalu langkah 2 adalah mengurangkan
nilai rata-rata bergerak terhadap nilai deret waktu. Langkah 3 memisahkan keacakan dari
unsur musiman dengan cara merata-ratakan semua nilai yang mengacu pada musim yang
sama. Dengan menggunakan prosedur ini, orang dapat mengetahui bahwa unsur acak
akan saling meniadakan, karena beberapa nilai akan bernilai positif dan lainnya negatif.
Langkah 4 dan langkah 5 dalam proses dekomposisi adalah untuk memisahkan trend dan
siklus. Secara umum harus dianggap adanya suatu kurva trend tertentu, nilai ini dihitung
untuk setiap periode, dan nilai tersebut dikurangkan terhadap nilai trend siklus (nilai
20
rata-rata bergerak). Langkah 6 adalah memisahkan unsur acak dari deret data dengan
cara mengurangi deret berkala semula dengan nilai-nilai komponen yang diperoleh di
atas yaitu faktor trend, siklus dan musiman.
Persamaan yang dipakai dalam melakukan peramalan dekomposisi adalah
sebagai berikut :
- Four Period Average
Simple : (Xt + Xt+1 + Xt+2 + Xt+3)/4
Centered : (St + St+1)/2
Percent MA : Data Aktual/Centered
- Deseasonalized
Seasonal : dari perhitungan indeks
Data* : Data Aktual/Seasonal
Trend : a + b(X)
( )22 xxnyxxynb
Σ−ΣΣΣ−Σ
=
xbya −=
- Fitted Values
Fitted Values = Trend * Seasonal
- Error
Error = Data – Fitted Values
Metode ini mula-mula memisahkan unsur trend – siklus dari data dengan
menghitung rata-rata bergerak yang jumlah unsurnya sama dengan panjang musiman.
Rata-rata bergerak dengan panjang seperti ini tidak mengandung pengaruh musiman dan
tanpa atau sedikit sekali unsur acak. Rata-rata bergerak yang dihasilkan hanya
21
mengandung faktor trend dan siklus, karena faktor musiman dan keacakan telah
dieliminasi dengan perata-rataan, dengan menghasilkan rasio dari data yang sebenarnya
dengan rata-rata bergerak dan mengisolasi dua komponen deret berkala. Nilai rasio
tersebut berkisar di antara 100, menunjukkan pengaruh musiman pada nilai rata-rata data
yang telah dihilangkan faktor musimannya (deseasonalized).
Untuk mendapatkan hasil yang lebih teliti, rata-rata bergerak seharusnya
diletakkan di tengah-tengah nilai data yang dirata-ratakan. Hal itu tidak menjadi masalah
jika jumlah nilai yang dirata-ratakan adalah ganjil. Untuk menghitung rata-rata bergerak
4-nilai, timbul pertanyaan apakah rata-rata bergerak tersebut diletakkan pada periode 2
atau periode 3. Meletakkannya pada periode 2 mengakibatkan rata-rata bergerak
terlambat setengah periode dan menempatkannya pada periode 3 mengakibatkan ia lebih
awal setengah periode. Ternyata rata-rata bergerak yang tidak terpusat (centered) dalam
kasus ini dapat menimbulkan masalah. Masalah seperti itu biasanya dapat diatasi dengan
mengambil tambahan rata-rata bergerak 2 periode dan rata-rata bergerak 4 periode.
Langkah selanjutnya adalah dengan menghilangkan keacakan dari nilai rasio
dengan menggunakan suatu bentuk rata-rata pada bulan yang sama. Untuk menghitung
rata-rata medial maka rasio nilai sebenarnya terhadap rata-rata bergerak disusun menurut
bulan untuk setiap tahun. Rata-rata medial adalah nilai rata-rata untuk setiap bulan
setelah dikeluarkan nilai terbesar dan terkecil. Indeks musiman dapat diperoleh dari rata-
rata medial ini yang merupakan nilai penyesuaian sehingga nilai rata-ratanya adalah 100.
Nilai ini berfluktuasi di sekitar 100, menunjukkan adanya faktor siklus yang lebih tinggi
dari nilai rata-rata (lebih besar dari 100) atau yang lebih rendah dari nilai rata-rata
(kurang dari 100). Untuk menyiapkan ramalan, nilai kecenderungan untuk periode yang
akan diramalkan dikalikan dengan indeks musiman dan faktor siklus yang sesuai.
22
2.1.3 Statistik ketepatan peramalan
Jika Xt merupakan data aktual untuk periode t dan Ft merupakan ramalan (atau
nilai kecocokan/fitted value) untuk periode yang sama, maka kesalahan didefenisikan
sebagai berikut :
ttt FXe −=
Jika terdapat nilai pengamatan dan ramalan untuk n periode waktu, maka akan
terdapat n buah galat dan ukuran statistik standar berikut yang dapat didefenisikan :
- Nilai Tengah Galat (Mean Error)
∑ ==
n
tet
nME
1
1
- Nilai Tengah Galat Absolut (Mean Absolute Error)
∑ ==
n
tet
nMAE
1
1
- Jumlah Kuadrat Galat (Sum of Squared Error)
2
1∑ ==
n
tetSSE
- Nilai Tengah Galat Kuadrat (Mean Squared Error)
21
1 etn
MSE n
t∑ ==
23
- Deviasi Standar Galat (Standard Deviation of Error)
211
1 etn
SDE n
t∑ =−=
- Nilai Tengah Deviasi Absolut (Mean Absolute Deviation)
∑ −= XXn
MAD i1
Ukuran-ukuran Relatif
- Galat Persentase (Percentage Error)
100*⎟⎟⎠
⎞⎜⎜⎝
⎛ −=
t
tt
XFX
PE
- Nilai Tengah Galat Persentase (Mean Percentage Error)
tn
tPE
nMPE ∑ =
=1
1
- Nilai Tengah Galat Persentase Absolut (Mean Absolute Percentage Error)
tn
tPE
nMAPE ∑ =
=1
1
Menurut Makridakis ukuran statistik standard adalah sebagai berikut :
- Error
iii FXe −=
24
- Nilai tengah kesalahan absolut (mean error)
∑=
=n
ii neME
1/
- Nilai tengah galat absolut (mean absolute error)
∑=
=n
iieMAE
1
- Nilai tengah galat kuadrat ( mean squared error )
n
eMSE
n
ii∑
== 1
2
- Deviasi standar galat (standard deviation of error)
( )11
2
−=∑=
n
eSDE
n
ii
- Nilai tengah deviasi absolut (mean absolute deviation)
∑ −= XXn
MAD i1
25
Ukuran-ukuran relatif adalah sebagai berikut :
- Galat persentase (percentage error)
100×−
=t
ttt X
FXPE
- Nilai tengah galat persentase (mean percentage error)
n
PEMPE
n
ii∑
== 1
- Nilai tengah galat persentase (mean absolute percentage error)
n
PEMAPE
n
ii∑
== 1
2.1.4 Perencanaan Agregat
Sebagai mana tersirat pada istilah agregat, perencanaan agregat berarti
mengkombinasikan sumber daya yang sesuai ke dalam jangka waktu keseluruhan.
Dengan prediksi permintaan, kapasitas fasilitas, tingkat persediaan, ukuran tenaga kerja,
dan input yang saling berhubungan, perencana harus memilih tingkat output untuk
sebuah atau beberapa fasilitas (Heizer,2004,p115)
Untuk menyelesaikan permasalahan agregat ini terdapat berbagai metode yang
bisa digunakan, antara lain : Metode Grafik dan Diagram dengan menggunakan variasi-
variasi strategi yang menungkinkan dan Metode Matematis (Heuristic dan Transportasi).
26
Untuk penelitian ini lebih difokuskan kepada metode matematis dengan menggunakan
aturan Transportasi.
Pengertian Metode Transportasi
Model transportasi merupakan kasus khusus, dari masalah program-linear,
dengan tujuan untuk "Mengangkut" barang tunggal dari berbagai asal (origin) ke
berbagai tujuan (destination), dengan biaya angkut serendah mungkin. Banyaknya
barang yang tersedia diberbagai asal dan jumlah barang yang diminta oleh berbagai
tempat tujuan tersirat dalam masalah yang harus ditangani.
Diberikan juga biaya pengangkutan dari satu unit barang yang diangkut dari
suatu asal tertentu sampai ketempat tujuan tertentu. Harap diingat bahwa semua
hubungan adalah linear.
Dilengkapi dengan informasi tentang jumlah kapasitas dari tiap-tiap asal,
permintaan total dari masing-masing tempat tujuan, dan biaya pengiriman per unit
barang untuk lintasan yang dimungkinkan, maka model transportasi digunakan untuk
menentukan program pengiriman optimal yang menghasilkan biaya pengiriman total
yang minimum.
Karena masalah transportasi adalah kasus khusus dari masalah program linear,
maka akan selalu dapat diselesaikan dengan metode simplex.
Tetapi "algoritma ”, yang akan dikembangkan dalam modul ini, menyajikan
suatu cara-yang lebih efisien untuk menangani masalah-tersebut.
Pendekatan Metode Transportasi
Metode transportasi terdiri atas tiga langkah dasar :
27
Langkah pertama , melibatkan penentuan pengiriman awal, sedemikianrupa sehingga
dperoleh solusi dasar yang memnuhi syarat. Ini berarti bahwa (m+n-1) sel atau rute dari
matriks transformasi digunakan untuk tujuan pengangkutan. Sel yang digunakan untuk
pengangkutan disebut ”sel yang ditempati”, sedang sel lainnya dari matriks transportasi
akan disebut ”sel kosong”.
Langkah kedua, bertujuan menentukan biaya ”kesempatan” (opportunity) yang berkaitan
dengan sel kosong. Biaya ”kesempatan” dari sel kosong dapat dihitung untuk tiap-tiap
sel kosong tersendiri, atau dihitung untuk semua sel kosong secara keseluruhan. Jika
biaya ”kesempatan” dari semua sel kosong tidak positif , maka solusi optimal telah
diperoleh. Dilain pihak, jika hanya satu sel saja memiliki biaya kesempatan ”bernilai
positif”, solusi pasti belum optimal dan kita harus melangkah kelangkah ketiga.
Langkah tiga, melibatkan penentuan solusi dasar yang memenuhi syarat, baru dan lebih
baik. Sekali solusi dasar yang baru dan memenuhi starat telah dicapai, kita ulangi
langkah 2 dan langkah 3 sampai suatu solusi optimal telah ditentukan.
2.1.4.1 Pengertian Metode Transportasi Aturan North West Corner
Sesuai nama aturan ini, maka penempatan pertama dilakukan disel. paling kiri
dan paling atas (northwest) dari matriks.
Besar alokasi ini akan mencukupi salah satu, kapasitas tempat asal dari baris
pertama atau permintaan tempat tujuan dari kolom pertama atau kedua-duanya. Jika
kapasitas dari tempat asal dibaris pertama terpenuhi. kita bergerak kebawah-menyusur
28
kolom pertama dan menentukan lain yang akan mencukupi atau kapasitas tempat asal
dari baris kedua atau mencukupi tujuan yang masih kurang dari kolom pertama
Dilain pihak, jika alokasi pertama memenuhi permintaan tempat tujuan dikolom
pertama, kita bergerak kekanan dibaris pertama dan kemudian menentukan alokasi
kedua yang atau memenuhi kapasitas tersisa dari baris satu atau memenuhi permintaan
tujuan dari kolom-kolom, dan seterusnya. Dengan cara ini, dimulai dari sudut paling kiri
dan paling atas dari matriks transportasi, memenuhi permintaan tujuan dan kapasitas
tempat asal sekaligus, kita bergerak ke sel sebelah kanan yang lebih rendah sehingga
tercapai persyaratan.
Harap diperhatikan bahwa jika kita ikuti aturan NWC, kita tidak menaruh
perhatian terhadap biaya relevan dari tiap-tiap rute waktu kita menentukan program
awal.
2.1.4.2 Pengertian Metode Transportasi Aturan Least Cost
Prosedur pemecahan awal persoalan transportasi bila menggunakan metode
Least Cost adalah sebagai berikut :
1. Alokasikan setinggi mungkin sejumlah komoditas pada sel yang mempunyai
biaya unit terkecil dalam keseluruhan tabel.
2. Jika ada beberapa sel yang memiliki biaya unit terkecil yang sama maka pilih
salah satu secara sembarang.
3. Silang kolom atau baris yang telah terpenuhi, jika baik kolom maupun baris
dipenuhi secara bersamaan hanya satu yang disilang.
29
4. Setelah menyesuaikan penawaran dan permintaan untuk semua baris dan kolom
yang belum disilang, ualngi proses dengan memberikan nilai setinggi mungkin
pada sel yang memiliki biaya unit terkecil berikutnya yang belum disilang.
5. Prosedur ini diselesaikan ketika tepat satu baris atau kolom yang belum disilang.
Metode ini mentitik-beratkan pada biaya terendah pada seluruh periode
perencanaan, sehingga dilakukan perbandingan biaya-biaya yang terdapat pada kolom
permintaan untuk mendapatkan biaya yang terendah. Umumnya metode ini akan
menghasilkan total biaya yang terendah dibandingkan dengan metode yang lain.
2.1.4.3 Pengertian Metode Transportasi Aturan Vogel’s Approximation Method
Metode ini merupakan sebuah metode heuristicvdan biasanya memberikan
pemecahan awal yang lebih baik daripada metode sebelumnya, yaitu metode North West
Corner dan Least Cost. Pada kenyataannya metode Aproksimasi Vogel umumnya
menghasilkan pemecahan awal yang mendekati hasil optimum.
Langkah-langkah dari prosedur metode Aproksimasi Vogel dijelaskan sebagai
berikut :
1. Evaluasi penalty setiap baris dan kolom dengan mengurangkan elemen biaya
terkecil dalam baris (kolom) dari biaya terkecil berikutnya dalam baris (kolom)
yang sama.
2. Identifikasi baris (kolom) dengan penalty terbesar, pilih yang sama secara
sembarang. Alokasikan sebanyak mungkin variabel pada sel yang mempunyai
unit biaya terendah dalam baris (kolom) yang terpilih. Sesuaikan penawaran dan
permintaan dan silang baris atau kolom yang dipenuhi. Jika sebuah baris atau
kolom dipenuhi secara bersamaan, hanya satu yang disilang dan baris (kolom)
30
sisanya diberikan penawaran (permintaan) nol. Setiap baris atau kolom dengan
penawaran (permintaan) nol tidak boleh dipergunakan lagi dalam menghitung
penalty berikutnya (dalam langkah 3).
3. a. Jika tepat satu baris atau kolom yang belum disilang maka berhentilah.
b. Jika hanya satu baris atau kolom dengan penewaran (permintaan) positif yang
belum disilang, maka tentukan variabel dasar dalam baris atau kolom tersebut
dengan biaya terendah.
c. Jika semua baris dan kolom yang belum disilang memiliki (diberi) penawaran
dan permintaan nol, tentukan variabel dasar nol berdasarkan metode least
Cost, berhentilah.
d. Jika tidak, hitung ulang penalty untuk baris dan kolom yang belum disilang,
lalu kembali ke langkah 2.
31
2.2 Sistem informasi
Menurut Mcleod (2001,p4) Sistem Informasi adalah suatu kombinasi yang
terorganisasi dari manusia, perangkat lunak, perangkat keras, jaringan komputer, dan
sumber daya data yang mengumpulkan, mentransformasikan, dan menyebarkan
informasi di dalam sebuah organisasi. Sedangkan informasi itu sendiri menurut McLeod
(2001, p2) adalah merupakan data yang telah diproses atau data yang memiliki arti. Dari
definisi yang disebutkan, informasi dapat disimpulkan sebagai data yang telah diolah
yang mempunyai arti dalam pengambilan keputusan bagi pihak yang bersangkutan.
Menurut Alter (1999,p42) Sistem Informasi adalah suatu sistem kerja yang
menggunakan teknologi informasi untuk mengumpulkan, meneruskan, menyimpan,
mendapatkan kembali, memanipulasi, ataupun menampilkan informasi, sehingga
mendukung satu atau lebih sistem kerja. Sedangkan sistem kerja adalah sistem dimana
manusia berpartisipasi untuk melakukan proses bisnis dengan menggunakan teknologi
informasi dan sumber daya yang lain untuk menghasilkan suatu produk bagi pihak
internal maupun eksternal.
Dari penjelasan di atas, definisi sistem informasi dapat disimpulkan sebagai
gabungan sistem kerja dari berbagai elemen yang mengumpulkan, menyimpan,
mentransformasikan dan menyebarkan informasi dalam suatu sistem.
2.2.1 Siklus Pengembangan sistem (System Development Life Cycle/SDLC)
Siklus pengembangan sistem menurut Valaich (2001,p21-24) terdiri dari
beberapa tahap yaitu sebagai berikut :
1. Perencanaan dan pemilihan sistem (System Planning and selection)
32
Merencanakan dan meletakkan dasar bagi sistem informasi baru atau sistem
informasi hasil revisi yang memiliki dua aktivitas utama yaitu menentukan
kebutuhan untuk sebuah sistem baru atau perbaikan sistem yang sudah ada dengan
meneliti dan menentukan lingkup dari sistem usulan.
2. Analisa sistem (Analysis System)
Meliputi survei dan analisa terhadap sistem informasi sekarang. Pada tahap ini akan
ditentukan informasi apa yang diperlukan bagi para pengguna dari sistem yang baru
disamping persyaratan teknis dari sistem itu sendiri.
3. Desain sistem (System Design)
Meliputi penentuan spesifikasi yang memenuhi kebutuhan dan persyaratan yang
ditentukan terhadap analisa sistem.
4. Implementasi dan operasi sistem (System Implementation and Operation)
Langkah-langkahnya meliputi penyelesaian rincian desain baru, perekrutan dan
pelatihan karyawan baru, memasang dan menguji coba peralatan baru, mengkonversi
arsip-arsip ke media baru dan menghidupkan mesin-mesin atau peralatan sistem
yang baru.
2.2.2 Pengertian Analisa dan Perancangan Sistem
Menurut McLeod (2001, p234) Analisa sistem adalah penelitian atas sistem yang
telah ada dengan tujuan untuk merancang sistem yang baru atau diperbaiki. Jadi dapat
disimpulkan bahwa analisa sistem adalah penelitian sistem yang ada dengan tujuan
penyempurnaan sistem yang dapat dimanfaat oleh pengguna.
33
Perancangan sistem adalah proses penterjemahan kebutuhan pemakai ke dalam
alternatif rancangan sistem informasi yang diajukan kepada pemakai informasi untuk
dipertimbangkan. Dari definisi diatas, perancangan sistem dapat disimpulkan suatu
proses penyiapan spesifikasi dalam menterjemahkan kebutuhan pemakai dalam
pengembangan sistem baru.
2.2.3 Konsep Analisa dan Perancangan Berorientasi Objek
Problem Domain Analysis
Problem Domain Analysis menyediakan suatu bahasa yang mengekspresikan
kebutuhan akan sistem. Dimana selama merancang, model akan ditransformasikan
menjadi sebuah component yang merepresentasikan problem domain pada aktivitas yang
sekarang dan aktivitas sebelumnya.
Application Domain Analysis
Application Domain Analysis memaparkan analisa tentang aplikasi-aplikasi yang akan
menjadi fungsi-fungsi pada sistem yang akan dirancang. Pada tahap ini akan dirancang
suatu sistem yang merupakan sinergi antara bentuk kebutuhan akan sistem (fungsi, user
interface, dan lain-lain) dengan model yang talh kita miliki pada saat problem domain di
analisa
2.2.3.1 Pengertian Objek
Objek itu sendiri adalah sebuah entitas yang dapat menyimpan informasi (state)
dan menawarkan sejumlah operasi (behavior) untuk mengevaluasi maupun
mempengaruhi keadaan entitas tadi. Sebuah objek ditandai dengan sejumlah operasi dan
34
sebuah state / informasi yang mengingat akibat / efek dari operasi tersebut (Jacobson,
1996, p.44).
Menurut definisi lain yang serupa, objek juga merupakan abstraksi baik untuk
hal-hal konseptual maupun fisik. Objek memiliki keadaan (state), identitas dan perilaku
melalui operasi tertentu yang merubah keadaan semula menjadi keadaan yang baru (Lau,
2001, p.2).
Model yang berorientasi objek terdiri dari sejumlah objek - objek yang umumnya
berkorespondensi dengan objek pada dunia nyata. Contohnya, sebuah objek dapat
berupa Sales Order (Form penjualan), karyawan, dan sebagainya. Karakteristik yang
harus dimiliki oleh objek antara lain:
1. Tiap objek memiliki sifat atau informasi individual yang unik (attribute) di mana
tiap attribute mempunyai nilai. Contohnya, seorang mahasiswa memiliki attribute
NIM (Nomor Induk Mahaiswa), nama, nilai, dan sebagainya. Objek dapat
melakukan suatu operasi yang disebut dengan behavior. Operasi ini dapat dipicu
oleh stimulus dari luar maupun dalam objek.
2. Objek dapat dikomposisikan menjadi bagian - bagian terpartisi yang dinyatakan
dalam hubungan consist of atau aggregate.
2.2.3.2 Konsep Dasar Object - Oriented (OO)
Konsep analisa dan perancangan berorientasi objek (Object - Oriented)
merupakan suatu konsep pemodelan sistem dari sudut pandang objek beserta sifat -
sifatnya. Konsep ini memungkinkan kita untuk menciptakan serangkaian objek yang
bekerja bersama-sama dalam menghasilkan software yang lebih baik jika dibandingkan
dengan teknik yang tradisional. Sistem menjadi lebih mudah diadaptasi terhadap
35
perubahan permintaan, lebih mudah dikembangkan, lebih tahan dan meningkatkan
desain dan penggunaan kode dengan lebih baik. Orientasi terhadap Object – Oriented ini
bukan berdasarkan bagaimana objek melakukan sesuatu tetapi lebih kepada apa yang
objek lakukan.
Suatu model yang dirancang dengan pendekatan berorientasi objek umumnya
memiliki karakteristik yang mudah dimengerti dan dapat secara langsung berhubungan
dengan dunia nyata. Oleh karena itu, semantic gap yang terjadi antara objek
sesungguhnya dengan model objek dalam rancangan logik dapat ditekan sekecil
mungkin (Jacobson, 1996, p.42).
Keuntungan umum dari paradigma perancangan berorientasi objek adalah :
- Penyederhanaan (abstraksi) pada tingkat tinggi. Pendekatan top-down
menunjang penyederhanaan pada level fungsi. Sedangkan pendekatan Object –
Oriented menunjang penyederhanaan pada level objek. Sejak objek
mengkapsulasi baik data (attributes) maupun fungsi (method), objek bekerja
pada penyerdehaan level tinggi. Pengembangan sistem dapat diproses pada level
objek dan mengindahkan sistem lainnya selama diperlukan. Ini membuat desain,
coding, pengujian (testing), dan pengembangan sistem menjadi lebih mudah.
- Transisi yang sama antara fase yang berbeda pada pengembangan software.
Pada pendekatan tradisional yang digunakan untuk pengembangan software,
dibutuhkan gaya dan metode yang berbeda untuk setiap tahapan proses.
Perpindahan dari satu fase ke fase lain membutuhkan transaksi pandangan
(perpektif) yang rumit antara model yang sangat mungkin sangat berbeda dengan
dunia nyata. Transisi bukan hanya memperlambat pengembangan proses tetapi
36
juga meningkatkan ukuran (size) proyek dan kemungkinan terjadinya error jika
berpindah dari satu bahasa ke bahasa lain. Di lain pihak, pendekatan berorientasi
objek ini menggunakan bahasa yang sama dalam analisa, desain, programming,
dan desain database. Pendekatan yang sama ini dapat meminimalkan tingkat
kerumitan dan redudansi serta memberikan pemahaman yang lebih jelas, juga
lebih tahan terhada pengembangan sistem.
- Menghasilkan teknik pemrograman yang baik.
Class dalam pendekatan berorientasi objek menggambarkan secara jelas antara
interface (spesifikasi mengenai apa yang dapat dilakukan oleh class) dan
impelmentasi (bagimana class melakukan apa yang dilakukannya). Dalam desain
sistem yang sebagaimana mestinya class dikelompokkan dalam sub sistem tetapi
tetap berdiri sendiri, dimana jika suatu kelas diubah tidak akan berdampak atau
mempengaruhi kelas yang lain.
- Meningkatkan penggunaan kembali.
Objek dapat digunakan kembali karena objek dimodel secara langsung dari
problem domain pada dunia nyata. Lebih jauh lagi, pendekatan berorientasi
objek menambahkan inheritance, yang merupakan teknik yang memungkinkan
kelas dibangun sendiri berbeda dengan class yang lain. Dan hanya class yang
berbeda yang harus didesain dan di-coding
2.2.3.3 Class dan Instance
Penggolongan objek - objek ke dalam suatu kelompok berdasarkan kesamaan
karakteristik dinyatakan dalam class. Sebuah class dapat merupakan sebuah definisi,
atau cetakan (template), yang memungkinkan penciptaan objek baru, dan merupakan
37
deskripsi dari sejumlah karakteristik umum yang sama - sama dimiliki oleh sejumlah
objek (Jacobson, 1996, p.46).
Objek dalam class yang sama memiliki definisi yang sama pula baik untuk
operasinya maupun struktur informasinya. Contohnya, class kendaraan merupakan
sebuah model dengan karakteristik dijalankan oleh mesin dan digunakan untuk
transportasi. Dari class ini dapat diturunkan objek - objek seperti mobil, motor, pesawat,
dan sebagainya karena semua itu memiliki karakteristik yang sama dalam class
kendaraan, yakni semuanya dijalankan oleh mesin dan untuk tujuan transportasi. Objek
mobil, motor dan pesawat tersebut disebut sebagai instance. Sebuah instance merupakan
objek yang diciptakan dari class dengan struktur yang didefinisikan dari class.
2.2.3.4 Encapsulation, Inheritance, dan Polymorphism
2.2.3.4.1 Inheritance
Inheritance adalah properti dalam sistem berorientasi objek yang memungkinkan
objek dibangun dari objek yang lain dan menciptakan sebuah class baru yang memiliki
sifat - sifat induknya, ditambah karakteristik khas individualnya. Jika class B meng-
inherit class A, maka operasi dan struktur informasi yang terdapat pada class A akan
menjadi bagian dari class B. keuntungan menggunakan teknik ini adalah kita dapat
membangun dari objek yang sudah kita miliki sebelumnya atau penggunaan kembali
dari apa yang kita miliki.
2.2.3.4.2 Encapsulation dan Information Hiding
Encapsulation atau penyembunyian informasi merupakan suatu prinsip
penyembunyian data internal dan prosedur (method) dari objek dan menyediakan sebuah
38
interface pada setiap objek dengan cara tertentu untuk menyatakan sebisa mungkin
tentang apa yang dilakukan objek. Secara tradisional, data dan fungsi dalam sebuah
program adalah independen. Seperti dalam pemrograman modular dan abstraksi data,
pemrograman berorientasi objek mengelompokkan data dengan fimgsi yang beroperasi
pada data tersebut. Setiap objek kemudian mempunyai sebuah set data dan sebuah set
method secara logik.
2.2.3.4.3 Konsep Polymorphism
Poly berarti “banyak” dan morph berarti “bentuk”. Dalam kondeks sistem
berorientasi objek, artinya objek dan dibuat dalam bentuk yang berbeda-beda.
Polymorphism adalah kemampuan dari tipe objek yang berbeda untuk menyadari
property dan operasi yang sama dalam hal yang berbeda. Polymorphism adalah hasil
natural dari fakta bahwa objek dari tipe yang berbeda (bahkan dari subtipe yang
berbeda) dapat menggunakan property dan operasi yang sama dalam hal yang berbeda
(Aitken, 1999, p.7)
Secara umum dapat dikatakan bahwa pengirim stimulus atau bagian yang
memicu tidak perlu mengetahui bagaimana suatu method diimplementasikan. Sebagai
contoh, objek dari tipe kendaraan semuanya mempunyai operasi “akselerasi” walaupun
mungkin saja terdapat perbedaan dalam melakukan akselerasi dalam (sub) tipe
kendaraan yang berbeda. Kendaraan darat biasanya berakselerasi menggunakan tenaga
yang diterapkan melalui roda, dimana kendaraan air biasanya berakselerasi
menggunakan tenaga yang diterapkan melalui baling - baling. Jika dipanggil method
akselerasi, maka method tersebut akan memberikan hasil yang berbeda untuk kendaraan
air dan kendaraan darat.
39
2.2.4 Unified Modeling Language (UML)
Unified Modelling Language (UML) adalah suksesor dari gelombang metode
OOA/D yang berkembang di awal 1990. Saat itu terdapat banyak pengguna metode
OOA/D menghadapi masalah sebab belum tersedia sebuah modelling language yang
dapat memenuhi kebutuhan mereka, sehingga terdapat berbagai method yang digunakan
tanpa standar dan keseragaman tertentu. UML sebagian besar menggabungkan metode -
metode dari Booch (yang mempunyai metode yang baik dalam fase perancangan dan
konstruksi dari pembuatan proyek), Rumbaugh (Object Modelling Technique/OMT,
yang sangat berguna dalam analisis dan sistem informasi dengan data intensif), dan
Jacobson (Object-Oriented Software Engineering/OOSE, yang menyediakan dukungan
use case untuk mengetahui kebutuhan requirement, analisis, dan perancangan high-
level), serta metode-metode lain, seperti Fusion, Shlaer-Mellor, dan Coad-Yourdon.
UML melalui sebuah proses standarisasi dengan OMG (Object Management Group) dan
sekarang adalah sebuah standar OMG.
UML adalah sebuah modelling language, dan bukan sebuah method. Sebagian
besar method, paling tidak dalam prinsipnya, terdiri dari sebuah modelling language dan
sebuah proses. Modelling language adalah notasi (terutama grafikal) yang digunakan
method untuk mengekspresikan rancangan. Proses adalah nasihat atas langkah - langkah
apa yang perlu diambil dalam menjalankan sebuah rancangan.
Kegunaan UML terutama untuk, sistem informasi perusahaan, layanan
perbankan dan finansial, telekomunikasi, transportasi, perdagangan, dan alat-alat
elektronik medis. UML dikelompokkan menjadi 4 bagian berdasarkan fungsinya
masing-masing dan secara keseluhan UML memiliki delapan buah diagram, yang dapat
dijelaskan sebagai berikut :
40
2.2.4.1 Class Diagram
Class diagram mengacu kepada pemodelan objek yang merupakan diagram
analisa static yang utama yang menggambarkan sekumpulan class, interface, dan
collaboration, dan relasi - relasinya. Class diagram juga menunjukkan attribute dan
operation dari sebuah class dan constraint yang berlaku dengan bagaimana objek –
objek dihubungkan. Pemodelan objek merupakan proses diamana logical objek dalam
dunia nyata (problem space) direpresentasikan (dipetakan) oleh actual objek ke dalam
suatu program.
Class1
Class2 Class3
Class4
Class6
Gambar 2.5 Class Diagram
Notasi - notasi yang terdapat pada Class Diagram :
- Class
Merupakan sebuah deskripsi dari sekumpulan objek yang berbagi attribute,
operation, dan hubungan yang sama. Sebuah class dapat mengimplementasikan
satu atau lebih interface.
- Association dan Role
Merupakan sebuah hubungan struktural yang menggambarkan sekumpulan link,
dimana sebuah link adalah sebuah koneksi diantara objek - objek; hubungan
41
semantik diantara dua atau lebih classifier yang melibatkan koneksi diantara
instance - instancenya. Role merupakan akhir / ujung dari sebuah association.
- Navigability
Navigability merupakan sebuah properti dari role, yang menandakan bahwa ada
kemungkinan untuk melakukan navigasi uni-directional pada association dari
objek sumber ke objek tujuan. Ada beberapa situasi yang memerlukan
navigability dari A ke B yaitu A mengirim pesan ke B, A membuat sebuah
instance B, A perlu untuk mempertahankan koneksi ke B.
Pada gambar berikut ini, panah navigability menandakan bahwa A terhubung
secara uni-directionally ke B, dan tidak adanya hubungan dari B ke A. Class A
kemungkinan memiliki sebuah attribute yang menunjuk kepada sebuah objek B.
- Aggregation
Aggregation Merupakan sebuah hubungan "keseluruhan/bagian", dimana sebuah
class merepresentasikan sebuah hal yang lebih besar (“keseluruhan”), yang
terdiri dari hal - hal yang lebih kecil (“bagian”). Hal ini menggambarkan
hubungan “mempunyai sebuah atau beberapa", dimana sebuah objek
“keseluruhan” mempunyai objek - objek “bagian”. Tetapi pada aggregation,
sebuah objek “bagian” dapat berdiri sendiri tanpa perlu tergantung pada objek
“keseluruhan”.
42
- Composition
Composition adalah strong aggregation. Pada composition, objek “bagian” tidak
dapat berdiri sendiri tanpa objek “keseluruhan”. Jadi mereka terkait dengan kuat
satu dengan yang lainnya.
- Generalization
Generalization merupakan sebuah hubungan spesialisasi/generalisasi dalam
model-model UML, dimana objek-objek dari elemen yang dispesialisasi-kan
(child) dapat digantikan dengan objek dari elemen yang di-generalisasi-kan
(parent). Dengan demikian, child berbagi struktur dan behavior dari parent.
Dalam penerapannya generalization merupakan konsep inheritance dan dapat
dikembangkan menjadi konsep polymorphysm.
- Multiplicity
Multiplicity merupakan sebuah spesifikasi tentang rentang kardinalitas yang
diizinkan untuk dimiliki oleh sebuah objek. Sebuah multiplicity dapat berisi:
exactly one (1), optional/zero or one (0..1), many/zero or more (0..n), one or
more (1..n), an exact number (n), ataupun numerically specified (m..n).
- Annotational Things
Annotational Things adalah komentar - komentar yang dapat kita berikan untuk
menjelaskan, menerangkan, dan menandai setiap elemen dalam setiap model
UML. Terdapat sebuah jenis annotational thing, yang disebut note.
43
2.2.4.2 Use Case Diagram
Use Case adalah sekumpulan skenario yang menghubungkan antara user dan
sistem. Actor adalah sebuah role yang dimainkan seorang user terhadap sistem. Use
Case Diagram adalah kumpulan dari use case dan actor serta hubungannya. Sedangkan
gambaran besar yang merupakan gabungan dari seluruh use case diagram yang terdapat
di dalam sebuah sistem disebut System Level Use Case.
Actor1
UseCase1
Actor2
Gambar 2.6 Use Case Diagram
Notasi-notasi pada Use Case Diagram :
- Extend
Merupakan sebuah hubungan dalam use case, yang digunakan saat kita
menggambarkan sebuah variasi atas sebuah behavior normal, dimana kita ingin
menggunakan bentuk yang lebih mudah untuk dikontrol dan mendeklarasikan
extension points dalam use case dasar kita.
- Include
Merupakan sebuah hubungan dalam use case, yang digunakan bila ada beberapa
skenario yang berulang dibeberapa use case lainnya. Agar tidak terjadi
44
perulangan, skenario ini dibuat menjadi sebuah use case yang akan di-include
oleh use case lainnya.
2.2.4.3 Behavior Diagram (dynamic)
Behavior diagram merupakan model dinamis yang ditampilkan dalam
sekelompok prosedur atau behavior yang menggambarkan perilaku sistem. Hubungan
dinamis menjelaskan bagaimana suatu objek bisnos saling berinteraksi dalam
menyelesaikan suatu pekerjaan. Model dinamis ini sangat berguna selama tahap desain
dan implementasi dalam pengembangan sistem. Behavior Diagram terdiri dari 3 diagram
yaitu :
2.2.4.3.1 Interaction Diagram
Interaction Diagram adalah sebuah diagram yang menjelaskan bagaimana
sekumpulan objek saling berkolaborasi dalam menyelesaikan suatu pekerjaan.
Interaction diagram menjabarkan perilaku dari single use case, menampilkan pola
interaksi antar objek. Diagram ini menampilkan sejumlah contoh objek dan pesan yang
diteruskan antar objek dalam use case. Interaction diagram terdiri dari :
1. Sequence diagram adalah sebuah interaction diagram yang menekankan pada
urutan waktu penyampaian dari suatu pesan yang menggambarkan interaksi
antara sistem dan lingkungannya. Sequence diagram tidak menampilkan
hubungan antara peran atau asosiasi antar objek. Sequence diagram memiliki
dua dimensi yaitu dimensi vertical yang merepresentasikan waktu dan dimensi
horizontal yang merepresentasikan objek yang berbeda.
45
Object1 Object2
Message1
Gambar 2.7 Sequence Diagram
Notasi - notasi yang terdapat pada Sequence Diagram :
- Object
Pada Sequence Diagram, digambarkan sebagai sebuah kotak pada sisi atas dari
garis putus-putus. Objek diawali dengan “:” (tanda titik dua), dan nama objek
berada di depan (sebelum) “:” (tanda titik dua) berada. Objek dan nama objek
digaris bawahi dari awal ke akhir.
- Object Lifeline
Pada Sequence Diagram, digambarkan sebagai garis vertikal putus - putus, yang
mewakili keberadaan sebuah objek pada sebuah periode waktu.
- Focus of Control
Pada Sequence Diagram, digambarkan sebagai sebuah persegi panjang pipih
yang terdapat diatas lifeline, menggambarkan periode waktu dimana sebuah
objek melakukan sebuah aksi.
46
- Message
Message pada Sequence Diagram digambarkan sebagai sebuah anak panah
diantara lifeline dari dua buah objek.
- Condition
Condition merupakan sebuah kondisi yang menandakan kapan sebuah message
harus dikirim (misalnya, [kena denda]). Message tersebut hanya akan dikirim
jika kondisinya benar
- Return Message
Return Message merupakan sebuah hasil (output) yang dikirim oleh sebuah objek
kepada objek lain yang mengirimkan message padanya. Pada Sequence Diagram,
return message digambarkan sebagai sebuah anak panah putus - putus diantara
lifeline dari dua buah objek. Return message adalah notasi yang opsional
sehingga dapat digambarkan bila dengan menggambarkannya akan memperjelas
sequence diagram.
- Self Call
Self Call pada Sequence Diagram adalah sebuah message yang dikirim sebuah
objek kepada dirinya sendiri.
2. Collaboration diagram
Collaboration Diagram adalah sebuah interaction diagram yang menekankan
pada struktur organisasi dari objek - objek yang mengirim dan menerima pesan.
47
Sama seperti Sequence Diagram, anak panah merupakan pesan yang dikirim
anatar use case.
Gambar 2.8 Collaboration Diagram
2.2.4.3.2 Statechart Diagram
Statechart diagram menggambarkan behavior dari sebuah sistem. Statechart
Diagram menunjukkan state - state yang mungkin dijalankan oleh sebuah objek dan
bagaimana state objek tersebut menjalankannya berubah sebagai hasil dari event - event
yang mencapai objek tersebut.
Gambar 2.9 StateChart Diagram
48
2.2.4.3.3 Activity Diagram
Merupakan sebuah diagram yang menggambarkan urutan dari aktivitas -
aktivitas di dalam sistem. Activity diagram digunakan untuk menggambarkan aktivitas -
aktivitas yang memiliki conditional behavior dan parallel behavior.
Gambar 2.10 Activity Diagram
Notasi - notasi yang terdapat pada Activity Diagram :
- Initial State / Start State
Pada Activity Diagram, initial state / start state adalah sebuah keadaan pada saat
akan memulai sebuah aktivitas.
- Activity State
Pada Activity Diagram, activity state adalah sebuah keadaan tentang melakukan
sesuatu dari sebuah aktivitas.
49
- Transition
Pada Activity Diagram, transition adalah sebuah keadaan perpindahan dari suatu
aktivitas ke aktivitas lainnya.
- Branch (Conditional Behavior)
Pada Activity Diagram, branch mempunyai sebuah transisi masuk yang tunggal
dan beberapa transisi keluar yang di-guard. Hanya satu transisi keluar yang dapat
diambil. Misalnya, jika kita menggunakan [else] sebagai sebuah guard,
menandakan bahwa transisi “else” harus digunakan, jika guard - guard lain pada
branch adalah salah.
- Swimlane
Pada Activity Diagram, swimlane menggambarkan class atau orang yang
bertanggung jawab untuk setiap activity state.
- Fork dan Join (Parallel Behavior)
Pada Activity Diagram, fork mempunyai sebuah transisi masuk yang tunggal dan
beberapa transisi keluar. Ketika transisi masuk terpicu, semua transisi keluar
dilaksanakan secara paralel. Dengan join, transisi keluar yang disebutkan
sebelumnya hanya dilaksanakan jika semua state pada transisi masuk telah
menyelesaikan aktivitasnya masing - masing.
50
- Final State
Pada Activity Diagram, final state adalah sebuah keadaan akhir dari sebuah
aktivitas.
2.2.4.4 Navigation Diagram
Navigation diagram menampilkan tampilan dari elemen user interface dan
perpindahan diantara elemen-elemen tersebut. Navigation diagram berisi tentang
gambar dari setiap window yang telah diminimalisasi hanya secara gambar namun
fungsi yang terkandung tidak berubah. Dan juga menampilkan panah-panah yang
menunjukkan bagaimana cara menggunakan tombol-tombol yang tersedia dan pilihan-
pilihan yang mengaktifkan fungsi-fungsi serta membuka window yang lain.
2.2.4.5 Implementation Diagram
Implementation diagram menggambarkan tahap implementasi dari
pengembangan sistem, seperti struktur kode dan struktur implementasi run-time. Ada
dua tipe Component diagram, yaitu :
2.2.4.5.1 Component Diagram
Component diagram menggambarkan organisasi dan dependensi diantara
komponen – komponen fisik (seperti kode sumber, executable program, user interface)
dalam suatu desain. Dimana bentuk yang digunakan bergantung kepada kemampuan
yang dimiliki dari client dan server
Tabel 2.1 Jenis Pola Arsitektur Client-Server
Client Server Architecture U U+F+M Distributed presentation U F+M Local presentation U+F F+M Distributed functionality U+F M Centralzed data U+F+M M Distributed data
Gambar 2.11 Component Diagram
2.2.4.4.2 Deployment Diagram
Deployment diagram menggambarkan konfigurasi dari node-node run-time
processing dan komponen - komponen yang berada didalamnya. Terdapat 3 jenis pola
distribusi dari deployment diagram, yaitu :
- The Centralized Pattern
11
Gambar 2.12 Deployment Diagram Jenis The Centralized Pattern
- The Distributed Pattern
Gambar 2.13 Deployment Diagram Jenis The Distributed Pattern
12
- The Decentralized Pattern
Gambar 2.14 Deployment Diagram Jenis The Decentralized Pattern