SlideShare ist ein Scribd-Unternehmen logo
1 von 5
Downloaden Sie, um offline zu lesen
1
Software EngineeringSoftware Engineering
SOFTWARE PROCESS AND PROJECTSOFTWARE PROCESS AND PROJECT
METRICSMETRICS
Oleh :Oleh :
Ir. I Gede Made Karma, MTIr. I Gede Made Karma, MT
2
Pengukuran SoftwarePengukuran Software
Pengukuran langsungPengukuran langsung
Proses : biaya dan usaha yang dilakukan.Proses : biaya dan usaha yang dilakukan.
Produk : jumlah baris kode, kecepatan eksekusi, ukuranProduk : jumlah baris kode, kecepatan eksekusi, ukuran
memory dan jumlah cacat pada periode waktu tertentu.memory dan jumlah cacat pada periode waktu tertentu.
Relatif mudah untuk dikerjakan.Relatif mudah untuk dikerjakan.
Pengukuran tidak langsungPengukuran tidak langsung
Fungsionalitas, kualitas, kompleksitas, efisiensi,Fungsionalitas, kualitas, kompleksitas, efisiensi,
keandalan, maintainability.keandalan, maintainability.
Lebih sulit untuk menilai.Lebih sulit untuk menilai.
3
Normalisasi MetrikNormalisasi Metrik
normalisasi berorientasi ukuran — pendekatan baris code
normalisasi berorientasi fungsi — pendekatan poin fungsi
Metrik produk (private, individu)
Metrik proses (publik, organisasi)
Metrik proyek (public, tim softwaredikombinasi
dikonsolidasi
4
Metrik Berorientasi Ukuran (1)Metrik Berorientasi Ukuran (1)
Diperoleh dengan normalisasi ukuran kualitas dan/atauDiperoleh dengan normalisasi ukuran kualitas dan/atau
produktivitas dengan mempertimbangkan ukuran dari softwareproduktivitas dengan mempertimbangkan ukuran dari software
yang telah dihasilkan.yang telah dihasilkan.
66646425625610501050314314434320,20020,200GammaGamma
55646432132112241224440440626227,20027,200BetaBeta
332929134134365365168168242412,10012,100AlphaAlpha
OrangOrangCacatCacatKesalahanKesalahanHalamanHalamanDolar(000)Dolar(000)UsahaUsahaLOCLOCProyekProyek
5
Metrik Berorientasi Ukuran (2)Metrik Berorientasi Ukuran (2)
errorserrors per KLOC (ribuan barisper KLOC (ribuan baris codecode))
cacat per KLOCcacat per KLOC
$ per LOC$ per LOC
Halaman dokumentasi per KLOCHalaman dokumentasi per KLOC
errorserrors / orang/ orang--bulanbulan
LOC per orangLOC per orang--bulanbulan
$ / halaman dokumentasi$ / halaman dokumentasi
6
Metrik Berorientasi Ukuran (3)Metrik Berorientasi Ukuran (3)
Tidak secara universal diterima sebagai cara terbaikTidak secara universal diterima sebagai cara terbaik
untuk mengukur proses pengembangan software.untuk mengukur proses pengembangan software.
Kontroversi terjadi seputar pemakaian baris kodeKontroversi terjadi seputar pemakaian baris kode
sebagai kunci ukuran.sebagai kunci ukuran.
Pro : LOC mudah diukur dan banyak model estimasiPro : LOC mudah diukur dan banyak model estimasi
software mempergunakan LOC.software mempergunakan LOC.
Kontra : LOC tergantung pada bahasaKontra : LOC tergantung pada bahasa
pemrograman, tidak adil bagi rancangan yang baguspemrograman, tidak adil bagi rancangan yang bagus
dengan program yang lebih pendek, tidak mudahdengan program yang lebih pendek, tidak mudah
diakomadasi dengan bahasa nonprosedural.diakomadasi dengan bahasa nonprosedural.
Untuk pemakaian estimasi diperlukan tingkatUntuk pemakaian estimasi diperlukan tingkat
kedetilan yang sulit diperoleh.kedetilan yang sulit diperoleh.
7
Metrik Berorientasi FungsiMetrik Berorientasi Fungsi
•• Mempergunakan ukuran fungsionalitas dariMempergunakan ukuran fungsionalitas dari
aplikasi yang diserahkan.aplikasi yang diserahkan.
•• Tidak dapat diukur secara langsung, makaTidak dapat diukur secara langsung, maka
diperoleh secara tidak langsung dengandiperoleh secara tidak langsung dengan
mempergunakan pengukuran langsung lain.mempergunakan pengukuran langsung lain.
•• Function PointFunction Point diperoleh dengan mempergunakandiperoleh dengan mempergunakan
hubungan empiris berdasarkan pengukuranhubungan empiris berdasarkan pengukuran
langsung dari domain informasi software danlangsung dari domain informasi software dan
penilaian kompleksitas software.penilaian kompleksitas software.
8
Perhitungan Function Point (1)Perhitungan Function Point (1)
Analyze information
domain of the
application
and develop counts
Weight each count by
assessing complexity
Assess influence of
global factors that affect
the application
Compute
function points
Establish count for input domain and
system interfaces
Assign level of complexity or weight
to each count
Grade significance of external factors, F
such as reuse, concurrency, OS, ...
degree of influence: N = F
i
complexity multiplier: C = (0.65 + 0.01 x N)
function points = (count x weight) x C
where:
i
9
Perhitungan Function Point (2)Perhitungan Function Point (2)
complexity multiplier
function points
number of user inputs
number of user outputs
number of user inquiries
number of files
number of ext.interfaces
measurement parameter
3
4
3
7
5
count
weighting factor
simple avg. complex
4
5
4
10
7
6
7
6
15
10
=
=
=
=
=
count-total
X
X
X
X
X
10
Perhitungan Function Point (3)Perhitungan Function Point (3)
Number of user inputs input pemakai yang menyediakan data
tertentu yang berorientasi pada aplikasi software, dihitung.
Number of user outputs output pemakai yang menyediakan
informasi yang berorientasi pada aplikasi kepada pemakai, dihitung.
Contoh : laporan, tampilan layar, pesan kesalahan, dll.
Number of user inquiries input on-line yg mengakibatkan
munculnya beberapa respon software yang cepat, berbentuk output
on-line, dihitung.
Number of user files file master logika, dihitung
Number of external interfaces interface yang dibaca oleh
mesin yang digunakan dalam memindahkan informasi ke sistem lain,
dihitung.
Nilai Domain Informasi :Nilai Domain Informasi :
11
Perhitungan Function Point (4)Perhitungan Function Point (4)
UntukUntuk menghitungmenghitung FPFP dipakaidipakai hubunganhubungan ::
FP =FP = Count TotalCount Total x [0,65 + 0,01 xx [0,65 + 0,01 x EEFFii]]
CountCount TotalTotal adalahadalah jumlahjumlah semuasemua entrientri padapada tabel.tabel.
FFii (i = 1(i = 1 sampaisampai 14)14) adalahadalah ““hargaharga penyesuaianpenyesuaian kompleksitaskompleksitas””
berdasarkanberdasarkan responrespon pertanyaanpertanyaan berikut.berikut.
SetiapSetiap faktorfaktor dinilai dengandinilai dengan skalaskala 00 sampaisampai 55
0 1 20 1 2 3 4 53 4 5
Tidak
berpengaruh
Insidental
Moderat
Rata-rata Signifikan Esensial
12
1.1. ApakahApakah sistemsistem membutuhkanmembutuhkan backupbackup dandan recoveryrecovery yangyang
andal?andal?
2.2. ApakahApakah komunikasikomunikasi datadata dibutuhkandibutuhkan??
3.3. ApakahApakah ada fungsiada fungsi pemrosesanpemrosesan terdistribusi?terdistribusi?
4.4. ApakahApakah kinerjakinerja merupakan sesuatu yang penting?merupakan sesuatu yang penting?
5.5. ApakahApakah sistemsistem akanakan berjalanberjalan padapada lingkunganlingkungan operasionaloperasional
yangyang ada,ada, palingpaling banyakbanyak digunakandigunakan??
6.6. ApakahApakah sistemsistem membutuhkanmembutuhkan entry data secara online?entry data secara online?
7.7. Apakah entry data online membutuhkan transaksi input melaluiApakah entry data online membutuhkan transaksi input melalui
banyak layar atau operasi?banyak layar atau operasi?
Perhitungan Function Point (5a)Perhitungan Function Point (5a)
Pertanyaan :Pertanyaan :
13
Perhitungan Function Point (5b)Perhitungan Function Point (5b)
8.8. ApakahApakah file masterfile master diperbaruidiperbarui secarasecara online?online?
9.9. ApakahApakah input, output, fileinput, output, file atauatau inquiriinquiri komplekskompleks??
10.10. ApakahApakah pemrosesanpemrosesan internalinternal komplekskompleks??
11.11. ApakahApakah kodekode dirancangdirancang untukuntuk dapatdapat dipakai kembalidipakai kembali??
12.12. ApakahApakah konversikonversi dandan instalasi termasuk dalam rancangan?instalasi termasuk dalam rancangan?
13.13. ApakahApakah sistemsistem dirancangdirancang untukuntuk banyak instalasi untukbanyak instalasi untuk
organisasiorganisasi yang berbeda?yang berbeda?
14.14. ApakahApakah aplikasiaplikasi dirancangdirancang untukuntuk memfasilitasimemfasilitasi perubahanperubahan dandan
mudah dipergunakan olehmudah dipergunakan oleh pemakai?pemakai?
14
Metrik Berorientasi FungsiMetrik Berorientasi Fungsi
errorserrors per FP (Function Point : poin fungsi)per FP (Function Point : poin fungsi)
cacat per FPcacat per FP
$ per FP$ per FP
halaman dokumentasi per FPhalaman dokumentasi per FP
FP per orangFP per orang--bulanbulan
15
Metrik Function PointMetrik Function Point Diperluas (1)Diperluas (1)
Feature pointsFeature points supersetsuperset daridari pengukuranpengukuran functionfunction
pointpoint yangyang dapatdapat diterapkanditerapkan padapada aplikasiaplikasi softwaresoftware
rekayasarekayasa dandan sistem.sistem.
PengukurannyaPengukurannya mengakomodasimengakomodasi aplikasiaplikasi yangyang
kompleksitaskompleksitas algoritmanyaalgoritmanya tinggitinggi: real: real--time,time, kontrolkontrol
prosesproses,, aplikasiaplikasi embedded software.embedded software.
3D Function Point3D Function Point pendekatanpendekatan BoeingBoeing
mengintegrasikanmengintegrasikan dimensidimensi datadata perangkatperangkat lunaklunak
dengandengan dimensidimensi kontrolkontrol dandan fungsionalfungsional memberikanmemberikan
sebuahsebuah pengukuranpengukuran yangyang berorientasiberorientasi padapada fungsi.fungsi.
16
Metrik Function PointMetrik Function Point Diperluas (2)Diperluas (2)
DimensiDimensi DataData
PenghitunganPenghitungan datadata yangyang disimpandisimpan (file)(file) dandan data externaldata external
(input, output, query,(input, output, query, referensireferensi eksternaleksternal)) dipakaidipakai bersamabersama
dengandengan pengukuranpengukuran kompleksitaskompleksitas untukuntuk mendapatkanmendapatkan
dimensidimensi data.data.
DimensiDimensi FungsionalFungsional
DiukurDiukur dengandengan mempertimbangkanmempertimbangkan ““jumlahjumlah operasioperasi internalinternal
yangyang dibutuhkandibutuhkan untukuntuk mengubahmengubah inputinput keke data output”.data output”.
TransformasiTransformasi deretanderetan langkahlangkah pemrosesanpemrosesan yangyang dibatasidibatasi
oleholeh sejumlahsejumlah pernyataanpernyataan semantik.semantik.
TingkatTingkat kompleksitaskompleksitas daridari transformasitransformasi merupakanmerupakan fungsifungsi
daridari jumlahjumlah tahapantahapan prosesproses dandan jumlahjumlah pernyataanpernyataan
semantiksemantik yangyang mengendalikanmengendalikan tahapantahapan pemrosesan.pemrosesan.
17
MenetapkanMenetapkan KompleksitasKompleksitas TransformasiTransformasi
3D Function Point3D Function Point
TinggiTinggiTinggiTinggiRataRata--ratarata21+21+
TinggiTinggiRataRata--ratarataRendahRendah1111 –– 2020
RataRata--ratarataRendahRendahRendahRendah11 -- 1010
11+11+66 -- 101011 -- 55
Pernyataan
Semantik
Langkah2
Pemrosesan
18
Metrik Function Point Diperluas (3)Metrik Function Point Diperluas (3)
DimensiDimensi KontrolKontrol
DiukurDiukur dengandengan menghitungmenghitung jumlahjumlah transisitransisi antarantar kondisikondisi
((statestate).).
KondisiKondisi mewakilimewakili beberapabeberapa modemode tingkahtingkah lakulaku yangyang
dapatdapat diobersvasidiobersvasi secarasecara eksternal.eksternal.
TransisiTransisi terjaditerjadi sebagaisebagai hasilhasil daridari beberapa kejadianbeberapa kejadian
yangyang menyebabkanmenyebabkan softwaresoftware atauatau sistemsistem mengubahmengubah modemode
tingkahtingkah lakunya.lakunya.
Pada saat perhitungan 3D function point, transisi tidakPada saat perhitungan 3D function point, transisi tidak
menentukan nilai kompleksitas.menentukan nilai kompleksitas.
19
Metrik Function Point Diperluas (4)Metrik Function Point Diperluas (4)
MenghitungMenghitung 3D Function Point :3D Function Point :
indeksindeks = I + O + Q + F + E + T + R= I + O + Q + F + E + T + R
II, O, Q, F, E, T dan R, O, Q, F, E, T dan R adalahadalah nilainilai bobotbobot kompleksitaskompleksitas daridari
input, output, inquiry,input, output, inquiry, strukturstruktur data internal, filedata internal, file eskternaleskternal,,
transformasi dan transisi.transformasi dan transisi.
NilaiNilai bobotbobot kompleksitaskompleksitas == NNililWWilil ++ NNiaiaWWiaia ++ NNihihWWihih
NNilil,, NNiaia dandan NNihih adalahadalah jumlahjumlah kemunculankemunculan elemenelemen ii
((contohnyacontohnya output)output) padapada setiapsetiap kompleksitaskompleksitas ((rendahrendah, rata, rata--
rata,rata, tinggitinggi),), dandan WWilil ,, WWiaia dandan WWihih merupakanmerupakan bobotnyabobotnya
masingmasing--masing.masing.
20
Penghitungan Indeks 3D Function PointPenghitungan Indeks 3D Function Point
KomplesitasKomplesitas PembobotanPembobotan
ElemenElemen pengukuranpengukuran rendahrendah sedangsedang tinggitinggi
StrukturStruktur data internaldata internal XX 77 ++ XX 1010 ++ XX 1515 ==
DataData eksternaleksternal XX 55 ++ XX 77 ++ XX 1010 ==
JumlahJumlah inputinput pemakaipemakai XX 33 ++ XX 44 ++ XX 66 ==
JumlahJumlah outputoutput pemakaipemakai XX 44 ++ XX 55 ++ XX 77 ==
JumlahJumlah penyelidikpenyelidik XX 33 ++ XX 44 ++ XX 66 ==
pemakaipemakai
TransformasiTransformasi XX 77 ++ XX 1010 ++ XX 1515 ==
TransisiTransisi XX nn/a/a ++ XX nn/a +/a + XX n/n/aa ==
Indeks functionpoint 3 D
21
Rekonsiliasi Perbedaan PenerapanRekonsiliasi Perbedaan Penerapan
MetrikMetrik
Relasi antara LOC dan Function Point sangatRelasi antara LOC dan Function Point sangat
tergantung pada bahasa pemrograman yangtergantung pada bahasa pemrograman yang
dipergunakan untuk mengimplementasikandipergunakan untuk mengimplementasikan
software dan kualitas dari rancangan.software dan kualitas dari rancangan.
22
FaktorFaktor ygyg mempengaruhimempengaruhi produktivitasproduktivitas PL:PL:
ManusiaManusia jumlahjumlah dandan keahliankeahlian organisasiorganisasi pengembang.pengembang.
MasalahMasalah kompkesitaskompkesitas masalahmasalah yangyang dipecahkandipecahkan dandan
jumlahjumlah perubahanperubahan dalamdalam batasanbatasan dandan persyaratanpersyaratan
rancangan.rancangan.
ProsesProses teknisteknis analisisanalisis dandan rancanganrancangan yangyang digunakandigunakan,,
bahasabahasa,, pirantipiranti CASECASE yangyang ada,ada, dandan teknikteknik kajian.kajian.
SumberSumber dayadaya ketersediaanketersediaan pirantipiranti CASECASE dandan sumbersumber
dayadaya perangkatperangkat keraskeras dandan perangkatperangkat lunak.lunak.
23
www.ifpug.orgwww.ifpug.org
http://ourworld.compuserve.com/homepages/softcomp/http://ourworld.compuserve.com/homepages/softcomp/
Informasi Metrik Function PointInformasi Metrik Function Point
24
MetrikMetrik untukuntuk KualitasKualitas SoftwareSoftware
KualitasKualitas sistemsistem,, aplikasiaplikasi atauatau produkproduk
persyaratanpersyaratan yangyang menjelaskanmenjelaskan masalahmasalah,,
rancanganrancangan modelmodel solusisolusi,, kodekode ygyg membuatmembuat
programprogram dapatdapat dieksekusidieksekusi,, dandan pengujianpengujian
softwaresoftware untukuntuk menemukanmenemukan kesalahan.kesalahan.
TujuanTujuan utamautama padapada tingkattingkat proyekproyek adalahadalah
untukuntuk mengukurmengukur kesalahankesalahan dandan cacatcacat
25
FaktorFaktor yangyang MempengaruhiMempengaruhi KualitasKualitas
OperasiOperasi produkproduk ((pemanfaatannya)pemanfaatannya)
RevisiRevisi produkproduk (perubahannya(perubahannya))
TransisiTransisi produkproduk ((memodifikasimemodifikasi agaragar bekerjabekerja
dalamdalam lingkunganlingkungan yangyang berbedaberbeda))
26
Pengukuran Kualitas (1)Pengukuran Kualitas (1)
CorrectnessCorrectness derajat yang menunjukkan operasi programderajat yang menunjukkan operasi program
dikaitkan dengan spesifikasi.dikaitkan dengan spesifikasi.
Tingkat dimana software melakukan fungsi yang ditetapkan.Tingkat dimana software melakukan fungsi yang ditetapkan.
Ukuran:Ukuran: cacat per KLOCcacat per KLOC, dimana cacat didefinisikan sebagai kurangnya, dimana cacat didefinisikan sebagai kurangnya
kesesuaian dengan persyaratan.kesesuaian dengan persyaratan.
MaintainabilityMaintainability derajat yang menunjukkan responsif programderajat yang menunjukkan responsif program
pada perubahanpada perubahan
Kemudahan dimana program dapat dikoreksi jika ditemukan kesalahaKemudahan dimana program dapat dikoreksi jika ditemukan kesalahan,n,
diadaptasi jika lingkungannya berubah, atau ditingkatkan jika pediadaptasi jika lingkungannya berubah, atau ditingkatkan jika pelangganlanggan
menginginkan perubahan kebutuhan.menginginkan perubahan kebutuhan.
Pengukuran metrikPengukuran metrik timetime--orientedoriented sederhana adalah ratasederhana adalah rata--rata waktu yangrata waktu yang
dibuthkan untuk berubah (MTTC), waktu untuk menganalisa perubahadibuthkan untuk berubah (MTTC), waktu untuk menganalisa perubahan,n,
merancang modifikasi yang sesuai, implementasi perubahan, pengujmerancang modifikasi yang sesuai, implementasi perubahan, pengujianian
dan mendistribusikan perubahan pada semua pemakai.dan mendistribusikan perubahan pada semua pemakai.
27
Pengukuran Kualitas (2)Pengukuran Kualitas (2)
IntegrityIntegrity derajat yang menunjukkan ketahananderajat yang menunjukkan ketahanan
program dari serangan luarprogram dari serangan luar
Mengukur kemampuan sistem untuk menahan serangan atasMengukur kemampuan sistem untuk menahan serangan atas
keamanannyakeamanannya
Atribut tambahan untuk mengukur : ancaman dan keamananAtribut tambahan untuk mengukur : ancaman dan keamanan
Ancaman : probabilitas akan serangan tipe tertentu yang terjadiAncaman : probabilitas akan serangan tipe tertentu yang terjadi
dalam suatu periode waktu tertentu.dalam suatu periode waktu tertentu.
Keamanan : probabilitas akan serangan tipe tertentu yang dipukulKeamanan : probabilitas akan serangan tipe tertentu yang dipukul
mundurmundur
Integritas =Integritas = ΣΣ [1[1-- ancaman x ( 1ancaman x ( 1 –– keamanan)] , dimana ancamankeamanan)] , dimana ancaman
dan keamanan adalah jumlah dari setiap jenis serangan.dan keamanan adalah jumlah dari setiap jenis serangan.
28
Pengukuran Kualitas (3)Pengukuran Kualitas (3)
UsabilityUsability derajat yang menunjukkan kemudahanderajat yang menunjukkan kemudahan
dalam mempergunakan programdalam mempergunakan program
Upaya untuk mengukurUpaya untuk mengukur user friendlinessuser friendliness dan dapat diukur dalamdan dapat diukur dalam
empat karakteristik :empat karakteristik :
Ketrampilan fisik dan atau intelektual untuk mempelajari sistemKetrampilan fisik dan atau intelektual untuk mempelajari sistem
Waktu yang diperlukan untuk menjadi cukup efisien dalamWaktu yang diperlukan untuk menjadi cukup efisien dalam
menggunakan sistemmenggunakan sistem
Peningkatan produktivitas bersih yang diukur ketika sistemPeningkatan produktivitas bersih yang diukur ketika sistem
digunakan cukup efisien oleh seseorangdigunakan cukup efisien oleh seseorang
Penilaian subyektif atas sikap pemakai terhadap sistemPenilaian subyektif atas sikap pemakai terhadap sistem
29
Efisiensi Penghilangan Cacat (1)Efisiensi Penghilangan Cacat (1)
DRE = (errors) / (errors + defects)
dimana
errors = masalah yang ditemukan sebelum release
defects = masalah yang ditemukan sesudah release
Nilai ideal DRE = 1, dimana tidak ditemukanNilai ideal DRE = 1, dimana tidak ditemukan
adanya cacat pada software.adanya cacat pada software.
mengukur kemampuan penyaringan dari aktivitasmengukur kemampuan penyaringan dari aktivitas
pengendalian dan penjaminan kualitas sejakpengendalian dan penjaminan kualitas sejak
diterapkan pada semua aktivitas kerangka kerjaditerapkan pada semua aktivitas kerangka kerja
prosesproses
30
Efisiensi Penghilangan Cacat (2)Efisiensi Penghilangan Cacat (2)
DRE dapat digunakanDRE dapat digunakan dalamdalam proyekproyek untukuntuk
menilaimenilai kemampuankemampuan timtim dalamdalam menemukanmenemukan
kesalahankesalahan sebelumsebelum dilewatkandilewatkan keke aktivitasaktivitas
kerangkakerangka kerjakerja berikutnya.berikutnya.
DREDREii == EEii/(E/(Eii + E+ Eii+1+1)) dimanadimana
EEii:: jumlahjumlah kesalahankesalahan ygyg ditemukanditemukan selamaselama aktivitasaktivitas RPLRPL ii
EEii+1+1 :: jumlahjumlah kesalahankesalahan ygyg ditemukanditemukan selamaselama aktivitasaktivitas RPLRPL
i+1 yangi+1 yang dapatdapat dilacakdilacak padapada kesalahankesalahan yangyang tidaktidak
ditemukanditemukan dalamdalam aktivitasaktivitas RPLRPL ii
NilaiNilai ideal DRE = 1,ideal DRE = 1, dimanadimana kesalahankesalahan akanakan didi--
filterfilter sebelumsebelum dilewatkandilewatkan keke aktivitasaktivitas
berikutnyaberikutnya

Weitere ähnliche Inhalte

Andere mochten auch

EasyFilms LLC
EasyFilms LLCEasyFilms LLC
EasyFilms LLCEasyFilms
 
Stortorget.
Stortorget.Stortorget.
Stortorget.falster5
 
The Coming Distribution War
The Coming Distribution WarThe Coming Distribution War
The Coming Distribution WarTony Parisi
 
May 17 , 2011 Stirling Henry Presentation
May 17 , 2011  Stirling Henry PresentationMay 17 , 2011  Stirling Henry Presentation
May 17 , 2011 Stirling Henry Presentationtim_denney
 
De technologie staat verder dan u denkt
De technologie staat verder dan u denktDe technologie staat verder dan u denkt
De technologie staat verder dan u denktdbintein
 
A short tutorial on why good companies do well by doing good & what americans...
A short tutorial on why good companies do well by doing good & what americans...A short tutorial on why good companies do well by doing good & what americans...
A short tutorial on why good companies do well by doing good & what americans...Daneen Kiger
 
Leonor Pacheco Palomares
Leonor Pacheco PalomaresLeonor Pacheco Palomares
Leonor Pacheco PalomaresLeonor Pacheco
 
Slactivism: Practicing your right to free speech, in the comfort of your own ...
Slactivism: Practicing your right to free speech, in the comfort of your own ...Slactivism: Practicing your right to free speech, in the comfort of your own ...
Slactivism: Practicing your right to free speech, in the comfort of your own ...8eb23
 
Virtually Anywhere
Virtually AnywhereVirtually Anywhere
Virtually AnywhereTony Parisi
 
Pakej Rujukan Peperiksaan Online Penolong Penguasa Kastam Gred W27
Pakej Rujukan Peperiksaan Online Penolong Penguasa Kastam Gred W27Pakej Rujukan Peperiksaan Online Penolong Penguasa Kastam Gred W27
Pakej Rujukan Peperiksaan Online Penolong Penguasa Kastam Gred W27John JenJen
 
Kompanihuset
KompanihusetKompanihuset
Kompanihusetfalster5
 
The Technion Library as a physical environment - July 2012
The Technion Library as a physical environment - July 2012The Technion Library as a physical environment - July 2012
The Technion Library as a physical environment - July 2012Dalia Dolev
 
Info2011 Panel: University Libraries in Israel - Centralization-Decentralizat...
Info2011 Panel: University Libraries in Israel - Centralization-Decentralizat...Info2011 Panel: University Libraries in Israel - Centralization-Decentralizat...
Info2011 Panel: University Libraries in Israel - Centralization-Decentralizat...Dalia Dolev
 

Andere mochten auch (20)

Gentanil booklet
Gentanil bookletGentanil booklet
Gentanil booklet
 
EasyFilms LLC
EasyFilms LLCEasyFilms LLC
EasyFilms LLC
 
Stortorget.
Stortorget.Stortorget.
Stortorget.
 
Presentación Corporativa Gyga
Presentación Corporativa Gyga Presentación Corporativa Gyga
Presentación Corporativa Gyga
 
Arkadaşımsın
ArkadaşımsınArkadaşımsın
Arkadaşımsın
 
The Coming Distribution War
The Coming Distribution WarThe Coming Distribution War
The Coming Distribution War
 
Presentación INNOVATION
Presentación INNOVATIONPresentación INNOVATION
Presentación INNOVATION
 
May 17 , 2011 Stirling Henry Presentation
May 17 , 2011  Stirling Henry PresentationMay 17 , 2011  Stirling Henry Presentation
May 17 , 2011 Stirling Henry Presentation
 
Online reputatie-2012
Online reputatie-2012Online reputatie-2012
Online reputatie-2012
 
Portfolio.Ipad.General
Portfolio.Ipad.GeneralPortfolio.Ipad.General
Portfolio.Ipad.General
 
De technologie staat verder dan u denkt
De technologie staat verder dan u denktDe technologie staat verder dan u denkt
De technologie staat verder dan u denkt
 
A short tutorial on why good companies do well by doing good & what americans...
A short tutorial on why good companies do well by doing good & what americans...A short tutorial on why good companies do well by doing good & what americans...
A short tutorial on why good companies do well by doing good & what americans...
 
Leonor Pacheco Palomares
Leonor Pacheco PalomaresLeonor Pacheco Palomares
Leonor Pacheco Palomares
 
Slactivism: Practicing your right to free speech, in the comfort of your own ...
Slactivism: Practicing your right to free speech, in the comfort of your own ...Slactivism: Practicing your right to free speech, in the comfort of your own ...
Slactivism: Practicing your right to free speech, in the comfort of your own ...
 
Virtually Anywhere
Virtually AnywhereVirtually Anywhere
Virtually Anywhere
 
Cantrep
CantrepCantrep
Cantrep
 
Pakej Rujukan Peperiksaan Online Penolong Penguasa Kastam Gred W27
Pakej Rujukan Peperiksaan Online Penolong Penguasa Kastam Gred W27Pakej Rujukan Peperiksaan Online Penolong Penguasa Kastam Gred W27
Pakej Rujukan Peperiksaan Online Penolong Penguasa Kastam Gred W27
 
Kompanihuset
KompanihusetKompanihuset
Kompanihuset
 
The Technion Library as a physical environment - July 2012
The Technion Library as a physical environment - July 2012The Technion Library as a physical environment - July 2012
The Technion Library as a physical environment - July 2012
 
Info2011 Panel: University Libraries in Israel - Centralization-Decentralizat...
Info2011 Panel: University Libraries in Israel - Centralization-Decentralizat...Info2011 Panel: University Libraries in Israel - Centralization-Decentralizat...
Info2011 Panel: University Libraries in Israel - Centralization-Decentralizat...
 

Ähnlich wie METRIK

Pertemuan ke 1 (perangkat lunak)
Pertemuan ke 1 (perangkat lunak)Pertemuan ke 1 (perangkat lunak)
Pertemuan ke 1 (perangkat lunak)gleebelle
 
Resume software measurement
Resume software measurementResume software measurement
Resume software measurementErwan Nur Arief
 
Chapt 5. interface design principles
Chapt 5. interface design principlesChapt 5. interface design principles
Chapt 5. interface design principlesIbnu Dzakwan
 
Laporan Revisi Function Point (Website Teknik Kimia)
Laporan Revisi Function Point (Website Teknik Kimia)Laporan Revisi Function Point (Website Teknik Kimia)
Laporan Revisi Function Point (Website Teknik Kimia)Moch. Nor Kholis
 
Software Measurement : Function Point
Software Measurement : Function PointSoftware Measurement : Function Point
Software Measurement : Function PointDendie Sanjaya
 
Laporan Revisi Function Point (Website Ekonomi Pembangunan)
Laporan Revisi Function Point (Website Ekonomi Pembangunan)Laporan Revisi Function Point (Website Ekonomi Pembangunan)
Laporan Revisi Function Point (Website Ekonomi Pembangunan)Moch. Nor Kholis
 
Rekayasa perangkat lunak
Rekayasa perangkat lunakRekayasa perangkat lunak
Rekayasa perangkat lunakWandi Parlente
 
rekayasa perangkat lunak
rekayasa perangkat lunakrekayasa perangkat lunak
rekayasa perangkat lunakWandi Parlente
 
Produk Rekasaya Perangkat Lunak
Produk Rekasaya Perangkat LunakProduk Rekasaya Perangkat Lunak
Produk Rekasaya Perangkat LunakLusiana Diyan
 
Tugas analisa faktor kualitas
Tugas analisa faktor kualitasTugas analisa faktor kualitas
Tugas analisa faktor kualitaskamalbaktir
 
Analisa Software Quality Factor
Analisa Software Quality FactorAnalisa Software Quality Factor
Analisa Software Quality Factorkamalbaktir
 
folder toni dan gieo.pptx
folder toni dan gieo.pptxfolder toni dan gieo.pptx
folder toni dan gieo.pptxToni239316
 
folder toni dan gieo.pptx
folder toni dan gieo.pptxfolder toni dan gieo.pptx
folder toni dan gieo.pptxToni239316
 
Tugas Bedah buku Software Engineering, Roger S Pressman
Tugas Bedah buku Software Engineering, Roger S PressmanTugas Bedah buku Software Engineering, Roger S Pressman
Tugas Bedah buku Software Engineering, Roger S Pressmannurudinh72
 
Pertemuan 2 pemrograman mobile.pptx
Pertemuan 2 pemrograman mobile.pptxPertemuan 2 pemrograman mobile.pptx
Pertemuan 2 pemrograman mobile.pptxTaufikIqbalR1
 
Proses rekayasa perangkat lunak
Proses rekayasa perangkat lunakProses rekayasa perangkat lunak
Proses rekayasa perangkat lunakDavy Arya Atmaja
 
Maintenance & Reengineering
Maintenance & ReengineeringMaintenance & Reengineering
Maintenance & ReengineeringPutriYuliani4
 
Bahasa pemograman
Bahasa pemogramanBahasa pemograman
Bahasa pemogramanankg44
 

Ähnlich wie METRIK (20)

Pertemuan ke 1 (perangkat lunak)
Pertemuan ke 1 (perangkat lunak)Pertemuan ke 1 (perangkat lunak)
Pertemuan ke 1 (perangkat lunak)
 
Resume software measurement
Resume software measurementResume software measurement
Resume software measurement
 
Chapt 5. interface design principles
Chapt 5. interface design principlesChapt 5. interface design principles
Chapt 5. interface design principles
 
Laporan Revisi Function Point (Website Teknik Kimia)
Laporan Revisi Function Point (Website Teknik Kimia)Laporan Revisi Function Point (Website Teknik Kimia)
Laporan Revisi Function Point (Website Teknik Kimia)
 
Software Measurement : Function Point
Software Measurement : Function PointSoftware Measurement : Function Point
Software Measurement : Function Point
 
Laporan Revisi Function Point (Website Ekonomi Pembangunan)
Laporan Revisi Function Point (Website Ekonomi Pembangunan)Laporan Revisi Function Point (Website Ekonomi Pembangunan)
Laporan Revisi Function Point (Website Ekonomi Pembangunan)
 
Rekayasa Perangkat Lunak - Model Pengembangan Sistem
Rekayasa Perangkat Lunak - Model Pengembangan SistemRekayasa Perangkat Lunak - Model Pengembangan Sistem
Rekayasa Perangkat Lunak - Model Pengembangan Sistem
 
Rekayasa perangkat lunak
Rekayasa perangkat lunakRekayasa perangkat lunak
Rekayasa perangkat lunak
 
rekayasa perangkat lunak
rekayasa perangkat lunakrekayasa perangkat lunak
rekayasa perangkat lunak
 
Produk Rekasaya Perangkat Lunak
Produk Rekasaya Perangkat LunakProduk Rekasaya Perangkat Lunak
Produk Rekasaya Perangkat Lunak
 
Tugas analisa faktor kualitas
Tugas analisa faktor kualitasTugas analisa faktor kualitas
Tugas analisa faktor kualitas
 
Analisa Software Quality Factor
Analisa Software Quality FactorAnalisa Software Quality Factor
Analisa Software Quality Factor
 
folder toni dan gieo.pptx
folder toni dan gieo.pptxfolder toni dan gieo.pptx
folder toni dan gieo.pptx
 
folder toni dan gieo.pptx
folder toni dan gieo.pptxfolder toni dan gieo.pptx
folder toni dan gieo.pptx
 
Tugas Bedah buku Software Engineering, Roger S Pressman
Tugas Bedah buku Software Engineering, Roger S PressmanTugas Bedah buku Software Engineering, Roger S Pressman
Tugas Bedah buku Software Engineering, Roger S Pressman
 
Konsep Rekayasa Perangakat Lunak
Konsep Rekayasa Perangakat LunakKonsep Rekayasa Perangakat Lunak
Konsep Rekayasa Perangakat Lunak
 
Pertemuan 2 pemrograman mobile.pptx
Pertemuan 2 pemrograman mobile.pptxPertemuan 2 pemrograman mobile.pptx
Pertemuan 2 pemrograman mobile.pptx
 
Proses rekayasa perangkat lunak
Proses rekayasa perangkat lunakProses rekayasa perangkat lunak
Proses rekayasa perangkat lunak
 
Maintenance & Reengineering
Maintenance & ReengineeringMaintenance & Reengineering
Maintenance & Reengineering
 
Bahasa pemograman
Bahasa pemogramanBahasa pemograman
Bahasa pemograman
 

METRIK

  • 1. 1 Software EngineeringSoftware Engineering SOFTWARE PROCESS AND PROJECTSOFTWARE PROCESS AND PROJECT METRICSMETRICS Oleh :Oleh : Ir. I Gede Made Karma, MTIr. I Gede Made Karma, MT 2 Pengukuran SoftwarePengukuran Software Pengukuran langsungPengukuran langsung Proses : biaya dan usaha yang dilakukan.Proses : biaya dan usaha yang dilakukan. Produk : jumlah baris kode, kecepatan eksekusi, ukuranProduk : jumlah baris kode, kecepatan eksekusi, ukuran memory dan jumlah cacat pada periode waktu tertentu.memory dan jumlah cacat pada periode waktu tertentu. Relatif mudah untuk dikerjakan.Relatif mudah untuk dikerjakan. Pengukuran tidak langsungPengukuran tidak langsung Fungsionalitas, kualitas, kompleksitas, efisiensi,Fungsionalitas, kualitas, kompleksitas, efisiensi, keandalan, maintainability.keandalan, maintainability. Lebih sulit untuk menilai.Lebih sulit untuk menilai. 3 Normalisasi MetrikNormalisasi Metrik normalisasi berorientasi ukuran — pendekatan baris code normalisasi berorientasi fungsi — pendekatan poin fungsi Metrik produk (private, individu) Metrik proses (publik, organisasi) Metrik proyek (public, tim softwaredikombinasi dikonsolidasi 4 Metrik Berorientasi Ukuran (1)Metrik Berorientasi Ukuran (1) Diperoleh dengan normalisasi ukuran kualitas dan/atauDiperoleh dengan normalisasi ukuran kualitas dan/atau produktivitas dengan mempertimbangkan ukuran dari softwareproduktivitas dengan mempertimbangkan ukuran dari software yang telah dihasilkan.yang telah dihasilkan. 66646425625610501050314314434320,20020,200GammaGamma 55646432132112241224440440626227,20027,200BetaBeta 332929134134365365168168242412,10012,100AlphaAlpha OrangOrangCacatCacatKesalahanKesalahanHalamanHalamanDolar(000)Dolar(000)UsahaUsahaLOCLOCProyekProyek 5 Metrik Berorientasi Ukuran (2)Metrik Berorientasi Ukuran (2) errorserrors per KLOC (ribuan barisper KLOC (ribuan baris codecode)) cacat per KLOCcacat per KLOC $ per LOC$ per LOC Halaman dokumentasi per KLOCHalaman dokumentasi per KLOC errorserrors / orang/ orang--bulanbulan LOC per orangLOC per orang--bulanbulan $ / halaman dokumentasi$ / halaman dokumentasi 6 Metrik Berorientasi Ukuran (3)Metrik Berorientasi Ukuran (3) Tidak secara universal diterima sebagai cara terbaikTidak secara universal diterima sebagai cara terbaik untuk mengukur proses pengembangan software.untuk mengukur proses pengembangan software. Kontroversi terjadi seputar pemakaian baris kodeKontroversi terjadi seputar pemakaian baris kode sebagai kunci ukuran.sebagai kunci ukuran. Pro : LOC mudah diukur dan banyak model estimasiPro : LOC mudah diukur dan banyak model estimasi software mempergunakan LOC.software mempergunakan LOC. Kontra : LOC tergantung pada bahasaKontra : LOC tergantung pada bahasa pemrograman, tidak adil bagi rancangan yang baguspemrograman, tidak adil bagi rancangan yang bagus dengan program yang lebih pendek, tidak mudahdengan program yang lebih pendek, tidak mudah diakomadasi dengan bahasa nonprosedural.diakomadasi dengan bahasa nonprosedural. Untuk pemakaian estimasi diperlukan tingkatUntuk pemakaian estimasi diperlukan tingkat kedetilan yang sulit diperoleh.kedetilan yang sulit diperoleh.
  • 2. 7 Metrik Berorientasi FungsiMetrik Berorientasi Fungsi •• Mempergunakan ukuran fungsionalitas dariMempergunakan ukuran fungsionalitas dari aplikasi yang diserahkan.aplikasi yang diserahkan. •• Tidak dapat diukur secara langsung, makaTidak dapat diukur secara langsung, maka diperoleh secara tidak langsung dengandiperoleh secara tidak langsung dengan mempergunakan pengukuran langsung lain.mempergunakan pengukuran langsung lain. •• Function PointFunction Point diperoleh dengan mempergunakandiperoleh dengan mempergunakan hubungan empiris berdasarkan pengukuranhubungan empiris berdasarkan pengukuran langsung dari domain informasi software danlangsung dari domain informasi software dan penilaian kompleksitas software.penilaian kompleksitas software. 8 Perhitungan Function Point (1)Perhitungan Function Point (1) Analyze information domain of the application and develop counts Weight each count by assessing complexity Assess influence of global factors that affect the application Compute function points Establish count for input domain and system interfaces Assign level of complexity or weight to each count Grade significance of external factors, F such as reuse, concurrency, OS, ... degree of influence: N = F i complexity multiplier: C = (0.65 + 0.01 x N) function points = (count x weight) x C where: i 9 Perhitungan Function Point (2)Perhitungan Function Point (2) complexity multiplier function points number of user inputs number of user outputs number of user inquiries number of files number of ext.interfaces measurement parameter 3 4 3 7 5 count weighting factor simple avg. complex 4 5 4 10 7 6 7 6 15 10 = = = = = count-total X X X X X 10 Perhitungan Function Point (3)Perhitungan Function Point (3) Number of user inputs input pemakai yang menyediakan data tertentu yang berorientasi pada aplikasi software, dihitung. Number of user outputs output pemakai yang menyediakan informasi yang berorientasi pada aplikasi kepada pemakai, dihitung. Contoh : laporan, tampilan layar, pesan kesalahan, dll. Number of user inquiries input on-line yg mengakibatkan munculnya beberapa respon software yang cepat, berbentuk output on-line, dihitung. Number of user files file master logika, dihitung Number of external interfaces interface yang dibaca oleh mesin yang digunakan dalam memindahkan informasi ke sistem lain, dihitung. Nilai Domain Informasi :Nilai Domain Informasi : 11 Perhitungan Function Point (4)Perhitungan Function Point (4) UntukUntuk menghitungmenghitung FPFP dipakaidipakai hubunganhubungan :: FP =FP = Count TotalCount Total x [0,65 + 0,01 xx [0,65 + 0,01 x EEFFii]] CountCount TotalTotal adalahadalah jumlahjumlah semuasemua entrientri padapada tabel.tabel. FFii (i = 1(i = 1 sampaisampai 14)14) adalahadalah ““hargaharga penyesuaianpenyesuaian kompleksitaskompleksitas”” berdasarkanberdasarkan responrespon pertanyaanpertanyaan berikut.berikut. SetiapSetiap faktorfaktor dinilai dengandinilai dengan skalaskala 00 sampaisampai 55 0 1 20 1 2 3 4 53 4 5 Tidak berpengaruh Insidental Moderat Rata-rata Signifikan Esensial 12 1.1. ApakahApakah sistemsistem membutuhkanmembutuhkan backupbackup dandan recoveryrecovery yangyang andal?andal? 2.2. ApakahApakah komunikasikomunikasi datadata dibutuhkandibutuhkan?? 3.3. ApakahApakah ada fungsiada fungsi pemrosesanpemrosesan terdistribusi?terdistribusi? 4.4. ApakahApakah kinerjakinerja merupakan sesuatu yang penting?merupakan sesuatu yang penting? 5.5. ApakahApakah sistemsistem akanakan berjalanberjalan padapada lingkunganlingkungan operasionaloperasional yangyang ada,ada, palingpaling banyakbanyak digunakandigunakan?? 6.6. ApakahApakah sistemsistem membutuhkanmembutuhkan entry data secara online?entry data secara online? 7.7. Apakah entry data online membutuhkan transaksi input melaluiApakah entry data online membutuhkan transaksi input melalui banyak layar atau operasi?banyak layar atau operasi? Perhitungan Function Point (5a)Perhitungan Function Point (5a) Pertanyaan :Pertanyaan :
  • 3. 13 Perhitungan Function Point (5b)Perhitungan Function Point (5b) 8.8. ApakahApakah file masterfile master diperbaruidiperbarui secarasecara online?online? 9.9. ApakahApakah input, output, fileinput, output, file atauatau inquiriinquiri komplekskompleks?? 10.10. ApakahApakah pemrosesanpemrosesan internalinternal komplekskompleks?? 11.11. ApakahApakah kodekode dirancangdirancang untukuntuk dapatdapat dipakai kembalidipakai kembali?? 12.12. ApakahApakah konversikonversi dandan instalasi termasuk dalam rancangan?instalasi termasuk dalam rancangan? 13.13. ApakahApakah sistemsistem dirancangdirancang untukuntuk banyak instalasi untukbanyak instalasi untuk organisasiorganisasi yang berbeda?yang berbeda? 14.14. ApakahApakah aplikasiaplikasi dirancangdirancang untukuntuk memfasilitasimemfasilitasi perubahanperubahan dandan mudah dipergunakan olehmudah dipergunakan oleh pemakai?pemakai? 14 Metrik Berorientasi FungsiMetrik Berorientasi Fungsi errorserrors per FP (Function Point : poin fungsi)per FP (Function Point : poin fungsi) cacat per FPcacat per FP $ per FP$ per FP halaman dokumentasi per FPhalaman dokumentasi per FP FP per orangFP per orang--bulanbulan 15 Metrik Function PointMetrik Function Point Diperluas (1)Diperluas (1) Feature pointsFeature points supersetsuperset daridari pengukuranpengukuran functionfunction pointpoint yangyang dapatdapat diterapkanditerapkan padapada aplikasiaplikasi softwaresoftware rekayasarekayasa dandan sistem.sistem. PengukurannyaPengukurannya mengakomodasimengakomodasi aplikasiaplikasi yangyang kompleksitaskompleksitas algoritmanyaalgoritmanya tinggitinggi: real: real--time,time, kontrolkontrol prosesproses,, aplikasiaplikasi embedded software.embedded software. 3D Function Point3D Function Point pendekatanpendekatan BoeingBoeing mengintegrasikanmengintegrasikan dimensidimensi datadata perangkatperangkat lunaklunak dengandengan dimensidimensi kontrolkontrol dandan fungsionalfungsional memberikanmemberikan sebuahsebuah pengukuranpengukuran yangyang berorientasiberorientasi padapada fungsi.fungsi. 16 Metrik Function PointMetrik Function Point Diperluas (2)Diperluas (2) DimensiDimensi DataData PenghitunganPenghitungan datadata yangyang disimpandisimpan (file)(file) dandan data externaldata external (input, output, query,(input, output, query, referensireferensi eksternaleksternal)) dipakaidipakai bersamabersama dengandengan pengukuranpengukuran kompleksitaskompleksitas untukuntuk mendapatkanmendapatkan dimensidimensi data.data. DimensiDimensi FungsionalFungsional DiukurDiukur dengandengan mempertimbangkanmempertimbangkan ““jumlahjumlah operasioperasi internalinternal yangyang dibutuhkandibutuhkan untukuntuk mengubahmengubah inputinput keke data output”.data output”. TransformasiTransformasi deretanderetan langkahlangkah pemrosesanpemrosesan yangyang dibatasidibatasi oleholeh sejumlahsejumlah pernyataanpernyataan semantik.semantik. TingkatTingkat kompleksitaskompleksitas daridari transformasitransformasi merupakanmerupakan fungsifungsi daridari jumlahjumlah tahapantahapan prosesproses dandan jumlahjumlah pernyataanpernyataan semantiksemantik yangyang mengendalikanmengendalikan tahapantahapan pemrosesan.pemrosesan. 17 MenetapkanMenetapkan KompleksitasKompleksitas TransformasiTransformasi 3D Function Point3D Function Point TinggiTinggiTinggiTinggiRataRata--ratarata21+21+ TinggiTinggiRataRata--ratarataRendahRendah1111 –– 2020 RataRata--ratarataRendahRendahRendahRendah11 -- 1010 11+11+66 -- 101011 -- 55 Pernyataan Semantik Langkah2 Pemrosesan 18 Metrik Function Point Diperluas (3)Metrik Function Point Diperluas (3) DimensiDimensi KontrolKontrol DiukurDiukur dengandengan menghitungmenghitung jumlahjumlah transisitransisi antarantar kondisikondisi ((statestate).). KondisiKondisi mewakilimewakili beberapabeberapa modemode tingkahtingkah lakulaku yangyang dapatdapat diobersvasidiobersvasi secarasecara eksternal.eksternal. TransisiTransisi terjaditerjadi sebagaisebagai hasilhasil daridari beberapa kejadianbeberapa kejadian yangyang menyebabkanmenyebabkan softwaresoftware atauatau sistemsistem mengubahmengubah modemode tingkahtingkah lakunya.lakunya. Pada saat perhitungan 3D function point, transisi tidakPada saat perhitungan 3D function point, transisi tidak menentukan nilai kompleksitas.menentukan nilai kompleksitas.
  • 4. 19 Metrik Function Point Diperluas (4)Metrik Function Point Diperluas (4) MenghitungMenghitung 3D Function Point :3D Function Point : indeksindeks = I + O + Q + F + E + T + R= I + O + Q + F + E + T + R II, O, Q, F, E, T dan R, O, Q, F, E, T dan R adalahadalah nilainilai bobotbobot kompleksitaskompleksitas daridari input, output, inquiry,input, output, inquiry, strukturstruktur data internal, filedata internal, file eskternaleskternal,, transformasi dan transisi.transformasi dan transisi. NilaiNilai bobotbobot kompleksitaskompleksitas == NNililWWilil ++ NNiaiaWWiaia ++ NNihihWWihih NNilil,, NNiaia dandan NNihih adalahadalah jumlahjumlah kemunculankemunculan elemenelemen ii ((contohnyacontohnya output)output) padapada setiapsetiap kompleksitaskompleksitas ((rendahrendah, rata, rata-- rata,rata, tinggitinggi),), dandan WWilil ,, WWiaia dandan WWihih merupakanmerupakan bobotnyabobotnya masingmasing--masing.masing. 20 Penghitungan Indeks 3D Function PointPenghitungan Indeks 3D Function Point KomplesitasKomplesitas PembobotanPembobotan ElemenElemen pengukuranpengukuran rendahrendah sedangsedang tinggitinggi StrukturStruktur data internaldata internal XX 77 ++ XX 1010 ++ XX 1515 == DataData eksternaleksternal XX 55 ++ XX 77 ++ XX 1010 == JumlahJumlah inputinput pemakaipemakai XX 33 ++ XX 44 ++ XX 66 == JumlahJumlah outputoutput pemakaipemakai XX 44 ++ XX 55 ++ XX 77 == JumlahJumlah penyelidikpenyelidik XX 33 ++ XX 44 ++ XX 66 == pemakaipemakai TransformasiTransformasi XX 77 ++ XX 1010 ++ XX 1515 == TransisiTransisi XX nn/a/a ++ XX nn/a +/a + XX n/n/aa == Indeks functionpoint 3 D 21 Rekonsiliasi Perbedaan PenerapanRekonsiliasi Perbedaan Penerapan MetrikMetrik Relasi antara LOC dan Function Point sangatRelasi antara LOC dan Function Point sangat tergantung pada bahasa pemrograman yangtergantung pada bahasa pemrograman yang dipergunakan untuk mengimplementasikandipergunakan untuk mengimplementasikan software dan kualitas dari rancangan.software dan kualitas dari rancangan. 22 FaktorFaktor ygyg mempengaruhimempengaruhi produktivitasproduktivitas PL:PL: ManusiaManusia jumlahjumlah dandan keahliankeahlian organisasiorganisasi pengembang.pengembang. MasalahMasalah kompkesitaskompkesitas masalahmasalah yangyang dipecahkandipecahkan dandan jumlahjumlah perubahanperubahan dalamdalam batasanbatasan dandan persyaratanpersyaratan rancangan.rancangan. ProsesProses teknisteknis analisisanalisis dandan rancanganrancangan yangyang digunakandigunakan,, bahasabahasa,, pirantipiranti CASECASE yangyang ada,ada, dandan teknikteknik kajian.kajian. SumberSumber dayadaya ketersediaanketersediaan pirantipiranti CASECASE dandan sumbersumber dayadaya perangkatperangkat keraskeras dandan perangkatperangkat lunak.lunak. 23 www.ifpug.orgwww.ifpug.org http://ourworld.compuserve.com/homepages/softcomp/http://ourworld.compuserve.com/homepages/softcomp/ Informasi Metrik Function PointInformasi Metrik Function Point 24 MetrikMetrik untukuntuk KualitasKualitas SoftwareSoftware KualitasKualitas sistemsistem,, aplikasiaplikasi atauatau produkproduk persyaratanpersyaratan yangyang menjelaskanmenjelaskan masalahmasalah,, rancanganrancangan modelmodel solusisolusi,, kodekode ygyg membuatmembuat programprogram dapatdapat dieksekusidieksekusi,, dandan pengujianpengujian softwaresoftware untukuntuk menemukanmenemukan kesalahan.kesalahan. TujuanTujuan utamautama padapada tingkattingkat proyekproyek adalahadalah untukuntuk mengukurmengukur kesalahankesalahan dandan cacatcacat
  • 5. 25 FaktorFaktor yangyang MempengaruhiMempengaruhi KualitasKualitas OperasiOperasi produkproduk ((pemanfaatannya)pemanfaatannya) RevisiRevisi produkproduk (perubahannya(perubahannya)) TransisiTransisi produkproduk ((memodifikasimemodifikasi agaragar bekerjabekerja dalamdalam lingkunganlingkungan yangyang berbedaberbeda)) 26 Pengukuran Kualitas (1)Pengukuran Kualitas (1) CorrectnessCorrectness derajat yang menunjukkan operasi programderajat yang menunjukkan operasi program dikaitkan dengan spesifikasi.dikaitkan dengan spesifikasi. Tingkat dimana software melakukan fungsi yang ditetapkan.Tingkat dimana software melakukan fungsi yang ditetapkan. Ukuran:Ukuran: cacat per KLOCcacat per KLOC, dimana cacat didefinisikan sebagai kurangnya, dimana cacat didefinisikan sebagai kurangnya kesesuaian dengan persyaratan.kesesuaian dengan persyaratan. MaintainabilityMaintainability derajat yang menunjukkan responsif programderajat yang menunjukkan responsif program pada perubahanpada perubahan Kemudahan dimana program dapat dikoreksi jika ditemukan kesalahaKemudahan dimana program dapat dikoreksi jika ditemukan kesalahan,n, diadaptasi jika lingkungannya berubah, atau ditingkatkan jika pediadaptasi jika lingkungannya berubah, atau ditingkatkan jika pelangganlanggan menginginkan perubahan kebutuhan.menginginkan perubahan kebutuhan. Pengukuran metrikPengukuran metrik timetime--orientedoriented sederhana adalah ratasederhana adalah rata--rata waktu yangrata waktu yang dibuthkan untuk berubah (MTTC), waktu untuk menganalisa perubahadibuthkan untuk berubah (MTTC), waktu untuk menganalisa perubahan,n, merancang modifikasi yang sesuai, implementasi perubahan, pengujmerancang modifikasi yang sesuai, implementasi perubahan, pengujianian dan mendistribusikan perubahan pada semua pemakai.dan mendistribusikan perubahan pada semua pemakai. 27 Pengukuran Kualitas (2)Pengukuran Kualitas (2) IntegrityIntegrity derajat yang menunjukkan ketahananderajat yang menunjukkan ketahanan program dari serangan luarprogram dari serangan luar Mengukur kemampuan sistem untuk menahan serangan atasMengukur kemampuan sistem untuk menahan serangan atas keamanannyakeamanannya Atribut tambahan untuk mengukur : ancaman dan keamananAtribut tambahan untuk mengukur : ancaman dan keamanan Ancaman : probabilitas akan serangan tipe tertentu yang terjadiAncaman : probabilitas akan serangan tipe tertentu yang terjadi dalam suatu periode waktu tertentu.dalam suatu periode waktu tertentu. Keamanan : probabilitas akan serangan tipe tertentu yang dipukulKeamanan : probabilitas akan serangan tipe tertentu yang dipukul mundurmundur Integritas =Integritas = ΣΣ [1[1-- ancaman x ( 1ancaman x ( 1 –– keamanan)] , dimana ancamankeamanan)] , dimana ancaman dan keamanan adalah jumlah dari setiap jenis serangan.dan keamanan adalah jumlah dari setiap jenis serangan. 28 Pengukuran Kualitas (3)Pengukuran Kualitas (3) UsabilityUsability derajat yang menunjukkan kemudahanderajat yang menunjukkan kemudahan dalam mempergunakan programdalam mempergunakan program Upaya untuk mengukurUpaya untuk mengukur user friendlinessuser friendliness dan dapat diukur dalamdan dapat diukur dalam empat karakteristik :empat karakteristik : Ketrampilan fisik dan atau intelektual untuk mempelajari sistemKetrampilan fisik dan atau intelektual untuk mempelajari sistem Waktu yang diperlukan untuk menjadi cukup efisien dalamWaktu yang diperlukan untuk menjadi cukup efisien dalam menggunakan sistemmenggunakan sistem Peningkatan produktivitas bersih yang diukur ketika sistemPeningkatan produktivitas bersih yang diukur ketika sistem digunakan cukup efisien oleh seseorangdigunakan cukup efisien oleh seseorang Penilaian subyektif atas sikap pemakai terhadap sistemPenilaian subyektif atas sikap pemakai terhadap sistem 29 Efisiensi Penghilangan Cacat (1)Efisiensi Penghilangan Cacat (1) DRE = (errors) / (errors + defects) dimana errors = masalah yang ditemukan sebelum release defects = masalah yang ditemukan sesudah release Nilai ideal DRE = 1, dimana tidak ditemukanNilai ideal DRE = 1, dimana tidak ditemukan adanya cacat pada software.adanya cacat pada software. mengukur kemampuan penyaringan dari aktivitasmengukur kemampuan penyaringan dari aktivitas pengendalian dan penjaminan kualitas sejakpengendalian dan penjaminan kualitas sejak diterapkan pada semua aktivitas kerangka kerjaditerapkan pada semua aktivitas kerangka kerja prosesproses 30 Efisiensi Penghilangan Cacat (2)Efisiensi Penghilangan Cacat (2) DRE dapat digunakanDRE dapat digunakan dalamdalam proyekproyek untukuntuk menilaimenilai kemampuankemampuan timtim dalamdalam menemukanmenemukan kesalahankesalahan sebelumsebelum dilewatkandilewatkan keke aktivitasaktivitas kerangkakerangka kerjakerja berikutnya.berikutnya. DREDREii == EEii/(E/(Eii + E+ Eii+1+1)) dimanadimana EEii:: jumlahjumlah kesalahankesalahan ygyg ditemukanditemukan selamaselama aktivitasaktivitas RPLRPL ii EEii+1+1 :: jumlahjumlah kesalahankesalahan ygyg ditemukanditemukan selamaselama aktivitasaktivitas RPLRPL i+1 yangi+1 yang dapatdapat dilacakdilacak padapada kesalahankesalahan yangyang tidaktidak ditemukanditemukan dalamdalam aktivitasaktivitas RPLRPL ii NilaiNilai ideal DRE = 1,ideal DRE = 1, dimanadimana kesalahankesalahan akanakan didi-- filterfilter sebelumsebelum dilewatkandilewatkan keke aktivitasaktivitas berikutnyaberikutnya