Rpl 5-perencanaan proyek perangkat lunak
Transcript of Rpl 5-perencanaan proyek perangkat lunak
![Page 1: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/1.jpg)
PERENCANAAN PROYEK PERANGKAT LUNAK
![Page 2: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/2.jpg)
Proses Manajemen Proyek Perangkat Lunak
• Proses manajemen proyek perangkat lunak dimulai dengan kegiatan project planning (perencanaan proyek),
yang pertama dari aktifitas ini adalah estimation (perkiraan). • Estimasi membawa resiko yang inheren (dari diri sendiri)
dan resiko inilah yang membawa ketidakpastian. • Yang mempengaruhi estimasi :
- Project complexity (kompleksitas proyek)- Project size (ukuran proyek)- Structural uncertainty (ketidakpastian struktural)
![Page 3: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/3.jpg)
Tujuan Perencanaan Proyek Perangkat Lunak
Menyediakan sebuah kerangka kerja yang memungkinkan manajer membuat estimasi yang dapat dipertanggungjawabkan terhadap sumber daya, biaya dan jadwal pada awal proyek yang dibatasi oleh waktu.
![Page 4: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/4.jpg)
Aktifitas Perencanaan Proyek PL
1. Menentukan ruang lingkup PL2. Mengestimasi sumber daya yang dibutuhkan
![Page 5: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/5.jpg)
Ruang Lingkup Perangkat Lunak
• Ruang lingkup PL menggambarkan : fungsi, kinerja, batasan, interface dan reliabilitas.
• Fungsi yang digambarkan dlm statemen ruang lingkup dievaluasi untuk memberikan awalan yang lebih detail pada saat dimulai estimasi. Kinerja melingkupi pemrosesan dan kebutuhan waktu respon. Batasan mengidentifikasi batas yang ditempatkan pada PL oleh perangkat keras eksternal, memori atau sistem lain.
![Page 6: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/6.jpg)
Informasi yang dibutuhkan (1)(awal pertemuan antara pelanggan dan pengembang)
• Pertanyaan berfokus pada pelanggan, tujuan keseluruhan serta keuntungan.- Siapa di belakang permintaan kerja ini?- Siapa yang akan memakai solusi ini?- Apakah keuntungan ekonomi dari solusi yang
sukses?- Adakah sumber daya lain bagi solusi ini?
![Page 7: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/7.jpg)
Informasi yang dibutuhkan(2)
• Pertanyaan yang memungkinkan analis memahami masalah lebih baik dan pelanggan menyuarakan persepsi tentang sebuah solusi.- Bagaimana Anda (pelanggan) menandai output yg baik yg akan dihasilkan oleh sebuah solusi yg baik?- Masalah apa yang dituju solusi ini?- Dapatkah anda menggambarkan lingkungan dimana solusi akan dipakai?- Adakah batasan atau isu kinerja khusus yg akan mempengaruhi cara pendekatan thd solusi?
![Page 8: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/8.jpg)
Informasi yang dibutuhkan(3)
• PL berinteraksi dengan elemen sistem berbasis komputer. Konsep sebuah interface diinterpretasi untuk menentukan:1. Hardware yg mengeksekusi PL dan device yg dikontrol secara tidak langsung oleh PL2. Software yg sudah ada dan harus dihubungkan dengan PL yg baru3. Manusia yg menggunakan PL melalui keyboard atau perangkat I/O lain4. Prosedur
![Page 9: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/9.jpg)
SUMBER DAYA
1. Manusia2. Perangkat Lunak Reusable
Kategori yg diusulkan BEUNATAN- Komponen Off-the-self- Komponen Full-Experience- Komponen Partial-Experience- Komponen Baru
3. Lingkungan (Software Engineering Environment - SEE), menggabungkan PL dan Perangkat Keras.
Dapat digunakan
kembali untuk proteyek baru
Harus dimodif
Berhubungan dengan oranag
yang sudah paham betul.
![Page 10: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/10.jpg)
Estimasi Proyek Perangkat Lunak
Estimasi biaya dan usaha dapat dilakukan dengan cara :1. Menunda estimasi sampai akhir proyek (100%
akurat).2. Berdasarkan estimasi pada proyek yg mirip
sebelumnya.3. Menggunakan 'teknik dekomposisi' yg relatif
sederhana untuk estimasi biaya dan usaha proyek.4. Menggunakan satu atau lebih model empiris bagi
estimasi usaha dan biaya PL.
![Page 11: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/11.jpg)
Akurasi Estimasi Proyek Perangkat Lunak didasarkan pada :
1. Tingkat dimana perencana telah dengan tepat mengestimasi ukuran produk yg akan dibuat.
2. Kemampuan mengestimasi ukuran ke dalam kerja manusia, waktu kalender, dan dolar.
3. Tingkat dimana rencana proyek mencerminkan kemampuan tim PL.
4. Stabilitas syarat produk serta lingkungan yg mendukung usaha pengembangan PL.
![Page 12: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/12.jpg)
Putnam dan Myers Mengusulkan 4 Masalah Penentuan Ukuran PL :
1. Fuzzy-logic sizing (logika kabur)Perencana harus mengidentifikasi tipe aplikasi, membuat besarannya dalam skala kuantitatif kemudian dibandingkan dengan rentang orisinil.
2. Function point sizingPerencana mengembangkan estimasi berdasarkan karakteristik domain informasi.
3. Standard component sizingPL dibangun dari sejumlah 'komponen standar' yg umum (subsistem, modul, laporan, program interaktif).
4. Change sizingDigunakan jika PL yang ada harus dimodifikasi dengan banyak cara sebagai bagian dari proyek.
![Page 13: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/13.jpg)
Estimasi Berbasis Masalah
Line Of Code (LOC) dan Function Point (FP) pada estimasi proyek digunakan sbg :
1. variabel estimasi yg dipakai untuk mengukur masing-masing elemen PL.
2. metrik baseline yg dikumpulkan dari proyek yg lalu dan dipakai dengan variabel estimasi untuk mengembangkan proyeksi kerja dan biaya.
![Page 14: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/14.jpg)
Expected Value untuk variabel estimasi :
EV = (Sopt + 4Sm + Spess) / 6
EV = Expected valueSopt = Estimasi optimistikSm = Estimasi mendekatiSpess = Estimasi pesimistik
![Page 15: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/15.jpg)
Contoh estimasi berbasis LOC
PL CAD akan menerima data geometri dua dan tiga dImensi dari seorang perekayasa yang akan berinteraksi dan mengontrol sistem CAD melalui suatu interface pemakai. Kajian spesifikasi sistem menunjukkan bahwa PL akanmengeksekusi Workstation dan harus berinteraksi dengan berbagai periperalgrafis komputer spt mouse, digitizer dan printer laser.
![Page 16: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/16.jpg)
Contoh estimasi berbasis LOC (2)
Diketahui :Perhitungan LOC untuk fungsi analisis geometri 3D (3DGA) :
• optimism : 4600• most likely : 6900• pessimistic : 8600
EV = (4600 + 4*6900 + 8600) / 6 = 6800 LOC
![Page 17: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/17.jpg)
Contoh estimasi berbasis LOC (3)
Jumlah tersebut dimasukkan ke dalam tabel, begitu juga untuk perhitungan yang lain. Sehingga diperoleh :
![Page 18: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/18.jpg)
Contoh estimasi berbasis LOC (4)
JikaProduktivitas rata-rata organisasi = 620 LOC / person-monthUpah Karyawan = $8.000 / monthBiaya per LOC = $13
Maka:Jumlah Karyawan = 33200 LOC =53,5 ≈ 54 p-m
620 LOC/p-mEstimasi biaya proyek berdasarkan LOC :
= 33200 LOC * $ 13 = $ 431.600Estimasi biaya proyek berdasarkan upah :
= 54 person * $8.000= $ 432.000
![Page 19: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/19.jpg)
Estimasi berbasis FP (Function Point)-(1)
Dekomposisi untuk perhitungan berbasis FP berfokus pada harga domain info daripada fungsi PL. Perencana proyek memperkirakan input, output, inquiry, file dan interface eksternal. Untuk tujuan perkiraan tersebut faktor pembobotan kompleksitas diasumsikan menjadi rata-rata.
![Page 20: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/20.jpg)
Setiap faktor pembobotan kompleksitas diestimasi dan faktor penyesuaian
kompleksitas dihitung seperti dibawah ini :
Estimasi berbasis FP (Function Point)-(2)
![Page 21: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/21.jpg)
Perkiraan harga domain informasi :
Estimasi berbasis FP (Function Point)-(3)
Contoh menghitung jumlah estimasi dari jumlah input EV = (Sopt + 4Sm + Spess) / 6Ev = (20 + 4* 24 + 30)/6 = 24
![Page 22: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/22.jpg)
• jumlah estimasi (lihat rumus Ev)• bobot (lihat kembali bab 4)• jumlah FP = jumlah estimasi * bobot• Total faktor pembobotan = ΣFi = 53.17• Total FP = 318• FP terestimasi = jumlah total * ( 0.65 + 0.01 * ΣFi)
= 318 * ( 0.65 + 0.01 * 53.17 ) = 375
Estimasi berbasis FP (Function Point)-(4)
![Page 23: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/23.jpg)
Diketahui :Produktifitas = 6,5 FP/p-m (dari historis)Upah = $ 8.000/p-mBiaya per FP = $ 8.000 /p-m = $ 1.230 /FP
6,5 FP/p-mEstimasi biaya proyek
= Biaya per FP x FP terestimasi= $ 1.230 / FP x 375 FP= $ 461.250
Usaha terestimasi= Total biaya = $ 461.250 = 58 person-month upah $ 8.000 /p-m
Estimasi berbasis FP (Function Point)-(5)
![Page 24: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/24.jpg)
Estimasi Berbasis Proses
• Estimasi berbasis proses mengacu pada analisis estimasi berbasis permasalahan. Estimasi ini menggunakan asumsi waktu yang diperlukan untuk menyelesaikan proses-proses tertentu, mulai dari awal proyek, sampai evaluasi hasil proyek.
![Page 25: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/25.jpg)
Contoh Perhitungang berbasis Proses
![Page 26: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/26.jpg)
Contoh Perhitungang berbasis Proses
![Page 27: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/27.jpg)
Estimasi Empiris
Barry Boehm memperkenalkan hirarki model estimasi PL dengan nama COCOMO (COnstructive COst MOdel = Model Biaya Konstruktif) yang berbentuk sbb :
1. Model COCOMO DasarMenghitung usaha pengembangan PL (dan biaya) sbg fungsi dari ukuranprogram yg diekspresikan dalam baris kode yg diestimasi (LOC).
2. Model COCOMO IntermediateMenghitung usaha pengembangan PL sbg fungsi ukuran program dan serangkaian 'pengendali biaya' yg menyangkut penilaian yg subyektif thd produk, perangkat keras, personil dan atribut proyek.
3. Model COCOMO AdvanceMenghubungkan semua karakteristik versi intermediate dg penilaian thd pengaruh
pengendali biaya pd setiap langkah (analis, perancangan, dll) dari proses rekayasa PL.
![Page 28: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/28.jpg)
Model Cocomo dpt diaplikasi dalam tiga tingkatan kelas
![Page 29: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/29.jpg)
Model COCOMO DasarPesamaan COCOMO Dasar
Dimana :E = Effort (usaha yang diaplikasikan - pm)D = waktu pengembangan (m)KLOC = jumlah perkiraan baris kode (dalam
ribuan) ab, bb, cb, db = koefisien (lihat tabel)
![Page 30: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/30.jpg)
Model COCOMO Dasar (2)
• Koefisien model Cocomo Dasar
![Page 31: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/31.jpg)
Model dasar ini dapat diperluas dengan mempertimbangkan kumpulan 'atribut pengendali biaya' yg dikelompokkan dalam 4 kategori utama :1. Atribut produk
- ukuran keandalan proyek- ukuran dari aplikasi database- kekompleksan produk
2. Atribut perangkat keras- kendala performansi run-time- kendala memori- lingkungan dari violability dari virtual memori- waktu perputaran yg diperlukan
COCOMO Intermediate (1)
![Page 32: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/32.jpg)
COCOMO Intermediate(2)3. Atribut personil
- kemampuan sistem analis- kemampuan software engineering- pengalaman aplikasi- pengalaman virtual mesin- pengalaman bahasa pemrograman
4. Atribut proyek- pemakaian alat bantu PL- metode aplikasi software engineering- jadwal pengembangan
Masing-masing dari 15 atribut di atas dirata-rata dlm sebuah skala 6 titik dgrentang dari 'sangat rendah' ke 'sangat tinggi' (dlm kepentingan atau harga).
![Page 33: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/33.jpg)
COCOMO Intermediate (3)
Persamaan COCOMO Intermediate
dimana :EAF = Effort Adjusment Factor (faktor penyesuaian usaha) yg mempunyai range antara 0.9 sampai 1.4ai, bi = koefisien (lihat tabel)
![Page 34: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/34.jpg)
COCOMO Intermediate (4)
![Page 35: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/35.jpg)
Contoh Estimasi Model COCOMOKita aplikasikan model dasar pada contoh PL CAD sebelumnya dengan koefisien seperti pada tabel
Harga ini jauh lebih tinggi dibanding estimasi sebelumnya karena model COCOMO mengasumsikan tingkat LOC/pm yang jauh lebih rendah.
![Page 36: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/36.jpg)
Untuk menghitung durasi proyek :
Harga durasi proyek memungkinkan perencana untuk menentukan jumlah orang yang disetujui (N)
Kenyataannya, perencana dapat memutuskan hanya menggunakan 4 orang saja dan pemperpanjang durasi proyek.Catatan : Hubungan antara usaha dan waktu tidak linier.
Estimasi Model COCOMO (2)
![Page 37: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/37.jpg)
![Page 38: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/38.jpg)
KEPUTUSAN MAKE-BUY
Pada aplikasi PL, dari segi biaya sering lebih efektif membeli dari pada mengembangkan sendiri. Manajer RPL dihadapkan pada keputusan make-buy dengan pilihan :1. PL dapat dibeli (atau lisensi) off-the-self.2. Komponen PL full-experience dan partial-experience,
dapat diperoleh dan kemudian dimodifikasi dan integrasi untuk memenuhi kebutuhan sendiri.
3. PL dapat dibuat custom-built oleh kontraktor luar untuk memenuhi spesifikasi pembeli.
![Page 39: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/39.jpg)
Untuk produk PL yang mahal, langkah-langkah di bawah ini dapat dipetimbangkan:
1. Kembangkan spesifikasi untuk fungsi dan kinerja PL yg diperlukan.2. Perkirakan biaya internal untuk pengembangan dan tanggal
penyampaian.3a. Pilih tiga atau empat calon aplikasi yang paling cocok dengan aplikasi anda.3b. Pilih komponen yang reusable yg dapat membantu konstruksi
aplikasi yg diperlukan.4. Kembnagkan sebuah matriks perbandingan untuk membandingkan
calon PL.5. Evaluasi masing-masing paket PL berdasarkan kualitas produk
sebelumnya, dukungan penjual, arah proyek, reputasi dsb.6. Hubungi pemakai PL lain dan mintalah pendapat mereka.
KEPUTUSAN MAKE-BUY (2)
![Page 40: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/40.jpg)
Pada analisis akhir, keputusan make-buy berdasarkan kondisi sbb:1. Tanggal penyampaian2. Biaya yang diperlukan3. Dukungan
KEPUTUSAN MAKE-BUY (3)
![Page 41: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/41.jpg)
MEMBUAT POHON KEPUTUSAN
Rekayasa atau organisasi PL dapat menggunakan teknik statistik analisis pohon keputusan dengan pilihan :1. membangun sistem X dari permulaan2. menggunakan lagi komponen partial experience
yang ada untuk membangun sistem3. membeli sebuah produk perangkat lunak yang dapat
diperoleh dan dimodifikasi untuk memenuhi kebutuhan lokal
4. mengkontrakkan pengembangan PL ke vendor luar
![Page 42: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/42.jpg)
• Bila sistem dibangun dari permulaan, hanya 70% probabilitasnya sehingga pekerjaan menjadi sulit. Perencana proyek dapat memproyeksikan usaha pengembangan yang sulit berbiaya $450.000, usaha yang sederhana diperkirakan berbiaya $380.000.
• Expected value untuk biaya dihitung sepanjang cabang pohon keputusan, adalah :
Expected Cost = Σ (jalur probabilitas)i * (biaya jalur terestimasi)i
dimana i adalah garis edar pohon keputusan.
MEMBUAT POHON KEPUTUSAN (2)
![Page 43: Rpl 5-perencanaan proyek perangkat lunak](https://reader033.fdocument.pub/reader033/viewer/2022061519/558d03f3d8b42a112b8b4700/html5/thumbnails/43.jpg)
Berdasar biaya probabilitas dan proyeksi, expected cost yang paling rendah adalah pilihan buy
Catatan : Banyak kriteria yang harus dipertimbangakan, bukan hanya biaya, seperti pengalaman pengembang/ vendor/ kontraktor, penyesuaian kebutuhan,kecenderungan perubahan dapat mempengaruhi keputusan akhir!
MEMBUAT POHON KEPUTUSAN (3)