RPL1 5 Perencanaan Proyek Perangkat Luna
Rekayasa Perangkat Lunak B5 - YC
Hal : 1
BAB 5
PERENCANAAN PROYEK PERANGKAT LUNAK
Pr oses manaj emen pr oyek per angkat lunak dimulai dengan kegiat an pr oj ect
planning (per encanaan pr oyek). Yang per t ama dar i akt if it as ini adalah est imat ion
(per kir aan). Est imasi membawa r esiko yang inher en (dar i dir i sendir i) dan r esiko
inilah yang membawa ket idakpast ian. Yang mempengar uhi est imasi :
- Pr oj ect complexit y (kompleksit as pr oyek)
- Pr oj ect size (ukur an pr oyek)
- St r ukt ur al uncer t aint y (ket idakpast ian st r ukt ur al)
Tuj uan Per encanaan Pr oyek Per angkat Lunak :
menyediakan sebuah ker angka ker j a yang memungkinkan manaj er membuat
est imasi yang dapat diper t anggungj awabkan t er hadap sumber daya, biaya dan
j adwal pada awal pr oyek yang dibat asi oleh wakt u.
Akt if it as Per encanaan Pr oyek PL
1. Menent ukan r uang lingkup PL
2. Mengest imasi sumber daya yang dibut uhkan
RUAN G LI N GKUP PL
Ruang lingkup PL menggambar kan : f ungsi, kiner j a, bat asan, int er f ace dan
r eliabilit as.
Fungsi yang digambar kan dlm st at emen
r uang lingkup dievaluasi unt uk
member ikan awalan yang lebih det ail pada saat dimulai est imasi. Kiner j a
melingkupi pemr osesan dan kebut uhan wakt u r espon. Bat asan mengident if ikasi
bat as yang dit empat kan pada PL oleh per angkat ker as ekst er nal, memor i at au
sist em lain.
Rekayasa Perangkat Lunak B5 - YC
Hal : 2
I nf or masi yang dibut uhkan (awal per t emuan ant ar a pelanggan dan pengembang)
* Per t anyaan ber f okus pada pelanggan, t uj uan keselur uhan ser t a keunt ungan.
- Siapa di belakang per mint aan ker j a ini?
- Siapa yang akan memakai solusi ini?
- Apakah keunt ungan ekonomi dar i solusi yang sukses?
- Adakah sumber daya lain bagi solusi ini?
* Per t anyaan yang memungkinkan analis memahami masalah lebih baik dan
pelanggan menyuar akan per sepsi t ent ang sebuah solusi.
- Bagaimana Anda (pelanggan) menandai out put yg baik yg akan dihasilkan
oleh sebuah solusi yg baik?
- Masalah apa yang dit uj u solusi ini?
- Dapat kah anda menggambar kan lingkungan dimana solusi akan dipakai?
- Adakah bat asan at au isu kiner j a khusus yg akan mempengar uhi
PL ber int er aksi dengan elemen sist em ber basis komput er . Konsep sebuah
int er f ace diint er pr et asi unt uk menent ukan:
1. Har dwar e yg mengeksekusi PL dan device yg dikont r ol secar a t idak
langsung oleh PL
2. Sof t war e yg sudah ada dan har us dihubungkan dengan PL yg bar u
3. Manusia yg menggunakan PL melalui keyboar d at au per angkat I / O lain
4. Pr osedur
SUMBER DAYA
1. Manusia
2. Per angkat Lunak
Kat egor i yg diusulkan BEUNATAN
- Komponen Of f -t he-self
- Komponen Full-Exper ience
- Komponen Par t ial-Exper ience
- Komponen Bar u
3. Lingkungan (Sof t war e Engineer ing Envir onment - SEE), menggabungkan
PL dan Per angkat Ker as.
Rekayasa Perangkat Lunak B5 - YC
Hal : 3
Est imasi biaya dan usaha dapat dilakukan dengan car a :
1. Menunda est imasi sampai akhir pr oyek.
2. Ber dasar kan est imasi pada pr oyek yg mir ip sebelumnya.
3. Menggunakan ' t eknik dekomposisi' yg r elat if seder hana u/ est imasi biaya
dan usaha pr oyek.
4. Menggunakan sat u at au lebih model empir is bagi est imasi usaha dan biaya
PL.
Akur asi est imasi pr oyek PL didasar kan pada :
1. Tingkat dimana per encana t elah dengan t epat mengest imasi ukur an pr oduk
yg akan dibuat .
2. Kemampuan mengest imasi ukur an ke dalam ker j a manusia, wakt u kalender ,
dan dolar .
3. Tingkat dimana r encana pr oyek mencer minkan kemampuan t im PL.
4. St abilit as syar at pr oduk ser t a lingkungan yg mendukung usaha
pengembangan PL.
Put nam dan Myer s mengusulkan 4 masalah penent uan ukur an :
- Fuzzy- logic sizing (logika kabur )
Per encana har us mengident if ikasi t ipe aplikasi, membuat besar annya dalam
skala kuant it at if kemudian dibandingkan dengan r ent ang or isinil.
- Funct ion point sizing
Per encana mengembangkan est imasi ber dasar kan kar akt er ist ik domain
inf or masi.
- St andar d component sizing
PL dibangun dar i sej umlah ' komponen st andar ' yg umum (subsist em, modul,
lapor an, pr ogr am int er akt if ).
- Change sizing
Digunakan j ika PL yang ada har us dimodif ikasi dengan banyak car a sebagai
bagian dar i pr oyek.
Rekayasa Perangkat Lunak B5 - YC
Hal : 4
Dat a bar is kode (LOC) dan t it ik f ungsi (FP) pada est imasi pr oyek digunakan sbg :
1. var iabel est imasi yg dipakai unt uk mengukur masing-masing elemen PL.
2. met r ik baseline yg dikumpulkan dar i pr oyek yg lalu dan dipakai dengan
var iabel est imasi unt uk mengembangakan pr oyeksi ker j a dan biaya.
Expect ed Value unt uk var iabel est imasi :
EV = (S opt + 4S m + S pess) / 6
EV
= Expect ed value
Sopt
= Est imasi opt imist ik
Sm
= Est imasi paling ser ing
Spess
= Est imasi pesimist ik
Apakah est imasi ini benar ? ' Kit a t idak yakin!'
Bagaimanapun canggih t eknik est imasi har us di-cr oss-check dengan pendekat an
lain.
Cont oh est imasi ber basis LOC
PL CAD akan mener ima dat a geomet r i dua dan t iga demensi dar i seor ang
per ekayasa yang akan ber int er aksi dan mengont r ol sist em CAD melalui suat u
int er f ace pemakai. Kaj ian spesif ikasi sist em menunj ukkan bahwa PL akan
mengeksekusi Wor kst at ion dan har us ber int er aksi dengan ber bagai per iper al
gr af is komput er spt mouse, digit izer dan pr int er laser .
Diket ahui :
Per hit ungan LOC unt uk f ungsi analisis geomet r i 3D (3DGA) :
opt imis
: 4600
most likely : 6900
pesimist ik : 8600
EV = (4600 + 4* 6900 + 8600) / 6
= 6800 LOC
Rekayasa Perangkat Lunak B5 - YC
Hal : 5
J umlah t er sebut dimasukkan ke dalam t abel, begit u j uga unt uk per hit ungan yang
lain. Sehingga diper oleh :
Tabel per kir aan (est imasi) unt uk met ode LOC
Fungsi
LOC t er est imasi
int er f ace pemakai & f asilit as kont r ol (UI CF)
analisis geomet r ik dua demensi (2DGA)
analisis geomet r ik t iga demensi (3DGA)
manaj emen dat abse (DBM)
f asilit as display gr af is komput er (CGDF)
kont r ol per iper al (PC)
modul analisis desain (DAM)
2.300
5.300
6.800
3.350
4.950
2.100
8.400
bar is kode t er est imasi
33.200
J ika :
Pr odukt if it as r at a- r at a or ganisasional = 620 LOC/ per son-mont h
Upah kar yawan
= $ 8.000 per bulan
Biaya per bar is kode = $ 13
Maka :
Tingkat pr odukt if it as = j umlah t it ik f ungsi
j umlah or ang-bulan
J umlah kar yawan
= 33200 LOC
620 LOC/ bln
= 53,5 ≈ 54 or ang
Est imasi biaya pr oyek ber dasar LOC
= 33.200 LOC * $ 13
= $ 431.600
Est imasi biaya pr oyek ber dasar upah
= 54 or ang * $ 8.000
= $ 432.000
Rekayasa Perangkat Lunak B5 - YC
Hal : 6
Est imasi ber basis FP (Funct ion Point )
Dekomposisi unt uk per hit ungan ber basis FP ber f okus pada har ga domain inf o
dar ipada f ungsi PL. Per encana pr oyek memper kir akan input , out put , inquir y, f ile
dan int er f ace ekst er nal. Unt uk t uj uan per kir aan t er sebut f akt or pembobot an
kompleksit as diasumsikan menj adi r at a-r at a.
Set iap f akt or pembobot an kompleksit as diest imasi dan f akt or penyesuaian
kompleksit as dihit ung seper t i dibawah ini :
Fakt or
Har ga
Backup and r ecover y
4
Komunikasi dat a
2
Pemr osesan t er dist r ibusi
0
Kiner j a kr it is
4
Lingkungan oper asi yang ada
3
Ent r i dat a on-line
4
Tr ansaksi input pada layar ganda
5
File mast er yang diper bar ui on-line secar a on-line 3
Nilai kompleks domain inf or masi
5
Pemr osesan int er nal yang kompleks
5
Kode yg didesain unt uk dapat dipakai lagi
4
Konver si/ inst alasi dalam disain
3
I nst alasi ganda
5
Aplikasi yg didesain bagi per ubahan
5
Fakt or penyesuaian kompleksit as
1.17
TOTAL
53.17
Rekayasa Perangkat Lunak B5 - YC
Hal : 7
Per kir aan har ga domain inf or masi :
Tabel per kir aan har ga domain inf or masi
nilai domain inf or masi
j umlah
j umlah
j umlah
j umlah
j umlah
input
out put
inquir y
f ile
int er f ace ekst er nal
opt
likely
pess
20
12
16
4
2
24
15
22
4
2
30
22
28
5
3
j umlah t ot al
bobot
j umlah FP
4
5
4
10
7
96
80
88
40
14
318
j umlah est imasi (lihat r umus EV)
bobot (lihat kembali bab 4)
j umlah FP = j umlah est imasi * bobot
Tot al f akt or pembobot an = ΣFi = 53.17
Tot al FP
= 318
FP t er est imasi = j umlah t ot al * ( 0.65 + 0.01 * ΣFi )
= 318 * ( 0.65 + 0.01 * 53.17 )
= 375
Diket ahui :
Pr odukt if it as
Upah
Biaya FP
j umlah
est imasi
24
16
22
4
2
= 6.5 LOC/ pm (dar i hist or is)
= $ 8.000/ m
= $ 8.000 = $ 1.230
65 LOC
Est imasi biaya pr oyek
= Biaya FP * FP t er est imasi
= $ 1.230 * 375
= $ 461.250
Rekayasa Perangkat Lunak B5 - YC
Usaha t er est imasi
= Tot al biaya
upah/ p
= $ 461.250
$ 8.000
Hal : 8
= 58 p/ m
MODEL COCOMO
Bar r y Boehm memper kenalkan hir ar ki model est imasi PL dengan nama COCOMO
(COnst r uct ive COst MOdel = Model Biaya Konst r ukt if ) yang ber bent uk sbb :
1. Model COCOMO Dasar
Menghit ung usaha pengembangan PL (dan biaya) sbg f ungsi dar i ukur an
pr ogr am yg diekspr esikan dalam bar is kode yg diest imasi (LOC).
2. Model COCOMO I nt er mediat e
Menghit ung usaha pengembangan PL sbg f ungsi ukur an pr ogr am dan
ser angkaian ' pengendali biaya' yg menyangkut penilaian yg subyekt if t hd
pr oduk, per angkat ker as, per sonil dan at r ibut pr oyek.
3. Model COCOMO Advance
Menghubungkan semua kar akt er ist ik ver si int er mediat e dg penilaian t hd
pengar uh pengendali biaya pd set iap langkah (analis, per ancangan, dll) dar i
pr oses r ekayasa PL.
Model COCOMO mendef inisikan 3 kelas pr oyek PL yi :
1. Model Or ganik
Ukur an pr oyek r elat if kecil, PL yang dibuat at au dikembangkan lebih simpel
dengan aplikasi ker j a yg baik. Misal pr ogr am analisis t er mal yang
dikembangkan unt uk kelompok t r ansf er panas.
2. Model Semi Det ached
Ukur an pr oyek dan kekompleksan per angkat cukup besar dengan
pengalaman ker j a campur an (ada yg t elah ber pengalaman dan ada yg belum
ber pengalaman). Misal sist em pemr osesan t r ansaksi dengan syar at t er t ent u
unt uk per angkat ker as t er minal dan per angkat lunak dat abase.
3. Model Embedded
Ukur an pr oyek dan kekompleksan PL yg dikembangkan at au diker j akan
besar . Misal per angkat lunak kont r ol pener bangan unt uk pesawat udar a.
Rekayasa Perangkat Lunak B5 - YC
Hal : 9
Pesamaan COCOMO Dasar
bb
E = ab (KLOC)
db
D = cb E
Dimana :
E = Ef f or t (usaha yang diaplikasikan - pm)
D = wakt u pengembangan (m)
KLOC = j umlah per kir aan bar is kode (dalam r ibuan)
ab , bb , cb , db = koef isien (lihat t abel)
Tabel Model COCOMO Dasar
Pr oyek PL
ab
bb
or ganik
2.4
1.05
semi-det ached
3.0
1.12
embedded
3.6
1.20
cb
2.5
2.5
2.5
db
0.38
0.35
0.32
Model dasar ini dapat diper luas dengan memper t imbangkan kumpulan ' at r ibut
pengendali biaya' yg dikelompokkan dalam 4 kat egor i ut ama :
1. At r ibut pr oduk
- ukur an keandalan pr oyek
- ukur an dar i aplikasi dat abase
- kekompleksan pr oduk
2. At r ibut per angkat ker as
- kendala per f or mansi r un-t ime
- kendala memor i
- lingkungan dar i violabilit y dar i vir t ual memor i
- wakt u per put ar an yg diper lukan
3. At r ibut per sonil
- kemampuan sist em analis
- kemampuan sof t war e engineer ing
- pengalaman aplikasi
Rekayasa Perangkat Lunak B5 - YC
Hal : 10
- pengalaman vir t ual mesin
- pengalaman bahasa pemr ogr aman
4. At r ibut pr oyek
- pemakaian alat bant u PL
- met ode aplikasi sof t war e engineer ing
- j adwal pengembangan
Masing-masing dar i 15 at r ibut di at as dir at a- r at a dlm sebuah skala 6 t it ik dg
r ent ang dar i ' sangat r endah' ke ' sangat t inggi' (dlm kepent ingan at au har ga).
Per samaan COCOMO I nt er mediat e
bi
E = ai (KLOC) * EAF
dimana :
EAF = Ef f or t Adj usment Fact or (f akt or penyesuaian usaha)
yg mempunyai r ange ant ar a 0.9 sampai 1.4
ai , bi = koef isien (lihat t abel)
Tabel Model COCOMO I nt er mediat e
Pr oyek PL
ai
bi
or ganik
3.2
1.05
semi-det ached
3.0
1.12
embedded
2.8
1.20
Rekayasa Perangkat Lunak B5 - YC
Hal : 11
Cont oh est imasi model COCOMO
Kit a aplikasikan model dasar pada cont oh PL CAD sebelumnya dengan koef isien
seper t i pada t abel
bb
E = ab (KLOC)
E = 2.4 (KLOC)1.05
= 2.4 (33.2)1.05
= 95 pm
Har ga ini j auh lebih t inggi dibanding est imasi sebelumnya kar ena model
COCOMO mengasumsikan t ingkat LOC/ pm yang j auh lebih r endah.
Unt uk menghit ung dur asi pr oyek :
db
D = cb E
D = 2.5 (E) 0.38
= 2.5 (95)0.38
= 12.3 bulan
Har ga dur asi pr oyek memungkinkan per encana unt uk menent ukan j umlah or ang
yang diset uj ui (N)
N = E/ D
= 95/ 12.3
= 7,7 ≈ 8 or ang
Kenyat aannya, per encana dapat memut uskan hanya menggunakan 4 or ang saj a
dan pemper panj ang dur asi pr oyek.
Cat at an : Hubungan ant ar a usaha dan wakt u t idak linier .
Rekayasa Perangkat Lunak B5 - YC
Hal : 12
KEPUT USAN MAKE- BUY
Pada aplikasi PL, dar i segi biaya ser ing lebih ef ekt if membeli dar i pada
mengembangkan sendir i. Manaj er RPL dihadapkan pada keput usan make-buy
dengan pilihan :
1. PL dapat dibeli (at au lisensi) of f -t he-self .
2. Komponen PL f ull-exper ience dan par t ial-exper ience, dapat diper oleh dan
kemudian dimodif ikasi dan int egr asi unt uk memenuhi kebut uhan sendir i.
3. PL dapat dibuat cust om-built oleh kont r akt or luar unt uk memenuhi
spesif ikasi pembeli.
Unt uk pr oduk PL yang mahal, langkah- langkah di bawah ini dapat dipet imbangkan:
1. Kembangkan spesif ikasi unt uk f ungsi dan kiner j a PL yg diper lukan.
2. Per kir akan biaya int er nal unt uk pengembangan dan t anggal penyampaian.
3a. Pilih t iga at au empat calon aplikasi yang paling cocok dengan aplikasi
anda.
3b. Pilih komponen yang r eusable yg dapat membant u konst r uksi aplikasi yg
diper lukan.
4. Kembnagkan sebuah mat r iks per bandingan unt uk membandingkan calon
PL.
5. Evaluasi masing-masing paket PL ber dasar kan kualit as pr oduk
sebelumnya, dukungan penj ual, ar ah pr oyek, r eput asi dsb.
6. Hubungi pemakai PL lain dan mint alah pendapat mer eka.
Pada analisis akhir , keput usan make-buy ber dasar kan kondisi sbb:
1. Tanggal penyampaian
2. Biaya yang diper lukan
3. Dukungan
Rekayasa Perangkat Lunak B5 - YC
Hal : 13
MEMBUAT POHON KEPUT USAN
Rekayasa at au or ganisasi PL dapat menggunakan t eknik st at ist ik analisis pohon
keput usan dengan pilihan :
1. membangun sist em X dar i per mulaan
2. menggunakan lagi komponen par t ial exper ience yang ada unt uk membangun
sist em
3. membeli sebuah pr oduk per angkat lunak yang dapat diper oleh dan
dimodif ikasi unt uk memenuhi kebut uhan lokal
4. mengkont r akkan pengembangan PL ke vendor luar
Bila sist em dibangun dar i per mulaan, hanya 70% pr obabilit asnya sehingga
peker j aan menj adi sulit . Per encana pr oyek dapat mempr oyeksikan usaha
pengembangan yang sulit ber biaya $ 450.000, usaha yang seder hana diper kir akan
ber biaya $ 380.000.
Expect ed value unt uk biaya dihit ung sepanj ang cabang pohon keput usan, adalah :
Expect ed Cost = Σ (j alur pr obabilit as)i * (biaya j alur t er est imasi)i
dimana i adalah gar is edar pohon keput usan.
Cont oh :
expect ed cost build
expect ed cost r euse
expect ed cost buy
expect ed cost cont r act
= 0.30 ($ 380 K) + 0.70 ($ 450 K) = $ 429 K
= 0.40 ($ 275 K) + 0.60 (0.20 ($ 310 K) + 0.80 ($ 490 K))
= $ 382 K
= 0.70 ($ 210 K) + 0.30 ($ 400 K) = $ 267 K
= 0.60 ($ 350 K) + 0.40 ($ 500 K) = $ 410 K
Ber dasar biaya pr obabilit as dan pr oyeksi, expect ed cost yang paling r endah
adalah pilihan buy
Rekayasa Perangkat Lunak B5 - YC
Hal : 14
Cat at an : Banyak kr it er ia yang har us diper t imbangakan, bukan hanya biaya,
seper t i pengalaman pengembang/ vendor / kont r akt or , penyesuaian
kebut uhan,kecender ungan per ubahan dapat mempengar uhi keput usan akhir !
Rekayasa Perangkat Lunak B5 - YC
Hal : 15
$ 380.000
Sist em X
Hal : 1
BAB 5
PERENCANAAN PROYEK PERANGKAT LUNAK
Pr oses manaj emen pr oyek per angkat lunak dimulai dengan kegiat an pr oj ect
planning (per encanaan pr oyek). Yang per t ama dar i akt if it as ini adalah est imat ion
(per kir aan). Est imasi membawa r esiko yang inher en (dar i dir i sendir i) dan r esiko
inilah yang membawa ket idakpast ian. Yang mempengar uhi est imasi :
- Pr oj ect complexit y (kompleksit as pr oyek)
- Pr oj ect size (ukur an pr oyek)
- St r ukt ur al uncer t aint y (ket idakpast ian st r ukt ur al)
Tuj uan Per encanaan Pr oyek Per angkat Lunak :
menyediakan sebuah ker angka ker j a yang memungkinkan manaj er membuat
est imasi yang dapat diper t anggungj awabkan t er hadap sumber daya, biaya dan
j adwal pada awal pr oyek yang dibat asi oleh wakt u.
Akt if it as Per encanaan Pr oyek PL
1. Menent ukan r uang lingkup PL
2. Mengest imasi sumber daya yang dibut uhkan
RUAN G LI N GKUP PL
Ruang lingkup PL menggambar kan : f ungsi, kiner j a, bat asan, int er f ace dan
r eliabilit as.
Fungsi yang digambar kan dlm st at emen
r uang lingkup dievaluasi unt uk
member ikan awalan yang lebih det ail pada saat dimulai est imasi. Kiner j a
melingkupi pemr osesan dan kebut uhan wakt u r espon. Bat asan mengident if ikasi
bat as yang dit empat kan pada PL oleh per angkat ker as ekst er nal, memor i at au
sist em lain.
Rekayasa Perangkat Lunak B5 - YC
Hal : 2
I nf or masi yang dibut uhkan (awal per t emuan ant ar a pelanggan dan pengembang)
* Per t anyaan ber f okus pada pelanggan, t uj uan keselur uhan ser t a keunt ungan.
- Siapa di belakang per mint aan ker j a ini?
- Siapa yang akan memakai solusi ini?
- Apakah keunt ungan ekonomi dar i solusi yang sukses?
- Adakah sumber daya lain bagi solusi ini?
* Per t anyaan yang memungkinkan analis memahami masalah lebih baik dan
pelanggan menyuar akan per sepsi t ent ang sebuah solusi.
- Bagaimana Anda (pelanggan) menandai out put yg baik yg akan dihasilkan
oleh sebuah solusi yg baik?
- Masalah apa yang dit uj u solusi ini?
- Dapat kah anda menggambar kan lingkungan dimana solusi akan dipakai?
- Adakah bat asan at au isu kiner j a khusus yg akan mempengar uhi
PL ber int er aksi dengan elemen sist em ber basis komput er . Konsep sebuah
int er f ace diint er pr et asi unt uk menent ukan:
1. Har dwar e yg mengeksekusi PL dan device yg dikont r ol secar a t idak
langsung oleh PL
2. Sof t war e yg sudah ada dan har us dihubungkan dengan PL yg bar u
3. Manusia yg menggunakan PL melalui keyboar d at au per angkat I / O lain
4. Pr osedur
SUMBER DAYA
1. Manusia
2. Per angkat Lunak
Kat egor i yg diusulkan BEUNATAN
- Komponen Of f -t he-self
- Komponen Full-Exper ience
- Komponen Par t ial-Exper ience
- Komponen Bar u
3. Lingkungan (Sof t war e Engineer ing Envir onment - SEE), menggabungkan
PL dan Per angkat Ker as.
Rekayasa Perangkat Lunak B5 - YC
Hal : 3
Est imasi biaya dan usaha dapat dilakukan dengan car a :
1. Menunda est imasi sampai akhir pr oyek.
2. Ber dasar kan est imasi pada pr oyek yg mir ip sebelumnya.
3. Menggunakan ' t eknik dekomposisi' yg r elat if seder hana u/ est imasi biaya
dan usaha pr oyek.
4. Menggunakan sat u at au lebih model empir is bagi est imasi usaha dan biaya
PL.
Akur asi est imasi pr oyek PL didasar kan pada :
1. Tingkat dimana per encana t elah dengan t epat mengest imasi ukur an pr oduk
yg akan dibuat .
2. Kemampuan mengest imasi ukur an ke dalam ker j a manusia, wakt u kalender ,
dan dolar .
3. Tingkat dimana r encana pr oyek mencer minkan kemampuan t im PL.
4. St abilit as syar at pr oduk ser t a lingkungan yg mendukung usaha
pengembangan PL.
Put nam dan Myer s mengusulkan 4 masalah penent uan ukur an :
- Fuzzy- logic sizing (logika kabur )
Per encana har us mengident if ikasi t ipe aplikasi, membuat besar annya dalam
skala kuant it at if kemudian dibandingkan dengan r ent ang or isinil.
- Funct ion point sizing
Per encana mengembangkan est imasi ber dasar kan kar akt er ist ik domain
inf or masi.
- St andar d component sizing
PL dibangun dar i sej umlah ' komponen st andar ' yg umum (subsist em, modul,
lapor an, pr ogr am int er akt if ).
- Change sizing
Digunakan j ika PL yang ada har us dimodif ikasi dengan banyak car a sebagai
bagian dar i pr oyek.
Rekayasa Perangkat Lunak B5 - YC
Hal : 4
Dat a bar is kode (LOC) dan t it ik f ungsi (FP) pada est imasi pr oyek digunakan sbg :
1. var iabel est imasi yg dipakai unt uk mengukur masing-masing elemen PL.
2. met r ik baseline yg dikumpulkan dar i pr oyek yg lalu dan dipakai dengan
var iabel est imasi unt uk mengembangakan pr oyeksi ker j a dan biaya.
Expect ed Value unt uk var iabel est imasi :
EV = (S opt + 4S m + S pess) / 6
EV
= Expect ed value
Sopt
= Est imasi opt imist ik
Sm
= Est imasi paling ser ing
Spess
= Est imasi pesimist ik
Apakah est imasi ini benar ? ' Kit a t idak yakin!'
Bagaimanapun canggih t eknik est imasi har us di-cr oss-check dengan pendekat an
lain.
Cont oh est imasi ber basis LOC
PL CAD akan mener ima dat a geomet r i dua dan t iga demensi dar i seor ang
per ekayasa yang akan ber int er aksi dan mengont r ol sist em CAD melalui suat u
int er f ace pemakai. Kaj ian spesif ikasi sist em menunj ukkan bahwa PL akan
mengeksekusi Wor kst at ion dan har us ber int er aksi dengan ber bagai per iper al
gr af is komput er spt mouse, digit izer dan pr int er laser .
Diket ahui :
Per hit ungan LOC unt uk f ungsi analisis geomet r i 3D (3DGA) :
opt imis
: 4600
most likely : 6900
pesimist ik : 8600
EV = (4600 + 4* 6900 + 8600) / 6
= 6800 LOC
Rekayasa Perangkat Lunak B5 - YC
Hal : 5
J umlah t er sebut dimasukkan ke dalam t abel, begit u j uga unt uk per hit ungan yang
lain. Sehingga diper oleh :
Tabel per kir aan (est imasi) unt uk met ode LOC
Fungsi
LOC t er est imasi
int er f ace pemakai & f asilit as kont r ol (UI CF)
analisis geomet r ik dua demensi (2DGA)
analisis geomet r ik t iga demensi (3DGA)
manaj emen dat abse (DBM)
f asilit as display gr af is komput er (CGDF)
kont r ol per iper al (PC)
modul analisis desain (DAM)
2.300
5.300
6.800
3.350
4.950
2.100
8.400
bar is kode t er est imasi
33.200
J ika :
Pr odukt if it as r at a- r at a or ganisasional = 620 LOC/ per son-mont h
Upah kar yawan
= $ 8.000 per bulan
Biaya per bar is kode = $ 13
Maka :
Tingkat pr odukt if it as = j umlah t it ik f ungsi
j umlah or ang-bulan
J umlah kar yawan
= 33200 LOC
620 LOC/ bln
= 53,5 ≈ 54 or ang
Est imasi biaya pr oyek ber dasar LOC
= 33.200 LOC * $ 13
= $ 431.600
Est imasi biaya pr oyek ber dasar upah
= 54 or ang * $ 8.000
= $ 432.000
Rekayasa Perangkat Lunak B5 - YC
Hal : 6
Est imasi ber basis FP (Funct ion Point )
Dekomposisi unt uk per hit ungan ber basis FP ber f okus pada har ga domain inf o
dar ipada f ungsi PL. Per encana pr oyek memper kir akan input , out put , inquir y, f ile
dan int er f ace ekst er nal. Unt uk t uj uan per kir aan t er sebut f akt or pembobot an
kompleksit as diasumsikan menj adi r at a-r at a.
Set iap f akt or pembobot an kompleksit as diest imasi dan f akt or penyesuaian
kompleksit as dihit ung seper t i dibawah ini :
Fakt or
Har ga
Backup and r ecover y
4
Komunikasi dat a
2
Pemr osesan t er dist r ibusi
0
Kiner j a kr it is
4
Lingkungan oper asi yang ada
3
Ent r i dat a on-line
4
Tr ansaksi input pada layar ganda
5
File mast er yang diper bar ui on-line secar a on-line 3
Nilai kompleks domain inf or masi
5
Pemr osesan int er nal yang kompleks
5
Kode yg didesain unt uk dapat dipakai lagi
4
Konver si/ inst alasi dalam disain
3
I nst alasi ganda
5
Aplikasi yg didesain bagi per ubahan
5
Fakt or penyesuaian kompleksit as
1.17
TOTAL
53.17
Rekayasa Perangkat Lunak B5 - YC
Hal : 7
Per kir aan har ga domain inf or masi :
Tabel per kir aan har ga domain inf or masi
nilai domain inf or masi
j umlah
j umlah
j umlah
j umlah
j umlah
input
out put
inquir y
f ile
int er f ace ekst er nal
opt
likely
pess
20
12
16
4
2
24
15
22
4
2
30
22
28
5
3
j umlah t ot al
bobot
j umlah FP
4
5
4
10
7
96
80
88
40
14
318
j umlah est imasi (lihat r umus EV)
bobot (lihat kembali bab 4)
j umlah FP = j umlah est imasi * bobot
Tot al f akt or pembobot an = ΣFi = 53.17
Tot al FP
= 318
FP t er est imasi = j umlah t ot al * ( 0.65 + 0.01 * ΣFi )
= 318 * ( 0.65 + 0.01 * 53.17 )
= 375
Diket ahui :
Pr odukt if it as
Upah
Biaya FP
j umlah
est imasi
24
16
22
4
2
= 6.5 LOC/ pm (dar i hist or is)
= $ 8.000/ m
= $ 8.000 = $ 1.230
65 LOC
Est imasi biaya pr oyek
= Biaya FP * FP t er est imasi
= $ 1.230 * 375
= $ 461.250
Rekayasa Perangkat Lunak B5 - YC
Usaha t er est imasi
= Tot al biaya
upah/ p
= $ 461.250
$ 8.000
Hal : 8
= 58 p/ m
MODEL COCOMO
Bar r y Boehm memper kenalkan hir ar ki model est imasi PL dengan nama COCOMO
(COnst r uct ive COst MOdel = Model Biaya Konst r ukt if ) yang ber bent uk sbb :
1. Model COCOMO Dasar
Menghit ung usaha pengembangan PL (dan biaya) sbg f ungsi dar i ukur an
pr ogr am yg diekspr esikan dalam bar is kode yg diest imasi (LOC).
2. Model COCOMO I nt er mediat e
Menghit ung usaha pengembangan PL sbg f ungsi ukur an pr ogr am dan
ser angkaian ' pengendali biaya' yg menyangkut penilaian yg subyekt if t hd
pr oduk, per angkat ker as, per sonil dan at r ibut pr oyek.
3. Model COCOMO Advance
Menghubungkan semua kar akt er ist ik ver si int er mediat e dg penilaian t hd
pengar uh pengendali biaya pd set iap langkah (analis, per ancangan, dll) dar i
pr oses r ekayasa PL.
Model COCOMO mendef inisikan 3 kelas pr oyek PL yi :
1. Model Or ganik
Ukur an pr oyek r elat if kecil, PL yang dibuat at au dikembangkan lebih simpel
dengan aplikasi ker j a yg baik. Misal pr ogr am analisis t er mal yang
dikembangkan unt uk kelompok t r ansf er panas.
2. Model Semi Det ached
Ukur an pr oyek dan kekompleksan per angkat cukup besar dengan
pengalaman ker j a campur an (ada yg t elah ber pengalaman dan ada yg belum
ber pengalaman). Misal sist em pemr osesan t r ansaksi dengan syar at t er t ent u
unt uk per angkat ker as t er minal dan per angkat lunak dat abase.
3. Model Embedded
Ukur an pr oyek dan kekompleksan PL yg dikembangkan at au diker j akan
besar . Misal per angkat lunak kont r ol pener bangan unt uk pesawat udar a.
Rekayasa Perangkat Lunak B5 - YC
Hal : 9
Pesamaan COCOMO Dasar
bb
E = ab (KLOC)
db
D = cb E
Dimana :
E = Ef f or t (usaha yang diaplikasikan - pm)
D = wakt u pengembangan (m)
KLOC = j umlah per kir aan bar is kode (dalam r ibuan)
ab , bb , cb , db = koef isien (lihat t abel)
Tabel Model COCOMO Dasar
Pr oyek PL
ab
bb
or ganik
2.4
1.05
semi-det ached
3.0
1.12
embedded
3.6
1.20
cb
2.5
2.5
2.5
db
0.38
0.35
0.32
Model dasar ini dapat diper luas dengan memper t imbangkan kumpulan ' at r ibut
pengendali biaya' yg dikelompokkan dalam 4 kat egor i ut ama :
1. At r ibut pr oduk
- ukur an keandalan pr oyek
- ukur an dar i aplikasi dat abase
- kekompleksan pr oduk
2. At r ibut per angkat ker as
- kendala per f or mansi r un-t ime
- kendala memor i
- lingkungan dar i violabilit y dar i vir t ual memor i
- wakt u per put ar an yg diper lukan
3. At r ibut per sonil
- kemampuan sist em analis
- kemampuan sof t war e engineer ing
- pengalaman aplikasi
Rekayasa Perangkat Lunak B5 - YC
Hal : 10
- pengalaman vir t ual mesin
- pengalaman bahasa pemr ogr aman
4. At r ibut pr oyek
- pemakaian alat bant u PL
- met ode aplikasi sof t war e engineer ing
- j adwal pengembangan
Masing-masing dar i 15 at r ibut di at as dir at a- r at a dlm sebuah skala 6 t it ik dg
r ent ang dar i ' sangat r endah' ke ' sangat t inggi' (dlm kepent ingan at au har ga).
Per samaan COCOMO I nt er mediat e
bi
E = ai (KLOC) * EAF
dimana :
EAF = Ef f or t Adj usment Fact or (f akt or penyesuaian usaha)
yg mempunyai r ange ant ar a 0.9 sampai 1.4
ai , bi = koef isien (lihat t abel)
Tabel Model COCOMO I nt er mediat e
Pr oyek PL
ai
bi
or ganik
3.2
1.05
semi-det ached
3.0
1.12
embedded
2.8
1.20
Rekayasa Perangkat Lunak B5 - YC
Hal : 11
Cont oh est imasi model COCOMO
Kit a aplikasikan model dasar pada cont oh PL CAD sebelumnya dengan koef isien
seper t i pada t abel
bb
E = ab (KLOC)
E = 2.4 (KLOC)1.05
= 2.4 (33.2)1.05
= 95 pm
Har ga ini j auh lebih t inggi dibanding est imasi sebelumnya kar ena model
COCOMO mengasumsikan t ingkat LOC/ pm yang j auh lebih r endah.
Unt uk menghit ung dur asi pr oyek :
db
D = cb E
D = 2.5 (E) 0.38
= 2.5 (95)0.38
= 12.3 bulan
Har ga dur asi pr oyek memungkinkan per encana unt uk menent ukan j umlah or ang
yang diset uj ui (N)
N = E/ D
= 95/ 12.3
= 7,7 ≈ 8 or ang
Kenyat aannya, per encana dapat memut uskan hanya menggunakan 4 or ang saj a
dan pemper panj ang dur asi pr oyek.
Cat at an : Hubungan ant ar a usaha dan wakt u t idak linier .
Rekayasa Perangkat Lunak B5 - YC
Hal : 12
KEPUT USAN MAKE- BUY
Pada aplikasi PL, dar i segi biaya ser ing lebih ef ekt if membeli dar i pada
mengembangkan sendir i. Manaj er RPL dihadapkan pada keput usan make-buy
dengan pilihan :
1. PL dapat dibeli (at au lisensi) of f -t he-self .
2. Komponen PL f ull-exper ience dan par t ial-exper ience, dapat diper oleh dan
kemudian dimodif ikasi dan int egr asi unt uk memenuhi kebut uhan sendir i.
3. PL dapat dibuat cust om-built oleh kont r akt or luar unt uk memenuhi
spesif ikasi pembeli.
Unt uk pr oduk PL yang mahal, langkah- langkah di bawah ini dapat dipet imbangkan:
1. Kembangkan spesif ikasi unt uk f ungsi dan kiner j a PL yg diper lukan.
2. Per kir akan biaya int er nal unt uk pengembangan dan t anggal penyampaian.
3a. Pilih t iga at au empat calon aplikasi yang paling cocok dengan aplikasi
anda.
3b. Pilih komponen yang r eusable yg dapat membant u konst r uksi aplikasi yg
diper lukan.
4. Kembnagkan sebuah mat r iks per bandingan unt uk membandingkan calon
PL.
5. Evaluasi masing-masing paket PL ber dasar kan kualit as pr oduk
sebelumnya, dukungan penj ual, ar ah pr oyek, r eput asi dsb.
6. Hubungi pemakai PL lain dan mint alah pendapat mer eka.
Pada analisis akhir , keput usan make-buy ber dasar kan kondisi sbb:
1. Tanggal penyampaian
2. Biaya yang diper lukan
3. Dukungan
Rekayasa Perangkat Lunak B5 - YC
Hal : 13
MEMBUAT POHON KEPUT USAN
Rekayasa at au or ganisasi PL dapat menggunakan t eknik st at ist ik analisis pohon
keput usan dengan pilihan :
1. membangun sist em X dar i per mulaan
2. menggunakan lagi komponen par t ial exper ience yang ada unt uk membangun
sist em
3. membeli sebuah pr oduk per angkat lunak yang dapat diper oleh dan
dimodif ikasi unt uk memenuhi kebut uhan lokal
4. mengkont r akkan pengembangan PL ke vendor luar
Bila sist em dibangun dar i per mulaan, hanya 70% pr obabilit asnya sehingga
peker j aan menj adi sulit . Per encana pr oyek dapat mempr oyeksikan usaha
pengembangan yang sulit ber biaya $ 450.000, usaha yang seder hana diper kir akan
ber biaya $ 380.000.
Expect ed value unt uk biaya dihit ung sepanj ang cabang pohon keput usan, adalah :
Expect ed Cost = Σ (j alur pr obabilit as)i * (biaya j alur t er est imasi)i
dimana i adalah gar is edar pohon keput usan.
Cont oh :
expect ed cost build
expect ed cost r euse
expect ed cost buy
expect ed cost cont r act
= 0.30 ($ 380 K) + 0.70 ($ 450 K) = $ 429 K
= 0.40 ($ 275 K) + 0.60 (0.20 ($ 310 K) + 0.80 ($ 490 K))
= $ 382 K
= 0.70 ($ 210 K) + 0.30 ($ 400 K) = $ 267 K
= 0.60 ($ 350 K) + 0.40 ($ 500 K) = $ 410 K
Ber dasar biaya pr obabilit as dan pr oyeksi, expect ed cost yang paling r endah
adalah pilihan buy
Rekayasa Perangkat Lunak B5 - YC
Hal : 14
Cat at an : Banyak kr it er ia yang har us diper t imbangakan, bukan hanya biaya,
seper t i pengalaman pengembang/ vendor / kont r akt or , penyesuaian
kebut uhan,kecender ungan per ubahan dapat mempengar uhi keput usan akhir !
Rekayasa Perangkat Lunak B5 - YC
Hal : 15
$ 380.000
Sist em X