BAB II LANDASAN TEORITIS

advertisement
12
BAB II
LANDASAN TEORITIS
2.1.
Network Flow Models
2.1.1 Pengertian Network
Menurut Taylor (1999, p408), Network atau jaringan merupakan suatu
bentuk penyusunan dari jalur-jalur yang terhubung pada titik-titik yang bervariasi,
yang dimana melalui jalur-jalur tersebut dapat dialirkan satu atau lebih barang
dari satu titik ke titik lainnya. Penggunaan network dapat menggambarkan suatu
sistem dengan jelas, karena pada umumnya, hampir semua sistem dapat dengan
mudah dimodelkan menggunakan network.
2.1.2 Komponen Network
Network memiliki dua komponen utama, yaitu nodes dan branches.
Nodes menyatakan titik pertemuan pertemuan yang menghubungkan beberapa
branches, sedangkan branches menghubungkan nodes dan memperlihatkan
aliran dari satu titik ke titik lainnya. Biasanya, branches mempunyai suatu nilai /
value yang menunjukkan suatu jarak, waktu, atau biaya.
x
node
value
branch
Gambar 2.1 Komponen Network
2.2.
Manajemen Proyek
2.2.1 Elemen Manajemen Proyek
13
Pada umumnya kegiatan manajemen berfokus pada kegiatan perencanaan,
pengorganisasian, dan pengendalian dari proses yang akan berlangsung seperti
proses produksi atau penghantaran jasa. Manajemen proyek memiliki perbedaan
dari kegiatan manajemen pada umumnya, karena sebuah proyek memiliki
batasan-batasan seperti adanya batasan jumlah bahan baku dan tenaga kerja
untuk suatu kegiatan yang penting, yang dibatasi oleh waktu. Menurut Taylor
(1999, p452), ada 3 elemen utama dalam manajemen proyek, yaitu: tim proyek
(project team), perencanaan proyek (project planning), dan pengendalian proyek
(project control). Pada bagian ini, elemen yang diuraikan lebih detil adalah
elemen perencanaan proyek dan pengendalian proyek.
2.2.1.1
Perencanaan Proyek
Pada tahap perencanaan proyek, walaupun bukan pekerjaan yang
sederhana, semua aktifitas / kegiatan atau langkah-langkah di dalam
proyek harus diidentifikasi selengkap-lengkapnya.
Aktifitas yang
dimaksud disini ialah suatu pekerjaan / usaha individu yang
membutuhkan tenaga kerja, bahan baku / resources, dan waktu, yang
berada dibawah pengendalian manajemen.
Semua aktifitas yang telah diidentifikasi tersebut harus ditentukan
kesalingtergantungannya (precedence relationship), yaitu aktifitas mana
yang dilakukan pertama kali dan aktifitas mana yang mengikuti suatu
aktifitas tertentu. Biasanya, untuk mempermudah penentuannya, maka
hubungan ini dituangkan kedalam tabel ‘immediate predecessors’. Untuk
lebih jelasnya dapat dilihat pada tabel 2.1, yang menunjukkan contoh
kesalingtergantungan dari aktifitas ‘proyek turun mesin’.
Activity
Code
Activity Description
Immediate
Predecessors
14
A
B
C
D
E
Remove and diassemble motor
Clean paint housing
Rewind armature
Replace bearings
Assemble and install motor in housing
A
A
A
B, C, D
Tabel 2.1 Daftar aktifitas dan predecessors ‘proyek turun mesin’
Setelah itu, seluruh kegiatan proyek harus dibuat penjadwalannya,
yang dapat dilakukan dengan cara menentukan perkiraan waktu yang
dibutuhkan oleh setiap kegiatan, sehingga dapat ditentukan waktu
penyelesaian proyek secara keseluruhan.
Penjadwalan proyek yang telah dibuat harus dibandingkan dengan
sasaran akhir dari proyek, yang jika ditemukan bahwa penjadwalan yang
dibuat tidak memungkinkan, maka harus dilakukan usaha-usaha
tambahan, seperti mempersingkat waktu dengan cara menambah mesin
dan tenaga kerja.
2.2.1.2 Pengendalian Proyek
Fokus dari pengendalian proyek yaitu memastikan apa yang telah
direncanakan sebelumnya dapat berjalan pada pelaksanaannya, sesuai
dengan rencana yang telah dibuat.
Dalam kebanyakan kasus, fokus
utamanya yaitu menjaga proyek agar tetap konsisten pada penjadwalan
yang telah dibuat dan memastikan supaya proyek dapat selesai tepat
waktu.
Metodologi yang banyak digunakan adalah metode WBS (Work
Breakdown Structure), dimana sebuah proyek dipecah-pecah menjadi
komponen-komponen yang lebih kecil, dan setiap komponen kecil
tersebut dipecah-pecah lagi menjadi komponen yang lebih detil, dan
15
seterusnya, sehingga pada akhirnya didapatkan daftar aktifitas dan tugastugas individu.
2.2.2 Jaringan Proyek (Project Network)
Dengan menggunakan Network Flow Models, maka pada jaringan proyek,
branches dapat dilihat sebagai suatu aktifitas dari sebuah proyek, sedangkan
nodes dapat dilihat sebagai titik awal dan titik akhir dari suatu aktifitas, yang
sering juga disebut sebagai kejadian / events. Branches yang digunakan disini
adalah directed branches / arrows , dimana tanda panah ini menunjukkan suatu
precedence relationship diantara tiga buah aktifitas. Untuk lebih jelasnya, lihat
gambar 2.2.
1
Activity 1
x months
2
Activity 2
y months
3
Gambar 2.2 Jaringan proyek
Tujuan dibuatnya jaringan proyek ini adalah untuk membantu
perencanaan dan penjadwalan suatu proyek.
2.2.2.1 Concurrent Activities dan Dummy Activities
Concurrent activities merupakan suatu kegiatan yang dapat
berlangsung pada waktu yang bersamaan. Pada umumnya suatu proyek
pasti memilikinya.
Dalam merancang jaringan proyek, untuk menghadapi concurrent
activities ini, seringkali diperlukan apa yang dinamakan dummy activities.
Dummy ini diperlukan karena terdapat aturan dalam membangun jaringan
proyek, yaitu bahwa dua atau lebih aktifitas tidak boleh mempunyai start
dan end nodes yang sama.
Dummy activities ini digunakan untuk
16
menunjukkan precedence relationship, akan tetapi dummy activities
tidak menunjukkan suatu lintasan waktu.
Activity 1
x months
1
2
Activity 2
y months
Gambar 2.3 Concurrent activities
Pada gambar 2.3 diatas, dapat dilihat bahwa aktifitas 1 dengan
aktifitas 2 mempunyai node awal dan akhir yang sama, sehingga untuk
memisahkan node akhirnya, disisipkan sebuah dummy activity yang nilai
waktunya 0, seperti yang dapat dilihat pada gambar 2.4 berikut ini.
2
Activity 1
x months
Dummy
activity
0 month
Activity 2
y months
1
3
Gambar 2.4 Dummy activity
Salah satu contoh logika ketergantungan yang sangat terbantu
dengan adanya dummy activities ini adalah sebagai berikut: aktifitas C
tergantung oleh aktifitas A dan B, dan aktifitas D tergantung oleh aktifitas
B (aktifitas ini berasal dari proyek instalasi mesin). Untuk lebih jelasnya
dapat dilihat pada tabel 2.2.
Tanpa adanya dummy activities, logika
ketergantungan menjadi salah, seperti yang dapat dilihat pada gambar
2.5(a).
17
Dengan memakai dummy activities, maka diperoleh suatu bentuk
logika ketergantungan yang benar.
Seperti network yang ada pada
gambar 2.5(b).
Activity
Code
A
B
C
D
Activity Description
Immediate
Predecessors
A, B
A
Install machine
Hire operator
Train operator
Inspect machine
Tabel 2.2 Aktifitas dan predecessors ‘proyek instalasi mesin’
1
A
C
3
2
B
D
4
6
Gambar 2.5(a) Logika ketergantungan yang salah dari proyek
instalasi mesin
1
4
A
B
2
5
C
D
3
6
Gambar 2.5(b) Logika ketergantungan yang benar dari proyek
instalasi mesin – membutuhkan dummy activity
2.2.2.2 Lintasan Kritis (The Critical Path)
Path dapat diartikan sebagai suatu urutan dari aktifitas yang
dilewati dalam pergerakan dari starting event / node hingga ke ending
event / node dari suatu network (Davis/McKeown/Rakes, 1999, p268).
Selanjutnya, dikatakan bahwa pada setiap network, pasti mempunyai
sekurang-kurangnya dua buah path, yang minimal satu dari path tersebut
18
bersifat kritis. Karena penyelesaian suatu proyek mengharuskan agar
semua path dilewati, maka durasi dari path yang terpanjang (waktu yang
dibutuhkan agar path dapat dilewati semuanya) merupakan lintasan / jalur
kritis (Critical Path).
Sedangkan menurut Taylor (1999, p457), Critical Path atau
lintasan kritis ialah jalur terpanjang yang dilalui di dalam suatu jaringan.
Lintasan kritis juga dapat diartikan sebagai lintasan yang mempunyai
waktu yang paling cepat untuk menyelesaikan suatu jaringan proyek.
Salah satu pendekatan matematis yang digunakan untuk
menemukan lintasan kritis di dalam suatu jaringan proyek, yang sangat
banyak digunakan ialah metode PERT/CPM, yang akan dibahas lebih
mendetil pada bagian selanjutnya.
2.2.2.3 Membangun Jaringan Proyek
Setelah memahami konsep dari Concurrent activities, dummy
activities dan critical path, jaringan proyek dapat dibangun secara akurat.
Berikut ini adalah beberapa aturan dan tips dalam mengembangkan suatu
jaringan proyek secara akurat:
1. Sebelum seluruh aktifitas dapat berjalan, semua aktifitas yang
mendahuluinya (preceding activities) haruslah selesai terlebih
dahulu
2. Garis
panah
hanya
menunjukkan
hubungan
saling
mendahului secara logika saja, baik panjangnya maupun
arahnya tidak mempunyai suatu arti apapun.
3. Setiap daripada garis panah (aktifitas) harus diawali dan
diakhiri dengan sebuah node event.
19
4. Tidak ada dua buah node di dalam jaringan yang
dihubungkan secara langsung oleh lebih dari satu garis panah.
5. Dalam melakukan penomoran pada nodes, sangat dianjurkan
untuk melakukan penomoran dengan kelipatan sepuluh pada
jaringan yang besar, supaya jika terjadi perubahan di waktu
yang akan datang, dapat dengan mudah dilakukan.
6. Seluruh garis panah di dalam jaringan haruslah mempunyai
arah, lebih kurang, dari kiri ke kanan.
7. Perincian dari aktifitas haruslah selengkap-lengkapnya, sesuai
dengan yang dibutuhkan untuk menggambarkan hubungan
logika dan perencanaan dari aktifitas-aktifitasnya.
Salah satu kesalahan yang paling sering terjadi dalam membangun
logika jaringan ini adalah meletakkan suatu aktifitas dalam jaringan
berdasarkan urutan waktu seperti yang biasanya terjadi secara kronologis
(sequential activities), yang seharusnya bisa digambarkan secara paralel
(concurrent activities). Untuk lebih jelasnya dapat dilihat pada gambar
2.6(a) dan 2.6(b) yang menunjukkan contoh diagram “paying bills”
Examine
Bills
1
Make Out
Checks
2
Insert Checks
In Envelopes
3
Address
Envelopes
4
Place
Stamps
5
Mail
6
Gambar 2.6(a) Sequential network diagram untuk ‘paying bills’
7
20
Make Out
Checks
1
Examine
Bills
2
3
Insert Checks In
Envelopes
4
Dummy
Mail
Address Envelopes
Place
Stamps
6
7
Dummy
5
Gambar 2.6(b) Proper network diagram untuk ‘paying bills’
2.3.
Metode PERT/CPM
Diasumsikan para pembaca sudah memahami teknik pengembangan suatu
jaringan proyek, mulai dari penentuan aktifitas proyek secara mendetil, penentuan
logika kesalingtergantungannya, hingga kepada penggunaan dummy activities,
sehingga pada sub-judul ini akan lebih difokuskan pada tinjauan latar belakang
metode PERT/CPM ini dan proses perhitungannya secara matematis.
2.3.1 Latar Belakang PERT/CPM
PERT (Program Evaluation and Review Technique) pertama kali
dikembangkan di tahun 1950 akhir, dan digunakan secara umum untuk mengatur
penelitian militer dan proyek pembangunan. PERT pertama kali diaplikasikan
dalam ‘Polaris missile project’ untuk U.S Navy. Faktanya, PERT dikembangkan
oleh departemen pertahanan secara spesifik untuk mendukung proses
perencanaan, penjadwalan dan pengendalian dari seluruh aktifitas yang
jumlahnya sangat banyak dan bertumpuk, yang terkait pada proyek tersebut.
PERT juga banyak diaplikasikan pada bidang pembangunan, industri,
21
penjadwalan maskapai penerbangan, dan sebagainya. Salah satu fitur utama dari
PERT , sebagai tambahan dari kemampuannya dalam mengidentifikasi
penjadwalan dan perencanaan aktifitas, ialah bahwa PERT dapat menangani
ketidakpastian yang terjadi dalam memperkirakan waktu penyelesaian aktifitas
yang beragam.
Sedangkan CPM (Critical Path Method) dikembangkan terpisah dari
PERT, akan tetapi hubungan keduanya sangatlah erat. Pada dasarnya, CPM
berfokus kepada pertukaran antara biaya proyek dengan waktu penyelesaian
proyek, bukan berfokus kepada ketidakpastian waktu dari suatu aktifitas seperti
yang difokuskan oleh PERT.
Hingga saat ini, PERT dan CPM merupakan dua teknik utama dari
manajemen proyek yang sangat banyak dipakai.
Metode PERT biasanya
digunakan untuk menentukan waktu penyelesaian proyek yang diharapkan secara
keseluruhan dan dapat mengidentifikasi lintasan kritisnya, yang dimana jika tidak
diselesaikan sesuai dengan jadwalnya, akan menunda penyelesaian proyek
tersebut. Sedangkan metode CPM biasanya digunakan untuk mempersingkat
waktu pelaksanaan proyek secara keseluruhan, dengan syarat, pihak manajemen
bersedia untuk mengalokasikan sumber daya lebih banyak pada proyek tersebut.
2.3.2 Algoritma Perhitungan PERT
Urutan langkah-langkah dasar yang digunakan dalam proses perhitungan
PERT adalah sebagai berikut:
1. Identifikasi seluruh tugas / aktifitas yang berhubungan dengan proyek.
2. Identifikasi “immediate predecessor relationship’ untuk seluruh
aktifitas.
22
3. Gambarkan jaringan dasar dari proyek untuk menunjukkan semua
hubungan yang terkait.
4. Perkirakan durasi waktu yang diharapkan dari setiap aktifitas.
5. Dengan Forward Pass, hitung earliest start dan earliest finish time
untuk setiap aktifitas.
6. Dengan waktu penyelesaian proyek yang telah dihitung dengan
forward pass, gunakan backward pass untuk menghitung latest start
dan latest finish time untuk setiap aktifitas.
7. Hitung float / slack time pada setiap aktifitas.
8. Temukan jalur / lintasan kritis dari jaringan proyek tersebut, dimana
jalur kritis adalah jalur yang memuat aktifitas yang mempunyai nilai
slack nol.
2.3.3 Perhitungan Penjadwalan Dasar
Dalam melakukan perhitungan, simbol-simbol yang digunakan didalam
jaringan proyek ini dapat dilihat pada gambar 2.7 berikut ini.
i
Activity
Code
[ESij, Dij, EFij]
(LSij, Fij, LFij)
j
Gambar 2.7 Simbol-simbol yang digunakan di dalam jaringan
Arti dari simbol-simbol diatas, yang akan dipergunakan dalam proses
perhitungan dan analisis dari metode PERT ialah:
ESij = early start time
EFij = early finish time
LSij = latest finish time
LFij = latest finish time
23
Dij = expected activity time
Fij = float / slack time
2.3.3.1 Forward Pass
Forward pass pada dasarnya adalah kegiatan yang melakukan
perhitungan waktu tercepat untuk dimulainya dan berakhirnya suatu
aktifitas, sehingga dapat ditentukan waktu yang dibutuhkan untuk
selesainya sebuah proyek.
Early start time untuk sebuah aktifitas adalah waktu tercepat yang
mungkin bagi suatu aktifitas untuk dimulai, yang dilambangkan dengan
ESij, dimana i dan j melambangkan node awal dan node akhir yang
berhubungan dengan aktifitas tersebut. Sedangkan early finish time untuk
sebuah aktifitas merupakan early start time ditambahkan dengan durasi
waktu yang diperlukan untuk menyelesaikan aktifitas tersebut (duration
time), yang dilambangkan dengan EFij = ESij + Dij.
Beberapa aturan yang digunakan pada forward pass ini ialah:
1. Semua aktifitas yang tidak mempunyai aktifitas pendahulu,
diasumsikan dapat dimulai dengan segera, sehingga nilai ESij =
0.
2. Jika ada beberapa aktifitas yang ada mendahului sebuah aktifitas,
maka earliest start time untuk aktifitas tersebut adalah nilai
terbesar dari earliest finish time dari seluruh aktifitas pendahulu.
Aturan ini dapat dituliskan secara matematis sebagai: ESij =
maximum(EFk1.i, EFk2.i, …, EFkn.i).
2.3.3.2 Backward Pass
24
Backward pass pada dasarnya adalah kegiatan yang melakukan
perhitungan waktu paling lambat untuk dimulainya dan berakhirnya suatu
proyek.
Backward pass ini digunakan untuk memberikan jawaban
kepada pertanyaan: Seberapa banyak – jika memungkinkan – suatu
aktifitas dapat terlambat, tanpa memperpanjang waktu proyek?
Latest start time untuk sebuah aktifitas LSij adalah waktu paling
lambat yang mungkin bagi suatu aktifitas untuk dimulai, tanpa menunda
waktu selesainya proyek.
Sedangkan latest finish time untuk sebuah
aktifitas LFij merupakan latest start time ditambahkan dengan durasi
waktu yang diperlukan untuk menyelesaikan aktifitas tersebut (duration
time), yang dilambangkan dengan LFij = LSij + Dij. Akan tetapi. Pada
penggunaannya, bentuk yang lebih praktis ialah: LSij = LFij - Dij., karena
perhitungan dilakukan secara backward, yaitu dengan diketahui LFij maka
dapat dihitung ESij.
Beberapa aturan yang digunakan pada backward pass ini ialah:
1. Perhitungan dimulai pada event yang paling terakhir, dimana
nilai latest finish timenya merupakan total duration time yang
telah dihitung dengan forward pass. Dengan kata lain, untuk
aktifitas yang paling terakhir, LFij = EFij.
2. Jika ada beberapa aktifitas yang ada yang meninggalkan
sebuah node, maka latest finish time untuk aktifitas yang
memasuki node tersebut adalah nilai terkecil dari latest
starting time dari seluruh aktifitas yang meninggalkan node
tersebut. Aturan ini dapat dituliskan secara matematis sebagai:
LFij = minimum(LSi..j1, LSi..j2, …, LSi..jn).
25
2.3.3.3 Float (Slack) Time
Float / slack time merupakan lama waktu untuk sebuah aktifitas
dapat terlambat, tanpa menyebabkan tertundanya waktu keseluruhan
proyek. Float time untuk setiap aktifitas dapat dihitung jika forward pass
dan backward pass telah dilakukan sebelumnya untuk menghitung
batasan waktu yang ada (start dan finish time). Cara menghitungnya
adalah dengan mengambil selisih dari LS dengan ES, atau selisih dari LF
dengan EF, yang secara matematis dapat dituliskan sebagai: Fij = LSij –
EFij atau Fij = LFij – EFij.
Perhitungan float time untuk aktifitas apapun mempunyai asumsi
bahwa aktifitas lain berlangsung dengan duration time yang diharapkan,
dengan kata lain, bahwa aktifitas lainnya akan terlaksana sesuai jadwal.
Sesuai dengan pembahasan sebelumnya, lintasan kritis dapat
ditentukan dengan melihat jalur yang melewati aktifitas-aktifitas yang
mempunyai float time Fij = 0.
2.3.4 Ketidakpastian pada Jaringan PERT
Dalam penerapan metode jaringan PERT, pada kenyataannya sulit untuk
menentukan waktu aktifitas secara akurat, dikarenakan teknologi yang selalu
berubah dan produk yang tidak standar. Oleh karena itu, untuk mengakomodasi
ketidakpastian ini, maka pengembang awal PERT menyediakan tiga perkiraan
waktu untuk setiap waktu aktifitas: (1) most probable time (tm) – waktu yang
diperlukan untuk menyelesaikan aktifitas dengan kondisi normal; (2) pessimistic
time (tp) – waktu paling lama yang diperlukan untuk menyelesaikan aktifitas jika
terjadi penundaan yang signifikan di dalam proyek; (3) optimistic time (to) –
waktu paling cepat yang dibutuhkan untuk menyelesaikan aktifitas jika segala
26
sesuatunya terjadi secara ideal. Dengan menggunakan tiga perkiraan waktu ini,
maka expected time – waktu yang cenderung terjadi jika aktifitas dilakukan
secara berulang-ulang – untuk setiap aktifitas dapat ditentukan dengan rumus
sebagai berikut:
te =
to + 4tm + t p
6
Pada kenyataannya, aktifitas yang ada tidak dilakukan secara berulang,
bahkan kebanyakan hanya terjadi sekali saja.
Bagaimanapun juga, te tetap
merupakan perkiraan tunggal yang terbaik untuk memperkirakan waktu yang
dibutuhkan untuk menyelesaikan aktifitas, yang banyak digunakan pada
penerapannya.
Pembobotan yang digunakan untuk menghitung te ini didasarkan pada
pendekatan distribusi peluang beta, karena pengembang PERT menemukan
bahwa distribusi ini dapat mendekati 4 karakteristik yang diharapkan untuk
waktu aktifitas, yaitu:
1. Mempunyai probabilitas yang kecil (1 dari 100) untuk mencapai
waktu yang paling optimis (waktu paling pendek), yang
disimbolkan dengan to.
2. Mempunyai probabilitas yang kecil (1 dari 100) untuk mencapai
waktu yang paling pesimis (waktu paling lama), yang disimbolkan
dengan tp.
3. Hanya ada satu nilai waktu yang paling mendekati (most likely
time), yang disimbolkan dengan tm, yang nilainya bebas selama
dalam batasan dua nilai ekstrim to dan tp.
4. Mempunyai kemampuan untuk mengukur ketidakpastian dalam
mengestimasi.
27
Distribusi beta sendiri memiliki sifat unimodal (mempunyai satu nilai
puncak), mempunyai titik akhir yang positif dan berhingga dengan kesimetrisan
yang tidak terlalu dipentingkan. Jadi, rumusan / formula untuk menghitung
waktu yang diharapkan merupakan kombinasi dari ketiga waktu yang ada, yang
dirumuskan dengan aljabar menggunakan rataan tertimbang.
Keuntungan dari penggunaan tiga perkiraan waktu ini adalah bahwa kita
dapat menghitung dispersi dari waktu aktifitas dan dapat menggunakan informasi
ini untuk mengevaluasi faktor ketidakpastian yang ada di dalam pelaksanaan
proyek agar dapat sesuai dengan penjadwalan yang telah dibuat.
Dengan menggunakan tiga buah nilai dari setiap waktu aktifitas ini, maka
dapat dihitung standar deviasi untuk setiap aktifitas. Perbedaan antara to dengan
tp menunjukkan jarak antara titik ekstrim ujung kanan dan titik ekstrim ujung kiri
dari distribusi peluang waktu aktifitas yang mungkin. Jarak ini mempunyai
besaran sekitar ±3 standar deviasi (luas kurva 1% mempunyai jarak 3 standar
deviasi), maka tp – to = 6 standar deviasi. Sehingga, faktor ketidakpastian ini /
dispersi dari waktu aktifitas ini dapat diukur menggunakan alat bantu statistik
variance, yang merupakan kuadrat dari standar deviasinya dengan rumusan
sebagai berikut:
 t p −to 
Variansi waktu aktifitas = σ = 

 6 


2
2
t
Dengan rumus diatas, maka variansi waktu untuk setiap aktifitas dapat
dihitung, dan setelah semuanya dihitung, maka diperoleh variansi waktu
penyelesaian proyek dengan cara menjumlahkan seluruh variansi waktu aktifitas
kritis yang dapat dirumuskan sebagai berikut:
Variansi waktu proyek = σ 2 =
∑
∀critical _ activities
σ t2.critical _ activities
28
Variansi waktu proyek diperoleh hanya dengan menjumlahkan seluruh
variansi aktifitasnya saja, karena masing-masing aktifitas saling bebas, dengan
kata lain durasi waktu aktifitas yang satu tidak mempengaruhi durasi waktu
aktifitas lainnya, sehingga kovarians antar aktifitas bernilai 0.
Dengan adanya variansi ini, maka dengan mudah standar deviasi dari
waktu penyelesaian proyek dapat dihitung dengan rumus σ = σ 2 .
Secara statistik telah diketahui bahwa waktu penyelesaian proyek tidak
dapat digambarkan oleh distribusi beta, akan tetapi lebih mengikuti kepada
pendekatan distribusi normal.
Asumsi ini didasarkan kepada central limit
theorem of probability / teorema probabilitas terpusat, yang dimana untuk kasus
analisis PERT pada proyek yang kita lakukan, mengatakan bahwa jika jumlah
aktifitas yang dilakukan cukup banyak dan masing-masing aktifitas bebas secara
statistik, maka penjumlahan variansi waktu aktifitas kritis akan mendekati mean
atau nilai tengah dari distribusi normal. Sehingga dengan menggunakan asumsi
ini, kita dapat menginterpretasikan waktu penyelesaian proyek yang diharapkan
(tp) dan variansinya (vp) sebagai mean (µ) dan variance (σ2) dari distribusi
normal yang dapat dilihat pada gambar 2.8 berikut.
Probability
x−µ
Z=
σ
Zσ
µ
x
Time
(x scale)
Gambar 2.8 Pendekatan kurva normal terhadap waktu
penyelesaian proyek
29
Nilai Z yang dihitung dengan rumus Z =
x−µ
σ
, dapat digunakan untuk
menentukan tingkat keyakinan atau tingkat kepercayaan (confidence level) dari
waktu proyek. Dengan kata lain, nilai Z dapat menentukan besarnya peluang
bahwa proyek dapat diselesaikan pada waktu x, dengan melihat tabel sebaran
distribusi normal (tabel luas kurva statistik Z). Selain itu, dapat pula dilakukan
perhitungan invers normal dengan suatu data probabilitas tertentu (luas area
dibawah kurva normal), untuk menghitung nilai harapannya.
2.3.5 Time / Cost Trade-offs
Penjadwalan yang dibentuk dengan apa yang telah dibahas sejauh ini
hanya melihat dari aspek waktu saja. Namun sesungguhnya, waktu pelaksanaan
proyek bisa dipercepat dengan mengalokasikan sejumlah resources yang akan
menambah biaya (menggunakan metode CPM), seperti yang dapat dilihat pada
gambar 2.9 berikut.
Project
Cost
Minimum
Time
Minimum
Cost
Minimu
m
Minimu
m
Project
Completion Time
Gambar 2.9 Kurva time / cost trade-offs
30
Akan tetapi, mengacu kepada pembatasan pada perancangan ini, maka
sesuai dengan asumsi bahwa resources yang ada tetap, maka bagian ini tidak
diuraikan lebih lanjut secara mendetil.
2.4.
Perencanaan Produksi
Perencanaan produksi merupakan suatu teknik yang dapat digunakan untuk
memprediksi dan menyusun terlebih dahulu seluruh rangkaian kegiatan sedemikian
rupa, sehingga terjamin penyelesaiannya.
Ada 4 macam teknik utama yang biasanya dilakukan di dalam merencanakan
produksi, yaitu:
1. Routing: menyusun rangkaian langkah-langkah operasionil (What,
How, When).
2. Scheduling: menyusun jadwal waktu untuk pelaksanaan kegiatan
operasionil secara terperinci (When).
3. Dispatching: penetapan tugas dan pelaksanaan dari kegiatan yang
telah dirumuskan dalam routing dan scheduling (Who).
4. Follow up dan Control: mengadakan pengendalian dan penyesuaian
pada waktu pelaksanaan.
Perencanaan produksi dibagi ke dalam 3 tingkat, yaitu:
1. Perencanaan tingkat pabrik.
Perencanaan tingkat awal, dimana perencanaan yang dilakukan
meliputi pemilihan jenis bahan dan fasilitas yang diperlukan (gedung,
mesin, proses, dll).
31
2. Perencanaan tingkat proses.
Perencanaan yang lebih mendalam dari perencanaan tingkat
pabrik, misalnya: penetapan unit mesin tertentu, perlengkapan
produksi tertentu, tata letak mesin, dll.
3. Perencanaan tingkat operasional.
Perencanaan tingkat akhir ini dilakukan untuk mendapatkan
rangkaian perincian elemen-elemen kerja, dengan menganalisa pusat
kerja dan kegiatan pokok operasional.
Tingkat variasi dan kompleksitas dari suatu perencanaan produksi dapat
dipengaruhi oleh faktor-faktor, seperti:
•
Jumlah komponen dari suatu produk.
•
Keragaman jumlah dan jenis kegiatan operasional.
•
Kesalingtergantungan antar kegiatan satu dengan kegiatan lainnya.
•
Ketersediaan kapasitas mesin.
•
Waktu pengiriman yang ketat.
•
Adanya produk sampingan selain produk standar.
•
Frekuensi perubahan pesanan.
•
Proses produksi yang berdasarkan “Job-order”, “Intermittent / Batch”,
atau “Continuous production”.
2.5.
Rekayasa Piranti Lunak
32
2.5.1 Pengertian Rekayasa Piranti Lunak
Pengertian
dari
rekayasa
piranti
lunak
untuk
pertama
kalinya
diperkenalkan oleh Fritz Bauer sebagai: penetapan dan penggunaan prinsipprinsip rekayasa dalam usaha mendapatkan piranti lunak yang ekonomis, yaitu
piranti lunak yang terpercaya dan bekerja efisien pada mesin atau komputer
(Pressmann, 1992, p19).
2.5.2 Paradigma Rekayasa Piranti Lunak
Terdapat lima paradigma dasar atau model proses dasar dalam melakukan
rekayasa suatu piranti lunak, yaitu: The Classic Life Cycle atau sering disebut
dengan Waterfall Model, Prototyping Model, Fourth Generation Techniques
(4GT), Spiral Model, dan Combine Model. Disamping itu, paradigma atau model
proses dalam rekayasa piranti lunak terkini yang banyak digunakan ialah
Rational Unified Process (RUP) dan Extreme Programming (XP). Perancangan
program aplikasi dibuat menggunakan Waterfall Model sebagai paradigma
rekayasa piranti lunaknya.
Menurut Pressman (1992, p20-21), ada enam tahapan dalam Waterfall
Model yang dapat dilihat pada gambar 2.10 berikut ini.
Gambar 2.10 Waterfall Model
33
Penjelasan dari setiap tahapan di dalam Waterfall Model diatas adalah
sebagai berikut:
•
Rekayasa sistem (System Engineering)
Perangkat lunak merupakan bagian dari sebuah sistem yang
lebih besar, maka pada tahapan awalnya, aktifitas ini dimulai
dengan penetapan kebutuhan dari semua elemen sistem.
Gambaran sistem ini sangat penting, terutama jika perangkat
lunak yang dibangun harus berinteraksi dengan elemen sistem
lainnya, seperti hardware, manusia, dan database.
•
Analisis kebutuhan perangkat lunak (Software Requirement
Analysis)
Analisis yang dilakukan pada tahap ini adalah untuk
mengetahui kebutuhan piranti lunak, sumber informasi piranti
lunak, fungsi-fungsi yang dibutuhkan, kemampuan piranti lunak,
dan perancangan antarmuka piranti lunak tersebut.
•
Perancangan (Design)
Perancangan piranti lunak dititikberatkan pada empat
atribut program, yaitu struktur data, arsitektur piranti lunak, rician
prosedur dan karakter antarmuka.
Proses perancangan ini
menterjemahkan kebutuhan ke dalam sebuah representasi
perangkat lunak yang dapat dinilai kualitasnya, sebelum
dilanjutkan ke tahapan pengkodean.
•
Pengkodean (Coding)
34
Aktifitas
yang
dilakukan
adalah
mengubah
hasil
perancangan menjadi suatu bentuk yang dapat dimengerti oleh
mesin, yaitu dengan membuat program.
•
Pengujian (Testing)
Pengujian merupakan suatu kegiatan yang dilakukan untuk
mencari kelemahan dan kesalahan yang terjadi pada program
aplikasi dan kemudian memperbaiki kelemahan dan kesalahan
tersebut. Ada beberapa metode pengujian untuk menguji fungsi
– fungsi dari suatu program aplikasi. Metode tersebut adalah :
⇒ Metode Pengujian White-Box
Metode ini menerapkan pengujian terhadap struktur logika
program dan detail procedural. Pengujian dilakukan
terhadap setiap baris kode program untuk meyakinkan
bahwa semua operasi internal bekerja sesuai dengan
spesifikasi dan semua komponen internal telah dicoba.
⇒ Metode Pengujian Black-Box
Metode ini merupakan pengujian interface dari perangkat
lunak oleh pemakai untuk mengetahui spesifikasi dari suatu
fungsi dalam program aplikasi. Pengujian dilakukan dengan
memberi input pada program aplikasi, kemudian diproses,
dan hasil keluarannya dibandingkan apakah telah sesuai
dengan kebutuhan fungsional yang diinginkan pemakai.
⇒ Metode pengujian Gray-Box
Metode ini merupakan gabungan dari metode pengujian
White-Box
dan
metode
pengujian
Black-Box
yaitu
35
memvalidasi interface perangkat lunak dan pemilihan
beberapa logika internal.
•
Pemeliharaan (Maintenance)
Kebutuhan pemakai selalu akan meningkat, maka piranti
lunak
yang
telah
dibuat
perlu
dipelihara
agar
dapat
mengantisipasi peningkatan / perubahan kebutuhan pemakai
terhadap fungsi-fungsi baru yang dapat timbul karena berbagai
perubahan diluar yang memepengaruhi sistem, seperti munculnya
sistem operasi baru dan perangkat keras baru, perubahan strategi
perusahaan, dan sebagainya.
2.6.
Interaksi Manusia dan Komputer
Dewasa ini suatu sistem atau program yang bersifat interaktif sangat populer
dan sangat digemari, oleh karena itu penggunaan komputer telah berkembang pesat
sebagai suatu program yang interaktif, yang meningkatkan ketertarikan para
pengguna untuk menggunakannya.
Program yang interaktif ini perlu dirancang
sedemikian rupa sehingga pengguna dapat merasa senang dan juga dapat ikut
berinteraksi dengan baik dalam penggunaannya.
2.6.1 Program Interaktif
Suatu program interaktif yang baik harus bersifat user friendly.
Shneiderman (1998, p15) menjelaskan lima kriteria yang harus dipenuhi oleh
suatu program yang user friendly, yaitu:
1. Waktu belajar yang tidak lama.
2. Kecepatan penyajian informasi yang tepat.
3. Tingkat kesalahan pemakai yang rendah.
36
4. Penghafalan sesudah melampaui jangka waktu.
5. Kepuasan pribadi.
Suatu program yang interaktif dapat dengan mudah dibuat dan dirancang
dengan suatu perangkat bantu pengembangan sistem antarmuka, seperti Visual
Basic, Borland Delphi, dan sebagainya.
Keuntungan penggunaan perangkat
bantu untuk mengembangkan antarmuka menurut Santosa (1997, p7) yaitu:
1. Antarmuka yang dihasilkan menjadi lebih baik.
2. Program antarmukanya menjadi mudah ditulis dan lebih
ekonomis untuk dipelihara.
2.6.2 User Interface
Terdapat beberapa pedoman yang dianjurkan dalam merancang suatu
program guna mendapatkan suatu program yang user friendly.
2.6.2.1 Delapan Aturan Emas
Menurut Shneiderman (1998, p74-75), perancangan sistem
interaksi manusia dan komputer yang baik harus memperhatikan delapan
aturan utama, yaitu:
1. Strive for consistency (Mempertahankan konsistensi).
2. Enable frequent user to use shortcuts (Memungkinkan para
pengguna yang sudah sering menggunakan untuk memakai
shortcut ).
3. Offer informative feedbacks (Memberikan umpan balik yang
informatif).
4. Design dialogs to yield closure (Mendesain suatu dialogs yang
baik sehingga pengguna mengetahui kapan awal dan kapan
akhir dari suatu aksi).
37
5. Offer simple error handlings (Memberikan penanganan
kesalahan secara sederhana).
6. Permit easy reversal action (Mengijinkan pembalikan aksi
(undo) dengan mudah).
7. Support
internal
locus
of
control
(Mendukung
agar
pemakailah yang berperan sebagai pengendali sistem /
inisiator, bukan responden).
8. Reduce short term memory load (Mengurangi beban ingatan
jangka pendek, dimana manusia hanya dapat mengingat 7 ± 2
satuan informasi , sehingga kesederhanaan perancangan harus
dipertahankan).
2.6.2.2 Tampilan Data
Beberapa pedoman yang disarankan untuk digunakan dalam
merancang tampilan data yang baik menurut Smith dan Mosier yang
dikutip oleh Shneiderman (1998, p80) yaitu:
1.
Konsistensi tampilan data, istilah, singkatan, format dan
sebagainya haruslah standar.
2.
Beban ingatan yang sesedikit mungkin bagi pengguna.
Pengguna tidak perlu mengingat informasi dari layar yang
satu ke layar yang lain.
3.
Kompatibilitas tampilan data dengan pemasukan data.
Format tampilan informasi perlu berhubungan erat dengan
tampilan pemasukan data.
38
4.
Fleksibilitas kendali pengguna terhadap data. Pemakai harus
dapat memperoleh informasi dari tampilan data dalam bentuk
yang paling memudahkan.
2.6.2.3 Waktu Respon
Waktu respons dalam sistem komputer menurut Shneiderman
(1998, p352) adalah jumlah detik dari saat pemakai memulai suatu
aktifitas (misalnya dengan menekan tombol pada keyboard atau tombol
mouse), sampai pada saat komputer menampilkan hasilnya di perangkat
keluaran (monitor, speaker, printer, dan sebagainya).
Beberapa pedoman yang disarankan mengenai kecepatan waktu
respons pada suatu program menurut Shneiderman (1998, p367) yaitu:
1. Pemakai lebih menyukai waktu respons yang lebih pendek.
2. Waktu respons yang panjang (lebih dari 15 detik) akan terasa
menggangu.
3. Waktu respons yang lebih pendek menyebabkan waktu
berpikir pengguna juga lebih pendek.
4. Langkah yang lebih cepat dapat meningkatkan produktifitas,
akan tetapi juga dapat meningkatkan kesalahan.
5. Waktu respons harus sesuai dengan tugasnya:
a. Untuk mengetik, menggerakkan kursor, memilih
dengan mouse: 50 – 150 milidetik.
b. Tugas sederhana yang sering: < 1 detik.
c. Tugas biasa: 2 - 4 detik.
d. Tugas kompleks: 8 – 12 detik.
6. Pemakai harus diberitahu mengenai penundaan yang panjang.
39
2.7.
State Transition Diagram (STD)
State Transition Diagram merupakan sebuah modelling tool yang digunakan
untuk menggambarkan suatu sistem yang memiliki ketergantungan terhadap waktu.
STD merupakan suatu kumpulan keadaan atau atribut yang mencirikan suatu
keadaan pada waktu tertentu.
Komponen-komponen utama STD adalah:
1. State, disimbolkan dengan
State merupakan suatu reaksi / respon yang dilakukan oleh sistem
ketika suatu tindakan dilakukan. Ada dua jenis state, yaitu state awal
dan state akhir. State akhir dapat berupa beberapa state, sedangkan
state awal hanyalah satu state.
2. Arrow, disimbolkan dengan
Arrow sering disebut juga dengan transisi state yang diberi label
dengan ekspresi aturan. Label tersebut menunjukkan kejadian yang
menyebabkan transisi tersebut terjadi.
3. Condition dan Action, disimbolkan dengan simbol sebagai berikut:
Condition adalah suatu event pada lingkungan eksternal yang dapat
dideteksi oleh sistem, sedangkan action adalah tindakan yang dilakukan
oleh sistem bila terjadi perubahan state, atau merupakan reaksi
terhadap kondisi yang terpenuhi.
output.
Action akan menghasilkan suatu
Download