bab 2 landasan teori rev - thesis.binus.ac.idthesis.binus.ac.id/doc/bab2/2009-1-00506-tisi bab...
TRANSCRIPT
BAB 2
LANDASAN TEORI
2.1 Pengertian Persediaan
Menurut Baroto (2002, p52), persediaan adalah bahan mentah, barang dalam
proses (work in process), barang jadi, bahan pembantu, bahan pelengkap, komponen
yang disimpan dalam antisipasinya terhadap pemenuhan permintaan.
Menurut Kusuma (2001, p131), persediaan didefinisikan sebagai barang yang
disimpan untuk digunakan atau dijual pada periode mendatang. Persediaan dapat
berbentuk bahan baku yang disimpan untuk diproses, komponen yang diproses, barang
dalam proses manufaktur, dan barang jadi yang disimpan untuk dijual.
Menurut Elsayed (1994, p63), persediaan didefinisikan sebagai bahan baku,
barang setengah jadi dan barang perakitan, dan finished goods atau barang jadi yang
berada di dalam sistem produksi pada titik waktu yang tepat. Persediaan menjadi buffer
antara tahapan-tahapan dalam sistem produksi, dan diantara sistem produksi dan
pelanggan.
Menurut Sipper et al (1997, p206), persediaan adalah suatu kuantitas dari
komoditas yang dikontrol oleh perusahaan dan disimpan agar sewaktu-waktu dapat
digunakan untuk dapat memenuhi permintaan di masa mendatang.
Jadi persediaan adalah kuantitas dari barang (raw material, work in process,
dan finished goods) yang memiliki nilai ekonomi dan dimiliki oleh perusahaan untuk
dapat memenuhi permintaan di masa mendatang.
18
2.2 Tujuan Persediaan
Menurut Frazelle (2002, p91), goal dari manajemen persediaan adalah
meningkatkan financial return pada persediaan, sementara customer service level juga
ditingkatkan. Untuk dapat meningkatkan kedua hal tersebut, terdapat lima langkah untuk
mengawalinya :
1. Meningkatkan ketepatan dari peramalan.
2. Mengurangi cycle times (waktu siklus).
3. Menurunkan biaya pemesanan/setup.
4. Meningkatkan inventory visibility.
5. Menurunkan biaya penyimpanan persediaan.
Persediaan terjadi karena penyediaan dan permintaan sulit diselaraskan dengan
tepat dan diperlukan waktu untuk melakukan kegiatan tersebut. Hal-hal berikut ini
merupakan faktor-faktor yang mendukung fungsi persediaan (Tersine, 1994, p6), antara
lain :
1. Faktor waktu, yang berhubungan dengan lamanya proses produksi dan
distribusi yang terjadi sebelum barang sampai ke konsumen.
2. Faktor diskontinuitas, yang dimaksudkan agar menjaga barang tersedia
terus menerus.
3. Faktor ketidakpastian, yang merupakan hal-hal yang tidak diduga yang
dapat terjadi seperti saat mesin mengalami breakdown, bencana, dan
sebagaianya. Karena itu, persediaan dibutuhkan sebagai antisipasi
kemungkinan terjadinya kejadian tersebut.
19
4. Faktor ekonomi, yang memberikan keuntungan bagi perusahaan dalam
mengurangi biaya yang terdiri dari pemesanan barang, pembelian dengan
discount, pengiriman, man power, dan sebagainya.
2.3 Klasifikasi Persediaan
Secara fisik, item persediaan dapat dikelompokkan dalam enam kategori, yaitu
sebagai berikut : (Djokopranoto, 2003, p8)
1. Bahan baku (raw materials)
Bahan mentah yang belum diolah, yang akan diolah menjadi barang jadi,
sebagai hasil utama dari perusahaan yang bersangkutan.
2. Barang setengah jadi (semi finished products)
Hasil olahan bahan mentah sebelum menjadi barang jadi, yang sebagian
akan diolah lebih lanjut menjadi barang jadi, dan sebagian kadang-
kadang dijual seperti apa adanya untuk menjadi bahan baku perusahaan
lain.
3. Barang jadi (finished products)
Barang yang sudah selesai diproduksi atau diolah, yang merupakan hasil
utama perusahaan yang bersangkutan dan siap untuk dipasarkan/dijual.
4. Barang umum dan suku cadang (general materials and spare parts)
Segala jenis barang atau suku cadang yang digunakan untuk operasi
menjalankan perusahaan atau pabrik dan untuk memelihara peralatan
yang digunakan. Sering kali barang persediaan jenis ini disebut juga
barang pemeliharaan, perbaikan, dan operasi atau MRO materials
(maintenance, repair, and operation)
20
5. Barang untuk proyek (work in progress)
Barang-barang yang ditumpuk menunggu pemasangan dalam suatu
proyek baru.
6. Barang dagangan (commodities)
Barang yang dibeli, sudah merupakan barang jadi dan disimpan digudang
menunggu penjualan kembali dengan keuntungan tertentu.
2.4 Biaya Persediaan
Tujuan dari persediaan adalah untuk mendapatkan jumlah yang tepat untuk
barang pada tempat dan waktu yang tepat, serta mempunyai biaya yang rendah. Ada
beberapa parameter ekonomi dasar untuk model persediaan yang relevan untuk sebagian
besar sistem, yaitu : (Tersine, 1994, p13)
1. Purchase Cost (Biaya Pembelian)
Biaya pembelian dari suatu barang adalah biaya untuk membeli satu
satuan barang jika diperoleh dari sumber eksternal atau memproduksi
satu satuan barang jika barang tersebut diproduksi secara internal. Biaya
per unit ini harus selalu dibebankan ketika barang tersebut ditempatkan
sebagai persediaan. Untuk barang yang dibeli, pembelian ini termasuk
biaya transportasi, sedangkan untuk barang yang diproduksi, biaya
pembelian ini upah karyawan, biaya bahan baku dan overhead pabrik.
2. Order / Setup Cost (Biaya Pemesanan)
Biaya pemesanan ini berasal dari biaya yang timbul pada saat dilakukan
pemesanan untuk pemenuhan kembali persediaan yang dimiliki. Pada
saat pemesanan yang dilakukan, sejumlah biaya tertentu yang berkaitan
21
yaitu pemrosesan, persiapan, pendistribusian, penanganan, dan pembelian
sejumlah barang yang dipesan.
3. Holding Cost (Biaya Penyimpanan)
Biaya penyimpanan adalah biaya yang diasosiasikan dengan investasi
dalam persediaan dan untuk mempertahankan investasi fisik dalam
gudang. Menurut Elsayed (1994, p64), komponen-komponen pembentuk
biaya simpan adalah :
a. Opportunity cost atau biaya kesempatan atas modal yang
diinvestasikan dalam persediaan, storage and space costs atau biaya
pergudangan yang meliputi biaya penyewaan gudang, biaya
penanganan (biaya penyimpanan) dan biaya maintenance atau biaya
pemeliharaan bahan baku di gudang, dan biaya administrasi gudang.
b. Storage and space costs atau biaya pergudangan yang meliputi
biaya penyewaan gudang, biaya penanganan (biaya penyimpanan)
dan biaya maintenance atau biaya pemeliharaan bahan baku di
gudang, dan biaya administrasi gudang.
c. Taxes and insurances atau pajak dan asuransi, dan biaya
penyusutan, serta pencegahannya, seperti contoh penyimpanan
sayuran, produk-produk yang terbuat dari susu, dan beberapa
produk keramik dan produk elektronika.
d. Cost of obsolescene atau biaya keusangan yang termasuk
didalamnya biaya yang harus dikeluarkan perusahaan bila ada
pergantian teknologi seperti penggantian komputer, alat
komunikasi, dan lainnya.
22
4. Stockout Cost (Biaya kekurangan persediaan)
Biaya ini juga dikenal sebagai shortage cost. Merupakan biaya yang
dikenakan jika tidak terdapat persediaan yang cukup untuk memenuhi
permintaan berlebih yang datang pada suatu saat tertentu. Ada dua jenis
yakni backorder cost dan lost sales cost. Keduanya sulit diukur secara
akurat.
a. Backorder cost merupakan biaya yang dikenakan ketika terjadi
pemesanan yang baru dapat dipenuhi pada saat mendatang. Biaya
ini dapat menyebabkan tambahan biaya seperti dalam hal
transportasi dan pemesanan. Biaya backorder lebih mudah
diprediksi dibandingkan dengan lost sales cost atau biaya karena
kehilangan penjualan.
b. Lost sales cost atau biaya yang terjadi ketika kita tidak dapat
memenuhi pesanan konsumen, sehingga mereka membatalkan
pesanan tersebut. Biaya ini biasanya termasuk keuntungan yang
akan diterima dan kemungkinan negatif dalam hal penjualan di
masa yang akan datang.
2.5 Klasifikasi ABC
Analisa ABC yang dikenal sebagai “Always Better Control” ini merupakan
pendekatan yang sangat berguna dalam manajemen material yang berbasiskan hukum
Pareto, “Vital few and trivial many”, yang digunakan pada investasi terhadap suatu
barang. (Gupta et al, 2007, p325). Jika mengikuti hukum Pareto, maka secara ideal
klasifikasi ABC adalah sebagai berikut (Frazelle, 2002, p74) :
23
1. Produk kelas A berjumlah 5 % dan menghasilkan 80% penjualan.
2. Produk kelas B berjumlah 15% dan menghasilkan 15% penjualan.
3. Produk kelas C berjumlah 80% dan menghasilkan 5% penjualan.
2.6 Pengujian Distribusi Normal
Sebaran peluang kontinu yang paling penting dalam statistika adalah
sebaran/distribusi normal dengan kurvanya yang berbentuk genta. Untuk mengetahui
apakah suatu populasi mengikuti sebaran normal atau tidak, dapat digunakan goodness
of fit (uji kebaikan suai). Uji kebaikan suai merupakan uji yang digunakan untuk
menentukan apakah populasi memiliki suatu distribusi teoritik tertentu. Uji ini
didasarkan pada seberapa baik kesesuaian antara frekuensi yang teramati dalam data
sampel dengan frekuensi harapan pada distribusi yang dihipotesakan.
Langkah-langkah uji kebaikan suai distribusi normal
1. Tentukan H0 dan H1
H0: populasi data mengikuti distribusi normal
H1: populasi data tidak mengikuti distribusi normal
2. Tentukan taraf nyata (α)
3. Menentukan daerah kritis
Tolak H0 jika tabelhitung22 χχ >
4. Perhitungan:
a. Membuat selang kelas
b. Masukkan data-data yang ada pada tabel perhitungan
24
5. Kemudian hitung jumlah 2χ
Rumus:
( )∑ −=
eieioi 2
2χ
dimana:
oi: Frekuensi observasi (pengamatan)
ei: frekuensi harapan
6. Membuat kesimpulan
Terima atau tolak H0 dan simpulkan bahwa populasi mengikuti atau tidak
mengikuti distribusi normal.
Catatan:
a. Nilai ei pada setiap kelas harus>=5, jika ada kelas yang memiliki ei<5 ,
maka kelas tersebut harus digabung dengan kelas lainnya sedemikian rupa
sehingga ei μ 5.
b. tabel2χ dicari dengan menggunakan tabel distribusi Khi-kuadrat dengan v
(derajat kebebasan) v=k-1-m dimana :
k = jumlah kelas terakhir setelah tidak ada lagi sel yang berjumlah kurang
dari 5. m = jumlah parameter yang digunakan (untuk binomial = 1 , untuk
poisson = 1 , untuk normal = 2).
Goodness of Fit (Uji Kebaikan Suai) terdiri dari banyak metode, misalnya chi-
square test, Kolgomorov-Smirnov Test dan Anderson-Darling Test . Namun White et al
(1975, p338) mengutarakan bahwa uji yang disarankan untuk digunakan adalah
25
Kolmogorov-Smirnov Test karena secara statistik terbukti lebih baik dibandingkan
dengan Chi-Square Test.
Uji 1 sampel Kolmogorov-Smirnov digunakan untuk menentukan seberapa baik
sebuah sampel random data menjajagi distribusi teoritis tertentu (normal, uniform,
poisson, eksponensial). Uji ini didasarkan pada perbandingan fungsi distribusi kumulatif
sampel dengan fungsi distribusi kumulatif hipotesis.
1 Hipotesis:
H0: Sampel ditarik dari populasi dengan distribusi tertentu
H1: Sampel ditarik bukan dari populasi dengan distribusi tertentu
2 Kaidah pengambilan keputusan:
Asymp. Sig < taraf signifikansi atau taraf nyata Tolak H0
Asymp. Sig > taraf signifikansi atau taraf nyata Terima H0
Pengujian Uji 1 sampel Kolmogorov-Smirnov dilakukan dengan menggunakan
aplikasi SPSS dengan langkah-langkah berikut ini.
1. Mendefinisikan data pada kolom pertama.
2. Memasukkan data pada kolom pertama.
3. Pada menu utama, pilih : Analyze Nonparametric Test 1 Sample KS
a. Pada Test Variable List masukkan variabel yang akan diuji
b. Pada Test Distribution pilihlah normal.
4. Klik OK.
26
Gambar 2.1 Kotak Dialog One Sample Kolmogorov-Smirnov
Sumber: http://www.mathnstuff.com/math/spoken/here/2class/90/normal.htm
Gambar 2.2 Distribusi Normal
2.7 Peramalan
Peramalan menurut Makridakis (1999,p14) adalah suatu kemampuan untuk
memperkirakan / menduga keadaan permintaan produk di masa datang yang tidak pasti.
Dengan memperkirakan hal yang akan terjadi, tindakan yang tepat dapat diambil untuk
dapat menanganinya.
27
Berdasarkan horizon waktu, peramalan dapat dikelompokkan menjadi 3
kategori, yaitu :
1. Peramalan Jangka Pendek
Peramalan jangka pendek adalah peramalan yang jangka waktunya
mencapai satu tahun tetapi umumnya antara 3 bulan sampai 6 bulan.
Peramalan ini digunakan untuk merencanakan pembelian, penjadwalan
kerja, jumlah tenaga kerja, penugasan dan tingkat produksi serta distribusi.
2. Peramalan Jangka Menengah
Peramalan jangka menengah adalah peramalan yang jangka waktunya
diantara enam bulan sampai dua tahun. Peramalan ini digunakan untuk
merencanakan penjualan, perencanaan dan penganggaran produksi,
penganggaran kas dan menganalisis berbagai rencana operasi.
3. Peramalan Jangka Panjang
Peramalan jangka penjang adalah peramalan yang jangka waktunya lebih
dari dua tahun atau lebih. Peramalan ini digunakan untuk merencanakan
produk baru, pengeluaran modal, pemilihan lokasi fasilitas-fasilitas atau
ekspansi dan penelitian serta pengembangan.
2.8 Pendekatan Peramalan
Ada dua pendekatan umum dalam peramalan, yaitu (Baroto, 2002, p27):
1. Peramalan kualitatif (subjektif)
Metode kualitatif biasanya digunakan bila tidak ada atau sedikit data masa
lalu tersedia. Dalam metode ini, pendapat pakar dan prediksi mereka
dijadikan dasar untuk menetapkan permintaan yang akan datang. Metode
28
kualitatif yang banyak dikenal adalah metode Delphi dan metode kelompok
nominal (nominal group technique).
2. Peramalan kuantitatif
Pada metode ini, suatu set data historis (masa lalu) digunakan untuk
mengekstrapolasi (meramalkan) permintaan masa depan. Ada dua
kelompok besar metode kuantitatif, yaitu metode time series yang
menggunakan waktu sebagai dasar peramalan, dan metode nontime series
(structural models). Metode kuantitatif nontime series adalah metode-
metode ekonometrik, metode analisis input-output, metode regresi dengan
variabel bebas bukan waktu.
Beberapa metode time series diantaranya adalah sebagai berikut :
1. Double Exponential Smoothing
Metode peramalan ini mudah digunakan dan efisien. Metode ini
menggunakan Faktor penghalusan yakni nilai alpha. Nilai alpha ini
bersifat bebas atau subjektif dengan rentang dari 0 sampai 1.
Dibawah ini adalah rumus – rumus yang digunakan dalam Metode
Double Exponential Smoothing:
S’T= ( ) ( )11. −−+ tT SX αα
S”T= ( ) ( )1"1'. −−+ tT SS αα
a =t tt SS "'2 −
b =t ( )TT SS "'1
−−αα
tF 11 −− += tt ba
29
Inisialisasi : X1 = S’1 = S”1
2. Double Moving Average
Metode ini termasuk dalam moving averages atau rata-rata bergerak.
Metodi ini digunakan bila kita mengasumsikan bahwa permintaan
pasar tetap stabil sepanjang waktu.
Rumus yang dipakai yaitu :
S’T=
NXXXX Ntttt 121 ... +−−− ++++
S”T=
NSSSS Ntttt 121 '...''' +−−− ++++
a =t ( ) ttttt SSSSS "'2"'' −=−+
b =t ( )TT SSN
"'1
2−
−
mbaF ttmt +=+
3. Regresi Linier
Pada metode ini, penjualan akan disebut variabel tidak bebas
(dependent variable) dan variabel-variabel lain disebut variabel bebas
(independent variable). Model peramalan kausal kuantitatif yang
paling umum adalah analisis regresi linear.
Rumus regresi linear sederhana, yaitu :
y tt ba +=
( )∑ ∑−
∑ ∑ ∑−=
22 ttn
yttynb
30
a = −−
− tby
dimana
y = nilai peramalan
a = konstanta y
b = nilai kemiringan
n = jumlah data
t =indeks penunjuk
Pada metode time series, salah satu langkah dalam memilih metodenya
adalah dengan mempertimbangkan jenis pola data yang terbagi menjadi :
1. Pola Stasioner atau Horizontal (H)
Terjadi jika nilai data berfluktuasi di sekitar nilai mean atau 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.
Waktu
Sumber: Yamit (1999, p20)
Gambar 2.3 Pola Data Horisontal
2. Pola Musiman (S)
Terjadi bilamana suatu deret dipengaruhi oleh faktor musiman (misalnya
kuartal tahun tertentu, bulanan, atau hari-hari pada minggu tertentu).
31
Penjualan dari produk minuman ringan, es krim, dan bahan bakar
pemanas ruangan, menunjukkan jenis pola ini.
Waktu
Sumber: Yamit (1999, p20)
Gambar 2.4 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.
Waktu
Sumber: Yamit (1999, p21)
Gambar 2.5 Pola Data Siklis
4. Pola Trend (T)
Terjadi bilamana terdapat kenaikan atau penurunan sekuler jangka
panjang dalam data. Penjualan banyak perusahaan, produk bruto nasional
32
(GNP) dan berbagai indikator bisnis atau ekonomi lainnya mengikuti pola
trend selama perubahannya sepanjang waktu.
Waktu
Sumber: Yamit (1999, p21)
Gambar 2.6 Pola Data Trend
2.9 Pemilihan Metode Peramalan
Jika Xt merupakan data aktual untuk periode t dan Ft merupakan ramalan (atau
nilai kecocokan / fitted value) untuk periode yang sama, maka kesalahan didefinisikan
sebagai :
ttt FXe −=
Pertimbangan diterimanya sebuah metode peramalan adalah melalui kriteria-
kriteria berikut ini :
1. Mean Absolute Error (MAE)
∑==
n
t ten
MAE1
1
2. Mean Square of Error (MSE)
21
1t
n
te
nMSE ∑=
=
33
3. Mean Absolute Procentage of Error (MAPE)
tn
tPE
nMAPE ∑ =
=1
1
Dimana :
⎟⎟⎠
⎞⎜⎜⎝
⎛ −=
t
tt
XFX
PE *100%
4. Isyarat Tracking Signal
Isyarat arah merupakan pengukuran tentang sejauh mana ramalan
memprediksi nilai aktual dengan baik. Jika ramalan diperbaharui setiap
minggu, bulan, atau kuartal, maka data permintaan yang baru tersedia akan
dibandingkan dengan nilai ramalannya.
Isyarat arah ini dihitung sebagai jumlah kesalahan ramalan yang berjanalan
(running sum of the forecast error atau RSFE) dibagi dengan Mean
Absolute Deviation (MAD).
Rumus:
Isyarat tanda (tracking signal) = MADRSFE
= ( )MAD
iPeriodeRamalantaanPerPeriodedalamAktualtaanPer∑ − minmin
dimana,
( )n
PeramalanKesalahanMAD ∑=
34
Jika hasil perhitungan menunjukkan isyarat arah positif maka berarti bahwa
permintaan lebih besar dari ramalan. Jika isyarat arah negatif menunjukan
bahwa permintaan lebih kecil dari ramalan. Isyarat arah yang baik, yaitu
yang memiliki RSFE rendah dan memiliki bias positif sebanyak bias
negatifnya. Dengan kata lain, bias yang kecil tidak masalah, tetapi bias
positif dan negatif seharusnya saling menyeimbangkan sehingga tanda
penelurusan berada disekeliling bias nol.
2.10 Persediaan Independen
Untuk persediaan independen terdapat tiga model persediaan, yaitu :
1. Fixed Order Quantity Model
2. Model Probabilitas dengan Leadtime yang konstan
3. Fixed Period (P) System
2.10.1 Fixed Order Quantity Model
Pada bagian ini terbagi menjadi tiga metode yang mengacu pada kapan
pemesanan dilakukan dan berapa banyak yang akan dipesan.
1. Model Economic Order Quantity (EOQ)
Berbeda dengan model EOQ deterministik, model EOQ probabilistik
memperhitungkan perilaku permintaan dan tenggang waktu pesanan datang
(lead time) yang tidak pasti atau tidak bisa ditentukan sebelumnya secara
pasti.
Model EOQ deterministik dapat dirumuskan sebagai berikut :
hKPSPKBKSDQ ii ))()((2 −∑+
=
35
Dimana : Q = Kuantitas pemesanan
D = Demand / permintaan selama satu tahun
S = Biaya pemesanan setiap kali pesanan dibuat
h = Biaya simpan per unit per tahun
BKP = Biaya Kehabisan Persediaan = BK ( ) ( )ii KPSPK −∑
K = kebutuhan dalam masa tenggang
SP = Saat Pesan Ulang
K – SP = kehabisan persediaan selama masa tenggang pesan
BK = Biaya kehabisan persediaan per unit
( ) ( )ii KPSPK −∑ = beberapa kemungkinan Ki dengan peluang P(Ki)
Karena peluang kehabisan persediaan selama masa tenggang tidak dapat
didefinisikan sebelumnya, maka di dalam perhitungan nilai
( ) ( )ii KPSPK −∑ dianggap nol. Hal tersebut didasarkan pada asumsi
bahwa selama masa tenggang pesan tidak akan terjadi kehabisan
persediaan, karena waktu pemesanan selalu memperhitungkan lead time,
dan apabila terjadi kekurangan maka hal tersebut masih dapat diatasi
dengan penggunaan safety stock atau persediaan cadangan.
Jika model EOQ diterapkan, maka faktor penting adalah lead time.
Setelah kuantitas pesanan diketahui, hal selanjutnya adalah menentukan
‘reorder point’. Reorder point (ROP) atau r menunjukkan suatu tingkat
persediaan dimana pada saat itu harus dilakukan pesanan.
Rumus reorder point adalah :
36
DlrROP ×==
dimana : ROP = reorder point
l = lead time (satuannya sama dengan penyebut satuan D)
Jarak waktu antarpesanan dihitung dengan persamaan :
D*QWT ×=
dimana W = jumlah hari kerja dalam setahun
2. Model Production Order Quantity (POQ)
Pada model EOQ kita mengasumsikan bahwa seluruh pemesanan
persediaan diterima pada satu waktu. Meski demikian ada saat-saat tertentu
dimana sebuah perusahaan dapat menerima persediaanya sepanjang
periode. Keadaan seperti ini mengharuskan model lain yang disebut POQ
(Production Order Quantity), yang mana dalam model ini produk
diproduksi dan dijual pada saat yang bersamaan.
Notasi yang digunakan sama dengan yang digunakan pada model EOQ
tetapi ditambah dengan :
p = Tingkat produksi tahunan
t = Lama jalannya produksi, dalam satuan hari
Perumusan dari model ini adalah :
)1(
2*
pdHQ
xDxSQ−
=
dimana : D = Permintaan per periode
S = Biaya pemesanan
37
H = Biaya penyimpanan
d = Total pemakaian selama operasi
p = Total produksi selama operasi
3. Quantity Discount Model
Untuk meningkatkan penjualan, banyak perusahaan menawarkan
potongan harga kepada para pelanggannya, semakin banyak jumlah yang
dibeli akan mendapatkan potongan harga semakin besar. Dengan demikian
perusahaan yang membutuhkan bahan baku akan mendapat penawaran dari
banyak pemasok yang biasanya dalam paket paket tertentu dimana harga
per unit produk yang ditawarkan bervariasi sesuai potongan harga yang
diberikan. Dalam model ini dilakukan perhitungan secara keseluruhan dan
kemudian dipilih biaya yang paling murah.
Perumusan dari model ini adalah :
Biaya Persediaan Total = Biaya Pemesanan + Biaya Penyimpanan + Biaya
Produk
Dimana :
Biaya pemesanan : xSQD )(
Biaya penyimpanan : 2
QH
Biaya produk : P x D
Dimana : Q = Jumlah unit yang dipesan
D = Permintaan tahunan dalam satuan
S = Biaya Pemesanan per pesanan
38
P = Harga per unit
H = Biaya Penyimpanan per unit per tahun
2.10.2 Model Probabilitas dengan Leadtime yang konstan
Pada asumsi permintaan tidak konstan tetapi dapat dispesifikasi melaui
distribusi probabilitas maka dapat digunakan model probabilitas.
Permintaan yang tidak pasti memperbesar kemungkinan terjadinya
kehabisan stok. Salah satu metode untuk mengurangi kemungkinan terjadinya
kehabisan stok adalah dengan menahan unit tambahan di persediaan, hal ini
meliputi penambahan jumlah unit stok pengaman sebagai penyangga titik
pemesanan ulang.
Penghitungan reorder point menurut Waters (1992, p156) adalah sebagai
berikut :
Reorder Point = ROP = lead time demand + Safety Stock
= ( D * LT ) + (Z * σ * LT )
Dimana :
D = Permintaan per periode
Z = Nilai yang didapatkan berdasarkan service level yang ditetapkan
σ = Standar Deviasi
LT = lead time = waktu pengiriman
2.10.3 Fixed Period (P) System
Pada sistem periode tetap, persediaan dipesan di akhir periode tertentu. Setelah
itu baru persediaan di tangan di hitung, yang dipesan hanya sebesar jumlah yang
diperlukan untuk menaikkan persediaan sampai ke tingkat target tertentu.
39
Keuntungan sistem ini adalah tidak ada penghitungan fisik atas unit yang
dimasukkan ke persediaan setelah ada unit yang diambil. Penghitungan hanya terjadi
bila waktunya tiba. Prosedur ini secara administratif lebih memudahkan, terutama
apabila pengendalian persediaan hanya salah satu tugas saja.
Perumusan model ini adalah :
Q = Target Stok – On hand inventory – Order awal tidak diterima + Back order
2.10.4 Safety Stock
Menurut Taylor (2005, p364), persediaan cadangan adalah persediaan yang
disimpan untuk mengantisipasi permintaan pelanggan yang sulit diketahui dengan pasti.
Stok cadangan ini disimpan untuk memenuhi permintaan musiman atau siklus.
Ketika salah satu Demand (permintaan) atau Lead time (saat tenggang pesan)
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 habis saat pesanan belum tiba.
Gambar 2.7 Masalah kehabisan persediaan.
40
Tiga kemungkinan itu dapat dilihat pada gambar di atas.
Pada Y1, persediaan sebesar Q diperkirakan akan habis pada t2 sehingga
pesanan datang tepat pada saat itu. Kondisi ini hanya bisa terjadi jika permintaan
dan saat pesanan tiba tidak berdeviasi, artinya secara pasti bisa ditentukan
sebelumnya (predetermined).
Namun karena tingkat pemakaian yang lebih besar dari yang diperkirakan
sebelumnya, maka pada Y2 persediaan Q sudah habis pada t3 padahal persediaan
baru tiba pada t4 sehingga terjadi kehabisan persediaan selama t3 – t4.
Pada Y3 pemakaian persdiaan sesuai dengan yang direncanakan yaitu
habis di t5, namun karena pesanan tiba pada t6 maka terjadi kehabisan persediaan
selama t5 –t6.
Berbeda dengan kondisi Y4, meskipun tidak terjadi kelebihan persediaan
namun karena kedatangan pesanan di t7 yang lebih cepat dari yang direncanakan,
yaitu t8, maka terjadi kelebihan persediaan.
Bukan merupakan kondisi kehabisan persediaan, pada Y4 meskipun
pemakaian persediaan akan tepat seperti yang direncanakan, terjadi penumpukan
persediaan yang tidak diperlukan karena pesanan tiba lebih cepat dari yang
direncanakan.
Keempat kasus di atas telah memberi gambaran bagaimana perilaku
permintaan (demand) dan saat pesanan datang (lead time), yang menyimpang
dari perkiraan semula, bisa membawa akibat yang merugikan. Ini dapat berupa
kehabisan atau kelebihan persediaan. Oleh kerena itu, jalan keluar untuk
mengantisipasi penyimpangan itu, perlu dibentuk cadangan keras (iron stock)
atau safety stock melalui pendekatan distribusi probabilitas.
41
Ketika permintaan selama periode kedatangan pesanan tidak bisa
diketahui sebelumnya secara pasti, maka deviasi kapan persediaan dibutuhkan
dan kapan persediaan datang harus diketahui. Distribusi normal akan digunakan
untuk menggambarkan penyimpangan tersebut.
Gambar 2.8 Transformasi Penyimpangan dengan Kurva Normal
Jika rata-rata permintaan selama periode kedatangan pesanan
ditransformasikan ke mean atau m Kurva Normal, maka perilaku penyimpangan
tingkat permintaan itu akan menyebar di sekitar m 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 σ .
nxxi
2−Σ=σ dimana σ = standar deviasi
Selanjutnya σ digunakan untuk menemukan luas area dalam kurva normal
melalui σμ−
=xz . Untuk memudahkan pemahaman mengenai penggunaan
kurva normal pada kasus penentuan persediaan cadangan, maka rumus di atas
42
diubah menjadi μσ −= xz . Nilai z menandai luas area kurva normal, dan nilai z
dapat ditetapkan dalam presentase kemungkinan kehabisan persediaan sebagai
faktor keamanan untuk menentukan persediaan cadangan.
Jadi, persediaan cadangan = faktor keamanan (z) x σ
Nilai konversi faktor keamanan dapat dilihat pada tabel di bawah ini :
Tabel 2.1 Konversi Faktor Keamanan
Kemungkinan Persediaan
Tersedia (%)
Kemungkinan Persediaan Habis (%)
Faktor Keamanan
50 50 0 60 40 0.25 70 30 0.52 80 20 0.84 90 10 1.28 95 5 1.65 99 1 2.33 100 0 3.61
2.11 Persediaan Dependen
Permintaan dependen berarti permintaan suatu produk berkaitan dengan
permintaan untuk produk lainnya. Permintaan untuk produk bersifat dependen terjadi
bila hubungan antarproduk dapat ditentukan. Misalnya, bagi produsen mobil permintaan
ban mobil dan radiator tergantung produksi mobil itu sendiri. Oleh karenanya bila
manajemen telah membuat peramalan tentang permintaan barang jad, maka jumlah yang
diperlukan akan setiap komponen dapat dihitung, karena komponen semuanya bersifat
dependen. Terdapat dua model persediaan untuk permintaan dependen yaitu :
43
1. Materials Requirement Planning (MRP)
Model ini digunakan sebagai teknik perencanaan dan penjadwalan didalam
perusahaan manufaktur
2. Distribution Requirement Planning (DRP)
Model ini digunakan untuk perencanaan kebutuhan distribusi pada
perusahaan distribusi.
2.12 Distribution Requirement Planning (DRP)
Pengendalian persediaan tradisional umumnya hanya mengatur dan
mengendalikan persediaan barang dalam satu gudang atau satu tempat penyimpanan
saja, atau dalam satu entitas independed atau disebut juga titik pemesanan tunggal
(single stocking point). Sistem pengendalian persediaan seperti ini kurang atau tidak
memadai untuk sistem pergudangan ganda atau jaringan pergudangan (multiechelon
distribution networks), sebab sistem tersebut tidak mengindahkan kemungkinan saling
mengisi antara gudang atau keperluan gudang lain dan seterusnya. Untuk itu diperlukan
suatu sistem lain, yaitu Perencanaan Kebutuhan Distribusi atau Distribution
Requirement Planning (DRP).
DRP adalah salah satu bentuk aplikasi lebih lanjut dari Materials Requirement
Planning (MRP), yang dikembangkan oleh Martin (1980,1983). Alan J.Stenger
menggunakan istilah yang hampir sama yaitu, Distribution Requirement Planning
(DRP) yang meskipun artinya tidak persis sama, namun membicarakan hal yang hampir
sama. Multi level atau multiechelon distribution network dapat digambarkan sebagai
berikut :
44
Gambar 2.9 Jaringan Pergudangan Ganda
PDU atau pusat distribusi utama adalah tingkat atau level tertinggi dari ssitem
distribusi yang langsung berhubungan dengan pemasok atau pabrik produk, sedangkan
PDL adalah tingkat atau level terendah dari sistem distribusi yang langsung berhubngan
dengan pelanggan atau pemakai barang. Contoh bagan pada gambar 2.1 adalah sistem
distribusi dengan tiga tingkat. Apabila terdapat sistem distribusi dengan empat tingkat
atau lima tingkat atau lebih, maka tentunya akan ada PDL3, PDL4, dan seterusnya.
Kalau pabrik suatu prdouk memberikan nilai tambah bentuk (form value utility/form
added value), maka sistem distribusi memberikan nilai tambah waktu (time value dan
place value utility) atau time and place added value.
Kebanyakan produk yang dimaksud disini adalah produk jadi atau barang jadi
yang disalurkan dari pabrik atau pemasok ke para pelanggan. Namun, dalam prakteknya
45
cukup banyak juga di mana pusat distribusi juga melakukan pekerjaan penyelesaiaan
seperti pembetulan, perakitan, pembungkusan, dan pekerjaan sejenis itu.
Dalam sistem distribusi bertingkat ganda, kebutuhan nyata pelanggan tidak
langsung diketahui oleh pabrik atau pusat distribusi, tetapi disalurkan melalui berbagai
tingkat sistem distribusi tersebut. Ini mencakup waktu dan pengolahan data sekunder.
Kalau ini menyangkut waktu yang pendek, maka perencanaan dan perhitungan
kebutuhan, pemesanan kembali, dan sebagainya menjadi sangat krusial. Oleh karena itu,
diperlukan metode perhitungan yang memadai untuk pengendalian distribusi bertingkat
ganda ini. Tujuan dari pengaturan sistem distribusi bertingkat ganda adalah untuk
mengurangi biaya angkutan dan memenuhi kebutuhan pelanggan yang banyak dan
berada di berbagai tempat. Tidak mungkin misalnya satu pusat distribusi saja melayani
jutaan pelanggan yang berada diseluruh dunia. Biasanya dalam sistem distribusi
semacam ini biaya angkutan merupakan biaya yang cukup besar.
2.12.1 Perbandingan Model MRP dengan DRP
Pada hakikatnya, DRP adalah salah satu contoh aplikasi pendekatan atau metode
MRP dalam pengaturan distribusi, dalam hal ini adalah distribusi dengan sistem
bertingkat seperti telah dijelaskan diatas. Pengaturan distribusi di sini meliputi
pemesanan, pengiriman, pengisian kembali produk di masing-masing pusat distribusi,
khususnya di pusat distribusi paling bawah, yaitu pusat distribusi lokal, yang langsung
berhubngan dan melayani pelanggan. Untuk sistem distribusi tunggal, artinya tidak
bertingkat, metode DRP bukanlah metode yang tepat. Untuk menjelaskan lebih lanjut
dapat kita lihat persamaan-persamaan maupun perbedaan-perbedaan antara aplikasi
MRP dan aplikasi DRP pada tabel dibawah ini :
46
Tabel 2.2 Persamaan MRP dan DRP
MRP maupun DRP
Persamaan :
1. Menggunakan cara perhitungan matematis yang sama
2. Mempunyai matriks komponen perhitungan yang sama
3. Membedakan independent demand dan dependent demand
4. Metode berlaku untuk dependent demand
5. Keduanya menggunakan cara pemesanan berdasarkan rentang waktu
Tabel 2.3 Perbedaan MRP dan DRP
MRP DRP
Perbedaan 1. Untuk kegiatan manufakturing 1. Untuk kegiatan distribusi
2. Menghitung kebutuhan tiap
komponen barang
2. Menghitung kebutuhan barang
untuk tiap pusat distribusi
3. Cocok untuk pabrik jenis
rakitan
3. Cocok untuk sistem distribusi
bertingkat
4. Biasanya untuk bahan baku /
penolong
4. Biasanya untuk barang jadi /
Komoditas
5. MRP adalah proses dari atas,
yaitu dari master production
schedule ke kebutuhan tiap
komponen.
5. DRP adalah proses dari
bawah, yaitu kebutuhan PDL
ke PDR dan PDU
6. Semua kebutuhan komponen
bersifat dependen
6. Kebutuhan PDL bersifat
independen, sedangkan
kebutuhan PDR dan PDU
bersifat dependen
47
2.12.2 Input sistem DRP
Menurut Tersine (1994), masukan untuk kebutuhan distribusi antara lain:
a. Catatan Persediaan
Catatan persediaan merupakan catatan mengenai informasi tentang
persediaan yang dimiliki, lead time, rencana kedatangan barang, ukuran
pemesanan dan sebagainya. Catatan persediaan harus selalu diperbaharui
sesuai dengan kondisi persediaan, seluruh transaksi yang terjadi harus dicatat
karena dapat menyebabkan perubahan status persediaan.
b. Struktur Jaringan Pemasaran
Struktur jaringan pemasaran merupakan gambaran tentang kondisi jaringan
usaha eceran. Dari struktur jaringan pemasaran ini dapat diketahui berapa
banyak pengecer dan sub distributor yang dimiliki, tingkatan dan hubungan
keterkaitan antara pengecer, sub distributor dan distributor.
c. Rencana Induk Penjualan
Rencana induk penjualan merupakan pernyataan tentang berapa banyak
barang yang akan dijual dalam satu periode. Penentuan penjualan didasarkan
pada hasil peramalan yang telah dilakukan.
2.12.3 Mekanisme Dasar dari Proses DRP
Tabel 2.4 Contoh Tabel DRP Center A Safety stock : Lot size : Lead time :
Periode
PD 1 2 3 4 5 6 7 8
Gross requirements Scheduled receipts Projected on hand Net requirements Planned order receipts Planned order releases
48
Penjelasan mengenai tabel diatas adalah sebagai berikut :
1. Safety stock menyatakan cadangan persediaan yang harus ada sebagai
antisipasi kebutuhan dimasa yang akan datang.
2. Lot size menyatakan penentuan ukuran lot saat memesan barang.
3. Lead time menyatakan waktu yang dibutuhkan untuk mengirim barang
4. Gross requirements menyatakan jumlah kebutuhan barang untuk dijual
setiap periode.
5. Scheduled receipts menyatakan barang yang telah dipesan dan akan
diterima pada periode tertentu.
6. Projected on hand menyatakan jumlah barang yang ada dalam
persediaan sekarang.
7. Net requirements menyatakan jumlah bersih (netto) dari barang yang
dibutuhkan untuk memenuhi kekurangan pada permintaan yang ada.
8. Planned order receipts menyatakan kuantitas pemesanan yang
dibutuhkan pada suatu periode.Planned order receipts muncul pada saat
yang bersamaan dengan Net requirements, akan tetapi ukuran
pemesanannya (lot sizing) bergantung kepada order policy dan
mempertimbangkan safety stock.
9. Planned order release menyatakan kapan suatu pesanan harus dilakukan
sehingga barang tersedia ketika terjadi permintaan. Waktu pemesanan
bergantung pada lead time yang ada.
49
2.12.4 Prosedur sistem DRP
Secara garis besar proses perhitungan DRP menurut Vollman, 1988, adalah
sebagai berikut:
1. Perhitungan Kebutuhan Bersih (Netting)
Merupakan proses perhitungan kebutuhan bersih (net requirements) yang
besarnya merupakan selisih antara kebutuhan kotor (gross requirements)
dengan jadwal penerimaan barang (planned receipts) dan persediaan awal
yang tersedia (beginning inventory). Data yang dibutuhkan dalam
perhitungan kebutuhan bersih adalah:
Kebutuhan kotor untuk setiap periode
Persediaan yang dimiliki pada awal perencanaan
Rencana penerimaan untuk setiap periode perencanaan
Rumus yang berhubungan dengan proses netting ini dijelaskan sebagai
berikut :
POHT = (On-Hand)T-1 – (GRT-1) + (SR)T-1
(NR)T = (GR)T – (SR)T - POHT
Keterangan:
POHT = Planned on-hand (persediaan ditangan) pada periode T
GRT = Gross requirement (kebutuhan kotor) pada periode T
SRT = Schedule receipt (jadwal kedatangan) pada periode T
NRT = Net requirement (kebutuhan bersih) pada periode T
Kebutuhan bersih (net requirements) akan ditujukan sebagai nilai positif
yang sesuai dengan pertambahan negatif dari persediaan di tangan dalam
periode yang sama. Apabila lot sizing dipakai, kebutuhan bersih adalah
50
prediksi kekurangan material, sehingga perlu dimasukkan dalam perhitungan
rencana penerimaan pesanan (planned order receipts), dan tidak hanya
menghitung kenaikan dalam nilai negatif yang ditunjukkan dalam baris
persediaan di tangan.
2. Lotting
Untuk menjamin bahwa semua kebutuhan-kebutuhan akan dipenuhi, pesanan
akan dijadwalkan untuk penyelesaian pada awal periode dimana ada
kebutuhan bersih yang positif. Ukuran dari pesanan dapat mungkin sama
dengan kebutuhan bersih di periode bersangkutan, atau mungkin saja lebih
besar yang meliputi kebutuhan bersih di periode mendatang untuk
memanfaatkan skala ekonominya.
Lotting adalah suatu proses untuk menetukan besarnya jumlah pesanan
optimal untuk setiap barang secara individual didasarkan pada hasil
perhitungan kebutuhan bersih yang telah dilakukan. Ukuran lot menentukan
besarnya jumlah barang yang diterima dalam tiap pemesanan. Penentuan
ukuran lot sangat bergantung pada biaya-biaya persediaan, seperti biaya
pesan, biaya simpan, biaya modal, dan harga barang itu sendiri.
3. Offseting
Merupakan proses yang bertujuan untuk menentukan saat yang tepat untuk
merencanakan pemesanan dalam rangka memenuhi kebutuhan bersih.
Rencana pemesanan diperoleh dengan cara mengurangkan saat awal
tersedianya kebutuhan bersih yang diinginkan dengan lead time yang
dibutuhkan.
51
4. Explosion
Proses explosion merupakan proses perhitungan kebutuhan kotor untuk
tingkat mata rantai di bawahnya (sub distributor, distributor) yang didasarkan
atas rencana pemesanan. Dalam proses ini struktur jaringan inilah proses
Explosion akan berjalan dan dapat menentukan ke arah mata rantai mana
harus dilakukan explosion.
2.13 Sistem Informasi
2.13.1 Pengertian Sistem
Menurut O’Brien (2003, p8) sistem adalah sebuah kelompok yang terintegrasi
dan bekerja sama untuk mencapai tujuan yang sama dengan menerima masukan (inputs)
dan menghasilkan keluaran (outputs) dalam sebuah proses transformasi yang terorganisir
dengan baik.
Menurut McLeod yang diterjemahkan oleh Teguh (2004, p9), sistem adalah
sekelompok elemen – elemen yang terintegrasi dengan maksud yang sama untuk
mencapai tujuan yang sama.
Sistem ini sendiri terdiri dari dua jenis, yaitu sistem terbuka dan sistem
tertutup. Suatu sistem yang dihubungkan dengan lingkungannya melalui arus sumber
daya disebut sistem terbuka, sedangkan jika sistem tidak lagi dihubungkan dengan
lingkungannya maka ini disebut sistem tertutup.
Sistem adalah suatu jaringan prosedur yang dibuat menurut pola yang terpadu
untuk melaksanakan kegiatan utama perusahaan atau mencapai tujuan tertentu dari
perusahaan.
52
Model dasar dari sistem ialah sebagai berikut:
a. Input
Merupakan sekumpulan data yang akan digunakan dalam proses sistem
informasi.
b. Process
Merupakan kegiatan konversi, manipulasi, dan analisis dari data input menjadi
sesuatu yang dapat bermanfaat bagi manusia.
c. Output
Merupakan proses mendistribusikan informasi kepada orang atau kegiatan
yang memerlukannya.
d. Feedback
Merupakan output yang dikembalikan kepada orang-orang dalam organisasi
untuk membantu mengevaluasi input.
e. Subsistem
Merupakan sebagian dari sistem yang mempunyai fungsi khusus. Masing-
masing subsistem itu sendiri mempunyai komponen input, process, output, dan
feedback.
Sistem terdiri dari elemen-elemen yang menunjang terbentuknya sistem itu
sendiri yaitu input, proses transformasi, output. Dimana elemen umpan balik (feedback)
terkadang digunakan untuk menampung informasi dari output system dan memberikan
kepada sistem sebagai input baru.
53
2.13.2 Pengertian Informasi
McLeod (2001, p12) berpendapat informasi adalah data yang telah diproses
atau data yang memiliki arti. Sedangkan menurut O’Brien (2004, p13) informasi adalah
data yang telah dikonversikan menjadi konteks yang berarti dan berguna bagi pemakai
tertentu.
Terdapat empat dimensi informasi menurut McLeod (2001, p145), yaitu :
• Ketepatan waktu (Timeliness)
Informasi harus dapat tersedia untuk memcahkan masalah pada waktu yang
tepat.
• Kelengkapan (Currency)
Perusahaan khususnya manajer harus dapat memperoleh informasi yang
memberi gambaran lengkap dari suatu permasalahan atau penyelesaian.
• Akurasi (Accuracy)
Semua informasi harus akurat untuk menunjang terbentuknya sistem yang
akurat pula. Akurasi diperlukan dalam aplikasi-aplikasi tertentu seperti aplikasi
yang melibatkan keuangan, dan aplikasi lainnya yg memerlukan tingkat
ketelitian yang tinggi.
• Relevansi (Relevancy)
Informasi disebut relevan jika informasi tersebut berkaitan langsung dengan
masalah yang sedang dihadapi.
54
2.13.3 Pengertian Sistem Informasi
Menurut Turban et al. (2003, p15), sistem informasi adalah pengumpulan,
pengolahan, analisa, dan penyebaran informasi untuk tujuan yang spesifik. Sistem
informasi terdiri dari input (data dan instruksi) dan output (laporan dan kalkulasi).
Menurut O’Brien (2003, p7), sebuah sistem informasi dapat berupa kombinasi
teratur dari orang, hardware, software, jaringan komunikasi dan sumber data yang
mengumpulkan, mengubah dan menyebarkan informasi di dalam suatu organisasi.
Menurut Laudon (2003, p7), sistem informasi adalah sebuah kumpulan dari
komponen-komponen yang saling berhubungan yang mengumpulkan (atau mengambil
kembali), mengolah, menyimpan dan mendistribusikan informasi untuk mendukung
pengambilan keputusan, koordinasi dan pengendalian di dalam sebuah organisasi.
2.14 Object Oriented Analysis and Design (OOAD)
Object-Oriented Analysis and Design (OOAD) adalah metode untuk
menganalisa dan merancang sistem dengan pendekatan berorientasi object (Mathiassen
et al, 2000, p135). Object diartikan sebagai suatu entitas yang memiliki identitas, state
dan behavior (mathiassen et al, 2000, p4). Pada analisa, identitas sebuah object
menjelaskan bagaimana seorang user membedakannya dari object lain, dan behavior
object digambarkan melalui event yang dilakukannya. Sedangkan pada perancangan,
identitas sebuah object digambarkan dengan cara bagaimana object lain mengenalinya
sehingga dapat diakses, dan behavior object digambarkan dengan operation yang dapat
dilakukan object tersebut yang dapat mempengaruhi object lain dalam sistem.
55
2.14.1 Objek dan Class
Menurut Mathiassen et al (2000,p4), objek merupakan sebuah entitas yang
memiliki identitas, status, dan perilaku. Contoh dari objek misalnya pelanggan yang
merupakan entitas dengan identitas yang spesifik, dan memiliki status dan perilaku
tertentu yang berbeda antara satu pelanggan dengan pelanggan yang lain. Sedangkan
class merupakan deskripsi dari kumpulan objek yang memiliki struktur, pola perilaku,
dan atribut yang sama (Mathiassen et al., 2000,p4).
2.14.2 Konsep Object Oriented Analysis and Design (OOAD)
Terdapat tiga buah konsep atau teknik dasar dalam proses analisa dan
perancangan berorientasi objek, yaitu:
1. Encapsulation
Encapsulation dalam OOAD berarti pengelompokkan fungsi. Pengelompokkan
ini bertujuan agar developer tidak perlu membuat coding untuk fungsi yang
sama, melainkan hanya perlu memanggil fungsi yang telah dibuat sebelumnya.
2. Inheritance
Inheritance dalam OOAD berarti menciptakan sebuah class baru yang
memiliki sifat-sifat dan karakteristik-karakteristik sama dengan yang dimiliki
class induknya disamping sifat-sifat dan karakteristik-karakteristk
individualnya.
3. Polymorphism
Polymorphism berarti kemampuan dari tipe objek yang berbeda untuk
menyediakan atribut dan operasi yang sama dalam hal yang berbeda.
56
2.14.3 Keuntungan dan Kelemahan Object Oriented Analysis and Design (OOAD)
Mathiassen et al. (2000, p5-6) menyebutkan bahwa terdapat keuntungan
menggunakan OOAD diantaranya adalah:
1. OOAD memberikan informasi yang jelas mengenai context sistem.
2. Dapat menangani data yang seragam dalam jumlah yang besar dan
mendistribusikannya ke seluruh bagian organisasi.
3. Berhubungan erat dengan analisa berorientasi objek, perancangan
berorientasi objek, user interface berorientasi objek, dan pemrograman
berorientasi objek.
Selain keuntungan yang diperoleh dalam menggunakan OOAD seperti yang
telah disebutkan di atas, ternyata juga terdapat beberapa kelemahan yang berhasil
diidentifikasi oleh McLeod (2001, p615) yaitu:
1. Diperlukan waktu lama untuk memperoleh pengalaman pengembangan.
2. Kesulitan metodologi untuk menjelaskan sistem bisnis yang rumit.
3. Kurangnya pilihan peralatan pengembangan yang khusus disesuaikan untuk
sistem bisnis.
2.14.4 Aktivitas Utama Object Oriented Analysis and Design (OOAD)
Mathiassen et al. (2000, p14-15) menjelaskan empat buah aktivitas utama
dalam analisa dan perancangan berorientasi objek yang digambarkan dalam Gambar
2.10 berikut ini.
57
Sumber: Mathiassen et al (2000, p15)
Gambar 2.10 Aktivitas Utama dalam OOAD
Berikut ini merupakan penjelasan lebih rinci mengenai keempat aktivitas
utama dalam melakukan analisa dan perancangan berorintasi objek menurut Mathiassen
et al. (2000, pp14-15):
1. Analisis Problem Domain
Problem domain adalah bagian dari situasi yang diatur, diawasi, dan
dikendalikan oleh sistem. Tujuan melakukan analisis problem domain adalah
mengidentifikasi dan memodelkan problem domain. Analisis problem
domain terbagi menjadi tiga aktivitas yang digambarkan dalam Gambar 2.11,
yaitu:
a. Memilih objek, class, dan event yang akan menjadi elemen model
problem domain.
58
b. Membangun model dengan memusatkan perhatian pada relasi
struktural antara class dan objek.
c. Mendeskripsikan properti dinamis dan atribut untuk setiap class.
Classes
Structure
BehaviourSystemDefinition
Model
Sumber : Mathiassen et al (2000, p46)
Gambar 2.11 Aktivitas Analisis Problem Domain
Pada aktivitas classes, langkah awal yang perlu dilakukan adalah
menentukan class. Langkah berikutnya adalah membuat sebuah event table
yang dapat membantu menentukan event-event yang dimiliki.
Pada aktivitas structure, class-class yang telah ditentukan sebelumnya akan
dihubungkan berdasarkan tiga jenis hubungan yaitu generalisasi, agregasi,
atau asosiasi sehingga menjadi sebuah skema yang disebut class diagram.
Dalam aktivitas behavior, definisi class dalam class diagram akan diperluas
dengan menambahkan deskripsi pola perilaku dan atribut dari masing-masing
class. Pola perilaku dari class terdiri dari tiga jenis, yaitu:
• Sequence
Merupakan event yang terjadi secara berurutan satu per satu.
59
• Selection
Merupakan pemilihan salah satu dari beberapa event yang terjadi.
• Iteration
Merupakan event yang terjadi berulang kali.
Hasil dari aktivitas ini adalah sebuah statechart diagram yang menunjukkan
perubahan status dari masing-masing class yang dikarenakan oleh event
tertentu mulai dari initial state sampai dengan final state.
2. Analisis Application Domain
Menurut Mathiassen, et al (2000, p115) application-domain adalah
organisasi yang mengatur, memonitor atau mengendalikan problem-domain.
Analisis application-domain memfokuskan bagaimana target dalam sistem
akan digunakan dengan menentukan function dan interface sistem. Sama
seperti analisis problem domain, analisis application domain juga terdiri
dari beberapa aktivitas antara lain:
a. Menentukan penggunaan sistem dan bagaimana sistem berinteraksi
dengan user.
b. Menentukan fungsi dan kemampuan sistem dalam mengolah
informasi.
c. Menentukan kebutuhan interface sistem dan merancang interface.
Berikut ini merupakan gambaran aktivitas-aktivitas yang dilakukan pada saat
melakukan analisis application domain.
60
Sumber: Mathiassen et al (2000, p117)
Gambar 2.12 Aktivitas Analisis Application Domain
• Usage
Menurut Mathiassen, et al (2000, p119-120) kegiatan usage adalah
kegiatan pertama dalam analisis application-domain yang bertujuan
untuk menentukan bagaimana aktor-aktor yang merupakan pengguna
atau sistem yang berinteraksi dengan sistem yang dituju. Interaksi
antara aktor dengan sistem tersebut dinyatakan dalam use case
diagram. Use case dapat digambarkan dengan menggunakan
spesifikasi use case, dimana use case dijelaskan secara singkat namun
jelas dan dapat disertai dengan keterangan objek sistem yang terlibat
dan function dari use case tersebut atau dengan diagram statechart
karena use case adalah sebuah fenomena yang dinamik
Gambar 2.13 Sub Aktivitas Usage
61
• Function
Menurut Mathiassen, et al (2000, p137-138). Function memfokuskan
pada bagaimana cara sebuah sistem dapat membantu aktor dalam
melaksanakan pekerjaan mereka.
Gambar 2.14 Sub Aktivitas Function
Function memiliki empat tipe yang berbeda, yaitu:
1. Update fungsi update diaktifkan oleh event problem domain
dan menghasilkan perubahan status model.
2. Signal fungsi signal diaktifkan oleh perubahan status model
dan menghasilkan reaksi di dalam context.
3. Read fungsi read diaktifkan oleh kebutuhan actor akan
informasi dan menghasilkan tampilan model sistem yang relevan.
4. Compute f ungsi compute diaktifkan oleh kebutuhan actor akan
informasi dan berisi perhitungan yang dilakukan baik oleh actor
maupun oleh model. Hasilnya adalah tampilan dari hasil
perhitungan yang dilakukan.
Tujuan dari kegiatan function adalah untuk menentukan kemampuan
sistem memproses informasi.
62
• User Interface
Menurut Mathiassen, et al (2000, p151-152). Interface
menghubungkan sistem dengan semua aktor yang berhubungan dalam
konteks. Ada dua jenis interface, yaitu: interface pengguna yang
menghubungkan pengguna dengan sistem dan interface sistem yang
menghubungkan sistem dengan sistem lainya.
Sebuah user interface yang baik harus dapat beradaptasi dengan
pekerjaan dan pemahaman user terhadap sistem. Kualitas interface
pengguna ditentukan oleh kegunaan atau usability interface tersebut
bagi pengguna.Usability bergantung pada siapa yang menggunakan
dan situasi pada saat sistem tersebut digunakan. Oleh sebab itu,
usability bukan sebuah ukuran yang pasti dan objektif.
Kegiatan analisis user interface ini berdasarkan pada hasil dari
kegiatan analisis lainnya, seperti model problem domain, kebutuhan
functional dan use case. Hasil dari kegiatan ini adalah sebuah
deskripsi elemen-elemen interface pengguna dan interface sistem
yang lengkap, dimana kelengkapan menunjukan pemenuhan
kebutuhan pengguna. Hasil ini harus dilengkapi dengan sebuah
diagram navigasi yang menyediakan sebuah ringkasan dari elemen-
elemen user interface dan perubahan antara elemen-elemen tersebut
(p159).
63
3. Architectural Design
Architectural design berfungsi sebagai kerangka kerja dalam aktivitas
pengembangan sistem dan menghasilkan struktur komponen dan proses
sistem. Tujuannya adalah untuk menstrukturisasi sebuah sistem yang
terkomputerisasi.
Tahap architectural design terdiri dari tiga aktivitas yaitu criteria, component
architecture, dan process architecture seperti yang digambarkan pada
Gambar 2.15
Sumber: Mathiassen et al (2000, p176)
Gambar 2.15 Aktivitas Architectural Design
Criterion merupakan properti yang diinginkan dari sebuah arsitektur. Tabel
2.5 menunjukkan criterion yang telah ditentukan oleh para peneliti untuk
menentukan kualitas dari sebuah software.
64
Tabel 2.5 Criteria untuk Menentukan Kualitas Software Sumber: Mathiassen (2000, p178)
Criterion Ukuran
Usable Kemampuan sistem beradaptasi dengan context organisasional dan teknikal
Secure Pencegahan akses ilegal terhadap data dan fasilitas Efficient Eksploitasi ekonomis dari fasilitas technical platform Correct Kesesuaian dengan kebutuhan Reliable Fungsi yang dijalankan secara tepat
Maintainable Biaya untuk mencari dan memperbaiki kerusakan sistem
Testable Biaya untuk menjamin bahwa sistem melakukan fungsinya
Flexible Biaya memodifikasi sistem Comprehensible Usaha yang diperlukan untuk memahami sistem
Reusable Penggunaan bagian dari sistem ke dalam sistem lain yang berkaitan
Portable Biaya memindahkan sistem ke technical platform lain Interoperable Biaya pemasangan sistem dengan sistem lain
Mathiassen et al. (2000, pp179-182) menyebutkan bahwa kriteria usable,
flexible, dan comprehensible tergolong sebagai kriteria umum yang harus
dimiliki oleh sebuah sistem dan menentukan baik tidaknya suatu rancangan
sistem.
Component architecture adalah struktur sistem dari komponen-komponen
yang berkaitan. Dalam aktivitas ini, perlu ditentukan pola arsitektural yang
paling sesuai dengan model sistem. Pola-pola arsitektural tersebut antara lain:
• Layered Architecture Pattern
• Generic Architecture Pattern
• Client-Server Architecture Pattern
Hasil dari aktivitas ini adalah sebuah component diagram yang merupakan
class diagram yang dilengkapi dengan spesifikasi komponen yang kompleks.
65
Process architecture adalah sebuah struktur eksekusi sistem yang terdiri dari
proses-proses yang saling tergantung satu sama lain. Dalam aktivitas ini juga
perlu menentukan pola distribusi yang sesuai dengan model sistem. Pola-pola
distribusi yang ada antara lain:
• Centralized Pattern
• Distributed Pattern
• Decentralized Pattern
Hasil dari aktivitas ini adalah sebuah deployment diagram yang menunjukkan
processor dengan komponen program dan active objects.
4. Component Design
Menurut Mathiassen, et al. (2000, p231) Component design bertujuan untuk
menentukan implementasi kebutuhan di dalam kerangka kerja arsitektural.
Kegiatan component design bermula dari spesifikasi arsitektural dan
kebutuhan sistem. Hasilnya adalah deskripsi mengenai komponen-
komponen yang saling berhubungan dengan sistem. Component design terdiri
dari tiga aktivitas, yaitu:
a. Model component
Menurut Mathiassen, et al (2000, p235) Model component adalah
bagian dari sistem yang mengimplementasikan model problem
domain. Konsep utama dalam desain komponen model adalah
struktur. Dalam aktivitas ini dihasilkan sebuah class diagram yang
telah direvisi.
66
b. Function component
Menurut Mathiassen, et al (2000, p251) komponen function adalah
bagian dari sistem yang mengimplementasikan kebutuhan fungsional.
Tujuan dari function komponen adalah memberikan akses bagi usr
interface dan komponen sistem lainnya ke model.
c. Connecting component
Merupakan desain hubungan antar komponen untuk memperoleh
rancangan yang fleksibel dan mudah dimengerti. Hasilnya adalah
class diagram yang berhubungan dengan komponen-komponen
sistem. Gambar 2.16 berikut ini menggambarkan aktivitas-aktivitas
yang terdapat dalam component design.
Sumber: Mathiassen (2000, p232)
Gambar 2.16 Aktivitas Component Design
67
2.15 Unified Modeling Language (UML)
2.15.1 Sejarah UML
Pada akhir tahun 80-an dan awal tahun 90-an, sudah banyak terdapat metode
pemodelan berorientasi objek yang digunakan pada industri-industri, diantaranya Booch
Method, Object Modeling Technique (OMT) yang diperkenalkan oleh James Rumbaugh,
dan Object-Oriented Software Engineering (OOSE) yang diperkenalkan oleh Ivar
Jacobson. Keberadaan berbagai metode tersebut justru menjadi masalah utama dalam
pengembangan sistem berorientasi objek, karena dengan banyaknya metode pemodelan
objek yang digunakan akan membatasi kemampuan untuk berbagi model antar proyek
dan antar tim pengembang. Hal tersebut disebabkan oleh berbedanya konsep masing-
masing metode pemodelan objek sehingga menghambat komunikasi antara anggota tim
dengan user yang berujung pada banyaknya kesalahan atau error pada proyek.
Dikarenakan masalah-masalah tersebut, maka diperlukanlah suatu standarisasi
penggunaan bahasa pemodelan.
Pada tahun 1994, Grady Booch dan James Rumbaugh bekerja sama dan
menyatukan metode pengembangan berorientasi objek mereka dengan tujuan untuk
menciptakan sebuah sistem pengembangan berorientasi objek yang standar. Pada tahun
1995 Ivar Jacobson ikut bergabung dengan mereka dan ketiganya memusatkan perhatian
untuk menciptakan sebuah bahasa pemodelan objek yang standar, bukan lagi
berkonsentrasi pada metode atau pendekatan berorientasi objek. Berdasarkan pemikiran
ketiga tokoh tersebut, maka akhirnya pada tahun 1997 bahasa pemodelan objek standar
Unified Modeling Language (UML) versi 1.0 mulai diperkenalkan kepada masyarakat
luas.
68
UML bukan merupakan metode untuk mengembangkan sistem, melainkan
hanya berupa notasi yang kemudian pada saat ini diterima dengan luas sebagai bahasa
pemodelan objek yang standar. Object Management Group (OMG) mengadopsi UML
pada bulan November 1997 dan sejak saat itu terus mengembangkannya berdasarkan
pada kebutuhan dunia industri. Pada tahun 2004, telah diluncurkan UML versi 1.4 dan
pada saat itu juga OMG telah mulai merencanakan pengembangan UML versi 2.0.
2.15.2 Notasi UML
Notasi (Mathiassen et al, 2000, p237) adalah bahasa textual dan graphical
untuk menggambarkan sebuah sistem dan konteksnya yang diformalisasikan secara
terpisah. Tujuannya adalah untuk menyederhanakan komunikasi dan dokumentasi.
2.15.2.1 Class Diagram
Class Diagram menggambarkan struktur objek dari sistem. Class diagram
menunjukkan class objek yang membentuk sistem dan hubungan struktural diantara
class objek tersebut (Mathiassen et al., 2000, p336). Terdapat tiga jenis hubungan antar
class yang biasa digunakan dalam class diagram (Whitten et al., 2004, p455-459).
Ketiga jenis hubungan tersebut antara lain:
1. Asosiasi
Asosiasi merupakan hubungan statis antar dua objek atau class. Hubungan ini
menggambarkan apa yang perlu diketahui oleh sebuah class mengenai class
lainnya. Hubungan ini memungkinkan sebuah objek atau class mereferensikan
objek atau class lain dan saling mengirimkan pesan.
Gambar 2.17 Contoh Hubungan Asosiasi
69
2. Generalisasi (atau Spesialisasi)
Dalam hubungan generalisasi, terdapat dua jenis class, yaitu class supertype
dan class subtype. Class supertype atau class induk memiliki atribut dan
behavior yang umum dari hirarki tersebut. Class subtype atau class anak
memiliki atribut dan behavior yang unik dan juga memiliki atribut dan
behavior milik class induknya. Class induk merupakan generalisasi dari class
anaknya, sedangkan class anak merupakan spesialisai dari class induknya.
Gambar 2.18 Contoh Hubungan Generalisasi
3. Agregasi
Agregasi merupakan hubungan yang unik dimana sebuah objek merupakan
bagian dari objek lain. Hubungan agregasi tidak simetris dimana jika objek B
merupakan bagian dari objek A, namun objek A bukan merupakan bagian dari
objek B. Pada hubungan ini, objek yang menjadi bagian dari objek tertentu
tidak akan memiliki atribut atau behavior dari objek tersebut.
70
Gambar 2.19 Contoh Hubungan Agregasi
2.15.2.2 Statechart Diagram
Statechart Diagram digunakan untuk memodelkan perilaku dinamis dari
sebuah objek dalam sebuah class yang spesifik dan berisi state dan transition
(Mathiassen et al., 2000, p341). Statechart diagram mengilustrasikan siklus objek hidup
yaitu berbagai status yang dapat dimiliki objek dan event yang menyebabkan status
objek berubah menjadi status lain (Whitten et al., 2004, p700).
Statechart diagram dibuat dengan langkah-langkah sebagai berikut (Whitten et
al., 2004, p700):
1. Mengidentifikasi initial dan final state.
2. Mengidentifikasi status objek selama masa hidup objek tersebut.
3. Mengidentifikasi event pemicu perubahan status objek.
4. Mengidentifikasi jalur perubahan status.
71
Active
Cancelled
Participant registered (registration date)
Participant registered (registration date)
Participant cancelled (cancellation date)
Sumber: Mathiassen et al. (2000, p358)
Gambar 2.20 Contoh Statechart Diagram
2.15.2.3 Use Case Diagram
Use Case Diagram menggambarkan interaksi antara sistem dan user (Whitten
et al., 2004, p441). Use case diagram mendeskripsikan secara grafis hubungan antara
actors dan use case (Mathiassen et al., 2000, p343). Penjelasan use case biasa
ditambahkan untuk menjelaskan langkah-langkah interaksi.
Library System
Visitor
Patron
Apply formembership
Search libraryinventory
Check out books
Sumber: Whitten et al. (2004, p282)
Gambar 2.21 Contoh Use Case Diagram
72
2.15.2.4 Sequence Diagram
Bennet et al. (2006, p253) mengemukakan bahwa sequence diagram
menunjukkan interaksi antar objek yang diatur berdasarkan urutan waktu. Sequence
diagram dapat digambarkan dalam berbagai level of detail yang berbeda untuk
memenuhi tujuan yang berbeda-beda pula dalam daur hidup pengembangan sistem.
Aplikasi sequence diagram yang paling umum adalah untuk menggambarkan interaksi
antar objek yang terjadi pada sebuah use case atau sebuah operation.
Bennet et al. (2006, pp253-254) menyatakan bahwa setiap sequence diagram
harus diberikan frame yang memiliki heading dengan menggunakan notasi sd yang
merupakan kependekan dari sequence diagram. Bennet et al. (2006, p270) juga
menyatakan bahwa terdapat beberapa notasi penulisan heading pada setiap frame yang
terdapat dalam sequence diagram, antara lain:
a. alt
Notasi alt merupakan kependekan dari alternatives yang menyatakan
bahwa terdapat beberapa buah alternatif jalur eksekusi untuk dijalankan.
b. opt
Notasi opt merupakan kependekan dari optional dimana frame yang
memiliki heading ini memiliki status pilihan yang akan dijalankan jika
syarat tertentu dipenuhi.
c. loop
Notasi loop menyatakan bahwa operation yang terdapat dalam frame
tersebut dijalankan secara berulang selama kondisi tertentu.
73
d. break
Notasi break mengindikasikan bahwa semua operation yang berada setelah
frame tersebut tidak dijalankan.
e. par
Merupakan kependekan dari parallel yang mengindikasikan bahwa
operation dalam frame tersebut dijalankan secara bersamaan.
f. seq
Notasi seq merupakan kependekan dari weak sequencing yang berarti
operation yang berasal dari lifeline yang berbeda dapat terjadi pada urutan
manapun.
g. strict
Notasi strict merupakan kependekan dari strict sequencing yang
menyatakan bahwa operation harus dilakukan secara berurutan.
h. neg
Notasi neg merupakan kependekan dari negative yang mendeskripsikan
operasi yang tidak valid.
i. critical
Frame yang memiliki heading critical menyatakan bahwa operasi-operasi
yang terdapat di dalamnya tidak memiliki sela yang kosong.
j. ignore
Notasi ini mengindikasikan bahwa tipe pesan atau parameter yang
dikirimkan dapat diabaikan dalam interaksi.
74
k. consider
Consider menyatakan pesan mana yang harus dipertimbangkan dalam
interaksi.
l. assert
Merupakan kependekan dari assertion yang menyatakan urutan pesan yang
valid.
m. ref
Notasi ref merupakan kependekan dari refer yang menyatakan bahwa
frame mereferensikan operation yang terdapat di dalamnya pada sebuah
sequence diagram tertentu.
Sumber: Bennet et al. (2006, p254)
Gambar 2.22 Contoh Sequence Diagram
75
2.15.2.5 Navigation Diagram
Navigation Diagram merupakan statechart diagram khusus yang berfokus
pada user interface (Mathiassen et al., 2000, p344). Diagram ini menunjukkan window-
window dan transisi diantara window-window tersebut.
Sebuah window dapat digambarkan sebagai sebuah state. State ini memiliki
nama dan berisi gambar miniatur window. Transisi antar state dipicu oleh ditekannya
sebuah tombol yang menghubungkan dua window.
2.15.2.6 Component Diagram
Component Diagram merupakan yang menunjukkan bagaimana coding
pemrograman terbagi menjadi komponen-komponen dan juga menunjukkan
ketergantungan antar komponen tersebut (Whitten et al., 2004, p442).
Sebuah komponen digambarkan dalam UML sebagai sebuah kotak dengan dua
kotak kecil di sebelah kirinya.
Sumber: Mathiassen et al. (2000, p201)
Gambar 2.23 Contoh Component Diagram
76
2.15.2.7 Deployment Diagram
Deployment Diagram, sama seperti component diagram, juga merupakan
diagram implementasi yang menggambarkan arsitektur fisik sistem. Perbedaannya,
deployment diagram tidak hanya menggambarkan arsitektur fisik software saja,
melainkan software dan hardware. Diagram ini menggambarkan komponen software,
processor, dan peralatan lain yang melengkapi arsitektur sistem (Whitten et al., 2004,
p442). Menurut Mathiassen et al. (2000, p340), deployment diagram menunjukkan
konfigurasi sistem dalam bentuk processor dan objek yang terhubung dengan processor
tersebut.
Setiap kotak dalam deployment diagram menggambarkan sebuah node yang
menunjukkan sebuah hardware. Hardware dapat berupa PC, mainframe, printer, atau
bahkan sensor. Software yang terdapat di dalam node digambarkan dengan simbol
komponen. Garis yang menghubungkan node menunjukkan jalur komunikasi antar
device. Gambar 2.24 berikut ini menunjukkan sebuah contoh deployment diagram.
Sumber: Mathiassen et al. (2000, p217)
Gambar 2.24 Contoh Deployment Diagram