Manajemen Proyek Perangkat Lunak Introduction Tujuan pembelajaran • Mendefinisikan batasan manajemen proyek perangkat lunak (MPPL) • Membedakan pengembangan proyek perangkat lunak dengan lainnya • Memahami beberapa permasalah dan kekuatiran manajer proyek perangkat lunak • Mendefinisikan tahapan-tahapan proyek perangkat lunak • Menjelaskan elemen utama aturan manajemen • Memahami kebutuhan perencanaan yang baik, monitoring dan kontrol • Mengidentifikasi stakeholder proyek, tujuan mereka dan cara mengukur keberhasilan dalam mencapai tujuan tersebut Pengenalan MPPL • Perencanaan, Monitoring dan Kontrol proyek perangkat lunak • Mengidentifikasi proyek dan mencapai tujuan Stakholder adalah proyek yang sukses Apakah Proyek itu ? • Definisi kamus bahwa Proyek adalah perencanaan / perancangan yang spesifik atau pekerjaan terencana atau pekerjaan yang besar (Longman Concise English Dictionary, 1982) Apakah proyek itu ? Karakteristik – karateristik Proyek • Tugas non rutin • Perlu perencanaan • Tujuan spesifik yang akan dicapai atau produk spesisfik yang akan dibuat • Proyek harus ditentukan jangka waktu • Pekerjaan dikerjakan untuk seseorang bukan untuk diri kita • Pekerjaan melibatkan beberapa spesialis • Sumber daya proyek yang tersedia dibatasi • Proyek itu pekerjaan besar / komplek Apa proyek itu ? Latihan 1 Perhatikan dan buatlah urutan yang paling mendekati definisi proyek 1. Membuat sebuah edisi surat kabar 2. Membangun saluran terowongan 3. Persiapan pernikahan 4. Menambahkan sistem komputer keuangan untuk mengatasi tanggal setelah 31 desember 1999 5. Sebuah proyek penelitian “apa yang membuat interface yang baik antara manusia-komputer ?” 6. Sebuah investigasi “alasan kenapa user mempunyai masalah dengan sistem komputer ?” 7. Sebuah tugas komputer untuk mahasiswa komputer tingkat 2 8. Menuliskan sebuah sistem operasi untuk sebuah komputer baru 9. Menginstal versi baru aplikasi word processing pada sebuah organisasi Proyek Perangkat Lunak Vs Tipe Proyek Lain • Banyak teknik manajemen proyek umum yang dapat diaplikasikan dengan MPLL, tapi menurut Fred Brooks memberi catatan bahwa produk proyek perangkat lunak mempunyai karakteristik tertentu. • Satu cara untuk melihat MPLL adalah sebagai proses membuat visible dari invisible Brooks, F.P. ‘No silver bullet:essence and accidents of software engineering’ Proyek Perangkat Lunak Vs Tipe Proyek Lain Karakteristik MPPL 1. Tidak nampak 2. Komplek 3. Flexible Aktifitas dalam MPPL Tiga proses aktifitas MPPL 1. Studi Kelayakan / evaluasi proyek 2. Perencanaan 3. Implementasi Proyek Aktifitas dalam MPPL Tahapan siklus hidup MPPL 1. Analisa kebutuhan 2. Spesifikasi 3. Disain 4. Coding 5. Verifikasi dan validasi 6. Implementasi / Instalasi 7. Maintenance dan support Aktifitas dalam MPPL Latihan 2 • Kampus Brightmouth adalah sebuah institusi pendidikan yang dulunya diatur oleh otoritas pemerintah lokal tapi sekarang sudah tidak lagi. Sedangkan pembayaran gaji masih diatur oleh otoritas lokal dan slip gaji dan output lainnya masih dihasilkan sentral komputer otoritas lokal. Otoritas sekarang menagih kampus biaya service ini. Manajemen kampus mempunyai ide untuk membuat aplikasi pembayaran gaji sendiri agar biayanya lebih murah dan melakukan proses pembayaran gaji sendiri. Tahapan utama proyek apa saja untuk membuat proses pembayaran gaji sendiri oleh kampus ? Kategori proyek perangkat lunak Kategori proyek perangkat lunak berdasarkan sistemnya : 1. Sistem informasi Contoh : Sistem kontrol stok 2. Sistem embedded / real time Contoh : Sistem kontrol AC Kategori proyek perangkat lunak Proyek dapat dikategorikan berdasarkan orientasinya : 1. Produk Proyek membuat produk yang detailnya ditentukan oleh client dan Client bertanggung jawab menjustifikasi produk tersebut 2. Tujuan Proyek diperlukan untuk mencapai tujuan tertentu biasanya berhubungan dengan level service Kategori proyek perangkat lunak Latihan 3 • Apakah sistem operasi pada komputer sebuah sistem informasi atau sistem embedded ? Latihan 4 • Apakah proyek implementasi sistem pembayaran independen di kampus Brightmuth pada latihan 2 adalah proyek tujuan atau proyek produk ? Proyek sebagai sebuah sistem • Sebuah proyek mempertimbangkan untuk membuat sistem baru dan atau merubah sistem lama menjadi baru dan proyek itu sendiri adalah sebuah sistem. Proyek sebagai sebuah sistem Sistem, subsistem dan linkungan sistem • Definisi sederhana dari sistem adalah sebuah kumpulan dari bagian-bagian yang saling berhubungan. Sebuah sistem normalnya merupakan bagian dari sistem yang lebih besar dan sistem itu sendiri terdiri dari subsistem. • Di luar dari sistem adalah lingkungan sistem. LIngkungan sistem ini dapat mempengaruhi sistem tapi sistem tidak bisa mengontrol langsung. • Pada kasus kampus Brighmouth, bangkrutnya supplier utama perangkat IT adalah kejadian yang menimpa pada lingkungan sistem Proyek sebagai sebuah sistem Sistem Terbuka Vs Sistem Tertutup • Sistem terbuka yaitu yang berinteraksi dengan lingkungan. Hampir semua sistem adalah terbuka. Salah satu alasan nahwa sistem engineering dan proyek membentuk sistem tersebut sering kali gagal dikarenakan keterlibatan staf teknikal tidak menghargai tingkat sistem yang terbuka dan mudah dipengaruhi oleh perubahan dari luar Proyek sebagai sebuah sistem Sub optimasi • Adalah sebuah subsistem yang bekerja pada saat optimum tapi mempunyai efek yang merugikan pada keseluruhan sistem • Contoh pengembang perangkat lunak menyerahkan ke user sebuah sistem yang sangat efisien pada penggunaan sumber daya mesin tapi juga sangat susah untuk dimodifikasi. Proyek sebagai sebuah sistem Sistem sosioteknikal • Proyek perangkat lunak ini tergolong dalam kategori sistem ini. Setiap proyek perangkat lunak membutuhkan organisasi teknikal dan organisasi orang. • Manager Proyek perangkat lunak diperlukan baik kompetensi teknikal dan kemampuan untuk berinteraksi dengan orang lain secara persuasif. Proyek sebagai sistem Latihan 5 • Identifikasi kemungkinan sus sistem dalam instalasi sistem pembayaran gaji kampus Brighmouth. Entitas penting apa yang ada dalam lingkungan sistem pembayaran gaji ? Apakah manajemen itu ? • • • • • • • • • • Sebuah Universitas terbuka menyampaikan bahwa manajemen itu terlibat dalam aktifitas berikut : Perencanaan – memutuskan apa yang harus dilakukan Mengorganisasi – membuat penyusunan Pengaturan orang – memilih orang yang tepat untuk sebuah pekerjaan Mengarahkan – memberikan instruksi Monitor – Melakukan pengecekan progres Kontrol – mengambil action untuk perbaikan Inovasi – memberikan solusi baru Mewakili – berhubungan dengan user Materi Universitas terbuka ini ada di D. Ince, H. Sharp, and M. Woodman, Introduction to Software Project Management and Quality Assurance, McGraw-Hill, 1993 Apakah manajemen itu ? Tugas manajemen dapat dilihat dari apa saja yang paling sering menantang dalam tugas manajer, hasil survey untuk manajer proyek Perangkat lunak tersebut adalah sebagai berikut : • Dapat menyelesaikan dengan deadline (85 %) • Dapat menyelesaikan dengan batasan –batasan sumber daya (83 %) • Mengkomunikasikan secara efektif diantara tugas group (80 %) • Meningkatkan komitmen dari anggota tim (74 %) • Menjaga milestone yang terukur (70 %) • Dapat menyelesaikan dengan perubahan-perubahan yang terjadi (60 %) • Mengerjakan perencanaan proyek dengan kesepakatan dengan anggota tim (57 %) • Meningkatkan komitmen dari manajemen (45 %) • Menghadapi konflik (42 %) • Mengatur vendor dan sub-contractor (38 %) Survey H.J.Thamhain and D.L.Wilemon appeared in Juni 1986 in Project Management Journal under the title ‘criteria for controlling software according to plan’. Apakah manajemen itu ? Latihan 6 • Paul Duggan adalah manajer seksi pengembangan perangkat lunak. Pada hari Selasa jam 10.00 am, dia beserta anak buah kepala seksi melakukan meeting dengan group managernya tentang kebutuhan staf untuk tahun berikutnya. Paul telah membuat catatan dokumen staf yang akan diambil. Hal ini berdasarkan rencana kerja seksinya untuk tahun depan. Dokumen didiskusikan pada meeting. Jam 2.00 pm Paul mengadakan meeting dengan senior stafnya tentang proyek penting yang dilakukan di seksinya. Salah satu staf pengembangan perangkat lunak mengalami kecelakaan di jalan raya dan tinggal di rumah sakit pada beberapa waktu. Diputuskan bahwa proyek dapat berjalan sesuai jadwal dengan mentransfer tim lain yang mempunyai pekerjaan kurang urgent ke proyek ini. Penempatan sementara dibawa ke pekerjaan kurang urgent tapi akan memakan waktu seminggu atau harus diatur lagi. Paul menghubungi manajer personal tentang mendapatkan pengganti dan user untuk yang pekerjaan kurang urgent telah dilakukannya menjelaskan kenapa proyek ini akan mengalami delay. Masalah proyek perangkat lunak Masalah-masalah proyek dilihat dari kacamata manajer : • Estimasi dan rencana yang jelek • Standard dan pengukuran kualitas yang kurang • Petunjuk yang kurang tentang membuat keputusan organisasi • Difinisi aturan yang jelek – siapa mengerjakan apa ? • Kriteria sukses yang salah Masalah proyek perangkat lunak Masalah-masalah yang diidentifikasi oleh mahasiswa sistem komputer dan informasi yang telah menyelesaikan penempatan industri : • Spesifikasi pekerjaan yang kurang • Manajemen mengabaikan IT • Pengetahuan area aplikasi yang kurang • Standard yang kurang • Update dokumentasi yang kurang • Aktifitas sebelumnya yang tidak lengkap pada waktunya – termasuk pengiriman perangkat yang terlambat • Komunikasi antara teknisi dan user yang kurang • Komunikasi yang kurang menyebabkan duplikasi pekerjaan • Komitmen yang kurang – khusunya ketika proyek terikat pada satu orang kemudian keluar • Kemampuan Keahlian teknikal yang kurang • Perubahan kebutuhan hukum • Perubahan lingkungan perangkat lunak • Tekanan deadline • Pengendalian kualitas yang kurang • Management jarak jauh • Pelatihan yang kurang Pengontrolan manajemen • Siklus hidup pengontrolan proyek • Tujuan harus didifinisikan dengan jelas • Pengukuran efektifitas konkret dan jelas dengan jawaban dari pertanyaan yes / no Contoh : Apakah kita akan menginstal perangkat lunak baru sebelum 1 Jani ? • Tujuan harus diturunkan ke sub tujuan / goal Pengontrolan manajemen Latihan 7 • Identifikasi tujuan dan sub tujuan dari proyek kampus Brighmouth. Pengukuran efektifitas apa yang digunakan untuk keberhasilan dalam mencapai tujuan proyek ? Stakeholder • Tim Proyek internal • Tim Proyek eksternal tapi dalam satu organisasi • Pihak eksternal dari tim proyek dan organisasi Stakeholder Latihan 8 • Identifikasi stakeholder proyek pembayaran gaji kampus Brighmouth Kebutuhan spesifikasi Umumnya kasus proyek berorientasi produk mempunyai tujuan : • Kebutuhan fungsional • Kebutuhan kualitas • Kebutuhan sumberdaya Informasi dan pengontrolan dalam organisasi • Hirarki sistem informasi dan pengontrolan • Level pengambil keputusab dan informasi • Perbedaan tipe informasi • Kuantifikasi pengukuran efektifitas mengurangi salah persepsi TERIMA KASIH