bab 2 landasan teorithesis.binus.ac.id/doc/bab2/2008-1-00471-tisi-bab 2.pdflangsung adalah...

59
BAB 2 LANDASAN TEORI 2.1 Pengukuran Waktu Menurut Sutalaksana (1979, p131) pengukuran waktu adalah pekerjaan mengamati dan mencatat waktu kerja baik setiap elemen ataupun siklus dengan menggunakan alat-alat yang telah disiapkan. Teknik pengukuran waktu terbagi atas dua bagian yaitu secara langsung dan secara tidak langsung. Pengukuran secara langsung adalah pengukuran yang dilakukan secara langsung yaitu di tempat dimana pekerjaan yang bersangkutan dilaksanakan. Dua cara yang termasuk di dalamnya adalah cara jam henti dan sampling pekerjaan. Cara tidak langsung melakukan perhitungan waktu tanpa harus berada di tempat pekerjaan yaitu dengan membaca tabel-tabel yang tersedia asalkan mengetahui jalannya pekerjaan melalui elemen- elemen pekerjaan atau elemen-elemen gerakan. Pengukuran waktu ditujukan untuk mendapatkan waktu baku penyelasian pekerjaan yaitu waktu yang dibutuhkan secara wajar oleh seorang pekerja normal untuk menyelesaikan suatu pekerjaan yang dijalankan dalam sistem kerja terbaik (Sutalaksana, 1979, p117). 2.2 Pengukuran Waktu Baku Waktu baku merupakan waktu yang dibutuhkan oleh seorang pekerja yang memiliki tingkat kemampuan rata-rata untuk menyelesaikan suatu pekerjaan. Di sini sudah meliputi kelonggaran waktu yang diberikan dengan memperhatikan situasi dan

Upload: vocong

Post on 28-Mar-2019

215 views

Category:

Documents


0 download

TRANSCRIPT

BAB 2

LANDASAN TEORI

2.1 Pengukuran Waktu

Menurut Sutalaksana (1979, p131) pengukuran waktu adalah pekerjaan

mengamati dan mencatat waktu kerja baik setiap elemen ataupun siklus dengan

menggunakan alat-alat yang telah disiapkan. Teknik pengukuran waktu terbagi atas

dua bagian yaitu secara langsung dan secara tidak langsung. Pengukuran secara

langsung adalah pengukuran yang dilakukan secara langsung yaitu di tempat dimana

pekerjaan yang bersangkutan dilaksanakan. Dua cara yang termasuk di dalamnya

adalah cara jam henti dan sampling pekerjaan. Cara tidak langsung melakukan

perhitungan waktu tanpa harus berada di tempat pekerjaan yaitu dengan membaca

tabel-tabel yang tersedia asalkan mengetahui jalannya pekerjaan melalui elemen-

elemen pekerjaan atau elemen-elemen gerakan.

Pengukuran waktu ditujukan untuk mendapatkan waktu baku penyelasian

pekerjaan yaitu waktu yang dibutuhkan secara wajar oleh seorang pekerja normal

untuk menyelesaikan suatu pekerjaan yang dijalankan dalam sistem kerja terbaik

(Sutalaksana, 1979, p117).

2.2 Pengukuran Waktu Baku

Waktu baku merupakan waktu yang dibutuhkan oleh seorang pekerja yang

memiliki tingkat kemampuan rata-rata untuk menyelesaikan suatu pekerjaan. Di sini

sudah meliputi kelonggaran waktu yang diberikan dengan memperhatikan situasi dan

10

kondisi pekerjaan yang harus diselesaikan tersebut. Dengan demikian, maka waktu

baku yang dihasilkan dalam aktivitas pengukuran kerja ini akan dapat digunakan

sebagai alat untuk membuat rencana penjadwalan kerja yang menyatakan berapa

lama suatu kegiatan itu berlangsung dan berapa output yang dihasilkan serta berapa

jumlah tenaga kerja yang dibutuhkan untuk menyelesaikan pekerjaan tersebut.

2.2.1 Pengukuran Pendahuluan

Tujuan dilakukan pengukuran pendahuluan adalah untuk mengetahui

berapa kali pengukuran harus dilakukan untuk tingkat-tingkat ketelitian dan

kepercayaan yang diinginkan. Tahap-tahapnya adalah sebagai berikut

(Sutalaksana, 1979, p132) :

1. Melakukan beberapa buah pengukuran yang banyaknya ditentukan oleh

pengukur.

2. Menguji keseragaman data, menghitung jumlah pengukuran yang diperlukan,

dan bila pengukuran belum mencukupi maka dilanjutkan dengan pengukuran

pendahuluan kedua.

2.2.2 Uji Keseragaman Data

Uji keseragaman data perlu untuk dilakukan terlebih dahulu sebelum

menggunakan data yang diperoleh guna menetapkan waktu baku. Uji keseragaman

data bisa dilaksanakan dengan cara visual dan/atau mengaplikasikan peta kontrol

(control chart). Peta kontrol (control chart) adalah suatu alat yang tepat guna

dalam menguji keseragaman data dan/atau keajegan data yang diperoleh dari hasil

pengamatan.

11

Uji keseragaman data secara visual dilakukan secara sederhana mudah dan

cepat. Di sini kita hanya sekedar melihat data yang terkumpul dan seterusnya

mengidentifikasikan data yang terlalu ekstrim. Yang dimaksud dengan data yang

terlalu “ekstrim” adalah data yang terlalu besar atau yang terlalu kecil dan jauh

menyimpang dari trend rata-ratanya. Data yang terlalu ekstrim ini sebaiknya

dibuang jauh-jauh dan tidak dimasukkan ke dalam perhitungan selanjutnya,

(Wignjosoebroto, 2000, p194-195).

Langkah-langkah yang dilakukan untuk menguji keseragaman data sebagai

berikut :

1. Hasil pengukuran dikelompokkan ke dalam subgrup-subgrup dan hitung rata-

rata tiap subgrup :

niΣΧ

=ΧΚ

Dimana : n = ukuran subgrup, yaitu banyaknya data dalam satu subgrup

k = jumlah subgrup yang terbentuk

Xi = data pengamatan

2. Hitung rata-rata keseluruhan, yaitu rata-rata dari rata-rata subgrup :

kkΧΣ

3. Hitung standar deviasi dari waktu penyelesaian :

( )1

2

−ΝΧ−ΧΣ

= iσ

Dimana : N = jumlah pengamatan pendahuluan yang telah dilakukan

12

4. Hitung standar deviasi dari distribusi harga rata-rata subgrup :

nσσ =

Χ

5. Tentukan Batas Kontrol Atas (BKA) dan Batas Kontrol Bawah (BKB) :

BKA = ( )Χ

Ζ+ σx

BKB = ( )Χ

Ζ− σx

Dimana : Z = koefisien pada distribusi normal sesuai dengan tingkat

kepercayaan. Rumusnya :

⎥⎦⎤

⎢⎣⎡ −

−=Ζ2

11 β

6. Jika seluruh rata-rata data waktu subgrup berada di daerah antara BKA dan

BKB, maka data waktu dikatakan seragam.

2.2.3 Uji Kecukupan Data

Waktu yang diperlukan untuk melaksanakan elemen kerja pada umumnya

akan sedikit berbeda dari siklus ke siklus kerja sekalipun operator bekerja pada

kecepatan normal dan uniform, tiap elemen dalam siklus yang berbeda tidak selalu

akan bisa diselesaikan dalam waktu yang persis sama. Aktivitas pengukuran kerja

pada dasarnya adalah merupakan proses sampling. Konsekuensi yang diperoleh

adalah bahwa semakin besar jumlah siklus kerja yang diamati atau diukur maka

akan semakin mendekati kebenaran akan data waktu yang diperoleh. Konsistensi

dari hasil pengukuran dan pembacaan waktu oleh stop-watch akan merupakan hal

yang diinginkan dalam proses pengkuran kerja. Semakin kecil variasi atau

13

perbedaan data waktu yang ada, maka jumlah pengukuran atau pengamatan yang

harus dilakukan juga akan cukup kecil. Sebaliknya, semakin besar variabilitas dari

data waktu pengukuran, akan menyebabkan jumlah siklus kerja yang diamati juga

akan semakin besar agar bisa diperoleh ketelitian yang dikehendaki

(Wignjosoebroto, 2000, p183).

Perhitungan uji kecukupan data dapat dilakukan setelah semua harga rata-

rata subgrup berada dalam batas kendali. Rumus dari kecukupan data adalah :

( )2

22

'⎥⎥⎥

⎢⎢⎢

ΣΧ

ΣΧ−ΝΣΧΖ=Ν

i

iis

Dimana :

N’ = jumlah pengukuran data minimum yang dibutuhkan

N = jumlah pengukuran data pendahuluan yang telah dilakukan setelah

dikurangi data pengukuran di luar BKA atau BKB

Z = bilangan konversi pada distribusi normal sesuai dengan tingkat

kepercayaan

s = tingkat ketelitian

Jumlah pengukuran waktu dapat dikatakan cukup apabila jumlah

pengukuran data minimum yang dibutuhkan secara teoritis lebih kecil atau sama

dengan jumlah pengukuran yang sudah dilakukan (N’≤N). Jika jumlah pengukuran

masih belum mencukupi, maka harus dilakukan pengukuran lagi sampai jumlah

pengukuran tersebut cukup.

14

2.2.4 Tingkat Ketelitian dan Tingkat Kepercayaan

Yang dicari dengan melakukan pengukuran-pengukuran ini adalah waktu

yang sebenarnya dibutuhkan untuk menyelesaikan suatu pekerjaan. Karena waktu

penyelesaian ini tidak pernah diketahui sebelumnya maka harus diadakan

pengukuran-pengukuran. Yang ideal tentunya dilakukan pengukuran-pengukuran

yang sangat banyak (sampai tak terhingga kali) karena dengan demikian diperoleh

jawaban yang pasti. Tetapi hal ini jelas tidak mungkin karena keterbatasan waktu,

tenaga, dan tentunya biaya. Namun sebaliknya jika tidak dilakukan beberapa kali

pengukuran saja, dapat diduga hasilnya sangat kasar. Sehingga yang diperlukan

adalah jumlah pengukuran yang tidak membebankan waktu, tenaga dan biaya yang

besar tetapi hasilnya tidak dapat dipercaya. Jadi, walaupun jumlah pengukuran

tidak berjuta kali, tetapi jelas tidak hanya beberapa kali saja.

Dengan tidak dilakukannya pengukuran yang banyak sekali ini, pengukur

akan kehilangan sebagian kepastian akan ketetapan/rata-rata waktu penyelesaian

yang sebenarnya. Hal ini harus disadari. Tingkat ketelitian dan tingkat kepercayaan

adalah pencerminan tingkat kepastian yang diinginkan oleh pengukur setelah

memutuskan tidak akan melakukan pengukuran yang sangat banyak.

Tingkat ketelitian menunjukkan penyimpangan maksimum hasil

pengukuran dari waktu penyelesaian sebenarnya. Hal ini biasanya dinyatakan

dalam persen. Sedangkan, tingkat kepercayaan menunjukkan besarnya

kepercayaan pengukur bahwa hasil yang diperoleh memenuhi syarat ketelitian tadi.

Inipun dinyatakan dalam persen (Sutalaksana, 1979, p135).

15

2.2.5 Penyesuaian

Penyesuaian adalah proses dimana analisa pengukuran waktu

membandingkan penampilan operator (kecepatan atau tempo) dalam pengamatan

dengan konsep pengukur sendiri tentang bekerja secara wajar. Setelah pengukuran

berlangsung, pengukur harus mengamati kewajaran kerja yang ditunjukkan

operator. Ketidakwajaran dapat saja terjadi, misalnya bekerja tanpa kesungguhan,

sangat cepat seolah-olah diburu waktu, atau karena menjumpai kesulitan-kesulitan,

seperti karena kondisi ruangan yang buruk. Sebab-sebab seperti ini mempengaruhi

kecepatan kerja yang berakibat terlalu singkat atau terlalu panjangnya waktu

penyelasian. Hal ini jelas tidak diinginkan karena waktu baku yang dicari adalah

waktu yang diperoleh dari kondisi dan cara kerja yang baku yang diselesaikan

secara wajar.

Andaikata ketidakwajaran ada, maka pengukur harus mengetahuinya dan

menilai seberapa jauh hal itu terjadi. Penilaian perlu diadakan karena berdasarkan

inilah penyesuaian dilakukan. Jadi jika pengukur mendapatkan harga rata-rata

siklus/elemen yang diketahui diselesaikan dengan kecepatan tidak wajar oleh

operator, maka agar harga rata-rata tersebut menjadi wajar, pengukur harus

menormalkannya dengan melakukan penyesuaian.

Biasanya penyesuaian dilakukan mengalikan waktu siklus rata-rata atau

waktu elemen rata-rata dengan suatu harga p yang disebut faktor penyesuaian.

Besarnya harga p tentunya sedemikian rupa sehingga hasil perkalian yang

diperoleh mencerminkan waktu yang sewajarnya atau yang normal. Bila pengukur

berpendapat bahwa operator bekerja di atas normal (terlalu cepat), maka harga p-

nya akan lebih besar dari satu (p1). Sebaliknya jika operator dipandang bekerja di

16

bawah normal, maka harga p akan lebih kecil dari satu (p). Seandainya pengukur

berpendapat bahwa operator bekerja dengan wajar, maka harga p-nya sama dengan

satu (p=1) (Sutalaksana, 1979, p138).

Terdapat beberapa metode dalam menentukan faktor penyesuaian

(Sutalaksana, 1979, p139-149), yaitu :

a. Metode Persentase

Merupakan cara yang paling awal digunakan dalam melakukan penyesuaian.

Besarnya faktor penyesuaian sepenuhnya dilakukan oleh pengukur melalui

pengamatannya selama melakukan pengukuran. Cara ini adalah cara yang

paling mudah dan sederhana tetapi cara ini bersifat subyektif, kurang teliti

karena kasarnya penelitian.

b. Metode Schumard

Cara ini memberikan patokan-patokan penilaian melalui kelas-kelas

performance kerja dimana setiap kelas tersebut mempunyai nilai sendiri-

sendiri. Di sini pengukur diberi patokan untuk menilai performansi kerja

operator menurut kelas-kelas Superfast+, Fast+, Fast-, Excellent, dan

seterusnya.

c. Metode Westinghouse

Cara ini mengarahkan penelitian pada 4 faktor yang dianggap menentukan

kewajaran atau ketidakwajaran dalam bekerja, yaitu : keterampilan, usaha,

kondisi kerja, dan konsistensi. Setiap faktor terbagi dalam kelas-kelas dan

nilainya masing-masing.

17

d. Metode Objektif

Merupakan metode yang memperlihatkan dua faktor, yaitu : kecepatan kerja

dan tingkat kesulitan pekerjaan. Kedua faktor inilah yang dipaandang bersama-

sama untuk menentukan berapa harga penyesuaian untuk mendapatkan waktu

normal.

e. Metode Bedaux dan Sintesa

Cara Bedaux tidak banyak berbeda dengan Schumard, hanya saja nilai-nilai

pada cara Bedaux dinyatakan dalam “B”. Sedangkan cara Sintesa waktu

penyelesaian setiap elemen gerakan dibandingkan dengan harga-harga yang

diperoleh dari tabel-tabel waktu gerakan untuk kemudian dihitung harga rata-

ratanya.

2.2.6 Kelonggaran

Kelonggaran diberikan untuk tiga hal yaitu untuk kebutuhan pribadi,

menghilangkan rasa fatigue, dan hambatan-hambatan yang tidak dapat

dihindarkan. Ketiganya ini merupakan hal-hal yang secara nyata dibutuhkan oleh

pekerja, dan yang selama pengukuran tidak diamati, diukur, dicatat, ataupun

dihitung. Karenanya sesuai pengukuran dan setelah mendapatkan waktu normal,

kelonggaran perlu ditambahkan (Sutalaksana, 1979, p149-154).

1. Kelonggaran untuk kebutuhan pribadi

Yang termasuk dalam kebutuhan pribadi disini adalah hal-hal seperti minum

sekadarnya untuk menghilangkan rasa haus, ke kamar kecil, bercakap-ckap

dengan teman sekerja untuk menghilangkan ketegangan dan kejenuhan kerja.

Kebutuhan-kebutuhan ini jelas terlihat sebagai sesuatu yang mutlak. Besarnya

18

kelonggaran yang diberikan untuk kebutuhan probadi seperti itu berbeda-beda

dari satu pekerjaan ke pekerjaan lainnya karena setiap pekerjaan memiliki

karakteristik sendiri-sendiri dengan tuntunan yang berbeda-beda.

2. Kelonggaran untuk menghilangkan rasa fatigue

Rasa fatigue tercermin antara lain dari menurunnya hasil produksi baik jumlah

maupun kualitas. Salah satu cara untuk menentukan besarnya kelonggaran ini

adalah dengan melakukan pengamatan sepanjang hari kerja dan mencatat pada

saat-saat dimana hasil produksi menurun.

3. Kelonggaran untuk hambatan-hambatan tak terhindarkan

Dalam melaksanakan pekerjaannya, pekerja tidak akan lepas dari berbagai

“hambatan”. Ada hambatan yang dapat dihindarkan seperti mengobrol

berlebihan dan menganggur dengan sengaja ada pula hambatan yang tidak

dapat dihindarkan karena berada di luar kekuasaan pekerja untuk

mengendalikannya. Beberapa contoh yang termasuk ke dalam hambatan tak

terhindarkan adalah :

a. Menerima atau meminta petunjuk kepada pengawas.

b. Melakukan penyesuaian-penyesuaian mesin

c. Memperbaiki kemacetan-kemacetan singkat seperti mengganti alat potong

yang patah, memasang kembali ban yang lepas dan sebagainya.

d. Mengasah peralatan potong.

e. Mengambil alat-alat khusus atau bahan-bahan khusus dari gudang.

19

2.2.7 Perhitungan Waktu Baku

Kegiatan pengukuran waktu dinyatakan selesai bila semua data yang

diperoleh telah seragam, dan jumlahnya telah memenuhi tingkat ketelitian dan

keyakinan yang diinginkan. Selanjutnya adalah mengolah data untuk menghitung

waktu baku yang diperoleh dengan langkah-langkah :

1. Menghitung waktu siklus

2. Menghitung waktu normal

3. Menghitung waktu baku

2.3 Peramalan

Peramalan (forecasting) adalah suatu kegiatan untuk memperkirakan apa

yang terjadi pada masa yang akan datang. Peramalan merupakan suatu kegiatan

untuk meramalkan apa yang akan terjadi di masa yang akan datang dengan

menggunakan dan mempertimbangkan data dari masa lampau. Ketepatan secara

mutlak dalam memprediksi peristiwa dan tingkat kegiatan yang akan datang adalah

tidak mungkin dicapai, oleh karena itu ketika perusahaan tidak dapat melihat

kejadian yang akan datang secara pasti, diperlukan waktu dan tenaga yang besar agar

mereka dapat memiliki kekuatan terhadap kejadian yang akan datang.

Peramalan merupakan alat bantu yang penting dalam perencanaan yang

efektif. Dalam lingkungan perusahaan, peramalan kebanyakan digunakan untuk

mengestimasi atau memprediksi permintaan yang akan datang guna memperkirakan

jumlah dan jenis apa saja yang diproduksi oleh perusahaan. Peramalan permintaan

memegang peranan yang penting dalam perencanaan dan pengambilan keputusan,

khususnya di bidang produksi. Peramalan permintaan bisa menyangkut jadwal

20

produksi, perencanaan kebutuhan tenaga kerja, perencanaan kapasitas produksi, dan

sebagainya.

Pada dasarnya terdapat beberapa langkah peramalan yang penting yaitu :

1. Menganalisa data yang lalu. Tahap ini berguna untuk pola yang terjadi pada

masa lalu. Analisa ini dilakukan dengan cara membuat tabulasi dari data yang

lalu.

2. Menentukan metode yang digunakan. Masing-masing metode akan memberikan

hasil permalan yang berbeda. Dengan kata lain, metode peramalan yang baik

adalah metode yang menghasilkan penyimpangan antara hasil peramalan dengan

nilai kenyataan yang sekecil mungkin.

3. Memproyeksikan data yang lalu dengan menggunakan metode yang

dipergunakan dan mempertimbangkan adanya beberapa faktor perubahan.

4. Penentuan tujuan, yaitu menentukan kebutuhan informasi-informasi bagi para

pembuat keputusan seperti :

• Variabel-variabel yang akan diestimasi.

• Siapa yang akan menggunakan hasil peramalan.

• Untuk tujuan apa hasil peramalan akan digunakan.

• Estimasi jangka panjang atau jangka pendek yang diinginkan.

• Derajat ketepatan estimasi yang diinginkan.

• Kapan estimasi dibutuhkan.

• Bagian-bagian peramalan yang diinginkan, seperti peramalan untuk

kelompok pembeli, kelompok produk, atau daerah geografis.

21

5. Pengembangan model. Menentukan model yang merupakan penyederhanaan dari

sistem dan merupakan kerangka analitik bagi masukan yang akan memperoleh

pengeluaran. Model ditentukan berdasarkan sifat-sifat dan perilaku variabel.

6. Pengujian model. Dilakukan untuk menentukan tingkat akurasi, validitas dan

reliabilitas, yang ditentukan dengan membandingkan hasil peramalan dengan

kenyataan/aktual.

7. Penerapan model. Setelah lulus dalam pengujian, data historik akan dimasukkan

ke dalam model untuk menghasilkan ramalan.

8. Revisi dan evaluasi. Ramalan yang telah dibuat harus senantiasa diperbaiki dan

ditinjau kembali. Hal ini perlu dilakukan bila terdapat perubahan dalam

perusahaan dan lingkungannya (harga produk, karakteristik produk, periklanan,

tingkat pengeluaran pemerintah, kebijaksanaan moneter, atau kemajuan

teknologi); dan hasil perbandingan antara ramalan dengan data aktual.

2.3.1 Metode Peramalan

Banyak jenis metode peramalan yang tersedia untuk meramalkan

permintaan dalam produksi. Namun yang lebih penting adalah bagaimana

memahami karakteristik suatu metode peramalan agar sesuai dengan situasi

pengambilan keputusan. Situasi peramalan sangat beragam dalam horison waktu

peramalan, faktor yang menentukan hasil sebenarnya, tipe pola data dan berbagai

aspek lainnya. Untuk menghadapi penggunaan yang luas seperti itu, beberapa

teknik telah dikembangkan. Teknik tersebut dibagi dalam 2 kategori utama,

(Makridakis, 1999, p19-24) yaitu :

22

1. Metode peramalan kuantitatif

Metode kuantitatif sangat beragam dan setiap teknik memiliki sifat, ketepatan,

dan biaya tertentu yang harus dipertimbangkan dalam memilih metode tertentu.

Metode kuantitatif formal didasarkan atas prinsip-prinsip statistik yang

memiliki ketepatan tinggi atau dapat meminimumkan kesalahan (error), lebih

sistematis, dan lebih populer dalam penggunaannya. Untuk menggunakan

metode kuantitatif terdapat tiga kondisi yang harus terpenuhi, yaitu :

a. Tersedia informasi tentang masa lalu.

b. Informasi tersebut dapat dikuantitatifkan dalam bentuk data numerik.

c. Dapat diasumsikan bahwa beberapa aspek pola masa lalu akan terus

berlanjut di masa mendatang.

Metode kuantitatif dapat dibagi ke dalam dua model, yaitu :

a. Model deret berkala (time series)

Pada model ini, pendugaan masa depan dilakukan berdasarkan nilai masa

lalu dari suatu variabel dan / atau kesalahan masa lalu. Model deret berkala

menggunakan riwayat permintaan masa lalu dalam membuat ramalan untuk

masa depan. Tujuan metode peramalan deret berkala ini adalah menemukan

pola dalam deret berkala historis dan mengekstrapolasikan pola dalam deret

data historis dan mengekstrapolasikan pola tersebut ke masa depan.

Langkah penting dalam memilih suatu metode deret berkala yang tepat

adalah dengan mempertimbangkan jenis pola data, sehingga metode yang

paling tepat dengan metode tesebut dapat diuji. Pola data dapat dibedakan

menjadi :

23

1. Pola Horizontal (H) terjadi bilamana nilai data berfluktuasi di sekitar

nilai rata-rata yang konstan. (deret seperti itu adalah “stasioner”

terhadap nilai rata-ratanya). Suatu produk yang penjualannya tidak

meningkat atau menurun selama waktu tertentu termasuk jenis ini.

Demikian pula suatu pengendalian kualitas yang menyangkut

pengambilan contoh dari suatu proses produksi berkelanjutan yang

secara teoritis tidak mengalami perubahan juga termasuk jenis ini.

2. Pola musiman (S) terjadi bilamana suatu deret dipengaruhi oleh faktor

musiman (misalnya kuartal tahun tertentu, bulanan, atau hari-hari pada

minggu tertentu). Penjualan dari produk minuman ringan, es krim, dan

bahan bakar pemanas ruangan, menunjukkan jenis pola ini.

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.

4. Pola trend (T) terjadi bilamana terdapat kenaikan atau penurunan

sekuler jangka panjang dalam data. Penjualan banyak perusahaan,

produk bruto nasional (GNP) dan berbagai indikator bisnis atau

ekonomi lainnya mengkuti pola trend selama perubahannya sepanjang

waktu.

Banyak deret data yang mencakup kombinasi dari pola-pola data di atas.

Metode peramalan yang dapat membedakan setiap pola harus dipakai bila

diinginkan adanya pemisahan komponen pola tersebut.

24

b. Model kausal

Model kausal mengasumsikan bahwa faktor yang diramalkan menunjukkan

suatu hubungan sebab-akibat dengan satu atau lebih variabel bebas.

Maksud dari model kausal adalah menemukan bentuk hubungan tersebut

dan menggunakannya untuk meramalkan nilai mendatang dari variabel tak

bebas. Setelah hubungan ini ditemukan, nilai-nilai masa mendatang dapat

diramalkan cukup dengan memasukkan nilai-nilai yang sesuai untuk

variabel-variabel independen. Metode peramalan kausal mengasumsikan

bahwa permintaan akan suatu produk bergantung pada satu atau beberapa

faktor independen (misalnya, harga, iklan, persaingan, dan lain-lain).

Metode peramalan kuantitatif terletak di antara dua ekstrim rangkaian

kesatuan, yaitu :

1. Metode naif/intuitif. Metode ini bersifat sederhana dan mudah dipakai,

tetapi tidak selalu tepat seperti metode kuantitatif formal. Metode ini

masih cukup banyak digunakan karena beberapa orang lebih menyukai

pendekatan judgemental daripada pendekatan yang lebih obyektif.

2. Metode kuantitatif formal yang didasarkan atas prinsip-prinsip

statistika. Metode ini menggunakan ekstrapolasi horisontal, musiman,

dan trend. Jenis ini didasarkan atas pengalaman empiris yang sangat

beragam dari bisnis ke bisnis, produk ke produk, dari peramal yang satu

ke peramal yang lain.

25

2. Metode peramalan kualitatif atau teknologis

Metode peramalan ini tidak memerlukan data yang serupa seperti metode

peramalan kuantitatif. Input yang dibutuhkan tergantung pada metode tertentu

dan biasanya merupakan hasil dari pemikiran intuitif, perkiraan dan

pengetahuan yang telah didapat. Pendekatan teknologis seringkali memerlukan

input dari sejumlah orang yang terlatih.

Metode kualitatif mengandalkan opini pakar atau manajer dalam membuat

prediksi tentang masa depan. Metode ini berguna untuk tugas peramalan

jangka panjang. Penggunaan pertimbangan dalam peramalan, sekilas,

tampaknya tidak ilmiah dan bersifat sementara. Tetapi bila data masa lalu tidak

ada atau tidak mencerminkan masa mendatang, tidak banyak alternatif selain

menggunakan opini dari orang-orang yang berpengetahuan. Ramalan

teknologis terutama digunakan untuk memberikan petunjuk, untuk membantu

perencana dan untuk melengkapi ramalan kuantitatif, bukan untuk memberikan

suatu ramalan numerik tertentu.

Metode kualitatif dapat dikelompokkan menjadi 2 yaitu :

a. Metode eksploratoris

Metode eksploratoris (seperti Delphi, kurva-S, analogi, dan penelitian

morfologis) dimulai dengan masa lalu dan masa kini sebagai titik awalnya

dan bergerak ke arah masa depan secara heuristik, seringkali dengan

melihat semua kemungkinan yang ada.

b. Metode normatif

Metode normatif (seperti matriks kelutusan, pohon relevansi, dan analisis

sistem) dimulai dengan menetapkan sasaran dan tujuan yang akan datang,

26

kemudian bekerja mundur untuk melihat apakah hal ini dapat dicapai,

berdasarkan kendala, sumber daya, dan teknologi yang tersedia.

2.3.2 Pemilihan Teknik Peramalan

Pola atau karakteristik data mempengaruhi teknik peramalan yang dipilih.

Seringkali, pola data tersebut merupakan karakteristik inheren dari kegiatan yang

sedang diteliti. Hubungan data dengan jangka waktu semakin jelas jika kita

mengamati bahwa pola trend adalah merupakan kecenderungan jangka panjang,

sedangkan variasi musiman menunjukkan pola data yang berulang. Dalam

mengevaluasi teknik-teknik yang dikaitkan dengan pola data bisa saja diterapkan

lebih dari satu teknik untuk data yang sama. Misalnya, teknik-teknik tertentu

mungkin lebih akurat dalam memprediksi titik balik, sedangkan lainnya terbukti

lebih andal dalam peramalan pola perubahan yang stabil. Bisa juga terjadi

beberapa model meramalkan terlalu tinggi (overestimate) atau terlalu rendah

(underestimate) dalam situasi tertentu. Selain itu, mungkin juga terjadi bahwa

prediksi jangka pendek dari suatu model lebih baik dari model lain yang memiliki

prediksi jangka panjang yang lebih akurat.

Teknik Peramalan untuk Data yang Stasioner

Suatu data runtut waktu yang bersifat stasioner merupakan suatu serial data

yang nilai rata-ratanya tidak berubah sepanjang waktu. Keadaan tersebut terjadi

jika pola permintaan yang mempengaruhi data tersebut relatif stabil. Dalam

bentuknya yang paling sederhana, peramalan suatu data runtut waktu yang

27

stasioner memerlukan data historis dari runtut waktu tersebut untuk mengestimasi

nilai rata-ratanya, yang kemudian menjadi permalan untuk nilai-nilai masa datang.

Beberapa teknik yang dapat dipertimbangkan ketika meramalkan data

runtut waktu yang stasioner adalah metode naif, metode rata-rata sederhana, rata-

rata bergerak, pemulusan exponensial sederhana, dan model ARIMA (metode

Box-Jenkins). (Hanke, 2005, p75)

Teknik Peramalan untuk Data Trend

Suatu data runtut waktu yang bersifat trend didefinisikan sebagai suatu

series yang mengandung komponen jangka panjang yang menunjukkan

pertumbuhan atau penurunan dalam data tersebut sepanjang suatu periode waktu

yang panjang. Dengan kata lain, suatu data runtut waktu dikatakan mempunyai

trend jika nilai harapannya berubah sepanjang waktu sehingga data tersebut

diharapkan menaik atau menurun selama periode dimana peramalan diinginkan.

Biasanya data runtut waktu ekonomi mengandung suatu trend.

Teknik-teknik peramalan yang digunakan untuk peramalan data runtut

waktu yang mengandung trend adalah rata-rata bergerak, pemulusan exponensial

linier dari Holt, regresi sederhana, model ARIMA (metode Box-Jenkins). (Hanke,

2005, p75-76).

Teknik Peramalan untuk Data Musiman

Suatu data runtut waktu yang bersifat musiman didefinisikan sebagai suatu

data runtut waktu yang mempunyai pola perubahan yang berulang secara tahunan.

Mengembangkan suatu teknik peramalan musiman biasanya memerlukan

28

pemilihan metode perkalian dan pertambahan dan kemudian mengestimasi indeks

musiman dari data tersebut. Indeks ini kemudian digunakan untuk memasukkan

sifat musiman dalam peramalan atau untuk menghilangkan pengaruh seperti itu

dari nilai-nilai yang diobservasi.

Teknik-teknik yang dapat dipertimbangkan ketika kita meramalkan data

runtut waktu yang bersifat musiman meliputi metode dekomposisi klasik, Census

X-12, pemulusan exponensial dari Winter, regresi berganda dan model ARIMA

(metode Box-Jenkins). (Hanke, 2005, p76).

Teknik Peramalan untuk Data yang Bersifat Siklis

Pengaruh siklis didefinisikan sebagai fluktuasi seperti gelombang di sekitar

garis trend. Pola siklis cenderung untuk berulang setiap dua, tiga tahun, atau lebih.

Pola siklis sulit untuk dibuat modelnya karena polanya tidak stabil. Turun-naiknya

fluktuasi di sekitar trend jarang sekali berulang pada interval waktu yang tetap, dan

besarnya fluktuasi juga selalu berubah. Metode dekomposisi bisa diperluas untuk

menganalisa data siklis.

Teknik-teknik yang dapat dipertimbangkan ketika kita meramalkan data

runtut waktu yang bersifat siklis adalah metode dekomposisi klasik, indikator

ekonomi, model-model ekonometrik, regresi berganda dan model ARIMA (metode

Box-Jenkins). (Hanke, 2005, p76).

29

2.3.3 Metode Peramalan Triple Exponential Smoothing Tiga Parameter dari

Winter

Pada umumnya, metode rata-rata bergerak dan pemulusan eksponensial

dapat digunakan untuk hampir segala jenis data stasioner atau non stasioner

sepanjang data tersebut tidak mengandung faktor musiman. Tetapi bilamana

terdapat faktor musiman, metode-metode tersebut akan menghasilkan peramalan

yang buruk. Untuk data stasioner, digunakan metode rata-rata bergerak atau

pemulusan eksponensial. Jika datanya menunjukkan suatu trend linear, maka baik

model linear dari Brown atau Holt dapat diterapkan. Tetapi jika datanya musiman,

metode tersebut tidak dapat mengatasinya dengan baik. Walaupun demikian,

metode Winter dapat menangani faktor musiman secara langsung.

Metode Winter didasarkan atas 3 persamaan pemulusan, yaitu satu untuk

unsur stasioner, satu untuk trend dan satu untuk musiman. Hal ini serupa dengan

metode Holt, dengan satu pemulusan tambahan untuk mengatasi musiman.

Perumusan dasar untuk metode Winter (Makridakis, 1999, p121-127) adalah

sebagai berikut :

Pemulusan Keseluruhan :

St = ))(1( )1()1( −−−

+−+ ttLt

t bSIX

αα

Pemulusan Trend :

bt = )1()1( )1()( −− −+− ttt bSS γγ

Pemulusan Musiman :

It = )()1( Ltt

t ISX

−−+ ββ

30

Peramalan :

F(t+m) = (St+bt*m)I(t-L+m)

Dimana :

L = Panjang musiman

b = Komponen trend

I = Faktor penyesuaian musiman

Ft+m = Peramalan untuk m periode ke depan.

Salah satu masalah dalam menggunakan metode Winter adalah menentukan

nilai-nilai untuk α,β, dan γ tersebut yang akan berpengaruh dalam perhitungan

nilai-nilai error seperti MSE atau MAPE. Pendekatan untuk menentukan nilai ini

biasanya secara trial dan error, walaupun mungkin juga digunakan algoritma

optimasi non-linear untuk mendapatkan nilai parameter optimal. Karena kedua

pendekatan tersebut memakan banyak waktu dan mahal, maka metode ini jarang

digunakan. Metode ini baru dipakai jika banyak himpunan data yang harus

ditangani.

Untuk menginisialisasi metode peramalan Winter yang diterangkan di atas,

kita perlu menggunakan paling sedikit satu data musiman lengkap (yaitu L

periode) untuk menentukan estimasi awal dari indeks musiman, Lt-1, dan kita perlu

menaksir faktor trend dari satu periode ke periode selanjutnya. Adapun rumus

yang digunakan untuk inisialisasi awal yaitu :

XL+1 = SL+1

It = XX L

31

2.3.4 Metode Peramalan Dekomposisi

Metode Dekomposisi mendasarkan penganalisaan untuk mengidentifikasi

tiga faktor utama yang terdapat dalam suatu deret waktu, yaitu faktor trend, faktor

siklus, dan faktor musiman. Di dalam beberapa hal, peramal hanya mendasarkan

penyusunannya pada dua faktor yang penting yaitu trend dan musiman. Faktor

trend menggambarkan perilaku data dalam jangka panjang, dan dapat meningkat,

menurun atau tidak berubah. Pengukuran perkembangan faktor trend dilakukan

untuk periode waktu yang panjang dengan menghilangkan variasi musim dan

variasi siklus. Faktor siklus menggambarkan baik turunnya ekonomi atau industri

tertentu. Faktor musiman berkaitan dengan fluktuasi periodik dengan panjang

konstan. Perbedaan antara musiman dan siklus adalah bahwa musiman berulang

dengan sendirinya pada interval yang tetap seperti tahun atau bulan, sedangkan

faktor siklus mempunyai jangka waktu yang lebih lama dan lamanya berbeda dari

satu siklus ke siklus yang lainnya.

Ada beberapa pendekatan alternatif untuk mendekomposisi suatu deret

waktu, dengan tujuan untuk mengisolasikan masing-masing komponen dari deret

itu setepat mungkin. Konsep dasar dari dekomposisi ini adalah data empiris di

mana yang pertama adalah pergeseran musim, kemudian trend dan terakhir adalah

siklus. Residu yang ada dianggap unsur acak yang walaupun tidak dapat ditaksir,

tetapi dapat diidentifikasi (Makridakis, 1999, p150-156).

Langkah-langkah dekomposisi :

1. Pada deret data yang sebenarnya (Xt) hitung rata-rata bergerak yang

panjangnya (N) sama dengan panjang musiman. Maksud dari rata-rata bergerak

adalah menghilangkan unsur musiman dan keacakan. Meratakan sejumlah

32

periode yang sama dengan panjang pola musiman akan menghilangkan unsur

musiman dengan membuat rata-rata dari periode yang musimannya tinggi dan

periode yang musimannya rendah. Karena galat acak tidak mempunyai pola

yang sistematis, maka perata-rataan ini juga mengurangi keacakan.

2. Pisahkan rata-rata bergerak N periode (langkah 1) dari deret data semula untuk

memperoleh unsur trend dan siklus.

3. Pisahkan faktor musiman dengan menghitung rata-rata untuk tiap periode yang

menyusun panjang musiman secara lengkap.

4. Identifikasi bentuk trend yang tepat (linear, eksponensial, kurva-S, dan lain-

lain) dan hitung nilainya untuk setiap periode (Tt).

5. Pisahkan hasil langkah 4 dari hasil langkah 2 (nilai gabungan dari unsur trend

dan siklus) untuk memperoleh faktor siklus.

6. Pisahkan musiman, trend dan siklus dari data asli untuk mendapatkan unsur

acak yang ada, Et.

Metode dekomposisi dapat berasumsi pada model aditif atau multiplikatif dan

bentuknya dapat bervariasi. Model aditif berbentuk :

Xt = It + Tt + Ct + Et

Model multiplikatif berbentuk :

Xt = It x Tt x Ct x Et

33

2.3.5 Statistik Ketepatan Peramalan

Ukuran Statistik Standar

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 −=

Jika terdapat nilai pengamatan dan ramalan untuk n periode waktu, maka

akan terdapat n buah galat dan ukuran statistik standar berikut dapat didefinisikan :

• Nilai Tengah Galat Absolut (Mean Absolut Error)

∑ ==

n

tet

nMAE

1

1

• Nilai Tengah Galat Kuadrat (Mean Squarred Error)

∑ ==

n

tet

nMSE

121

• Deviasi Standar Galat (Standar Deviation of Error)

∑ =−=

n

tet

nSDE

12

11

Dua formulasi yang sering digunakan dalam menghitung kesalahan yaitu

mean absolute error (yang dalam beberapa buku disebut sebagai mean absolute

deviation) dan mean squarred error (MSE). Perbedaan keduanya adalah terletak

pada bobot kesalahan, satu dalam bentuk angka kesalahan absolut dan yang

lainnya dalam bentuk nilai kuadrat.

Tujuan optimalisasi statistik seringkali adalah untuk memilih suatu model

agar MSE minimal, tetapi ukuran ini mempunyai dua kelemahan. Pertama, ukuran

34

ini menunjukkan pencocokan (fitting) suatu model terhadap data historis.

Pencocokan seperti ini tidak perlu mengimplikasikan peramalan yang baik. Suatu

model terlalu cocok (over fitting) dengan deret data, yang berarti sama dengan

memasukkan unsur random sebagai bagian proses bangkitan, berarti tidak berhasil

mengenali pola non-acak dalam data dengan baik. Perbandingan nilai MSE yang

terjadi selama fase pencocokan peramalan adalah mungkin memberikan sedikit

indikasi ketepatan model dalam peramalan. Kedua, sebagai ukuran ketepatan

model adalah berhubungan dengan kenyataan bahwa metode yang berbeda akan

menggunakan prosedur yang berbeda pula dalam fase pencocokan.

Dalam fase peramalan, penggunaan MSE sebagai suatu ukuran ketepatan

juga dapat menimbulkan masalah. Ukuran ini tidak memudahkan perbandingan

deret berkala yang berbeda dan untuk selang waktu yang berlainan, karena MSE

merupakan ukuran para absolut. Lagipula, interpretasinya tidak bersifat intuitif

bahkan untuk para spesialis sekalipun, karena ukuran ini menyangkut

pengkuadratan sederetan nilai (Makridakis, 1999, p58-61).

Ukuran-ukuran Relatif

Karena adanya keterbatasan MSE sebagai suatu ukuran ketepatan

peramalan, maka muncul usulan alternatif-alternatif lain yang diantaranya

menyangkut galat presentase. Tiga ukuran yang sering digunakan (Makridakis,

1999, p61-62) adalah :

• Galat Persentase (Percentage Error)

100×⎟⎟⎠

⎞⎜⎜⎝

⎛ −=

t

tt

XFX

PE

35

• Nilai Tengah Galat Persentase (Mean Percentage Error)

∑ ==

n

t tPEn

MPE1

1

• Nilai Tengah Galat Persentase Absolut (Mean Absolute Percentage Error)

∑ ==

n

t tPEn

MAPE1

1

PE dapat digunakan untuk menghitung kesalahan persentase setiap periode

waktu. Nilai-nilai ini kemudian dapat dirata-ratakan untuk memberikan nilai

tengah kesalahan persentase (MPE). Namun MPE mungkin mengecil karena PE

positif dan negatif cenderung saling meniadakan. Dari sana MAPE didefinisikan

dengan menggunakan nilai absolut dari PE.

2.4 Pemrograman Linier

Pemrograman linier (linier programming) merupakan suatu bentuk model

matematika yang dapat digunakan untuk memecahkan masalah pengoptimalan.

Menurut Subagyo et al. (1999, p9) pemrograman linier merupakan suatu model

umum yang dapat digunakan dalam pemecahan masalah pengalokasian sumber-

sumber yang terbatas secara optimal. Masalah tersebut timbul apabila seseorang

diharuskan memilih atau menentukan tingkat setiap kegiatan yang harus

dilakukannya, dimana masing-masing kegiatan membutuhkan sumber yang sama

sedangkan jumlahnya terbatas.

Dalam pemrograman linier, kata linier memberikan arti bahwa seluruh fungsi

matematis dalam model ini merupakan fungsi yang linier, sedangkan kata

pemrograman merupakan sinonim untuk perencanaan. Dengan demikian

36

pemrograman linier adalah perencanaan aktivitas-aktivitas untuk memperoleh suatu

hasil yang optimum, yaitu suatu hasil yang mencapai tujuan terbaik diantara seluruh

alternatif yang fisibel.

Karakteristik atau sifat-sifat dari pemrograman linier yaitu :

a. Variabel keputusan

Variabel keputusan adalah variabel yang menguraikan secara lengkap keputusan-

keputusan yang akan dibuat.

b. Fungsi tujuan

Fungsi tujuan merupakan fungsi dari variabel keputusan yang akan

dimaksimumkan (untuk pendapatan atau keuntungan) atau diminimumkan

(pendapatan/minggu) – (ongkos material/minggu) – (ongkos tenaga

kerja/minggu).

c. Pembatas

Pembatas merupakan kendala yang dihadapi sehingga kita tidak bisa menentukan

harga-harga variabel keputusan secara sembarang. Koefisien dari variabel

keputusan pada pembatas disebut koefisien teknologis, sedangkan bilangan yang

ada di sisi kanan setiap pembatas disebut ruas kanan pembatas.

d. Pembatas tanda

Pembatas tanda adalah pembatas yang menjelaskan apakah variabel

keputusannya diasumsikan hanya berharga non negatif atau variabel keputusan

tersebut boleh berharga positif, boleh juga negatif (tidak terbatas dalam tanda).

Dapat ditarik kesimpulan mengenai pengertian pemrograman linier, yaitu

suatu persoalan optimasi dimana kita melakukan hal-hal berikut :

37

• Kita berusaha memaksimalkan atau meminimumkan suatu fungsi linier dari

variabel-variabel keputusan yang disebut fungsi tujuan.

• Harga/besaran dari variabel-variabel keputusan itu harus memenuhi suatu set

pembatas. Setiap pembatas harus merupakan persamaan linier atau

ketidaksamaan linier.

• Suatu pembatas tanda dikaitkan dengan setiap variabel.

2.4.1 Formulasi dan Bentuk Umum Linear Programming

Masalah keputusan yang sering dihadapi adalah alokasi optimum sumber

daya langka/terbatas, yang ditunjukkan sebagai maksimasi keuntungan atau

minimasi biaya. Setelah masalah diidentifikasikan, tujuan/sasaran yang ingin

dicapai ditetapkan, langkah selanjutnya adalah formulasi model matematis yang

meliputi 3 tahap berikut :

1. Menentukan variabel keputusan (unsur-unsur dalam persoalan yang dapat

dikendalikan oleh pengambil keputusan) dan nyatakan dalam simbol

matematis.

2. Membentuk fungsi tujuan yang ditujukan sebagai suatu hubungan linear dari

variabel keputusan.

3. Menentukan semua kendala/batasan masalah tersebut dan ekspresikan dalam

persamaan atau pertidaksamaan yang merupakan hubungan linear dari variabel

keputusan yang mencerminkan keterbatasan sumber daya masalah tersebut.

Untuk memudahkan pembahasan model linear programming, digunakan

simbol-simbol berikut :

38

Xj = Banyaknya kegiatan j, (j = 1,2,...n), berarti terdapat n variabel keputusan

Z = Nilai fungsi tujuan

Cj = Sumbangan per unit kegiatan j. Pada masalah maksimasi Cj menunjukkan

keuntungan atau penerimaan per unit, pada kasus minimasi Cj

menunjukkan biaya per unit.

bi = Jumlah sumber daya ke i (i = 1,2,...m) yang tersedia untuk dialokasikan e

setiap unit kegiatan, berarti terdapat m jenis sumber daya.

aij = Jumlah sumber daya i yang diperlukan untuk menghasilkan setiap unit

output kegiatan j.

Simbol-simbol tersebut dapat disusun ke dalam tabel berikut :

Tabel 2.1 Tabel Simbol Model Linear Programming

Sumber / kegiatan Pemakaian sumber / unit Kapasitas sumber 1 2 . .

m

a11 a12 ..................... a1n a21 a22 ..................... a2n . . ...................... . . . ...................... .

am1 am2 .................... amn

b1 b2 . .

bm Z / unit banyak kegiatan C1 C2 ...................... Cn

X1 X2 ...................... Xn

Sumber : Tjutju Tarliah Dimyati (2003)

Berdasarkan tabel di atas dapat disusun bentuk umum model linear

programming berikut :

Maksimumkan (minimumkan) ∑=

=n

jij XCZ

1

Dengan kendala ∑=

n

jiij Xa

1

(≤,=,≥) bi untuk semua i (i = 1,2,..m) dan bi≥0,

Xi≥0

39

2.4.2 Asumsi-Asumsi Dasar Linear Programming

Untuk menunjukkan masalah optimasi sebagai model linear programming

(LP), diperlukan beberapa asumsi yang terkandung dalam formulasi LP. Asumsi-

asumsi tersebut adalah :

a. Proportionality

Asumsi ini menyatakan bahwa naik turunnya nilai Z dan penggunaan sumber

atau fasilitas, akan berubah secara proporsional dengan perubahan tingkat

kegiatan. Misal : Z = C1X1 + C2X2 + .... + CnXn setiap

pertambahan/pengurangan 1 unit X1 akan menaikkan/menurunkan nilai Z

dengan C1, demikian juga untuk yang lain mempunyai sifat yang sama.

b. Additivity

Asumsi ini menyatakan bahwa nilai fungsi tujuan setiap kegiatan tidak saling

mempengaruhi, atau dalam LP dianggap bahwa kenaikan nilai fungsi tujuan

(Z) yang diakibatkan oleh kenaikan suatu kegiatan dapat ditambahkan tanpa

mempengaruhi bagian nilai Z yang diperoleh dari kegiatan lain atau dapat

dikatakan bahwa tidak ada korelasi antara satu kegiatan dengan kegiatan lain.

c. Disibility

Asumsi ini menyatakan bahwa nilai keluaran (output) yang dihasilkan oleh

setiap kegiatan dapat berupa bilangan pecahan.

d. Deterministic (Certainty)

Asumsi ini menyatakan bahwa semua parameter yang terdapat dalam model LP

(aij,bi,Cj) dapat diperkirakan dengan pasti. Dalam kenyataannya, parameter

model jarang bersifat deterministic, karena keadaan masa depan jarang

diketahui dengan pasti. Untuk mengatasi ketidakpastian parameter,

40

dikembangkan suatu teknik analisis sensitivitas, guna menguji nilai solusi,

bagaimana kepekaannya terhadap perubahan-perubahan parameter.

2.4.3 Metode Simpleks

Metode simpleks merupakan salah satu metode dalam pemrograman linier

yang umum digunakan untuk menentukan hasil yang optimal bagi permasalahan

yang memiliki tiga variabel atau lebih. Masalah pemrograman linier yang hanya

mengandung dua variabel dapat diselesaikan dengan metode grafik. Tetapi apabila

masalah tersebut mengandung lebih dari dua variabel maka metode grafik akan

sangat sulit untuk diterapkan sehingga diperlukan penggunaan metode simpleks.

Metode simpleks dikembangkan pertama kali oleh George Dantzig tahun

1947. Metode ini menyelesaikan masalah LP melalui tahapan (perhitungan ulang)

dimana langkah-langkah perhitungan yang sama diulang sampai tercapai solusi

optimal. Langkah-langkah penyelesaian masalah penyelesaian LP dalam bentuk

standar dengan menggunakan metode simpleks adalah sebagai berikut :

• Langkah 1 : Merubah fungsi tujuan dan fungsi kendala

Fungsi tujuan dirubah menjadi bentuk implisit dengan jalan menggeser semua

CjXj ke kiri.

Z = C1X1 + C2X2 + ... + CnXn diubah menjadi

Z – C1X1 – C2X2 – ... – CnXn = 0

Pada bentuk standar, semua fungsi kendala mempunyai tanda ≤.

Pertidaksamaan fungsi kendala selain kendala nonnegatif dirubah menjadi

bentuk persamaan dengan menambahkan variabel slack, yaitu suatu variabel

yang mewakili tingkat pengangguran, kapasitas yang merupakan batasan. Oleh

41

karena variabel yang ada diwakili oleh X1, X2, ....., Xn maka variabel slack ini

diwakili oleh S1, S2, ..., Sm.

a11X1 + a12X2 + a13X3 + ... + a1nXn ≤ h1

a21X1 + a22X2 + a23X3 + ... + a2nXn ≤ h2

.

.

am1X1 + am2X2 + am3X3 + ... + amnXn ≤ hm

diubah menjadi

a11X1 + a12X2 + a13X3 + ... + a1nXn + S1 = h1

a21X1 + a22X2 + a23X3 + ... + a2nXn + S2 = h2

.

.

am1X1 + am2X2 + am3X3 + ... + amnXn + S1 = hm

• Langkah 2 : Mentabulasikan persamaan-persamaan yang diperoleh pada

langkah 1

Tabel 2.2 Bentuk Umum Tabel Simpleks Awal

Basis Z X1 X2 . . Xn S1 S2 . . Sm Solusi Z S1 S2 . .

Sm

1 0 0 . . 0

-C1 -C2 . . -C2 0 0 . . 0 a11 a12 . . a1n 1 0 . . 0 a21 a22 . . a2n 0 1 . . 0 . . . . . . . . . . . . . . . . . . . . am1 am2 . . amn 0 1 . . 0

0 b1 b2 . .

bm

Kolom basis menunjukkan variabel yang sedang menjadi basis, yaitu S1, S2, Sn

yang nilainya ditunjukkan oleh kolom solusi. Secara tidak langsung ini

42

menunjukkan bahwa variabel non basis (X1, X2, ..., Xn) sama dengan nol,

karena belum ada kegiatan sedangkan kapasitasnya masih menganggur yang

ditunjukkan oleh nilai S1, S2, ..., Sn.

• Langkah 3 : Menentukan entering variable

Entering variable (kolom kunci) adalah kolom yang merupakan dasar untuk

mengubah nilai tabel. Pilih kolom pada baris fungsi tujuan yang mempunyai

nilai negatif dengan angka terbesar. Jika pada baris fungsi tujuan terdapat lebih

dari satu kolom yang mempunyai nilai negatif yang angkanya terbesar pilihlah

salah satu secara sembarang. Jika tidak ditemukan nilai negatif, berarti solusi

sudah optimal. Sebaliknya untuk kasus minimasi, pilih kolom pada baris fungsi

tujuan yang nilainya positif terbesar. Jika tidak ditemukan nilai positif berarti

solusi telah optimal.

• Langkah 4 : Menentukan leaving variable

Leaving variable (baris kunci) dipilih dari rasio yang nilainya positif terkecil.

Rasio diperoleh dengan cara membagi nilai solusi dengan koefisien pada

entering variable yang sebaris.

Rasio = aEnteringnyKolomKoefisien

SolusiNilai

Jika terdapat lebih dari satu baris yang mempunyai rasio terkecil maka pilih

salah satu secara sembarang. Jika tidak ada elemen yang nilainya positif dalam

kolom kunci maka persoalan tidak memiliki pemecahan. Kolom pada entering

variable dinamakan entering column dan baris yang berhubungan dengan

leaving variable dinamakan persamaan pivot. Elemen pada perpotongan

entering column dan persamaan pivot dinamakan elemen pivot.

43

• Langkah 5 : Menentukan persamaan pivot baru

Persamaan pivot baru = persamaan pivot lama : elemen pivot

Gantilah nilai basis persamaan pivot baru dengan nama entering variablenya.

• Langkah 6 : Tentukan persamaan-persamaan baru selain persamaan pivot baru

Persamaan baru = (persamaan lama) – (koefisien kolom entering x persamaan

pivot baru)

• Langkah 7 : Lanjutkan perbaikan-perbaikan.

Lakukan langkah perbaikan dengan cara mengulang langkah 3 sampai langkah

6 hingga diperoleh hasil optimal. Iterasi baru berhenti setelah pada baris fungsi

tujuan sudah tidak ada yang bernilai negatif. Solusi yang dihasilkan adalah

nilai-nilai yang terletak pada kolom solusi. Apabila dalam proses terjadi

keadaan dimana nilai-nilai pada baris fungsi tujuan bertambah secara tak

terbatas, maka iterasi tidak perlu dilanjutkan, cukup disebutkan bahwa

kenaikan nilai Z tidak terbatas.

Dalam beberapa kasus, terdapat penyimpangan-penyimpangan dari

persoalan dengan formulasi standar biasa yang bisa diselesaikan dengan metode

simpleks. Penyimpangan tersebut dapat berupa tanda (=), kendala bertanda (≥) atau

bi negatif. Ada 4 cara formulasi yaitu :

1. Apabila fungsi kendala bertanda ≤, tambahkan variabel slack.

2. Apabila fungsi kendala bertanda =, tambahkan variabel arifisial.

3. Apabila fungsi kendala bertanda ≥, kurangi dengan variabel slack dan

tambahkan variabel artifisial.

44

4. Apabila nilai kanan fungsi kendala adalah negatif, maka harus diubah positif

(kalikan -1) dan sesuaikan dengan ketiga point di atas.

Penyelesaian dengan variabel artifisial dapat dilakukan dengan 2 teknik

yaitu teknik M dan teknik 2 fase.

2.4.3.1 Teknik M

Pada teknik ini, setiap variabel artifisial dalam fungsi tujuan diberikan

penalty M (M bilangan positif yang sangat besar). Penalty bertanda negatif (-)

apabila fungsi tujuan maksimasi dan positif (+) apabila fungsi tujuan minimasi.

Contoh :

Minimumkan : Z = 7X1 + 3X2 + 0S1 + 0S2 + MR1 + MR2

Dengan kendala : 4X1 + 6X2 + S1 = 36

7X1 + 5X2 + R1 = 35

8X1 + 4X2 - S1 + R2 = 36

X1,X2,S1,S2,R1,R2 ≥ 0

Untuk memasukkan model dalam tabel, terlebih dahulu substitusikan R1 dan R2.

R1 = 35 – 7X1 – 5X2

R2 = 32 – 8X1 – 4X2 + S2, kemudian masukkan ke dalam persamaan Z

Z = 7X1 + 3X2 + M (35 – 7X1 – 5X2) + M (32 – 8X1 – 4X2 + S2)

= (7 – 15M)X1 – (3 – 9M)X2 + S2M + 67M

Z – (7 – 15M)X1 – (3 – 9M)X2 – S2M = 67M

Kemudian lakukan langkah-langkah penyelesaian dengan metode simpleks.

45

2.4.3.2 Teknik 2 Fase

Teknik 2 fase terdiri dari dua fase pengerjaan, yaitu :

• Fase 1 : Pada fase ini fungsi tujuan semula diganti dengan meminimumkan

jumlah variable artifisialnya dan diuji apakah persoalan yang dihadapi

memiliki solusi fisibel atau tidak. Jika nilai minimum fungsi tujuan baru ini

berharga nol (seluruh variabel artificial berharga nol), berarti persoalan

memiliki solusi fisibel, lanjutkan ke fase 2. Tetapi jika nilai minimum fungsi

tujuan baru ini berharga positif, maka persoalan tidak memiliki solusi fsibel.

STOP.

• Fase 2 : Gunakan solusi basis optimum pada fase1 sebagai solusi awal bagi

persoalan sebenarnya. Dalam hal ini ubahlah bentuk fungsi tujuan pada fase

1 dengan mengembalikannya pada fungsi tujuan persoalan sebenarnya dan

fungsi batasan diperoleh dari tabel optimal fase 1 tanpa memasukkan variabel

R nya.

2.4.4 Metode Dual Simpleks

Prosedur perhitungan pada metode simpleks berkisar dari solusi dasar

fisibel yang belum optimal menuju ke solusi fisibel yang optimal. Apakah proses

tersebut akhirnya mencapai solusi fisibel optimal adalah tergantung pada

kemampuan untuk mendapatkan suatu solusi dasar awal yang fisibel. Dalam kaitan

ini, variabel artifisial dapat digunakan untuk menemukan solusi awal fisibel. Jika

formulasi LP mengandung banyak variabel artificial, akan membutuhkan banyak

perhitungan untuk memperoleh solusi awal fisibel.

46

Untuk menghindari hal tersebut dapat digunakan suatu prosedur yang

disebut metode dual simpleks. Metode ini pada awalnya memiliki solusi yang tidak

fisibel tetapi melalui iterasi akan diperoleh suatu solusi fisibel optimal. Pada

dasarnya metode dual simpleks menggunakan tabel yang sama seperti metode

simpleks primal, tetapi leaving variable dan entering variablenya ditentukan

sebagai berikut :

a. Leaving variable (feasibility condition)

Leaving variable adalah variabel basis yang memiliki harga negatif terbesar.

Jika semua variabel basis telah berharga positif atau nol, berarti keadaan fisibel

telah tercapai.

b. Entering variable (optimality condition)

Tentukan rasio antara koefisien persamaan Z dengan koefisien persamaan

leaving variabel. Abaikan penyebut yang positif atau nol. Jika semua penyebut

berhara positif atau nol, berarti persoalan yang bersangkutan tidak memiliki

solusi fisibel. Untuk persoalan minimasi, entering variable adalah variabel

dengan rasio terkecil, sedangkan untuk persoalan maksimasi entering variable

adalah variabel dengan rasio absolut terkecil.

2.4.5 Pemrograman Linier Integer

Salah satu asumsi teknik LP adalah divisibility atau fractionality. Dengan

kata lain, setiap variabel model dapat terjadi pada semua nilai non negatif, suatu

nilai solusi yang kontinu. Dalam situasi keputusan tertentu, asumsi ini tidak

realistik dan tak dapat diterima. Integer Linear Programming adalah suatu LP

47

dengan tambahan persyaratan bahwa semua atau beberapa variabel bernilai bulat

non negatif, tetapi tidak perlu bahwa parameter model juga bernilai bulat.

Dalam masalah integer linear programming, jika model mengharapkan

semua variabel basis bernilai integer (bulat positif atau nol), dinamakan pure

integer programming. Jika model hanya mengharapkan variabel-variabel tertentu

bernilai integer, dinamakan mixed integer programming. Jika model hanya

mengharapkan nilai nol atau satu untuk variabelnya, dinamakan zero one integer

programming.

2.4.5.1 Algoritma Branch and Bound

Algoritma branch and bound dimulai dengan melonggarkan ruang

pemecahan dari masalah integer LP. Jika nilai variabel adalah integer, solusi ini

juga merupakan solusi dari permasalahan integer. Jika variabel tidak bernilai

integer, daerah fisibel dibagi dengan menambahkan batasan dari nilai variabel

yang belum integer. Hasil pembagian daerah fisibel ini dibuat dalam submasalah

yang akan diselesaikan. Batasan nilai dari fungsi tujuan ditemukan dan

digunakan untuk membantu menemukan submasalah yang mana yang bisa

dieliminasi dari pertimbangan dan kapan solusi optimal ditemukan. Jika solusi

submasalah tidak memberikan solusi optimal, submasalah baru dipilih dan

percabangan berlanjut (Render et al., 2003, p450).

6 langkah dalam menyelesaikan masalah maksimasi integer

programming dengan branch and bound menurut Render et al.(2003, p450)

adalah sebagai berikut :

48

1. Selesaikan masalah awal dengan LP. Jika hasilnya memenuhi batasan

integer, selesai. Jika tidak, nilai ini memberikan batas atas awal.

2. Temukan semua solusi fisibel yang memenuhi batasan integer untuk

digunakan seabagai batas bawah. Biasanya, pembulatan ke bawah setiap

variabel akan memenuhi point ini.

3. Buat cabang dari salah satu variabel yang tidak memiliki nilai integer. Bagi

masalah menjadi 2 submasalah berdasarkan nilai integer yang diperoleh dari

pembulatan ke atas dan ke bawah dari nilai non integer. Contohnya : jika X2

= 3,75 adalah solusi akhir LP, buat batasan X2 ≥ 4 dalam submasalah pertama

dan X2 ≤ 3 pada submasalah kedua.

4. Buat node pada percabangan baru ini dengan memecahkan masalah baru.

5.

• Jika cabang menghasilkan solusi masalah LP yang tidak fisibel, akhiri

cabang ini.

• Jika cabang menghasilkan solusi masalah LP yang fisibel, tetapi bukan

solusi integer, lanjutkan ke langkah 6.

• Jika cabang menghasilkan solusi integer yang fisibel, periksa nilai fungsi

tujuan. Jika nilai ini sama dengan batas atas, solusi optimal telah dicapai.

Jika tidak sama dengan batas atas, tetapi melebih batas bawah, jadikan

nilai ini menjadi batas bawah baru dan lanjutkan ke langkah 6. Jika nilai

ini lebih kecil dari batas bawah, akhiri cabang ini.

49

6. Periksa kedua cabang lagi dan tentukan batas atas sesuai dengan nilai

maksimum dari fungsi tujuan dari semua node akhir. Jika batas atas sama

dengan batas bawah, berhenti. Jika tidak kembali ke langkah 3.

2.4.5.2 Algoritma Cutting Plane

Sesuai dengan namanya, algoritma cutting plane (algoritma bidang

pemotong) memotong, mengiris atau membuang daerah layak yang tidak

diperlukan yang menyebabkan solusinya tidak bulat. Dalam penyelesaiannya

algoritma ini menambahkan satu fungsi kendala baru dalam setiap iterasinya.

Terdapat beberapa jenis algoritma bidang pemotong, seperti misalnya

algoritma fraksional murni dan algoritma campuran. Metode pemotongan baru

terus dikembangkan tetapi tidak satupun yang dipandang secara seragam baik

dari segi perhitungan. Pengalaman telah menunjukkan bahwa beberapa masalah

yang kecil tidak dapat dipecahkan oleh metode pemotongan. Pada kenyataannya

dilaporkan beberapa kasus dimana peubah acak dalam urutan batasan telah

membuat sebuah masalah yang mudah dari segi perhitungan menjadi sebuah

masalah yang rumit (Taha, 1996, p342).

Kesimpulan dari metode pemotongan adalah metode ini tidak dapat

digunakan secara efektif untuk memecahkan masalah integer umum, tetapi

beberapa gagasan dari metode ini dapat dan telah dipinjam untuk meningkatkan

efektivitas jenis-jenis teknik pemecahan lainnya. Jadi bila terdapat pilihan antara

metode pemotongan dan metode branch and bound maka metode branch and

bound umumnya terbukti lebih baik (Taha, 1996, p332).

50

2.5 Analisa Sensitivitas

Menurut Mulyono (Mulyono, 2002, p79) seorang analis jarang dapat

menentukan parameter model LP seperti (cj,bi,aij,) dengan pasti karena nilai

parameter ini adalah fungsi dari beberapa uncontrolable variable. Misalnya,

permintaan masa depan, biaya bahan mentah, dan harga energi sebagai sumber daya

tak dapat diperkirakan dengan tepat sebelum masalah diselesaikan. Sementara itu

solusi optimum model LP didasarkan pada parameter ini. Akibatnya analis perlu

mengamati pengaruh perubahan parameter terhadap solusi optimum. Analisis

perubahan parameter dan pengaruhnya terhadap solusi LP dinamakan post optimality

analysis. Istilah post optimality menunjukkan bahwa analisis ini terjadi setelah

diperoleh solusi optimum, dengan mengasumsikan seperangkat nilai parameter yang

digunakan dalam model.

Perubahan atau variasi dalam suatu masalah LP yang biasanya dipelajari

melalui post optimality analyisis dapat dipisahkan ke dalam tiga kelompok umum :

a) Analisa yang berkaitan dengan perubahan diskrit parameter untuk melihat berapa

besar perubahan dapat ditolerir sebelum solusi optimum mulai kehilangan

optimalitasnya, ini dinamakan Analisis Sensitivitas. Jika suatu perubahan kecil

dalam parameter menyebabkan perubahan drastis dalam solusi, dikatakan bahwa

solusi adalah sangat sensitif terhadap nilai parameter itu. Sebaliknya, jika

perubahan parameter tidak mempunyai pengaruh besar terhadap solusi dikatakan

solusi relatif insensitif terhadap nilai parameter itu.

b) Analisa yang berkaitan dengan perubahan struktural. Masalah ini muncul bila

masalah LP dirumuskan kembali dengan menambahkan atau menghilangkan

kendala dan atau variabel untuk menunjukkan operasi model alternatif.

51

c) Analisa yang berkaitan dengan perubahan kontinu parameter untuk menentukan

urutan solusi dasar yang menjadi optimum jika perubahan ditambah lebih jauh,

ini dinamakan Parametric Programming.

Dalam membicarakan analisa sensitivitas, perubahan-perubahan parameter

dikelompokkan menjadi :

• Perubahan koefisien fungsi tujuan

• Perbahan konstan sisi kanan

• Perubahan kendala

• Penambahan variabel baru

• Penambahan kendala baru

2.6 Sistem Informasi

2.6.1 Pengertian Sistem

Menurut pendapat McLeod (2001, p11), sistem adalah sekelompok elemen-

elemen yang terintegrasi dengan maksud yang sama untuk mencapai suatu tujuan

tertentu. Suatu organisasi seperti perusahaan atau suatu bidang fungsional cocok

dengan definisi ini. Organisasi terdiri dari sejumlah sumber daya seperti manusia,

material, uang, mesin, dan informasi dimana sumber daya tersebut bekerja menuju

tercapainya suatu tujuan yang ditentukan oleh pemilik atau manajemen.

52

2.6.2 Pengertian Informasi

Berdasarkan pendapat McLeod (2001, p15), informasi adalah data, yang

telah diproses, atau data yang memiliki arti. Terdapat empat dimensi informasi

menurut McLeod (2001, p145), yaitu :

• Relevansi

Informasi memiliki relevansi jika berkaitan langsung dengan masalah yang

ada. Manajer harus mampu memilih informasi yang diperlukan tanpa membaca

seluruh informasi mengenai subyek lain.

• Akurasi

Idealnya, semua informasi harus akurat tetapi peningkatan ketelitian sistem

menambah biaya. Karena alasan tersebut, manajer terpaksa menerima ketelitian

yang kurang dari sempurna.

• Ketepatan Waktu

Informasi harus dapat tersedia untuk memecahkan masalah sebelum situasi

krisis menjadi tidak terkendali atau kesempatan menghilang. Manajer harus

mampu memperoleh informasi yang menggambarkan apa yang sedang terjadi

sekarang, selain apa yang telah terjadi di masa lampau.

• Kelengkapan

Manajer harus dapat memperoleh informasi yang memberi gambaran lenkap

dari suatu permasalahan atau penyelesaian. Namun pemberian informasi yang

tidak berguna secara berlebihan harus dihindari.

53

2.6.3 Pengertian Sistem Informasi

Menurut O’Brien (2005, p5) sistem informasi dapat merupakan kombinasi

teratur apapun dari orang-orang, hardware, software, jaringan komunikasi, dan

sumber daya data yang mengumpulkan, mengubah, dan menyebarkan informasi

dalam sebuah organisasi. Orang bergantung pada sistem informasi untuk

berkomunikasi antara satu sama lain dengan menggunakan berbagai jenis alat fisik

(hardware), perintah dan prosedur pemrosesan informasi (software), saluran

komunikasi (jaringan), dan data yang disimpan (sumber daya data).

2.6.4 Pengertian Sistem Informasi Manajemen

Sistem informasi manajemen bertujuan untuk memenuhi kebutuhan

informasi umum untuk manajer dalam perusahaan atau dalam subunit fungsional

perusahaan. Subunit dapat didasarkan pada area fungsioanl atau tingkatan

manajemen. Sistem informasi manajemen menyediakan informasi bagi pemakai

dalam bentuk laporan dan keluaran dari berbagai simulasi model matematika,

dimana model laporan ataupun keluaran dapat disajikan dalam bentuk tabel atau

grafik (McLeod, 2001, p326).

Berdasarkan pendapat McLeod (2001, p327) sistem informasi manajemen

dapat didefinisikan sebagai suatu sistem berbasis komputer yang menyediakan

informasi bagi beberapa pemakai dengan kebutuhan yang serupa. Para pemakai

biasanya membentuk suatu entitas organisasi formal (perusahaan atau subunit di

bawahnya). Informasi menjelaskan perusahaan atau salah satu sistem utamanya

mengenai apa yang telah terjadi di masa lalu, apa yang sedang terjadi sekarang dan

apa yang mungkin terjadi di masa depan. Informasi tersebut tersedia dalam bentuk

54

laporan periodik, laporan khusus, dan keluaran dari simulasi matematika. Keluaran

informasi tersebutlah yang akan digunakan oleh manajer maupun non-manajer

dalam perusahaan saat mereka membuat keputusan untuk memecahkan masalah.

2.6.5 Pengertian Analisa dan Perancangan Sistem

Menurut McLeod (2001, p234) analisa sistem adalah penelitian atas sistem

yang telah ada dengan tujuan untuk merancang sistem yang baru atau diperbaiki.

Jadi dapat disimpulkan bahwa analisa sistem adalah penelitian sistem yang ada

dengan tujuan penyempurnaan sistem yang dapat dimanfaatkan oleh pengguna

sistem. Sedangkan menurut Cushing (1991, p327), analisa sistem dapat

didefinisikan sebagai proses penyelidikan kebutuhan informasi pemakai di dalam

suatu organisasi agar dapat menetapkan tujuan dan spesifikasi untuk desain suatu

sistem informasi.

Menurut Mulyadi (1993, p51) perancangan sistem adalah proses

penerjemahan kebutuan pemakai ke dalam alternatif rancangan sistem informasi

yang diajukan kepada pemakai informasi untuk dipertimbangkan. Sedangkan

menurut Cushing (1991, p348) perancangan sistem adalah proses penyiapan

spesifikasi yang terperinci untuk pengembangan suatu sistem baru. Dari definisi di

atas, perancangan sistem dapat disimpulkan suatu proses penyiapan spesifikasi

dalam menterjemahkan kebutuhan pemakai dalam pengembangan sistem baru.

55

2.7 Analisa dan Perancangan Sistem Informasi Berorientasi Objek

2.7.1 Pengertian Objek

Paradigma dari konsep berorientasi objek merupakan strategi

pengembangan yang berdasarkan pada konsep bahwa sistem seharusnya dibangun

dari kumpulan komponen yang reusable (dapat digunakan kembali) yang

dinamakan objek. Objek meliputi pemisahan data dan fungsi yang sama dengan

yang dilakukan dalam konsep terstruktur. Walaupun konsep berorientasi objek

mirip dengan konsep terstruktur, tetapi sebenarnya berbeda.

Objek mempunyai arti kombinasi dari data dan logik yang mewakilkan

entitas dari kenyataan. Objek merepresentasikan sebuah entitas, baik secara fisik,

konsep ataupun secara perangkat lunak. Definisi yang formal dari objek adalah

sebuah konsep, abstraksi atau sesuatu yang diberi batasan jelas dan dimaksudkan

untuk sebuah aplikasi.

Menurut Mathiassen et al. (2000, p4) objek merupakan suatu entitas dengan

identitas, state (keadaan) dan behavior (kelakuan). Keadaan dari objek adalah satu

dari kondisi yang memungkinkan dimana objek dapat muncul, dan dapat secara

normal berubah berdasarkan waktu. Keadaan dari objek biasanya

diimplementasikan dengan kelompok propertinya (disebut atribut), berisi nilai dari

properti tersebut, ditambah keterhubungan objek yang mungkin dengan objek

lainnya. Kelakuan menentukan bagaimana sebuah objek beraksi dan bereaksi

terhadap permintaan dari objek lainnnya. Direpresentasikan dengan kelompok

pesan yang direspon oleh objek (operasi yang dilakukan oleh objek). Kelakuan dari

objek mendeskripsikan segala sesuatu yang dapat kita lakukan terhadap objek

tersebut dan segala sesuatu yang dapat dilakukan oleh objek untuk kita.

56

Setiap objek mempunyai identitas yang unik. Identitas yang unik ini

membuat kita dapat membedakan dua objek yang berbeda, walaupun kedua objek

tersebut mempunyai keadaan dan nilai yang sama pada atributnya.

2.7.2 Kaitan Analisis dan Perancangan dengan Orientasi Objek

Untuk merancang suatu aplikasi piranti lunak, pada tahap awal diperlukan

deskripsi dari permasalahan dan spesifikasi aplikasi yang dibutuhkan. Apa saja

persoalan yang ada dan apa yang harus dilakukan sistem.

Penekanan analisis adalah pada proses investigasi atas permasalahan yang

dihadapi tanpa memikirkan definisi solusi terlebih dahulu. Jadi dalam tahap

analisa, dikumpulkan informasi mengenai permasalahan, spesifikasi sistem

berjalan, serta spesifikasi sistem yang diinginkan. Sedangkan penekanan dalam

desain adalah pada logika solusi dan bagaimana memenuhi spesifikasi yang

dibutuhkan serta konstrain atau batasan yang ada.

Inti dari analisis dan perancangan berorientasi objek adalah untuk

menekankan pertimbangan atas domain permasalahan beserta solusinya dari sudut

pandang objek. Tahap analisis berorientasi objek lebih ditekankan untuk mencari

dan mendfinisikan objek atau konsep yang ada dalam domain permasalahan.

Contohnya dalam membangun aplikasi perpustakaan, analisis bertujuan

mendapatkan penjabaran objek seperti buku, petugas perpustakaan, dan

sebagainya. Tahap perancangan berorientasi objek, penekanan terletak pada

bagaimana mendefinisikan objek-objek logik dalam aplikasi yang akan

diimplementasikan ke dalam bahasa pemrograman berorientasi objek seperti C++,

Smaltalk, Java, atau Visual Basic (Larman, 1998, p6)

57

2.7.3 Konsep Analisis dan Perancangan Berorientasi Objek

Tiga buah konsep atau teknik dasar dalam analisis dan perancangan

berorientasi objek yaitu :

1. Pembungkusan (Encapsulation)

Encapsulation dalam bahasa pemrograman berorentasi objek secara sederhana

berarti pengelompokan data dan fungsi (yang disebut sebagai metode). Secara

tradisional, data dan fungsi dalam sebuah program adalah independen. Seperti

dalam pemrograman modular dan abstraksi data, pemrograman berorientasi

objek mengelompokkan data dengan fungsi yang beroperasi pada data tersebut.

Setiap objek kemudian mempunyai sebuah set data dan set fungsi secara logik.

2. Pewarisan (Inheritance)

Dalam object oriented programming kita dapat menciptakan objek baru yang

diturunkan dari objek lain. Objek baru ini sering disebut dengan objek turunan

(derived class) sedangkan objek induknya sering disebut dengan base class.

Sifat yang terkandung pada objek turunan adalah sifat hasil pewarisan dari

sifat-sifat yang terdapat pada objek induk. Jadi kita dapat membuat objek baru

yang memiliki kemampuan lebih dibanding dengan objek induknya dengan

menambahkan sifat baru ke dalam objek tersebut.

3. Polimorfisme (Polymorphism)

Polymorphism adalah kemampuan dari tipe objek yang berbeda untuk

menyediakan atribut dan operasi yang sama dalam hal yang berbeda.

Polimorphism adalah hasil natural dari fakta bahwa objek dari tipe yang

berbeda (bahkan dari subtipe yang berbeda) dapat menggunakan properti dan

operasi yang sama dalam hal yang berbeda.

58

2.8 Unified Modelling Language (UML)

2.8.1 Diagram UML

Menurut Roff (2003, p11-13), UML bisa dibagi dalam dua bagian utama,

yaitu :

1. Structural Diagram

Class diagram dan implementation diagram termasuk dalam bagian ini.

Dengan dua kategori ini, kita bisa menemukan empat tipe spesifik dari diagram

yaitu :

• Class dan object diagram

• Component dan deployment diagram

2. Behavioral Diagram

Behavioral diagram digunakan untuk menunjukkan bagaimana aliran proses

antara komponen, kelas, pengguna dan sistem. Ada lima behavioral diagram

dalam UML, yaitu :

• Use case diagram

• Activity diagram

• Sequence diagram

• Collaboration diagram

• Statechart diagram

Terdapat tiga buah diagram inti yang paling sering digunakan untuk

membangun sistem yaitu use case diagram (untuk menggambarkan kebutuhan

pengguna sistem), sequence diagram (untuk menganalisis setiap use case dan

memetakannya ke dalam class), dan class diagram (untuk menentukan struktur

59

berorientasi objek). Ketiga diagram ini akan dapat meng-cover 80% dari

kebutuhan pemodelan objek ketika membangun aplikasi bisnis dengan teknologi

objek (Ambler, 2002, online).

Menurut Booch (1999, p99-100), jika ingin memodelkan suatu aplikasi

yang sederhana yang akan dijalankan pada sebuah mesin tunggal, maka diagram

yang dapat digunakan adalah use case diagram, class diagram (untuk pemodelan

struktural), dan interaction diagram (untuk pemodelan behavioral). Jika

pemodelan difokuskan juga pada aliran proses, maka dapat menambahkan

statechart diagram dan activity diagram yang dapat menggambarkan tingkah laku

dari sistem. Sedangkan jika sistem itu terdapat client atau server, maka diagram

yang diperlukan untuk menggambarkan sistem adalah use case diagram, activity

diagram, class diagram, interaction diagram, statechart diagram, component

diagram, dan deployment diagram.

2.8.1.1 Class dan Object Diagram

Menurut Mathiassen et al. (2000, p53) class diagram merupakan

deskripsi dari kumpulan obyek yang saling berbagi struktur, pola tingkah laku

dan atribut. Class diagram digunakan untuk merepresentasikan bagian-bagian

pokok yang berbeda (kelas), hubungan mereka satu sama lain dan dalam

subsistem mana kelas itu berada. Class diagram termasuk atribut dan operasi dan

juga berbagai tipe tugas/peran dan asosiasi (Roff, 2003, p11).

Atribut adalah nama-nama properti dari sebuah kelas yang menjelaskan

batasan nilainya dari properti yang dimiliki oleh sebuah kelas tersebut. Atribut

60

dari suatu kelas merepresentasikan properti-properti yang dimiliki oleh kelas

tersebut. Atribut mempunyai tipe yang menjelaskan tipe instansiasinya.

Operasi adalah implementasi dari layanan yang dapat diminta dari sebuah

obyek dari sebuah kelas yang menentukan tingkah lakunya. Sebuah operasi dapat

berupa perintah ataupun permintaan. Sebuah permintaan tidak boleh mengubah

kedudukan dari objek tersebut. Hanya perintah yang dapat mengubah keadaan

dari sebuah objek. Keluaran dari sebuah operasi tergantung dari nilai keadaan

terakhir dari sebuah objek.

Hubungan antar kelas terdiri dari :

• Association

Association adalah hubungan antar benda struktural yang terhubung diantara

objek. Kesatuan objek yang terhubung merupakan hubungan khusus, yang

menggambarkan sebuah hubungan struktural diantara seluruh atau sebagian.

Sumber : www.wikipedia.org

Gambar 2.1. Association

• Aggregation

Aggregation atau agregasi adalah hubungan “bagian dari” atau “bagian

keseluruhan”. Suatu class atau objek mungkin memiliki atau bisa dibagi

menjadi class atau objek tertentu, dimana class atau objek yang disebut

kemudian merupakan bagian dari class atau objek yang terdahulu. Agregasi

adalah bentuk khusus dari association.

61

Sumber : www.wikipedia.org

Gambar 2.2. Aggregation

• Composition

Composition adalah strong aggregation. Pada composition, objek “bagian”

tidak dapat berdiri sendiri tanpa objek “keseluruhan”. Jadi mereka terkait

dengan kuat satu dengan lainnya.

Sumber : www.wikipedia.org

Gambar 2.3. Composition

• Generalization

Generalization menggambarkan hubungan khususdalam objek anak/child

yang menggantikan objek parent/induk. Dalam hal ini, objek anak

memberikan pengaruhnya dalam hal struktur dan tingkah lakunya kepada

objek induk.

Sumber : www.wikipedia.org

Gambar 2.4. Generalization

Sedangkan object diagram sangat mirip dengan class diagram, kecuali

kebalikan dari kelas, object diagram menunjukkan objek yang merupakan

instance dari kelas. Objek merupakan sesuatu yang unik dan individual,

sedangkan class lebih umum. Object diagram menggambarkan sekumpulan

62

objek-objek dan hubungannya. Object diagram digunakan untuk

menggambarkan struktur data, static snapshots dari instance dari class diagram.

Object diagram adalah class diagram yang dilihat dari sudut pandang objek.

2.8.1.2 Component dan Deployment Diagram

Component diagram menggambarkan organisasi dan dependensi diantara

sekumpulan komponen-komponen. Component diagram digunakan untuk

mengilustrasikan bagaimana komponen dari sistem berinteraksi satu sama lain.

Sumber : www.wikipedia.org

Gambar 2.5. Component Diagram

Deployment diagram menggambarkan bagaimana komponen akan

bekerja setelah diinstal pada sistem dan bagaimana sistem ini berinteraksi satu

sama lain.

63

Sumber : www.wikipedia.org

Gambar 2.6. Deployment diagram

2.8.1.3 Use Case Diagram

Use case diagram menampilkan sekumpulan use case dan aktor, serta

hubungan diantaranya, dimana dapat menggambarkan fungsionalitas yang

diharapkan dari sebuah sistem. Sebuah use case merepresentasikan sebuah

interaksi antara aktor dengan sistem. Seorang aktor adalah sebuah entitas

manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-

pekerjaan tertentu. Use case diagram dapat sangat membantu bila kita sedang

menyusun kebutuhan sebuah sistem, mengkomunikasikan rancangan dengan

klien, dan merancang test case untuk semua fitur yang ada pada sistem.

64

Sumber : www.wikipedia.org

Gambar 2.7. Contoh use case diagram

2.8.1.4 Activity Diagram

Activity diagram digunakan untuk menganalisa behavior dalam use case

yang lebih kompleks dan menunjukkan interaksinya satu sama lain. Activity

diagram mirip dengan statechart diagram sejauh merepresentasikan aliran data.

Bagaimanapun, activity diagram digunakan untuk memodelkan aliran kerja

bisnis selama desain use case. Activity diagram biasanya digunakan untuk

merepresentasikan aktivitas bisnis yang kompleks, membantu untuk

mengidentifikasi use case atau interaksi antara dan dalam use case (Roff, 2003,

p13).

65

Sumber : www.wikipedia.org

Gambar 2.8. Contoh Activity Diagram

2.8.1.5 Sequence Diagram

Sequence diagram menggambarkan interaksi antar objek di dalam dan di

sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message

yang digambarkan terhadap waktu. Sequence diagram terdiri atas dimensi

vertikal (waktu) dan dimensi horisontal (objek-objek yang terkait). Sequence

diagram biasa digunakan untuk menggambarkan skenario atau rangkaian

langkah-langkah yang dilakukan sebagai respon dari sebuah event untuk

menghasilkan output tertentu. Diawali dari apa yang men-trigger aktivitas

tersebut, proses dan perubahan yang terjadi secara internal dan output apa yang

dihasilkan.

Masing-masing objek, termasuk aktor, memiliki lifeline vertikal. Message

digambarkan sebagai garis berpanah dari satu objek ke objek lainnya, dimana

beberapa message tersebut dapat dipetakan menjadi metode dari class. Activation

bar menunjukkan lamanya eksekusi sebuah proses, biasanya diawali dengan

diterimanya sebuah message.

66

Sumber : www.wikipedia.org

Gambar 2.9. Contoh sequence diagram

2.8.1.6 Statechart Diagram

Statechart diagram menggambarkan transisi dan perubahan keadaan (dari

satu state ke state lainnya) suatu objek pada sistem sebagai akibat dari

rangsangan yang diterima. Pada umumnya statechart diagram menggambarkan

class tertentu (satu class dapat memiliki lebih dari satu statechart diagram).

Diagram ini menekankan pada metode (event) dari objek. Statechart diagram

menampilkan sebuah state machine, yang terdiri dari state, transition, event, dan

activity. Dalam UML, state digambarkan berbentuk segi empat dengan sudut

membulat dan memiliki nama sesuai kondisinya saat itu. Transisi antar state

umumnya memiliki kondisi guard yang merupakan syarat terjadinya transisi

yang bersangkutan, dituliskan dalam kurung siku. Action yang dilakukan sebagai

akibat dari event tertentu dituliskan dengan diawali garis miring. Titik awal dan

akhir digambarkan berbentuk lingkaran berwarna penuh dan berwarna setengah.

67

Sumber : www.wikipedia.org

Gambar 2.10. Contoh Statechart diagram