710 likes | 873 Views
Planning a Software Project. Rekayasa Perangkat Lunak. Agenda . Latar belakang Usaha estimasi Jadwal dan sumber daya estimasi Kualitas Perencanaan Manajemen risiko Pemantauan Rencana Proyek. Proyek Perangkat Lunak.
E N D
Planning a Software Project RekayasaPerangkatLunak
Agenda • Latarbelakang • Usaha estimasi • Jadwaldansumberdayaestimasi • KualitasPerencanaan • Manajemenrisiko • PemantauanRencanaProyek
ProyekPerangkatLunak • Tujuan: Membangunsebuahsistemperangkatlunakyang memenuhikomitmenpadabiaya, kualitas, danjadwal (waktu) • Banyakproyekgagaldiseluruhdunia, sepertiganyamelarikandirikarenapembengkakanbiayaataujadwallebihdari 125%
KegagalanProyek Alasandarikegagalanproyek: • Tujuantidakjelas • Perencanaan yang buruk • Tidakadametodologimanajemenproyek • Munculnyateknologibaru • Kekuranganstaf SemuainiberhubungandenganmanajemenproyekManajemenproyek yang efektifadalahkunciuntukberhasilmelaksanakansebuahproyek
Mengapameningkatkan PM? • Prediktabilitasakanlebihbaikdanmengarahkekomitmen yang dapatdipenuhi • Menurunkanbiayamelaluipengerjaanulang, sumberdaya yang lebihbaik, perencanaan yang lebihbaik, danoperasionalmenjadilebihterencana. • Peningkatankualitasmelaluiperencanaandanpengendaliankualitas yang tepat • Kontrolyang lebihbaikmelaluikontrolperubahan, danpemantauan ( Management Control)
Mengapameningkatkan PM .... • Visibilitas yang lebihbaikuntukkelancaranjalannyaproyekdanuntukmenghindariintervensidaripihak-pihaktertentu agar proyekdapattepatwaktu • penangananrisikoyang lebihbaikakanmengurangikemungkinankegagalan • Semuainimengarahpadakepuasanpelanggan yang lebihtinggidanperbaikanorganisasi
Proses Management Proyek • Memilikitigafase : • perencanaan, • pemantauandankontrol, dan • penutupan Perencanaandilakukansebelumprosesrekayasadilakukan (siklushidup, LC) danpenutupansetelahprosesrekayasaselesaidikerjakan.Fasepemantauandilakukansecaraparaleldengan LC
PerencanaanProyek • DasarTujuan: Membuatrencanauntukmemenuhikomitmendariproyek. • Contohmembuatsebuahjadwal yang jikadiikuti, akanmengarahpadaproyek yang sukses • Perencanaanmelibatkanprosesmendefinisikan LC yang harusdiikuti, perkiraan, jadwalrinci, rencanauntukkualitas, dll • Output Utama – Rencanamanajemendanjadwalproyek
KunciTugasPerencanaan • Perkiraanusaha • Tentukan milestone danmembuatjadwal • Tentukantujuankualitasdanrencanamutu • Mengidentifikasirisikodanmembuatrencanauntukmenanggulanginya • Tentukanrencanapengukuran, pelacakanproyek-prosedur, rencanapelatihan, organisasitim, dll
UpayaEstimasi • Untuktotal biayaproyekdandurasiharusdilakukansebelumproyekdimulai • Membutuhkanestimasiusaha, seringdalamhalorang-bulan • Usaha estimasiadalahkunciuntukperencanaan - jadwal, biaya, dansumberdaya • Banyakmasalahyang terjadidalampelaksanaanproyek yang disebabkandariestimasi yang tidaktepat.
Estimasi .. • Tidakadacara yang mudahatautidakadapatokan / acuanbakudalammelakukanestimasi. • Informasi yang akuratdapatmeningkatkanketepatanestimasiproyek • Perkiraanawallebihcenderungtidakakurat • Denganinfo lebihlengkap, estimasimenjadilebihmudah
Estimasi Model Usaha .. • untukmenentukanestimasiusahadaribeberapanilai parameter dapatdicobadengansebuah model • Sebuahmodel jugamembutuhkanmasukantentangproyek.Jadiuntukmenerapkan model, kitaharusdapatmengekstraksifattentangsistem • Duajenis model – • top-down dan • bottom-up
Top down estimasi • Pertamamenentukanusaha total, makaupayauntukkomponen • Pendekatansederhana - estimasiusahadariukurandanproduktivitas • Dapatkanperkiraanukuran total dariperangkatlunak • Perkiraanproyekproduktivitasdenganmenggunakan data masalaludankarakteristikproyek • Mendapatkanestimasiupayamenyeluruhdariperkiraanproduktivitasdanukuran • Usaha distribusi data dariproyekserupadigunakanuntukmemperkirakanupayauntukfase yang berbeda
Top-down Estimasi • Metodeyang lebihbaikadalahmemilikiestimasiusahasebagaifungsidariukuranmenggunakan: Usaha = a * b ukuran • E adalahdalamorang-bulan, ukuran KLOC • Menggabungkanpengamatanbahwaproduktivitasdapat dip denganpeningkatanukuran • Konstantaa dan b ditentukanmelaluianalisisregresidari data proyekmasalalu
Model COCOMO • Menggunakanukuran, tetapimenyesuaikanmenggunakanbeberapafaktor • ProsedurDasarMendapatkanestimasiawalmenggunakanukuranMenentukan set dari 15 faktormengalikandariatributproyek yang berbedaSesuaikanperkiraanusahadenganskaladenganfaktormengalikanakhir
COCOMO .. • Perkiraanawal: ukuran * b; beberapanilaistandaruntuk a, b diberikanuntuk diff proyekjenisAda 15 atribut cost driver sepertikeandalan, kompleksitas, kemampuanpengalamanaplikasi,, ... • Setiapfaktordinilai, danuntuk rating faktormultiplikasidiberikanUpayafaktorpenyesuaianakhiradalahprodukdarifaktor-faktoruntuksemua 15 atribut
COCOMO - distribusiusaha • Usaha distribusiantarafase yang berbedadiberikansebagaipersendariusaha • Misalnya. Untukprodukukuran medium itu • Produkdesain - 16% • Detildesain - 24% • Coding dan UT - 38% • Integrasidanpengujian - 22%
Bottom-up Estimasi • Sebuahpendekatanalternatifuntuk top-down • Upayauntukkomponendanfasepertamadiperkirakan, maka total • Dapatmenggunakanbiayaberbasisaktivitas - semuakegiatandihitungdankemudiansecaraterpisahsetiapkegiatan yang diperkirakan • Dapatkahkegiatankelompokkedalamkelas - upayaperkiraanmerekadari data masalalu
SebuahProsedurEstimasi • Mengidentifikasiprogram-program dalamsistemdanmengklasifikasikanmerekasebagaisederhana, menengah, ataukompleks (S / M / C) • Tentukanrata-rata upaya coding untuk S / M / C • Dapatkanupaya coding total. • Gunakandistribusiupayadalamproyekserupauntukmemperkirakanupayauntuktugas-tugas lain dan total • Memperbaikiperkiraanberdasarkanfaktor-faktorproyektertentu
JadwalProyek • SebuahJadwalproyekpadaduatingkat - jadwalkeseluruhandanjadwalrinci • Jadwalkeseluruhanterdiridaritonggakutamadantanggalakhir • Jadwalrinciadalahtugastugastingkatterendahkesumberdaya
Jadwalkeseluruhan • Sangatbergantungpadaupayaestimasi • Untukestimasiusaha, fleksibilitasadatergantungpadasumberdaya yang ditugaskan • Misalnyaproyek 56 orang-bulandapatdilakukandalam 8 bulandengan 7 orang, atau 7 bulandengan 8 orang • Pereganganjadwalmudah; mengompresisulitdanmahal
Penjadwalankeseluruhan ... • Salahsatumetodeadalahuntukmemperkirakanjadwal S (dalambulan) sebagaifungsidariupaya PMS • Dapatmenentukan fn melaluianalisis data masalalu, fungsi non linier • COCOMO: S = 2,5 E 3,8 • Seringkalijadwalinidiperiksadandikoreksiuntukproyektertentu • Salahsatumetodepemeriksaan - pemeriksaanakarkuadrat
Menentukan Milestones • Denganusahadansecarakeseluruhanmemutuskanjadwal, avgsumberdayaproyekadalahtetap • TenagaKerja ramp-up dalamproyekmemutuskantonggak-tonggak • TenagaKerja ramp-up dalamsebuahproyekmengikutikurva Rayleigh - sepertikurva normal • Dalamkenyataannyatenagakerjamembangun-up adalahfungsilangkah
Milestone…. • Dengandistribusitenaga ramp-up danusaha, tonggakdapatmemutuskan • Usaha distribusidandistribusijadwaldalamfaseberbedaSecaraumum, membangunupaya yang lebihbesarnamunmemilikijadwaltidakSejalanbesar • COCOMO menentukandistrdarikeseluruhansched. Desain - 19%, pemrograman - 62%, integrasi - 18%
DetilPenjadwalan • Untukmencapaitonggaksejarah, banyaktugasharusdilakukan • Terendahtingkattugas - yang dapatdilakukanolehorang (dalamwaktukurangdari 2-3 hari) • Penjadwalan- menentukantugas, menetapkanmerekasambilmenjagatingkattinggijadwal • Apakahiteratiftugas yang - jikatidakbisa "cocok" semuatugas, harusmengunjungikembalijadwaltingkattinggi
DetilPenjadwalan • Jadwalrincitidakdilakukansepenuhnyadiawal - ituberkembang • Dapatmenggunakan Microsoft Project untukmenjaganya agar tetap • Jadwalrinciadalahdokumen yang paling hidupuntukmengelolaproyek • Setiapkegiatan yang akandilakukanharusmendapatkantercermindalamjadwalrinci • Contohtugasdalamjadwalrinci
Rincianjadwal • Tugasmasing-masingmemilikinama, tanggal, durasi, dllsumberdayaditugaskan • % Dilakukanadalahuntukpelacakan (alatmenggunakannya) • Jadwalrinciharuskonsistendengantonggak • Tugassub-kegiatankegiatantingkattonggak, sehinggaupayaharusmenambahkan, jadwal total harusdilestarikan
KualitasPerencanaanMemberikankualitastinggiadalahtujuandasarKualitasdapatdidefinisikandalambanyakcaraStandarindustrisaatini - disampaikancacatkepadatan (misalnya # cacat / KLOC) Cacat - sesuatu yang menyebabkanperangkatlunakuntukberperilakudalamcara yang tidakkonsistenTujuanproyek - menyediakanperangkatlunakdengankepadatanrendahcacatdisampaikan
CacatInjeksidanPenghapusanPengembanganperangkatlunakadalahpadatkaryaCacat yang disuntikkanpadasetiaptahapSepertitujuankualitasrendahdisampaikankerapatancacat, cacatiniharusdihapusDilakukanterutamaolehkontrolkualitas (QC) kegiatanulasandanpengujian
PendekatanManajemenMutu • Ad hoc - beberapapengujian, beberapa review dilakukansebagaidanbiladiperlukan • Prosedur- prosedurdidefinisikandiikutidalamproyek • Kuantitatif- analisis data dilakukancacatuntukmengelolaproseskualitas
Pendekatanprosedural • Sebuahrencanamutumendefinisikanapatugas-tugas QC akandilakukandankapan • UtamaQC tugas - ulasandanpengujian • Pedomandanproseduruntukulasandanpengujiandisediakan • Selamapelaksanaanproyek, kepatuhanterhadaprencanadanprosedurmemastikan
PendekatanKuantitatif • Melampauibertanya "telahprosedurtelahdieksekusi" • Menganalisadata yang cacatuntukmembuatpenilaiantentangkualitas • Data masalalusangatpenting • Parameter kunci - injeksicacatdanpenghapusantarif, efisiensi removal cacat (DRE)
RencanaMutu • Rencanakualitas drive kualitaskegiatandalamproyek • Tingkat rencanatergantungpada model yang tersedia • Harusmenentukantugas QC yang harusdilakukandalamproyek • Dapatmenentukantingkatcacatuntuksetiaptugas QC (jika model dan data yang tersedia)
ManajemenRisiko • Setiapproyekbisagagal - alasandapatteknis, manajerial, dll • Manajemenproyekbertujuanuntukmengatasiaspekmanajemenproyek • Siklushiduprekayasabertujuanuntukmenanganimasalah-masalahrekayasa • Sebuahproyekbisagagalkarenakejadiantakterduga - manajemenrisikobertujuanuntukmengatasiini
ManajemenRisiko • Risiko: setiapkondisiatauperistiwa yang terjaditidaktertentu, tetapi yang dapatmenyebabkanproyekgagal • Tujuanmanajemenrisiko: meminimalkandampakrisikopadaproyek • Manajemenrisikomemilikiduaaspekdasar • Penilaianrisiko • Pengendalianrisiko
PenilaianResiko • Untukmengidentifikasirisiko yang mungkinuntukproyek, yaituperistiwa-peristiwa yang mungkinterjadidan yang mungkinmenyebabkanproyekgagalTidak "algoritma" mungkin, dilakukanoleh "bagaimanajika", checklist, pengalamanmasalaluDapatmemilikidaftar "top 10" resikobahwaproyektelahmelihatdimasalalu
RisikoatasContoh • Kekurangantenagakerjateknisterlatih • Terlalubanyakperubahanpersyaratan • Jelaspersyaratan • Tidakmemenuhipersyaratankinerja • Jadwalyang tidakrealistis • Kurangnyapengetahuanbisnis • Bekerjapadateknologibaru
PrioritasRisiko • Jumlahrisiko yang mungkinmenjadibesar • Harusmemprioritaskanmerekauntukmemusatkanperhatianpadabidang "berisikotinggi" • Untukprioritas, dampakdarisetiaprisikoharusdipahami • Selainitu, probabilitasterjadirisikojugaharusdipahami
PrioritasRisiko ... • Eksposurrisiko (RE) = probabilitasrisikoterjadidampakresiko * • RE adalahnilai yang diharapkandaririsikokerugianbagi • Prioritasdapatdilakukanberdasarkannilaieksposurrisiko • Rencanadapatdibuatuntukmenanganirisikotinggi RE