View
231
Download
0
Category
Preview:
Citation preview
BAB 2
LANDASAN TEORI
2.1. Peramalan
2.1.1. Kualitas Data
Dalam melakukan aktivitas peramalan, data yang digunakan harus
berkualitas, dalam artian sesuai dengan kebutuhan untuk menghasilkan
peramalan yang akurat sehingga memberikan informasi yang berguna bagi
manajemen untuk mengelola persediaan. Salah satu indikator bahwa suatu data
dapat diterima menjadi masukan (input) dalam peramalan adalah bahwa variasi
datanya normal (Gaspersz., 1998, p80). Beberapa macam masalah dan tindakan
yang harus diambil berkaitan dengan kualitas data dapat dilihat pada tabel
berikut :
Tabel 2.1. Masalah dan Tindakan Berkaitan dengan Kualitas Data
No. Masalah Tindakan
1. Kesalahan data (data error) Identifikasi dan koreksi data
2. Perubahan tetap dalam pola data Mengubah model peramalan
3. Permintaan tidak normal Melakukan saringan dan penyesuaian
4. Data hilang Memperoleh data asli atau substitusi data
5. Variasi normal Menerima data itu
Sumber : Production Planning and Inventory Control (Gaspersz, 1998, p80)
25
2.1.2. Uji Normalitas Data
Pengujian normalitas data diperlukan untuk mengetahui apakah data
terdistribusi normal / mengikuti sebaran normal. Salah satu metode pengujian
normalitas data adalah teknik Kolmogorov-Smirnov. Teknik ini banyak dipakai
karena penggunaannya sederhana dan tidak menimbulkan perbedaan persepsi
antara pengamat yang satu dengan pengamat yang lain, yang sering terjadi pada
uji normalitas dengan menggunakan grafik semata.
Teknik Kolmogorov-Smirnov menguji perbedaan antara data yang diuji
normalitasnya dengan data normal baku. Jika tingkat signifikansinya di bawah
0,05 (p-value < 0,05), artinya ada perbedaan signifikan antara data yang diuji
dengan data normal baku. Ini akan membawa pada kesimpulan bahwa data tidak
terdistribusi normal. Sedangkan bila tingkat signifikansinya di atas 0,05 (p-value
> 0,05), artinya tidak perbedaan signifikan antara data yang diuji dengan data
normal baku sehingga membawa pada kesimpulan bahwa data tersebut
terdistribusi normal.
Pengujian normalitas data dengan teknik Kolmogorov-Smirnov ini dapat
dilakukan dengan menggunakan bantuan software aplikasi statistik Minitab 14
dengan langkah-langkah sebagai berikut :
1. Memasukkan data yang akan diuji ke kolom yang terdapat di Worksheet.
2. Pilih menu Stat Basic Stat Normality Test. Masukkan judul kolom data
yang diuji sebagai Variable kemudian centang option Kolmogorov-Smirnov
OK.
26
3. Setelah hasil yang berbentuk grafik keluar, klik kanan pada window hasil tes
dan pilih Append Graph to Report untuk memasukkan laporan ke Report
Pad.
Contoh hasil pengujian normalitas data tinggi badan dengan menggunakan
Minitab 14 terlihat seperti di bawah ini :
Tinggi Badan
Perc
ent
190180170160150
99
95
90
80
70
60504030
20
10
5
1
Mean
>0.150
168.3StDev 7.523N 29KS 0.121P-Value
Probability Plot of Tinggi BadanNormal
Gambar 2.1. Contoh Hasil Pengujian Normalitas Data Menggunakan Minitab 14
2.1.3. Deskripsi Peramalan
Aktivitas peramalan adalah suatu fungsi bisnis yang berusaha
memperkirakan penjualan dan penggunaan produk sehingga produk itu dapat
dibuat dalam kuantitas yang tepat. Dengan demikian, peramalan merupakan
suatu dugaan terhadap permintaan yang akan datang berdasarkan pada beberapa
variabel peramal, sering berdasarkan data deret waktu historis (Gaspersz., 1998,
p71).
27
Dalam industri manufaktur dikenal ada dua jenis permintaan, yaitu :
1. Dependent demand
Dependent demand didefinisikan sebagai permintaan terhadap material,
parts, atau produk yang terkait langsung dengan atau diturunkan dari struktur
BOM (bill of material) untuk produk akhir atau untuk suatu item tertentu.
2. Independent demand
Independent demand didefinisikan sebagai permintaan terhadap material,
parts, atau produk, yang bebas atau tidak terkait langsung dengan struktur
BOM untuk produk akhir atau item tertentu.
Produk yang termasuk di dalam independent demand merupakan objek
peramalan. Sedangkan produk-produk yang termasuk dependent demand tidak
boleh diramalkan, tetapi harus direncanakan atau dihitung. Misal dalam kasus
industri mobil, permintaan terhadap mobil termasuk independent demand yang
dapat diramalkan. Sedangkan permintaan ban disebut dependent demand yang
harus dihitung, karena terkait langsung dengan struktur BOM untuk produk akhir
mobil. Jadi, jika mobil akan diproduksi sebanyak 100 unit, dan untuk 1 mobil
membutuhkan 5 buah ban (termasuk ban cadangan), maka permintaan ban dapat
dihitung sebesar 100 mobil x 5 buah ban/mobil = 500 buah ban.
28
2.1.4. Horizon Waktu Peramalan
Penentuan horizon waktu peramalan tergantung dari situasi dan kondisi
aktual dari masing-masing industri manufaktur serta tujuan dari peramalan itu
sendiri. Tujuan utama dari peramalan dalam manajemen permintaan adalah
untuk meramalkan permintaan item-item independent demand di masa yang akan
datang. Selanjutnya dengan mengkombinasikannya dengan pelayanan pesanan
(order service) yang bersifat pasti, akan dapat mengetahui total permintaan suatu
item atau produk agar memudahkan manajemen produksi dan inventori.
Horizon waktu peramalan berkaitan dengan 1) interval ramalan (forecast
interval) atau bagaimana seringnya mengembangkan suatu ramalan, ada yang
intervalnya harian, mingguan, triwulan, semesteran, atau tahunan. Di samping
itu, ada juga 2) banyaknya periode di masa mendatang yang akan diramalkan,
mencakup periode 12 atau 24 bulan mendatang, atau 8, 12, 16, atau 20 triwulan
mendatang. Dalam sistem peramalan berlaku aturan bahwa semakin jauh periode
di masa mendatang yang akan diramalkan - dengan asumsi faktor-faktor lain
tetap – hasil ramalan akan semakin kurang akurat.
Tabel 2.2. Deskripsi Interval Ramalan
Interval Ramalan
Peramalan jangka pendek
(Short-range forecast)
Peramalan jangka menengah
(Mid-range forecast)
Peramalan jangka panjang
(Long-range forecast)
Tujuan
Perencanaan distribusi inventori, perencanaan material, dan sebagainya.
Perencanaan anggaran, produksi, pembelian menggunakan PO (purchase order), dan sebagainya.
Perencanaan bisnis, analisis fasilitas, proyek-proyek jangka panjang, produk atau pasar baru, investasi modal, dan lain-lain.
Periode analisis
Analisis dilakukan secara teratur dan berulang.
Analisis dilakukan secara periodik.
Dilakukan analisis satu kali.
29
Tabel 2.2. Deskripsi Interval Ramalan (Lanjutan)
Interval Ramalan
Peramalan jangka pendek
(Short-range forecast)
Peramalan jangka menengah
(Mid-range forecast)
Peramalan jangka panjang
(Long-range forecast)
Sumber data
Data internal (harian atau mingguan) dengan teknik kuantitatif.
Data internal (bulanan atau triwulanan) dengan teknik kuantitatif dan kualitatif.
Data eksternal (triwulan atau tahunan).
Peramal Manajemen operasional.
Manajemen menengah (middle management).
Manajemen puncak (top management).
Objek peramalan
Rincian banyak item atau stockkeeping units.
Kelompok produk atau famili dari produk.
Beberapa produk atau famili dari produk.
Sumber : Production Planning and Inventory Control (Gaspersz, 1998, pp75-76)
2.1.5. Pola Data Historis
Riwayat permintaan masa lalu merupakan data historis yang dapat
digunakan untuk meramalkan permintaan di masa mendatang pada metode
peramalan ekstrapolasi. Buffa et al. (1996, p67) membagi pola data ini menjadi
empat macam, yaitu :
1. Pola data horisontal
Pola horisontal terjadi bila permintaan berfluktuasi di sekitar suatu
permintaan rata-rata. Permintaan rata-rata tetap konstan dan tidak secara
konsisten naik atau turun. Pola horisontal biasa terjadi pada produk yang
berada pada siklus hidup tahap dewasa.
2. Pola data kecenderungan (trend)
Pola kecenderungan mengacu pada kenaikan atau penurunan permintaan dari
satu periode ke periode berikutnya. Contoh, jika permintaan bulanan rata-rata
suatu produk meningkat 10-15% tiap tahun, maka tampak ada kecenderungan
30
naiknya permintaan. Produk pada tahap siklus pertumbuhan biasanya
cenderung naik, sedangkan produk di tahap penurunan permintaannya juga
cenderung menurun.
3. Pola data musiman
Pada pola musiman, permintaan dipengaruhi oleh faktor-faktor musiman
yang terjadi pada selang waktu / interval yang teratur dan panjangnya
konstan. Contoh, penjualan mesin penyapu salju akan leih tinggi pada bulan-
bulan musim dingin.
4. Pola data siklikal
Pola data siklikal hampir serupa dengan pola musiman, hanya selang waktu /
intervalnya bervariasi dan durasi kejadian di tiap intervalnya juga tidak sama
panjang. Contoh, adanya resesi ekonomi menyebabkan permintaan produk
menurun, dimana resesi terjadi dalam selang waktu yang tidak beraturan
(irregular) dan lama resesi tidak sama.
Sumber : [http1]
Gambar 2.2. Jenis Pola Data Deret Waktu
31
2.1.6. Model Peramalan Ekstrapolasi (Time Series)
Ada beberapa model peramalan ekstrapolasi yang dijelaskan oleh
Gaspersz (1998, pp71-118) dan Render et al. (2001, pp50-69), yang dapat
digunakan untuk meramalkan permintaan, yaitu :
1. Model Rata-Rata Bergerak (Moving Average Model)
Model rata-rata bergerak menggunakan sejumlah data aktual
permintaan yang baru untuk membangkitkan nilai ramalan untuk permintaan
di masa yang akan datang. Metode ini efektif diterapkan apabila dapat
diasumsikan bahwa permintaan terhadap produk akan tetap stabil sepanjang
waktu. Formula yang digunakan adalah :
( )n
terdahuluperioden dalampermintaanperiodenbergerakrataRata ∑=−
dimana n adalah banyaknya periode dalam rata-rata bergerak.
2. Model Rata-Rata Bergerak Terbobot (Weighted Moving Average Model)
Model rata-rata bergerak terbobot lebih responsif terhadap perubahan,
karena data dari periode yang baru diberi bobot lebih besar. Jumlah periode
berbobot dapat diambil dari banyak periode terakhir yang pergerakan datanya
relatif tidak stabil. Formula model rata-rata bergerak n-periode terbobot,
weighted MA(n), dinyatakan sebagai berikut :
( ) ( )( )( )∑
∑=
pembobotnperiodedalamaktualpermintaannperiodeuntukpembobotnMA Weighted
dimana koefisien pembobot periode n sebesar 1, koefisien periode n-1
sebesar 2, dan seterusnya.
32
3. Model Pemulusan Eksponensial (Exponential Smoothing Model)
Model pemulusan eksponensial cocok dipakai untuk pola data historis
yang bergejolak atau tidak stabil sewaktu-waktu, karena model ini
menyesuaikan nilai ramalan dengan pola data aktual secara terus menerus.
Apabila galat ramalan (forecast error) positif, yang artinya nilai aktual
permintaan lebih tinggi daripada nilai ramalan (A – F > 0), maka model akan
secara otomatis meningkatkan nilai ramalan, dan begitu pula bila yang terjadi
sebaliknya. Formula model pemulusan eksponensial adalah :
( )1t1t1tt FAFF −−− −α+=
dimana :
tF = nilai ramalan untuk periode ke-t
1tF − = nilai ramalan untuk satu periode yang lalu, t-1
1tA − = nilai aktual untuk satu periode waktu yang lalu, t-1
α = konstanta pemulusan (smoothing constant)
Besarnya konstanta pemulusan α berlaku 0 < α < 1 dengan
pertimbangan sebagai berikut :
• Apabila pola historis dari data aktual permintaan sangat bergejolak
atau tidak stabil dari waktu ke waktu, nilai α yang dipilih mendekati
1, misalnya α = 0,9; 0,95; 0,99. Semakin bergejolak, nilai α
semakin mendekati 1.
• Apabila data historis dari data aktual permintaan tidak berfluktuasi
atau relatif stabil dari waktu ke waktu, nilai α yang dipilih mendekati
0, misalnya α = 0,2; 0,15; 0,05; 0,01, dan lain-lain, tergantung pada
33
sejauh mana kestabilan datanya. Semakin stabil, α harus semakin
kecil mendekati nilai 0.
4. Model Analisis Garis Kecenderungan (Trend Line Analysis Model)
Model analisis garis kecenderungan dipergunakan sebagai model
peramalan apabila pola historis data aktual permintaan menunjukkan adanya
suatu kecenderungan menaik atau menurun dari waktu ke waktu. Model
analisis garis kecenderungan sederhana menggunakan formula sebagai
berikut :
( )( )( )
( )tbAa
tnt
AtntAb
btaF
22
t
−=
−
−=
+=
∑
∑
dimana :
b = slope dari persamaan garis lurus
a = intersep dari persamaan garis lurus
t = indeks waktu
t = nilai rata-rata dari t
A = variabel permintaan (data aktual permintaan)
A = nilai rata-rata permintaan per periode waktu; rata-rata dari A
34
5. Model Pemulusan Eksponensial dengan Mempertimbangkan Kecenderungan
(Exponential Smoothing with Trend Adjustment)
Langkah-langkah perhitungan nilai ramalan berdasarkan model
pemulusan eksponensial dengan mempertimbangkan kecenderungan adalah :
a. Menghitung nilai ramalan periode t ( tF ) berdasarkan metode pemulusan
eksponensial sederhana (simple exponential smoothing).
b. Menghitung nilai trend dengan menggunakan persamaan :
( ) ( )1tt1tt FFT1T −− −β+β−=
dimana :
tT = smoothed trend periode t
1tT − = smoothed trend periode t-1 (periode yang lalu)
β = konstanta dari trend-smoothing yang dipilih
tF = nilai ramalan berdasarkan metode pemulusan eksponensial
sederhana, ES, untuk periode t
1tF − = nilai ramalan berdasarkan metode pemulusan eksponensial
sederhana, ES, untuk periode t-1
Pemilihan konstanta pemulusan untuk trend, β , dipilih berdasarkan
percobaan. Beberapa nilai β perlu diuji untuk mengetahui mana yang
memberikan hasil peramalan yang paling baik.
35
c. Menghitung nilai ramalan berdasarkan metode pemulusan eksponensial
dengan mempertimbangkan kecenderungan, menggunakan persamaan :
Forecast Including Trend = New Forecast + trend Correction
tFIT = tF + tT
6. Model dekomposisi seri waktu (decompotition time series)
Model peramalan ini menaganalisis seri waktu dengan membongkar
data masa lalu menjadi komponen-komponen dan kemudian
memproyeksikannya ke depan. Ada 4 unsur seri waktu yang didekomposisi
oleh model ini, yaitu : trend, musim, siklus, dan variasi acak.
- Trend (T) adalah gerakan ke atas atau ke bawah secara berangsur-angsur
dari data sepanjang waktu.
- Musim (S) adalah pola data yang berulang setelah periode harian,
mingguan, bulanan, atau kuartalan. Kuartalan menjadi kaidah munculnya
istilah musim, yaitu musim : gugur, dingin, semi, dan panas.
- Siklus (C) adalah pola dalam data yang terjadi setiap beberapa tahun.
Siklus biasanya dikaitkan dengan siklus bisnis dan merupakan hal yang
sangat penting dalam analisis dan perancanaan bisnis jangka pendek.
- Variasi acak (R) adalah “tanda” dalam data yang disebabkan oleh
peluang dan situasi yang tidak biasa; variabel acak mengikuti pola yang
tidak dapat dilihat. Variasi acak sering dihapus dengan menghilangkan
periode waktu (seperti mingguan, bulanan) yang jelas-jelas menyimpang,
36
atau dengan menghilangkan nilai yang tinggi dan rendah ketika seri
setidaknya mempuyai hitungan lusin.
Dua bentuk model dekomposisi yang dikenal adalah dekomposisi
perkalian (multiplicative decompotition) dan dekomposisi penambahan
(additive decompotition). Yang paling banyak dipakai adalah model
perkalian, yang mengasumsikan bahwa permintaan adalah hasil dari empat
unsur : Permintaan = T × S × C × R. Sedangkan model penambahan
memberikan estimasi dengan menambahkan keempat unsur tersebut :
Permintaan = T + S + C + R. Gambar berikut menunjukkan permintaan
produk selama empat tahun dengan indikasi trend dan musim.
Gambar 2.3. Permintaan Produk dengan Indikasi Trend dan Musim
37
2.1.7. Validasi Peramalan
Setiap kali selesai melakukan perhitungan dan memperoleh hasil
peramalan, hasil tersebut harus diuji keakuratannya. Hal yang perlu dilakukan
adalah menghitung tracking signal untuk setiap nilai ramalan yang muncul.
Tracking signal adalah suatu ukuran bagaimana baiknya suatu ramalan
memperkirakan nilai-nilai aktual (Gaspersz, 1998, p80). Suatu ramalan
diperbarui setiap minggu, bulan, atau triwulan, sehingga data permintaan yang
baru dibandingkan dengan nilai-nilai ramalan. Tracking signal dihitung sebagai
hasil running sum of forecast error (RSFE) dibagi dengan mean absolute
deviation (MAD), sebagai berikut :
Tracking Signal = MADRSFE
= ( )MAD
∑ iperiod indemandforecast - i period in demand actual
dimana : ( )n
MAD ∑=errorforecastdariabsolut
n = banyaknya periode data
George Plossl dan Oliver Wight, dua ahli pengendalian persediaan,
menyarankan batas tracking signal menggunakan maksimum ± 4 MAD (untuk
persediaan volume-tinggi) dan ± 8 MAD (untuk produk volume-rendah).
Peramal yang lain menyatakan rentang MAD yang lebih rendah. Satu MAD kira-
kira sama dengan 0,8 deviasi standar, sehingga ± 2MAD = ± 1,6 deviasi standar,
± 3MAD = ± 2,4 deviasi standar, dan ± 4MAD = ± 3,2 deviasi standar. Ini
menyatakan bahwa untuk ramalan yang berada “dalam pengawasan”, 89%
38
kesalahan diharapkan berada dalam ± 2 MAD, 98% berada dalam ± 3MAD, atau
99,9% dalam ± 4MAD.
Selain melihat nilai MAD dan tracking signal, dapat juga dibuat grafik
garis yang menggambarkan nilai aktual dan ramalan untuk melihat apakah pola
ramalan pada model telah sesuai dan dapat mengikuti pola permintaan aktual.
Apabila kesemua syarat ini sudah terpenuhi, model peramalan dianggap sah /
valid dalam memperkirakan permintaan di masa mendatang.
2.1.8. Peramalan Menggunakan Perangkat Lunak “Quantitative Management”
Saat ini sudah banyak alat bantu perangkat lunak yang ditawarkan untuk
kemudahan dalam melakukan peramalan, seperti Crystal Ball Predictor, Minitab
14, SPSS, POM for Windows, dan QM for Windows. Karena model peramalan
yang telah dijelaskan di atas sesuai dengan yang ada pada QM for Windows,
maka perangkat lunak inilah yang akan dipakai. Cara penggunaannya
ditampilkan dalam langkah-langkah sebagai berikut :
1. Buka program QM dan pilih Menu Module – Forecasting.
2. Ambil Menu File – New – Time Series Analysis. Selanjutnya akan muncul
sebuah window “Create data set for Forecasting/Time Series Analysis”
3. Pada window tersebut, masukkan judul peramalan yang diinginkan (Title),
dan jumlah periode data historis yang akan dipakai sebagai dasar peramalan
(Past Period). Kemudian pilih nama yang hendak dimunculkan pada setiap
baris nama periode nantinya, apakah hendak menggunakan huruf, angka, atau
bulan. Setelah selesai, klik tombol OK.
39
Gambar 2.4. Penyetelan Data pada QM for Windows
4. Saat muncul layar seperti di bawah ini, yang perlu dilakukan adalah
memasukkan nilai permintaan pada periode historis yang jumlahnya sesuai
dengan pilihan sebelumnya, kemudian pilih metode peramalan yang akan
dipakai dari method yang sudah tersedia di QM.
Gambar 2.5. Pemilihan Model Peramalan pada QM for Windows
40
5. Selanjutnya tentukan periode rata-rata yang diinginkan. Misal, ingin
dilakukan peramalan rata-rata bergerak (MA) 3 bulanan, maka pada #Period
to Average dimasukkan angka 3. Setelah itu, tinggal menekan tombol Solve
untuk menjalankan peramalan. Hasil yang diberikan oleh QM berupa nilai
error, perkiraan permintaan periode selanjutnya, analisis perhitungan detil,
dan grafik yang menunjukkan nilai aktual berbanding nilai peramalannya.
Apabila hendak menguji metode peramalan lain maupun mengubah rata-rata
periode, cukup menekan tombol Edit, maka layar akan kembali seperti
langkah sebelumnya.
Gambar 2.6. Hasil Peramalan pada QM for Windows
41
6. Untuk beberapa model peramalan, akan muncul data tambahan yang perlu
diisi. Misal, untuk model rata-rata bergerak tertimbang / terbobot, akan
muncul tabel nilai pembobot yang harus diisi. Sedangkan, untuk model
dekomposisi, yang diminta adalah data jumlah musim (season) dan dasar
pemulusan yang diinginkan. Semua data masukan tersebut, disesuaikan
dengan model peramalan yang dipilih sebelumnya.
Gambar 2.7. Model Rata-Rata Bergerak Tertimbang pada QM for Windows
42
2.2. Teori Persediaan
2.2.1. Pengertian Persediaan
Persediaan atau yang lebih dikenal dengan sebutan inventori adalah stok
suatu item atau sumber daya yang menganggur, yang disediakan untuk
penggunaan di masa depan (Monks, 1996, p229).
Sedangkan Chase et al. (2004, p513) mendeskripsikan persediaan sebagai
stok tiap item dan sumber daya yang digunakan oleh perusahaan. Sistem
persediaan adalah rangkaian kebijakan dan pengendalian yang memonitor tingkat
persediaan dan pada tingkat berapa harus dipertahankan, kapan stok harus diisi
lagi, dan berapa jumlah yang harus dipesan.
Kaidahnya, persediaan pada perusahaan manufaktur umumnya merujuk
pada item-item yang berkontribusi dan menjadi bagian dari produk akhir
perusahaan. Tujuan pokok diadakannya analisis persediaan di perusahaan
manufaktur adalah untuk mengetahui (1) kapan item-item perlu dipesan dan (2)
berapa jumlah pemesanannya.
2.2.2. Tujuan Persediaan
Dalam bukunya, Chase et al. (2004, pp513-514) juga menjelaskan lima
tujuan diperlukannya persediaaan, yaitu :
1. Untuk memelihara independensi operasi. Suplai material di area kerja
memungkinkan fleksibilitas operasi. Misal, karena ada biaya setiap membuat
susunan produksi yang baru, persediaan memungkinkan manajemen untuk
mengurangi jumlah penyusunan produksi tersebut.
43
2. Untuk memenuhi variasi permintaan. Karena permintaan terhadap produk
tidak diketahui secara pasti, maka diperlukan adanya stok pengaman (safety
stock) untuk menangani adanya variasi permintaan.
3. Untuk memungkinkan fleksibilitas penjadwalan produksi. Adanya persediaan
mampu mengurangi beban sistem produksi untuk menghasilkan barang jadi.
Persediaan menimbulkan lead time yang lebih panjang, memungkinkan
perencanaan produksi mengalir lebih lancar dan mengurangi biaya operasi
melalui lot-size produksi yang lebih besar.
4. Untuk menjadi pengaman karena variasi waktu pengiriman material. Ketika
material dipesan dari vendor, keterlambatan mungkin terjadi karena beberapa
alasan : adanya variasi normal pada waktu pengiriman, adanya kekurangan
material pada pabrik milik vendor sehingga terjadi backlog / penundaan
pekerjaan, adanya aksi mogok di pabrik milik vendor atau salah satu
perusahaan pengiriman, pesanan yang terhilang, atau adanya kesalahan
pengiriman dan kerusakan material.
5. Untuk mendapat keuntungan dari ukuran pemesanan ekonomis. Ada
beberapa biaya untuk melakukan pemesanan, antara lain : biaya tenaga kerja,
telepon, administrasi, meterai, dan seterusnya. Sehingga, semakin besar
jumlah yang dipesan, semakin sedikit pesanan yang perlu dicatat. Demikian
juga, semakin besar jumlah material yang dikirim, semakin rendah biaya
kirim tiap unit materialnya.
44
2.2.3. Klasifikasi Persediaan
Pujawan (2005, p103) mengklasifikasikan persediaan melalui tiga cara,
yaitu :
1. Klasifikasi berdasarkan bentuk
Berdasarkan bentuknya, persediaan dapat diklasifikasikan menjadi bahan
baku (raw materials), barang setengah jadi (work in process), dan produk
jadi (finished product). Klasifikasi ini biasanya hanya berlaku pada
perusahaan manufaktur.
2. Klasifikasi berdasarkan fungsi
Berdasarkan fungsinya, persediaan dibedakan menjadi :
a. Pipeline / transit inventory
Persediaan ini muncul karena lead time pengiriman dari satu tempat
ke tempat lainnya. Misal, barang yang tersimpan di truk sewaktu
proses pengiriman. Persediaan jenis ini dapat dikurangi dengan
mempercepat proses pengiriman dengan cara mengubah alat atau
mode transportasi, memakai pemasok lain yang lokasinya lebih dekat
(dengan mempertimbangkan harga, kualitas, dan ongkos pengiriman).
b. Cycle stock
Persediaan ini akibat motif memenuhi skala ekonomi (jumlah
pemesanan yang paling menguntungkan dari sudut pandang biaya,
bukan kebutuhan). Persediaan ini mempunyai siklus tertentu. Pada
saat pengiriman jumlahnya banyak, kemudian sedikit demi sedikit
berkurang akibat dipakai atau dijual sampai akhirnya habis atau
hampir habis, kemudian mulai dengan siklus baru lagi.
45
c. Safety stock
Persediaan ini ada dengan tujuan sebagai perlindungan terhadap
ketidakpastian permintaan maupun pasokan. Perusahaan biasanya
menyimpan lebih banyak dari perkiraan kebutuhan selama suatu
periode supaya jika sewaktu-waktu dibutuhkan bisa dipakai tanpa
harus menunggu. Besar kecilnya persediaan pengaman terkait dengan
biaya persediaan dan service level.
d. Anticipation stock
Persediaan ini dibutuhkan untuk mengantisipasi kenaikan permintaan
yang bersifat musiman. Walaupun sifat permintaannya tidak pasti,
namun perusahaan bisa memprediksi adanya kenaikan dalam jumlah
yang signifikan (bukan sekedar pola acak).
3. Klasifikasi berdasarkan sifat ketergantungan kebutuhan antara satu item
dengan item lainnya.
Dependent demand adalah item-item yang kebutuhannya tergantung dari
kebutuhan akan item-item yang lain. Biasanya, komponen atau bahan baku
yang digunakan untuk membuat produk jadi termasuk ke dalam golongan ini,
karena kebutuhannya tergantung dari berapa produk jadi yang akan dibuat.
Independent demand adalah item-item yang kebutuhannya tidak tergantung
dari item lain. Yang termasuk dalam golongan ini adalah produk jadi.
46
2.2.4. Biaya Persediaan
Biaya-biaya yang berimbas pada pengambilan keputusan dalam analisis
persediaan adalah sebagai berikut (Chase et al., 2004, p514) :
1. Biaya Simpan (Holding Costs)
Kategori ini meliputi biaya fasilitas penyimpanan, penanganan material,
asuransi, material tercuri, kerusakan, keusangan, penyusutan, pajak, dan
investasi modal dalam bentuk persediaan. Jika biaya penyimpanan tinggi,
sebaiknya tingkat persediaannya rendah dan lebih sering melakukan
penambahan ulang.
2. Biaya Penyusunan (Setup Costs)
Untuk membuat produk yang berbagai macam, perlu mendapatkan material-
material yang dibutuhkan, menyetel peralatan yang spesifik, menulis catatan
yang diperlukan, pembebanan waktu dan material yang wajar, serta
mengeluarkan persediaan yang sebelumnya.
3. Biaya Pesan (Ordering Costs)
Biaya ini mencakup biaya yang berhubungan dengan pihak manajemen dan
administrasi untuk menyiapkan pemesanan produksi atau pembelian. Biaya
pesan meliputi semua detil, termasuk menghitung item dan jumlah barang
yang akan dipesan. Biaya untuk memelihara sistem yang mengurus
pemesanan juga termasuk ke dalam biaya pesan.
4. Biaya Kekurangan Persediaan (Shortage Costs)
Ketika persediaan suatu item habis, pesanan terhadap item tersebut harus
menunggu sampai persediaannya diisi atau pesanan dibatalkan. Ada trade-off
antara mengadakan persediaan untuk memenuhi permintaan dan biaya akibat
47
kekurangan persediaan. Cara untuk menyeimbangkannya agak sulit, karena
tidak mungkin memperkirakan besarnya profit yang hilang, efek kehilangan
pelanggan, atau penalti karena keterlambatan. Biasanya, biaya kekurangan
persediaan hanya berupa perkiraan kasar.
2.2.5. EOQ (Economic Order Quantity) Probabilistik
Model persediaan EOQ probabilistik pada dasarnya sama dengan EOQ
deterministik, yaitu mencari jumlah pemesanan ekonomis dengan
memperhitungkan dua macam biaya persediaan, meliputi : biaya pesan dan biaya
simpan. Yang menjadi pembeda adalah, seperti namanya, EOQ probabilistik
mengandung unsur ketidakpastian dan perlu didekati dengan distribusi
probabilitas. Model EOQ probabilistik memperhitungkan perilaku permintaan
dan tenggang waktu pesanan datang (lead time) yang tidak pasti atau tidak bisa
ditentukan sebelumnya. Model ini valid saat salah satu dari kedua sifat tadi
maupun kedua sifat tersebut terpenuhi.
Ketika salah satu permintaan (demand) atau saat tenggang pesan (lead
time) tidak bisa diketahui secara pasti sebelumnya, ada tiga kemungkinan yang
akan terjadi :
• Persediaan habis ketika pesanan belum tiba.
• Persediaan habis tepat pada saat pesanan tiba.
• Persediaan belum habis saat pesanan tiba.
Apabila ketiga kemungkinan tersebut sering terjadi, tentu akan merugikan
perusahaan karena persediaan yang tidak terkendali dan berdampak pada tidak
48
lancarnya arus produksi (saat terjadi kekurangan persediaan). Oleh karena itu,
jalan keluar untuk mengantisipasi penyimpangan itu, perlu dibentuk cadangan
keras (iron stock) atau persediaan pengaman (safety stock) melalui pendekatan
distribusi probabilitas.
2.2.5.1. Persediaan Cadangan (Safety Stock)
Ketika permintaan (demand) selama periode kedatangan pesanan (lead
time) tidak bisa diketahui sebelumnya secara pasti, maka deviasi kapan
persediaan dibutuhkan dan kapan persediaan datang harus diketahui. Distribusi
normal akan dipakai untuk menggambarkan perilaku penyimpangan tersebut.
Jika rata-rata permintaan selama periode kedatangan pesanan
ditransformasi ke mean atau nilai rata-rata kurva normal, maka perilaku
penyimpangan tingkat permintaan itu akan menyebar di sekitar mean sehingga
deviasi penyebaran itu akan dapat digunakan untuk memperkirakan persediaan
cadangan (safety stock) yang berdasar pada perilaku penyimpangan variabel-
variabel yang mempengaruhinya dan dinyatakan dalam σ .
Gambar 2.8. Deviasi pada Distribusi Normal
49
Gambar 2.8. menjelaskan cakupan luas area pada kurva normal dimana
penyimpangan atau deviasi x terhadap rata-rata μ adalah (x -μ ) dan dinyatakan
dalam standar deviasi σ . Pada dasarnya, σ menandai cakupan luas area tertentu
pada kurva normal. Pada kasus persediaan cadangan ini, penyimpangan-
penyimpangan ix terhadap μ dinyatakan dalam σ melalui :
( )n
XX2
i∑ −=σ
Selanjutnya, nilai σ yang sudah didapat, digunakan untuk menemukan
luas area dalam kurva normal z melalui :
σμ−
=xz
Nilai z yang menandai luas area, menandakan seberapa besar persentase
kemungkinan kehabisan persediaan diinginkan terjadi. Selanjutnya, nilai z
disebut sebagai faktor keamanan. Besarnya faktor keamanan ini dapat
ditetapkan sebelumnya, sesuai keinginan perusahaan. Misal, perusahaan
menginginkan kemungkinan persediaan habis adalah sebesar 5%, maka
kemungkinan persediaan ada yaitu 95% atau 0,95. Pada tabel statistika luas di
bawah kurva normal, untuk luas 0,95 nilai z-nya adalah 1,645.
Untuk memudahkan pemahaman mengenai penggunaan kurva normal
pada kasus penentuan persediaan cadangan, maka rumus di atas diubah menjadi :
μ−=σ xz
Karena (x -μ ) mencerminkan persediaan persediaan cadangan, maka :
Persediaan Cadangan = Faktor Keamanan σx g
50
2.2.5.2. Kuantitas Pemesanan Ekonomis
Menurut Siswanto (2007, p193), agar biaya total persediaan minimum,
maka sebuah formula perlu diturunkan untuk memperoleh Q optimal (Q*).
Dari hasil penurunan formula tersebut, didapatkan formulasi Q optimal untuk
model EOQ probabilistik sebagai berikut :
Q* = ( ) ( )( )h
KPSPKBKSD2 ii∑ −+
2.2.5.3. Saat Pesan Ulang Ekonomis
Saat pesan ulang atau SP sangat tergantung pada persediaan cadangan
dan harapan pemakaian. Saat Pesan Ulang ekonomis dapat dihitung dengan
formula berikut ini (Siswanto, 2007, p195) :
SP = Persediaan Cadangan + Harapan Pemakaian
2.2.5.4. Kelemahan Model
Saat pesan ulang atau SP dinyatakan dalam jumlah persediaan semasa
tenggang pesan sangat tergantung kepada besar kecilnya persediaan cadangan
dan harapan pemakaian selama masa tenggang pesan HP. Penentuan SP optimal
atau pesan ulang ekonomis baru bisa dilakukan setelah jumlah persediaan
cadangan optimal diketahui. Di sisi lain, persediaan cadangan optimal baru bisa
dihitung setelah peluang kehabisan persediaan atau P(Ki) ditetapkan terlebih
dahulu.
51
Jika perhitungan Q optimal (Q*) pada EOQ probabilistik dimulai dari :
Q* = ( ) ( )( )h
KPSPKBKSD2 ii∑ −+
maka di dalam formulasi itu masih terkandung parameter SP. Padahal SP
dipengaruhi jumlah persediaan cadangan di mana pada,
P(KP) =BKPD
Qh××
masih terkandung variabel Q yang dicari.
Dengan demikian, jelas sekali bahwa proses perhitungan Q optimal pada
model EOQ probabilistik merupakan proses dengan siklus tertutup dimana
output setiap proses perhitungan menjadi input bagi proses perhitungan
berikutnya. Maka, penentuan Q optimal dan SP optimal tidak bisa dilakukan
sekaligus namun harus dilakukan secara bertahap dan bersifat coba-coba, kecuali
memotong siklus itu dengan menganggap peluang kehabisan pesediaan atau
( ) ( )∑ − ii KPSPK adalah nol.
52
2.3. Sistem Informasi
2.3.1. Pengertian Sistem
Menurut Martin et al. (2005, p355), sistem adalah rangkaian komponen
yang saling berhubungan dan bekerjasama untuk mencapai tujuan bersama.
Sedangkan McLeod (2001, p25) menjelaskan pengertian sistem sebagai suatu
integrasi elemen-elemen yang semuanya bekerja menuju satu tujuan. Semua
sistem meliputi tiga elemen utama, yaitu input, transformasi, dan output.
Sebuah sistem memiliki tujuh elemen kunci sebagai berikut (Martin et al.,
2005, p356) :
1. Boundary
Gambaran mengenai elemen-elemen mana (seperti komponen dan storage)
yang berada di dalam sistem untuk dianalisis, dan mana yang ada di luar
sistem; diasumsikan bahwa elemen-elemen di dalam lingkup sistem lebih
mudah berubah dan mudah untuk dikontrol daripada yang di luar.
2. Environment
Segala sesuatu yang ada di luar sistem; lingkungan memberikan asumsi-
asumsi, batasan-batasan, dan masukan-masukan ke dalam sistem.
3. Inputs
Sumber-sumber daya (data, material, suplai, energi) dari lingkungan yang
dikonsumsi dan dimanipulasi di dalam sistem.
4. Outputs
Sumber-sumber daya atau produk (informasi, laporan, dokumen, tampilan
layar, material) yang disediakan untuk lingkungan akibat aktivitas di dalam
sistem.
53
5. Components
Aktivitas atau proses di dalam sistem yang mengubah input menjadi bentuk
setengah jadi atau menghasilkan output sistem; komponen dapat juga
dianggap sebagai sistem itu sendiri, dimana mereka disebut sebagai
subsistem, atau modul.
6. Interfaces
Tempat dimana dua komponen atau sistem dan lingkungannya bertemu untuk
berinteraksi; sistem sering membutuhkan subkomponen khusus pada
tampilan untuk menyaring, menerjemahkan, menyimpan, dan memeriksa
apapun yang mengalir melalui tampilan.
7. Storage
Area penyimpanan yang digunakan untuk menyimpan informasi, energi,
material, dan seterusnya untuk semnetara dan permanen; storage
menyediakan buffer di antara komponen sistem yang memungkinkan mereka
untuk bekerja pada waktu dan aktivitas yang berbeda, dan memungkinkan
komponen yang berbeda saling berbagi sumber data yang sama.
2.3.2. Pengertian Informasi
Informasi adalah salah satu dari lima jenis utama sumber daya yang dapat
dipakai oleh manajer. Semua sumber daya termasuk informasi dapat dikelola.
Pengelolaan informasi semakin penting saat bisnis menjadi lebih rumit dan
kemampuan komputer berkembang (McLeod, 2001, p25).
Informasi merupakan data yang telah diproses dan diatur ulang menjadi
bentuk yang lebih bermakna bagi seseorang (Whitten et al., 2004, p764).
54
2.3.3. Pengertian Sistem Informasi
Menurut Martin et al. (2005, p355), sistem informasi adalah kumpulan
dari teknologi informasi, prosedur, dan orang-orang yang bertanggung jawab
dalam penangkapan, pergerakan, pengaturan, dan distribusi dari data dan
informasi. Seperti sistem-sistem lainnya, sangat krusial bahwa komponen-
komponen sistem informasi harus dapat bekerja sama dengan baik. Komponen-
komponen tersebut harus konsisten, redundansinya minimal, lengkap, dan
terkoneksi secara baik.
Sedangkan pengertian sistem informasi menurut O’Brien (2005, p5)
adalah kombinasi teratur dari orang-orang (people), perangkat keras (hardware),
perangkat lunak (software), jaringan komunikasi (network) dan sumber daya data
(data resource) yang mengumpulkan, mengubah, dan menyebarkan informasi
dalam sebuah organisasi.
Peran utama sistem informasi (O’Brien, 2005, pp10-11) adalah :
1. Mendukung proses bisnis
2. Mendukung pengambilan keputusan para pegawai dan manajernya dalam
membuat strategi untuk keunggulan kompetitif.
55
2.4. Analisis dan Perancangan Sistem Informasi
2.4.1 Analisis Sistem Informasi
Menurut Whitten et al. (2004, p186), analisis sistem merupakan teknik
penyelesaian masalah yang mendekomposisikan sistem ke dalam komponen-
komponen pembentuknya dengan tujuan untuk mengetahui seberapa baik
komponen-komponen tersebut bekerja sama dan beinteraksi untuk mencapai
tujuan yang ditetapkan.
Analisis sistem informasi termasuk dalam fase pengembangan proyek
sistem informasi yang fokus utamanya adalah mengetahui permasalahan dan
kebutuhan-kebutuhan yang ada di proses bisnis berjalan. Analisis sistem
informasi bersifat independen dari setiap teknologi yang dapat maupun akan
digunakan sebagai solusi terhadap masalah yang ada.
2.4.2 Perancangan Sistem Informasi
Whitten et al. (2004, p186) berpendapat, perancangan sistem merupakan
teknik penyelesaian masalah pelengkap (untuk analisis sistem) dengan
mengumpulkan kembali komponen-komponen sistem menjadi sistem yang
lengkap – dengan harapan, sistemnya lebih baik. Proses ini dapat melibatkan
penambahan, penghapusan, dan pengubahan pada sistem berjalan.
Perancangan sistem informasi meliputi kegiatan yang berfokus pada
spesifikasi dari solusi detil yang berbasis komputer, disebut juga physical design.
Bila analisis sistem menekankan pada masalah bisnis, sebaliknya perancangan
sistem berfokus pada pertimbangan teknis dan implementasi sistemnya.
56
2.5. Sistem Informasi Berorientasi Objek
2.5.1. Pemodelan Objek
Pemodelan objek merupakan teknik untuk mengidentifikasi objek-objek
di dalam suatu lingkungan sistem dan mengidentifikasi hubungan / relasi antara
objek-objek tersebut (Whitten et al., 2004, p430). Teknik pemodelan objek
menggambarkan penggunaan metodologi dan notasi diagram yang sangat
berbeda dengan yang digunakan untuk pemodelan data dan pemodelan proses.
Pada tahun 1994, Grady Booch, James Rumbaugh, dan Ivar Jacobson
bergabung untuk menciptakan metode pengembangan sistem berorientasi objek.
Fokus mereka adalah membuat sebuah bahasa pemodelan objek standar untuk
melengkapi metode sistem berorientasi objek yang sudah ada. Hasilnya yaitu
Unified Modelling Language (UML) versi 1.0 yang dirilis pada tahun 1997.
UML adalah seperangkat persetujuan bahasa pemodelan yang digunakan
untuk menjelaskan atau menggambarkan sistem perangkat lunak (software)
dalam kaitannya dengan objek. UML tidak menentukan metode pengembangan
sistem, melainkan hanya menotasikan sistem tersebut ke dalam pemodelan objek
standar yang dapat diterima oleh semua pihak.
2.5.2. Objek dan Kelas
Menurut Mathiassen et al. (2000, p4), objek adalah sebuah entitas yang
memiliki identitas (identity), atribut (state), dan perilaku (behavior). Contohnya
objek sepeda yang memiliki identitas berupa nama ‘sepeda’, atributnya berupa
pedal, roda, jeruji, dan stang. Sedangkan perilaku sepeda adalah kecepatannya
bisa naik atau turun, bisa mengerem, pedalnya dapat dikayuh, dan sebagainya.
57
Kelas adalah deskripsi dari sekumpulan objek yang saling berbagi
struktur, pola perilaku, dan atribut. Yang membedakan objek-objek di dalam
suatu kelas adalah identitasnya. Tiap objek memiliki identitas yang berbeda dan
spesifik. Kelas menjadi dasar dari modularitas dan struktur dalam pemrograman
berorientasi objek.
Sebagai contohnya, kelas manusia. Maka di dalam kelas tersebut
disimpan data mengenai atribut / sifat-sifat yang dimiliki manusia (warna kulit,
memiliki 2 mata, warna rambut, jenis kelamin, dst.) serta bagaimana perilakunya
(berjalan, tidur, makan, dst.). Di dalam kelas manusia tersebut ada banyak objek-
objek manusia sebagai anggotanya, yaitu manusia A, manusia B, manusia C, dan
seterusnya, yang memiliki atribut dan perilaku yang sama.
2.5.3. Analisis Sistem Informasi Berorientasi Objek
Analisis sistem informasi yang menggunakan pemodelan objek disebut
dengan analisis sistem berorientasi objek atau object-oriented analysis (OOA).
Seperti yang dijelaskan oleh Whitten et al. (2004, p430), bahwa OAA merupakan
pendekatan yang digunakan untuk :
1. mempelajari objek-objek yang sudah ada untuk melihat apakah mereka dapat
digunakan lagi atau disesuaikan untuk penggunaan yang baru, dan
2. mendefinisikan objek baru atau yang sudah dimodifikasi, yang akan
digabungkan dengan objek-objek yang sudah ada ke dalam suatu aplikasi
bisnis.
Objek-objek yang diidentifikasi pada saat analisis disebut dengan entity
object (Whitten et al., 2004, p686; Mathiassen, 2000, p4). Objek entitas ini
58
merupakan objek yang berisi informasi (attribute) terkait dengan proses bisnis,
sifatnya tetap, dan disimpan di dalam database. Atribut objek menunjukkan
bagaimana user dapat membedakan suatu objek dengan objek-objek lain di
dalam konteks sistem.
Objek tersebut juga mengenkapsulasi behaviour (disebut method) untuk
memelihara atribut / informasi yang dimilikinya. Sebuah objek entitas dikatakan
bersifat tetap, yang artinya objek muncul sesaat setelah eksekusi program
software menciptakannya. Objek entitas hidup di antara eksekusi program karena
informasi tentang objek entitas itu disimpan di dalam database, yang
memungkinkan objek tersebut dipanggil kembali dan dimanipulasi.
2.5.4. Perancangan Sistem Informasi Berorientasi Objek
Perancangan sistem informasi yang menggunakan pemodelan objek
disebut perancangan sistem berorientasi objek atau object-oriented design
(OOD). OOD adalah kelanjutan dari OAA; merupakan pendekatan yang
digunakan untuk menetapkan solusi perangkat lunak / software yang berkenaan
dengan kolaborasi objek, atribut-atribut objek, dan perilaku-perilaku objek
(Whitten et al., 2004, p686). OOD menggunakan model yang sama dengan yang
dikembangkan saat analisis dan menyaringnya untuk merefleksikan lingkungan
produksi yang ditargetkan, termasuk software, hardware, dan teknologi
arsitekturnya.
Jika objek yang diidentifikasi saat analisis adalah objek yang
merepresentasikan data aktual di dalam proses bisnis, maka selama perancangan
59
sistem akan diidentifikasi tipe-tipe objek lainnya sebagai hasil implementasi fisik
sistem yang baru. Kedua tipe objek ini adalah :
1. Interface Object
Objek ini dipakai sebagai alat agar user dapat berkomunikasi dengan sistem.
Yang termasuk dalam interface object adalah jendela layar / window, kotak
dialog / dialogue box, dan layar / screen. Tugas dari interface object adalah ;
• mentranslasikan masukan user menjadi informasi yang dapat
dimengerti oleh sistem dan digunakan untuk memproses kejadian
bisnis.
• mengambil data yang terkait dengan kejadian bisnis dan mentranslasi
data tersebut untuk dipresentasikan kepada user.
2. Control Object
Objek ini berisi aplikasi logis atau aturan-aturan kejadian bisnis. Control
object mengatur interaksi interface object dan entity object agar sistem lebih
robust. Selain itu aktivitas proses lebih mudah dikendalikan ketika
implementasi sistem dijalankan. Di dalam use-case, sebuah control object
dapat diasosiasikan dengan hanya satu actor saja.
60
2.5.5. Kriteria Pemrograman Berorientasi Objek
Suatu bahasa pemrograman, disebut sebagai bahasa yang mendukung
pemrograman berorientasi objek atau Object-Oriented Programming (OOP) jika
memiliki kriteria sebagai berikut :
1. Enkapsulasi (Encapsulation)
Prinsip enkapsulasi ini diaplikasikan kepada objek, dimana baik
atribut dan perilaku objek tersebut dibungkus menjadi satu, yaitu di dalam
objek itu sendiri (Whitten et al., 2004, p432). Jadi, setiap objek memiliki
tanggung jawab terhadap fungsi dan perilaku yang mempengaruhi data (atau
atribut) yang dimilikinya.
Satu-satunya cara untuk mengakses atau mengubah atribut objek
adalah melalui perilaku spesifik dari objek tersebut. Contoh : hanya SAYA
(sebagai objek) yang dapat MENGUBAH (sebagai perilaku) NAMA
AKHIR dan ALAMAT RUMAH (sebagai atribut) yang tersimpan di dalam
database mahasiswa BINUS.
2. Pewarisan (Inheritance)
Konsep pewarisan merupakan konsep dimana perilaku dan / atau
atribut yang didefinisikan di dalam suatu kelas objek, dapat diwariskan atau
digunakan juga oleh kelas objek yang lainnya (Whitten et al., 2004, p434).
Konsep ini memperkenalkan tingkatan / taksonomi di dalam kelas, yaitu
superclass dan subclass. Superclass mewakili kelas objek yang lebih umum
(generalisasi), sedangkan subclass adalah kelas objek yang lebih rendah
levelnya (spesialisasi).
61
Sebagai contoh, ORANG di dalam sebuah kelas pembelajaran dapat
diklasifikasikan menjadi MURID dan GURU. Dalam hal ini, kelas objek
ORANG menjadi superclass, dan kelas objek MURID dan GURU menjadi
subclass-nya. Untuk lebih jelas, diperlihatkan melalui gambar di bawah ini :
ORANG
MURID GURU
Superclass
Subclass 1 Subclass 2
Gambar 2.9. Superclass - Subclass
3. Polimorfisme (Polymorphism)
Polimorfisme merupakan konsep yang menyatakan dimana objek
yang berbeda dapat meresponi pesan yang sama dengan cara yang berbeda
pula (Whitten, 2004, p438). Misal, objek JENDELA dan PINTU yang sama-
sama dapat melakukan proses membuka dan menutup. Tetapi cara kedua
objek memproses buka dan tutup tersebut berbeda.
Untuk PINTU, membuka-menutup dilakukan dengan mengayun ke
dalam dan ke luar, sedangkan JENDELA dengan cara menggeser ke atas dan
ke bawah. JENDELA pun bermacam-macam jenisnya. Tidak semua
JENDELA harus menggeser ke atas dan ke bawah, ada juga yang harus
didorong ke luar dan ke dalam seperti PINTU. Keragaman berbagai objek
dalam meresponi pesan yang sama inilah yang disebut dengan polimorfisme.
62
2.6. Analisis dan Perancangan Sistem Informasi Berorientasi Objek (OOA&D)
Mathiassen et al. (2000, p12) menyebutkan, OOA&D merupakan
kumpulan pedoman umum untuk melakukan analisis dan perancangan sistem.
Metode ini harus disesuaikan dengan kondisi proyek / organisasi dimana sistem
akan diimplementasikan. Ada 4 aktivitas utama yang dilakukan dalam OOA&D,
yaitu : problem-domain analysis, application-domain analysis, architectural
design, dan component design, secara berturut-turut. Setiap aktivitas ini akan
memberikan hasil yang spesifik. Hasil di tiap aktivitas tersebut nantinya akan
disajikan dalam bentuk dokumentasi analisis dan dokumentasi perancangan
sistem. Cara mengatur dan mendokumentasikan aktivitas-aktivitas ini tergantung
dari bagaimana menyesuaikan OOA&D dengan kebutuhan yang ada.
Model
Spesification of Component
Requirement for use
Specifications of architecture
Component Design
Problem-Domain Analysis
Application-Domain Analysis
Architectural Design
Sumber : Object Oriented Analysis & Design. (Mathiassen et al., 2000, p15)
Gambar 2.10. Aktivitas Utama dalam OOA&D
63
2.6.1 System Choice
Sumber : Object Oriented Analysis & Design. (Mathiassen et al., 2000, p25)
Gambar 2.11. Sub Aktivitas dalam Pemilihan Sistem
Pemilihan sistem terdiri dari beberapa sub aktivitas seperti gambar di
atas. Sub aktivitas pertama berfokus pada tantangan bagaimana cara untuk
mendapatkan gambaran umum mengenai situasi permasalahan yang ada dan dari
berbagai sudut pandang orang yang menginterpretasikannya. Cara
menggambarkan situasi ini adalah dengan membuat Rich Picture. Dengan
menggunakan Rich Picture, situasi dari berbagai sudut pandang user bisa didapat
dengan cepat. Tujuannya bukan untuk memberikan deskripsi yang detil
mengenai keadaan secara keseluruhan, melainkan hanya untuk memberikan
gambaran secara umum.
Sub aktivitas kedua adalah menciptakan dan mengevaluasi ide-ide untuk
perancangan sistem. Ide-ide ini menggambarkan bagian dari solusi
terkomputerisasi yang dapat dirangkum dalam satu atau lebih definisi sistem.
Proses menciptakan ide ini harus melibatkan user. Ada 3 cara untuk menciptakan
dan mengevaluasi ide, yaitu :
64
• Exemplars : mempelajari dan mengambil / meniru solusi dari organisasi
yang juga mengalami permasalahan sistem yang sama. Misal,
mempelajari sistem akunting standar yang beredar di pasaran.
• Metaphors : melakukan studi dan pertemuan-pertemuan dengan membuat
metafora dari permasalahan yang ada. Misal, sistem perpustakaan
dimetaforakan dengan sistem pengendalian inventori.
• Experiments : membuat prototipe sistem yang ditargetkan dengan alat
bantu. Prototipe ini harus mudah diimplementasikan dan mudah diubah-
ubah, tidak harus terkomputerisasi. Misal, menggambar layar pada
secarik kertas dan membuat urutan gambar layar untuk mengilustrasikan
penggunaan sistem nantinya.
Pada sub aktivitas ketiga, diformulasikan dan dipilih definisi sistemnya,
merundingkan dan mengevaluasi alternatif-alternatif definisi sistem yang
berhubungan dengan situasi yang ada. Definisi sistem diperoleh melalui iterasi
ketiga subaktivitas tadi. Hal ini terjadi karena pemahaman situasi yang terus
diperbarui dan penciptaan ide-ide baru yang inovatif. Tujuan dari sub aktivitas
ketiga ini adalah memilih sistem aktual yang akan dikembangkan. Caranya
dengan menjelaskan secara sistematis interpretasi-interpretasi, kemungkinan-
kemungkinan, dan konsekuensi-konsekuensi dari beberapa alternatif solusi.
Definisi sistem sebagai hasil pemilihan sistem harus dapat memberikan
deskripsi yang jelas mengenai sistem terkomputerisasi dengan menggunakan
bahasa sehari-hari. Definisi sistem dapat dinyatakan melalui kriteria FACTOR :
65
• Functionality : merupakan fungsi sistem yang mendukung kegiatan
application-domain.
• Application domain : bagian organisasi yang mengelola, memonitor, dan
mengontrol problem domain.
• Conditions : situasi dimana sistem akan dikembangkan dan digunakan.
• Technology : teknologi yang digunakan untuk mengembangkan sistem
dan teknologi yang digunakan untuk menjalankan sistem.
• Objects : Objek utama dalam problem domain.
• Responsibility : Tanggung jawab sistem secara keseluruhan terhadap
konteksnya.
2.6.2 Problem-Domain Analysis
Problem domain adalah bagian dari konteks yang dikelola, dimonitor,
dan dikontrol oleh sebuah sistem (Mathiassen et al., 2000, pp45-48). Problem-
domain analysis difokuskan untuk menjawab pertanyaan : “Informasi apa yang
dihadapi oleh sistem?”. Selama aktivitas analisis berlangsung, akan dibuat
sebuah model problem-domain yang menyediakan bahasa untuk
mengekspresikan kebutuhan-kebutuhan sistem. Saat perancangan sistem, model
tersebut akan diubah ke dalam bentuk komponen yang mewakili atribut problem-
domain saat ini maupun yang di masa lalu.
Model problem-domain harus dapat memberikan pemahaman yang benar
kepada calon user. Titik awal utama dari analisis problem-domain adalah definisi
sistem. Elemen “objek” dari definisi sistem (FACTOR) menyediakan kriteria
66
dasar pemilihan objek, class, dan event. Problem-domain analysis dibagi
menjadi tiga aktivitas seperti yang terlihat pada gambar berikut :
System Definition
Classes Behavior
StructureModel
Sumber : Object Oriented Analysis & Design. (Mathiassen et al., 2000, p46)
Gambar 2.12. Aktivitas dalam Problem-Domain Analysis
1. Classes
Classes menggambarkan kegiatan dalam mendefinisikan isi informasi dari
sistem. Problem domain didefinisikan dan digolongkan dengan cara memilih
kelas (class) dan operasi (event). Class menunjukkan bagian-bagian di dalam
problem domain, sedangkan event merujuk pada operasi-operasi yang
dilakukan objek di dalam class. Event ini merupakan element dasar dari
behavior. Hasil dari aktivitas classes adalah sebuah event table yang berisi
kelas-kelas yang terpilih bersama event-event yang terkait class tersebut.
2. Structure
Structure berhubungan dengan menggambarkan relasi struktural antara class
dengan objek. Relasi di dalam problem domain ini ada yang bersifat statis
(struktur abstrak antar class) dan dinamis (struktur antar objek). Hasil
dariaktivitas struktur adalah class diagram yang menunjukkan kelas-kelas
yang terpilih dan relasi struktural antara kelas-kelas dan objek-objek.
67
3. Behavior
Behavior berkaitan dengan perilaku dan interaksi objek. Pada aktivitas ini
digambarkan sifat-sifat dan atribut dinamis dari setiap kelas yang terpilih.
Deskripsi dari perilaku dan atribut ini menciptakan penggolongan objek di
problem domain dengan lebih jelas. Hasilnya disebut sebagai state diagram.
2.6.3 Application-Domain Analysis
Application domain adalah organisasi yang mengelola, memonitor, dan
mengontrol problem domain (Mathiassen et al., 2000, pp115-118). Application-
domain analysis berfokus pada pertanyaan : “Bagaimana sistem target ini akan
digunakan?”. Tujuan pertanyaan ini adalah untuk mendefinisikan kebutuhan-
kebutuhan (requirement) akan fungsi sistem dan interface. Aktivitas-aktivitas
dalam problem-domain analysis dapat dilihat pada gambar berikut :
Sumber : Object Oriented Analysis & Design. (Mathiassen et al., 2000, p117)
Gambar 2.13. Aktivitas dalam Application-Domain Analysis
68
1. Usage
Dari aktivitas ini, akan ditetapkan sistem target yang digunakan dalam
application domain dengan mengidentifikasi dan strukturisasi use case dan
actor. Menurut Mathiassen et al. (2000, p119), actor adalah abstraksi user
atau sistem lain yang berinteraksi dengan sistem target. Sedangkan use case
adalah pola interaksi antara sistem dan actor di dalam application domain.
Hasil dari aktivitas usage adalah use-case diagram.
2. Functions
Tujuan aktivitas ini adalah untuk menetapkan kemampuan sistem dalam
memproses informasi (Mathiassen et al., 2000, p137). Pada aktivitas ini
diformulasikan kebutuhan fungsi-fungsi sistem. Fungsi adalah fasilitas untuk
membuat model yang berguna bagi actor. Ada beberapa tipe fungsi dalam
yang menunjukkan relasi antara model dan konteks sistem, yaitu :
• Update : fungsi yang diaktifkan oleh problem-domain event dan
hasilnya adalah perubahan pada atribut model.
• Signal : fungsi yang diaktifkan oleh perubahan pada atribut model
dan hasilnya adalah reaksi di dalam konteks; reaksi ini mungkin
ditampilkan ke actor dalam application domain, atau langsung
mengintervensi problem domain.
• Read : fungsi yang diaktifkan oleh kebutuhan akan informasi dari
kegiatan kerja actor dan hasilnya merupakan tampilan bagian-bagian
model yang relevan dengan informasi yang dibutuhkan.
69
• Compute : fungsi yang diaktifkan karena kebutuhan informasi dari
kegiatan kerja actor dan terdiri dari komputasi yang melibatkan
informasi dari actor atau model; hasil yang ditampilkan berupa hasil
perhitungan.
Aktivitas function ini berupa sebuah daftar fungsi (function list) beserta tipe
fungsi dan kompleksitasnya.
3. Interface
Di dalam aktivitas ini dibahas mengenai bagaimana menguraikan kebutuhan
tampilan / interface sistem. Interface adalah fasilitas yang membuat actor
dapat mengakses model sistem dan fungsi-fungsinya (Mathiassen et al.,
2000, p151). User interface sebagai tampilan layar untuk user, hasilnya dapat
berupa dialogue style dan form presentasi, daftar lengkap elemen user
interface, window diagram pilihan dan navigation diagram.
2.6.4 Architectural Design
Tujuan dari aktivitas architectural design ini adalah untuk merancang
sistem terkomputerisasi berupa spesifikasi arsitektur yang memenuhi kriteria-
kriteria tertentu. Hasil perancangan arsitektur ini juga menjadi kerangka kerja
bagi aktivitas pengembangan yang tersisa (Mathiassen et al., 2000, pp173-176).
Yang menjadi pedoman aktivitas perancangan adalah dokumentasi hasil aktivitas
analisis sistem sebelumnya; seperti dijelaskan pada bagian 2.5.4, dimana OOD
adalah kelanjutan dari OOA.
Sesuai dengan tujuan tersebut di atas, perancangan arsitektur ini dibagi
menjadi beberapa aktivitas seperti terlihat pada gambar berikut :
70
Sumber : Object Oriented Analysis & Design. (Mathiassen et al., 2000, p176)
Gambar 2.14. Aktivitas dalam Architectural Design
1. Criteria
Sebuah OOD akan dievaluasi untuk mengetahui apakah sistem tersebut
nantinya akan memenuhi kebutuhan sesuai dengan yang dicatat dalam
dokumentasi analisis. Sebuah perancangan yang baik memiliki beberapa
karakteristik yaitu :
• tidak terdapat kelemahan yang mendasar, dan
• bersifat usable, flexible, dan comprehensible.
Kriteria adalah sifat-sifat terpilih yang harus dimiliki oleh arsitektur sistem.
Kriteria ini yang nantinya dipakai sebagai alat untuk mengukur kualitas
software yang akan dibangun. Kriteria-kriteria yang ada akan dibuat
prioritasnya sesuai dengan kebutuhan sistem target, yaitu apakah kriteria
tersebut sangat penting, penting, kurang penting, tidak relevan, atau mudah
ditambahkan. Beberapa kriteria yang dipertimbangkan adalah :
71
Tabel 2.3. Kriteria Dalam OOD
Kriteria Untuk mengukur ... Usable Kemampuan sistem beradaptasi dengan organisasi, tingkat
hubungan kerja, dan konteks teknisnya. Secure Tindakan pencegahan terhadap akses terhadap data dan
fasilitas oleh pihak yang tidak berhak melakukannya. Efficient Nilai ekonomis dari fasilitas technical platform. Correct Kemampuan dalam menjawab kebutuhan konteks sistem. Reliable Kemampuan dalam melakukan eksekusi fungsi secara presisi. Maintainable Biaya alokasi dan pembetulan kerusakan sistem. Testable Biaya untuk memastikan bahwa sistem berjalan sesuai dengan
perintah fungsinya. Flexible Biaya modifikasi / pengembangan dari sistem yang sudah
dipasang. Comprehensible Usaha yang dibutuhkan untuk mendapatkan pemahaman yang
koheren terhadap sistem. Reusable Potensi menggunakan bagian sistem ke dalam sistem lain
yang berelasi. Portable Biaya memindahkan sistem ke technical platform yang lain. Interoperable Biaya untuk merangkaikan sistem ini dengan sistem yang lain
untuk dioperasikan bersama-sama. Sumber : Object Oriented Analysis & Design. (Mathiassen et al., 2000, p178)
2. Component Architecture
Arsitektur komponen dibuat untuk menciptakan karakteristik struktur sistem
yang flexible dan comprehensible. Aktivitas ini berfokus pada aspek-aspek
yang stabil, yaitu kelas. Arsitektur ini mendekomposisikan struktur sistem ke
dalam bentuk komponen-komponen yang saling berelasi. Hasil dari aktivitas
ini adalah class diagram dengan spesifikasi komponen-komponen
kompleksnya.
72
3. Process Architecture
Arsitektur proses dibuat untuk mendefinisikan struktur fisik yang membentuk
sistem. Aktivitas ini berfokus pada aspek-aspek yang dinamis, yaitu objek.
Arsitektur ini membentuk proses di dalam sistem agar mencapai koordinasi
dan dapat digunakan secara efisien pada technical platform, dan
memperhatikan pertimbangan-pertimbangan fisik. Arsitektur proses
mendekomposisikan struktur sistem menjadi beberapa proses yang
berinteraksi. Hasil aktivitas ini berupa deployment diagram yang
menunjukkan prosesor bersama program yang dilakukannya dan active
object di dalamnya.
2.6.5 Component Design
Tujuan perancangan komponen adalah untuk menetapkan implementasi
kebutuhan di dalam kerangka kerja arsitektural yang telah dibuat. Ada dua
komponen sistem yang akan dibahas pada aktivitas ini, yaitu komponen model
dan komponen fungsi.
1. Model component
Tujuan komponen model dibuat adalah untuk menyampaikan data ke fungsi
dan interface saat ini maupun yang lalu, dan terakhir kepada user dan sistem
lainnya. Model harus merefleksikan relasi konseptual yang relevan dari
problem domain, jelas, dan cepat serta mudah digunakan. Dasar perancangan
model ini adalah model berorientasi objek pada aktivitas analisis (class
diagram). Kegiatan utamanya, menggambarkan event menggunakan
mekanisme yang tersedia di bahasa pemrograman berorientasi objek.
73
Hasilnya berupa revised class diagram yang biasanya terdiri dari
penambahan kelas, atribut, dan struktur yang mewakili event.
2. Function component
Tujuan komponen fungsi dibuat adalah untuk menetapkan implementasi
fungsi. Behavior dalam sistem berorientasi objek yang digambarkan sebagai
operasi, harus dapat diaktifkan melalui objek-objek kelas yang relevan.
Dengan itu, komponen-komponen fungsi dalam kaitannya dengan operasi
harus diimplementasi. Dasar perancangan ini adalah tipe-tipe fungsi yang ada
(Signal, Read, Update, Compute). Hasilnya berupa class diagram dengan
operasi di dalam kelas dan komponen fungsinya.
74
2.7. Notasi
Mathiassen et al. (2000, pp329-330) mengemukakan bahwa notasi adalah
sebuah bagian bahasa baku yang berbentuk teks dan grafik / gambar untuk
menjelaskan sistem dan konteksnya. Tujuan penggunaan notasi ini adalah untuk
menyederhanakan komunikasi dan dokumentasi. Notasi terdiri dari elemen-
elemen, aturan-aturan penyusunan elemen, dan tata cara untuk menafsirkannya.
Notasi yang baik, memiliki beberapa karakteristik sebagai berikut :
1. dapat mengekspresikan baik gambaran secara umum maupun detil,
2. mengandung elemen-elemen tekstual dan grafikal,
3. dapat digunakan untuk membuat skema dan spesifikasi yang tepat,
4. memungkinkan pengendalian sintaksis dan konsistensi secara otomatis,
5. memungkinkan dukungan alat bantu yang terotomatisasi,
6. menciptakan lingkup keseluruhan yang relevan dan dapat digunakan secara
konsisten.
Pengembangan sistem informasi berorientasi objek atau object-oriented
analysis and design (OOA&D) menggunakan notasi-notasi dalam tiga jenis
bentuk, yaitu : daftar dan tabel, diagram, dan spesifikasi tekstual. Masing-masing
tahap dalam OOA&D memuat campuran dari ketiga jenis notasi tersebut.
1. Daftar dan Tabel
Tabel sesuai untuk memberikan gambaran umum mengenai relasi antara dua
elemen dalam deskripsi. Sedangkan daftar cocok dipakai untuk menjelaskan
keseluruhan elemen di dalam kategori tertentu. Tabel dan daftar ini tidak
termasuk dalam UML.
75
2. Diagram
Diagram memberikan gambaran umum deskripsi dalam lingkup yang
terbatas. Pada gambar di bawah ini, ditunjukkan diagram-diagram yang
digunakan dalam OOA&D. Semuanya menggunakan notasi UML kecuali
rich picture, navigation diagram, dan window diagram.
3. Spesifikasi Tekstual
Spesifikasi tekstual cocok untuk mendeskripsikan aspek-aspek detil secara
singkat dan tepat. Spesifikasi tekstual ini juga tidak termasuk ke dalam UML,
tetapi dapat dilampirkan sebagai catatan tambahan bagi elemen-elemen
diagram yang sifat detilnya perlu dijelaskan.
76
2.8. Diagram OOA&D
2.8.1 Rich Picture
Rich picture merupakan gambar informal yang menggambarkan persepsi
keseluruhan kegiatan yang menjadi lingkup proyek pengembangan sistem
(Mathiassen et al., 2000, pp26-29). Rich picture menggambarkan secara khusus
permasalahan sistem dan application domain.
Rich picture tidak memiliki notasi khusus, namun dalam pembuatannya
harus dipertimbangkan agar benar-benar dapat memberikan pemahaman yang
sesuai, baik terhadap user maupun tim pengembang sistem. Hal tersebut penting,
karena rich picture merupakan alat bantu utama bagi tim pengembang sistem
untuk meraih pemahaman yang jelas tentang lingkup proses yang dihadapinya.
Di saat yang bersamaan, rich picture juga berguna sebagai alat bantu untuk
memfasilitasi komunikasi yang baik dengan user.
Sumber : Object Oriented Analysis & Design. (Mathiassen et al., 2000, p28)
Gambar 2.15. Contoh Rich Picture
77
2.8.2 Class Diagram
Class diagram menggambarkan struktur objek di dalam sistem dan relasi
antar objek-objek di dalam class itu. Class diagram memberikan gambaran
umum problem domain secara koheren, yaitu dengan menggambarkan semua
relasi struktural antara class dan objek di dalam model. (Mathiassen et al., 2000,
pp69-77)
Ada dua macam struktur di dalam class diagram, yaitu :
1. Structures between Classes
Struktur class menandakan relasi antar class yang bersifat statis dan
konseptual. Mereka menghubungkan class dimana relasinya tidak akan
berubah kecuali ada perubahan pada deskripsinya.
Ada dua macam struktur class : generalisasi dan cluster. Generalisasi
mengumpulkan sifat-sifat umum dan pola behavior dari class-class yang
berbeda ke bentuk class yang lebih umum. Sedangkan struktur cluster
mengumpulkan beberapa class pada class diagram di bawah satu konsep
yang menyeluruh.
2. Structures between Objects
Struktur antar objek memiliki relasi yang lebih konkret dan dinamis.
Relasi ini dapat berubah-ubah tanpa menunggu perubahan deskripsinya.
Struktur antar objek juga memiliki dua macam tipe : agregasi dan asosiasi.
Keduanya menangkap relasi yang dinamis antar objek dalam problem
domain. Agregasi menunjukkan relasi sebuah objek superior (the whole)
yang terdiri dari beberapa objek inferior (the parts). Sedangkan asosiasi
78
menunjukkan kedua objek yang saling berhubungan memiliki relasi dalam
prosesnya, namun sebatas hubungan asosiasi, seperti namanya.
Struktur antar objek digambarkan sebagai relasi antara dua class atau
lebih. Struktur yang digambarkan dalam tingkat class dengan tanda
multiplicity, artinya ada beberapa objek dari class yang berelasi tadi dapat
dihubungkan.
Sumber : Object Oriented Analysis & Design. (Mathiassen et al., 2000, p70)
Gambar 2.16. Contoh Class Diagram
79
2.8.3 Statechart Diagram
Statechart diagram menggambarkan sifat umum dari semua objek dalam
class dan berisikan atribut / state dan transisi atributnya. Selama analisis,
biasanya menggambarkan atribut cukup dengan nama. Transisi menggambarkan
event pada problem domain sistem. Statechart diagram juga dapat
menggambarkan use case, dimana transisi sebagai simbol actions. (Mathiassen et
al., pp341-343)
Sumber : Object Oriented Analysis & Design. (Mathiassen et al., 2000, p98)
Gambar 2.17. Contoh Statechart Diagram
80
2.8.4 Use-Case Diagram
Use-case diagram menunjukkan hubungan relasional antara actor dan
use-case (Mathiassen et al., 2000, p343). Diagram ini menggambarkan esensi
yang sama dengan actor table. Actor dan use-case adalah dua elemen dalam
deskripsi. Koneksi antara keduanya mengindikasikan bahwa actor berperan
dalam use-case yang bersangkutan. Koneksi ini juga dapat terlihat dalam struktur
class diagram. Namun, hal ini berlaku hanya untuk beberapa situasi khusus.
Semua use-case yang didukung oleh satu sistem, dapat dikelompokkan
dengan nama sistem yang sama. Selain itu, dapat dikelompokkan pula
berdasarkan subsistemnya. Setiap use-case menentukan beberapa urutan
interaksi yang mungkin antara actor dengan sistem. Detilnya dijelaskan
menggunakan use-case specification atau statechart diagram.
Sumber : Object Oriented Analysis & Design. (Mathiassen et al., 2000, p129)
Gambar 2.18. Contoh Use-Case Diagram
81
2.8.5 Sequence Diagram
Sequence diagram menggambarkan interaksi antara beberapa objek
dalam kurun waktu tertentu. Keberadaannya adalah sebagai tambahan class
diagram, yang menggambarkan situasi umum dan statis. Sequence diagram
mampu menunjukkan situasi yang kompleks dan dinamis dari objek-objek yang
dihasilkan oleh class diagram (Mathiassen et al., 2000, pp340-341).
Pada sequence diagram, sumbu horisontal menunjukkan partisipasi objek
dan sumbu vertikal menunjukkan urutan waktu. Interaksi terjadi ketika ada
message / pesan yang disampaikan antar objek. Sequence diagram dapat
menggambarkan interaksi spesifik maupun beberapa urutan interaksi yang
melibatkan perulangan atau pesan kondisional. Garis hidup (lifeline) objek
berupa batang dengan nama objek di atasnya. Bagian garis hidup ini dapat diberi
garis putus-putus sebagai tanda bahwa objek tidak terlibat dalam suatu situasi
dalam diagram. Objek diciptakan ketika simbol objek dicantumkan sesuai urutan
dan diterminasi menggunakan simbol dekstruksi (X).
Saat ini, notasi untuk sequence diagram berkembang dengan adanya
notasi untuk menggambarkan interaksi antar objek yang bersifat perulangan
(loop), pilihan (option), dan alternatif (alternate). Contoh penggambaran
sequence diagram sebagai berikut :
82
Sumber : Object Oriented Analysis & Design. (Mathiassen et al., 2000, p157)
Gambar 2.19. Contoh Sequence Diagram Standar
Sumber : [http2]
Gambar 2.20. Contoh Sequence Diagram dengan Loop Frame
83
Sumber : [http2]
Gambar 2.21. Contoh Sequence Diagram dengan Option Frame
Sumber : [http2]
Gambar 2.22. Contoh Sequence Diagram dengan Alternate Frame
84
2.8.6 Navigation Diagram
Diagram navigasi adalah bentuk spesial dari statechart diagram yang
berfokus pada keseluruhan dinamika tampilan jendela layar (window) untuk
user. Diagram ini menunjukkan window-window yang berpartisipasi dan transisi
window-window tersebut (Mathiassen et al., 2000, p344).
Sebuah window direpresentasikan oleh sebuah atribut. Atribut ini
memiliki nama dan berisi ikon yang berbentuk jendela layar mini (miniature
window). Transisi atribut dihubungkan ke tombol di dalam window. Dalam
transisi atribut, ada aksi yang harus dilakukan user terhadap window untuk
mengaktivasi transisi tersebut.
Sumber : Object Oriented Analysis & Design. (Mathiassen et al., 2000, p160)
Gambar 2.23. Contoh Navigation Diagram
85
2.8.7 Window Diagram
Window diagram menggambarkan rancangan satu jendela layar dan
meliputi skema detil dari elemen-elemen jendela layar yang bersangkutan
(Mathiassen et al., 2000, p344-345).
Sumber : Object Oriented Analysis & Design. (Mathiassen et al., 2000, p345)
Gambar 2.24. Contoh WindowDiagram
86
2.8.8 Deployment Diagram
Deployment diagram menggambarkan konfigurasi sistem dalam bentuk
prosesor dan objek yang dilekatkan pada prosesor (Mathiassen et al., 2000,
p340). Prosesor adalah sebuah unit yang dapat melakukan proses. Ketika
berbicara mengenai konfigurasi, prosesor berperan sebagai objek.
External device adalah stereotip (bentuk klise) khusus dari prosesor.
Komponen program adalah komponen koheren yang memberikan fasilitas
tertentu kepada komponen lain. Karakteristiknya adalah memiliki tampilan layar
untuk setiap class dan operasi yang diimplementasikannya.
Sebuah prosesor dapat memiliki beberapa komponen program. Prosesor
dan komponen program merupakan objek dan dapat berisikan objek-objek
lainnya. Sehingga, notasi objek dapat digunakan pada deployment diagram.
Sumber : Object Oriented Analysis & Design. (Mathiassen et al., 2000, p210)
Gambar 2.25. Contoh Deployment Diagram
Recommended