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
w aktu
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
w aktu
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
h h h
h
h
h h h
h
h w a k tu
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
Rata − rata bergerak n − Periode =
∑ ( per min taan dalam n − periode terdahulu )
n dimana n adalah banyaknya periode dalam rata-rata bergerak. Persamaan yang dipakai adalah : xt + xt −1 + xt − 2 + ... + xt − n −1 N S ' + S ' t −1 + S ' t − 2 +... + S ' t − n −1 S "t = t N a t = S ' t + (S ' t − S " t ) = 2 S ' t − S "t S 't =
bt = Ft + m
2 (S ' t − S "t ) N −1 = at + bt m
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 :
S
'
1
= S
''
1
= X
S' t = α * X t + (1 − α ) * S' ( t -1) S" t = α * S' t +(1 − α ) * S"( t -1) at = 2.S ' t − S '' t bt =
α ( S ' t − S '' t ) 1−α
1
17
F(t + m ) = at + bt .m 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 :
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 mulamula 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)
b=
nΣxy − ΣxΣy 2 nΣx 2 − (Σx )
a = y − bx
-
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 ratarata 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 : et = X
t
− Ft
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) ME =
-
1 n
n t =1
et
Nilai Tengah Galat Absolut (Mean Absolute Error) MAE =
-
∑
1 n ∑ et n t =1
Jumlah Kuadrat Galat (Sum of Squared Error) SSE = ∑t =1 et n
-
2
Nilai Tengah Galat Kuadrat (Mean Squared Error)
MSE =
1 n et 2 ∑ t =1 n
23 -
Deviasi Standar Galat (Standard Deviation of Error) 1 n et 2 ∑ t =1 n −1
SDE =
-
Nilai Tengah Deviasi Absolut (Mean Absolute Deviation) MAD =
1 ∑ Xi − X n
Ukuran-ukuran Relatif
-
Galat Persentase (Percentage Error)
⎛ X − Ft PE = ⎜⎜ t ⎝ Xt
-
Nilai Tengah Galat Persentase (Mean Percentage Error) MPE =
-
⎞ ⎟⎟ *100 ⎠
1 n ∑ PEt n t =1
Nilai Tengah Galat Persentase Absolut (Mean Absolute Percentage Error) MAPE =
1 n ∑ PEt n t =1
Menurut Makridakis ukuran statistik standard adalah sebagai berikut : -
Error ei = X i − Fi
24 -
Nilai tengah kesalahan absolut (mean error) n
ME = ∑ ei / n i =1
-
Nilai tengah galat absolut (mean absolute error) n
MAE= ∑ ei i =1
-
Nilai tengah galat kuadrat ( mean squared error ) n
MSE =
-
∑e i =1
2 i
n
Deviasi standar galat (standard deviation of error) n
SDE =
-
∑e i =1
2 i
(n − 1)
Nilai tengah deviasi absolut (mean absolute deviation)
MAD=
1 ∑ Xi − X n
25 Ukuran-ukuran relatif adalah sebagai berikut : -
Galat persentase (percentage error) PE t =
-
X t − Ft × 100 Xt
Nilai tengah galat persentase (mean percentage error) n
MPE =
-
∑ PE i =1
i
n
Nilai tengah galat persentase (mean absolute percentage error) n
MAPE =
2.1.4
∑ PE i =1
i
n
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 variasivariasi 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 menginherit 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 highlevel), 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
Class4
Class3
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.
UseCase1
Actor1
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 pilihanpilihan 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 U U U+F U+F U+F+M
Server U+F+M F+M F+M M M
Architecture Distributed presentation Local presentation Distributed functionality Centralzed data 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