Sabtu, 15 September 2018

Manajemen Proyek



Kegagalan banyak megaproyek perangkat lunak pada tahun 1960-an dan awal 1970-an merupakan petunjuk awal mengenai kesulitan manajemen perangkat lunak. Perangkat lunak diserahkan terlambat, tidak dapat diandalkan memakan biaya beberapa kali lipat dari yang semuladiperkirakan dan seringkali menunjukkan karakteristik kinerja yang buruk (Brooks,1975). Proyek-proyek ini gagal bukan karena manajer atau programer tidak kompeten. Sebaliknya proyek yang besar dan menantang ini menarik orang-orang dengan kemampuan rata-rata. Kegagalan yang terjadi ditimblkan oleh pendekatan manajemen yang digunakan. Teknik manajemen dari disiplin ilmu lain yang diterapkan ternyata tidak efektif untuk pengembangan perangkat lunak. Oleh karena itu, kebutuhan akan manajemen merupakan perbedaan penting antara pengembang perangkat lunak profesional dan amatir.
Manajer perangkat lunak melakukan pekerjaan yang sama dengan manajer proyek perangkat lain. Namun demikian, rekayasa perangkat lunak berbeda dengan jenis rekayasa lain karena beberapa hal, manajemen perangkat lunak sangat sulit. Perbedaan tersebut anatara lain produk perangkat lunak yang tidak berwujud, tidak adanya pemahaman yang jelas mengenai hubungan antara proses perangkat lunak dengan jenis produk, proyek perangkat lunak yang besar biasanya berbeda dari proyek-proyek sebelumnya. Akibat dari adanya masalah-masalah ini, akan menimbulkan dampak berupa proyek perangkat lunak yang terlambat, melebihi anggaran, dan melewati jadwal.
A.    Kegiatan-kegiatan Manajemen
1.     Penulisan proposal yang mendeskripsikan tujuan proyek dan dan bagaimana pelaksanaannya. Proposal biasanya juga mencakup perkiraan biaya dan jadwal.
2.      Perencanaan dan penjadwalan proyek yang berkenaan dengan identifikasi kegiatan, patokan dan apa yang harus dihasilkan oleh proyek.
3.      Pemantauan proyek, dimana manajer harus mengetahui kemajuan proyek dan membandingkankemajuan dan biaya yang sebenarnya dikeluarkan dengan biaya yang direncanakan.
B.     Perencanaan Proyek
Jenis-jenis rencana proyek
1.     Rencana kualitas. Mendeskripsikan prosedur kualitas danstandar yang akan digunakan pada sebuah proyek.
2.      Rencana validasi. Mendeskripsikan pendekatan, sumberdaya, dan jadwal yang digunakan untuk validasi sistem.
3.      Rencana manajemen konfigurasi. Mendeskripsikan prosedur dan struktur manajemen kofigurasi yang akan digunakan.
4.      Rencana pemeliharaaan. Meramalkan persyaratan sistem, biaya pemeliharaan dan usaha yang dibutuhkan.
5.      Rencana pengembangan staf. Mendeskripsikan bagaimana keterampilan dan pengalaman anggota tim proyek akan dikembangkan.

Perincian rencana proyek bervariasi, tergantung pada jenis proyek dan organisasi. Namun demikian, sebagian besar, rencana harus mencakup bagian-bagian berikut ini:
1.     Pendahuluan. Bagian ini dengan singkat mendeskripsikan tujuan proyek dan menentukan batasan-batasan (misalnya, anggaran, waktu) yang mempengaruhi manajemen proyek.
2.     Organisasi proyek. Bagian ini mendeksripsikan bagaimana tim pengembangan diorganisir, siapa saja yang terlibat dan perannya dalam tim.
3.      Analisis resiko. Bagian in mendeskripsikan risiko proyek yang mungkin timbul, kemungkinan munculnya risiko-risiko tersebut dan strategi pengurangan risiko yang diusulkan.
4.      Persyaratan sumber daya perangkat keras dan perangkat lunak. Bagian ini mendekripsikan perangkat keras dan perangkat lunak pendukung yang dibutuhkan untuk melakukan pengembangan. Jika perangkat keras harus dibeli, maka perkiraan hargadan jadwal pengantaran harus dimasukkan.
5.      Pembagian kerja. Bagian ini mendeskripsikan pembagian proyek menjadi kegiatan-kegiatan, dan identifikasi patokan dan hasil yang diharapkan dari setiap kegiatan.
6.      Jadwal proyek. Bagian ini mendeskripsikan ketergantugan antara kegiatan, perkiraan waktu yang diperlukan untuk mencapai setiap patokan (milestone) dan alokasi SDM bagi kegiatan-kegiatan tersebut.
7.      Monitor dan mekanisme pelaporan. Bagian ini mendeskripsikan laporan manajemen yang dihasilkan, kapan laporan itu harus diberikan, dan mekanisme pemantauan proyekyang digunakan.
Patokan (milestone) dan hasil yang dapat diserahkan (deliverable)

C.    Penjadwalan proyek
Penjadwalan proyek merupakan pekerjaan yang sangat menantang bagi manajer perangkat lunak. Manajer memperkirakan waktu dan sumber daya yang diperlukan untuk menyelesaikan kegiatan dan mengaturnya dalam urutan yang logis. Kecuali proyek yang dijadwalkan sama dengan proyek yang sebelumnya, perkiraan sebelumny merupakan dasar yang tidak pasti untuk penjadwalan proyek yang baru. Perkiraan jadwal selanjutnya bertambah rumit dengan adanya faktabahwa proyek yang berbeda mungkin menggunakan metode perancangan dan bahasa implementasi yang berbeda pula.

1.      Manfaat Penjadwalan Proyek
Secara umum penjadwalan mempunyai manfaat – manfaat seperti berikut.
·         Memberikan pedoman terhadap unit pekerjaan / kegiatan mengenai batas – batas waktu untuk mulai dan akhir dari masing – masing tugas.
·          Memberikan sarana bagi manajemen untuk koordinasi secara sistematis dan relistis dalam penentuan alokasi prioritas terhadap sumber daya dan waktu.
·          Memberikan saran untuk menilai kemajuan pekerjaan.
·         Menghindari pemakaian sumber daya yang berlebihan, dengan harapan proyek dapat selesai sebelum waktu yang di tetapkan.
·          Memberikan kepastian waktu pelaksanaan pekerjaan.
·          Merupakan sarana penting dalam pengendaliaan proyek.
2.      Kompleksitas Penjadwalan Proyek
Kompleksitas penjadwalan proyek sangat dipengaruhi oleh faktor – faktor berikut Sasaran dan tujuan proyek.
·         Keterkaitan dengan proyek lain agar terintegrasi dengan master schedule.
·          Dana yang di perlukan dan dana yang tersedia.
·         Waktu yang di perlukan, waktu yang tersedia, serta perkiraan waktu yang hilang dan hari – hari libur.
·          Susunan dan jumlah kegiatan proyek serta keterkaitan di antaranya.
·          Kerja lembur dan pembagian shift kerja untuk mempercepat proyek.
·          Sumber daya yang di perlukan dan sumber daya yang tersedia.
·           Keahlian tenaga kerja dan kecepatan mengerjakan tugasnya masing-masing.
·         Makin besar skala proyek, semakin kompleks pengelolaan penjadwalan karena dana yang di kelolah sangat besar, kebutuhan dan penyediaan sumber daya juga besar, kegiatan yang di lakukan sangat beragam serta durasi proyek menjadi sangat panjang.
Oleh karena itu, agar penjadwalan dapat diimplementasikan, digunakan cara – cara atau metode teknis yang sudah digunakan seperti metode penjadwalan proyek. Kemampuan scheduler yang memadai dan bantuan software komputer untuk penjadwalan dapat membantu memberikan hasil yang optimal.
3.      GanttChart
Ganttchart adalah suatu alat yang berguna untuk proyek-proyek dengan anggota tim dengan jumlah yang sedikit. Gantt chart secara luas dikenal sebagai alat fundamental dan mudah diterapkan oleh para manajer proyek untuk memungkinkan seseorang melihat dengan mudah waktu dimulai dan selesainya tugas-tugas dan sub- sub tugas dari proyek.
Semakin banyak tugas-tugas dalam proyek dan semkin penting urutan antara tugas-tugas maka semakin besar kecenderungan dan keinginan untuk memodifikasi gantt chart. Gantt chart membantu menjawab pertanyaan-pertanyaan “what if” saat melihat kesempatan-kesempatan untuk membuat perubahan terlebih dahulu terhadap kebutuhan.
Keuntungan menggunakan Gantt chart :
·         Sederhana, mudah dibuat dan dipahami, sehingga sangat bermanfaat sebagai alat komunikasi dalam penyelenggaraan proyek.
·          Dapat menggambarkan jadwal suatu kegiatan dan kenyataan kemajuan sesungguhnya pada saat pelaporan
Kelemahan Gantt Chart :
·         Tidak menunjukkan secarahubungan antara satu kegiatan dengan kegiatan yang lain secara spesifik.
·         Sulit mengadakan penyesuaian atau perbaikan bila diperlukan, karena harus membuat diagram baru.
4.      PERT/CPM
PERT dapat mengidentifikasi sebuah tugas atau sekumpulan tugas yang menggambarkan suatu aliran penting yang ditetapkan bagi keberhasilan proyek. Bentuk dari bagan ini disebut Precedence Network (jaringan yang diutamakan). Setiap kotak menujukkan sebuah kegiatan. Pada setiap kotak ditulis nama kegiatan dan waktu yang diperlukan. Bagan PERT dan jalur kritis adalah jumlah jalur, atau serangkaian kegiatan yang dapat ditelusuri pada PERT sederhana di atas, dengan mengikuti petunjuk garis panah. Lamanya waktu yang dibutuhkan untuk menelusuri setiap jalur dapat dijumlahkan dengan menambahkan lamanya waktu dari jalur masing-masing kegiatan. Secara fundamental PERT hampir sama dengan Critical Path Method (Metode Jalur Kritis) yang lebih dikenal dengan CPM. Jalur kritis dalam suatu proyek adalah jalur yang memerlukan waktu paling lama untuk menyelesaikan proyek. Jadi, jalur kritis tidak pernah memiliki suatu slack (kekenduran/kelonggaran). Jika terjadi keterlambatan di sepanjang jalur kritis, maka keseluruhan proyek akan terlambat juga.
D.    Manajemen Resiko
Resiko merupakan probabilitas suatu keadaan yang tidak diinginkan akan benar-benar terjadi. Bahkan resiko dapat mengancam proyek perangkat lunak yang dikembangkan. Kategori resiko dapat dikategorikan sebagai berikut:
1.     Resiko proyek. Resiko yang mempengaruhi jadwal atau sumberdya proyek.
2.      Resiko produk. Resiko yang mempengaruhi kualitas atau kinerja perangkat lunak yang dikembangkan.
3.      Resiko bisnis. Resiko yang mempengaruhi organisasi yang sedang mengembangkan atau mengadakan perangkat lunak tersebut.

Proses manajemen resiko mencakup beberapa tahap yaitu :
1.     Identifikasi resiko. Resiko proyek, roduk, dan bisinis yang mungkin terjadi diidentifikasi.
2.     Analisis resiko. Kemungkinan dan konsekuensi resiko-resiko ini dinilai.
3.     Perencanaan resiko. Dibuat rencana untuk menangani resiko apakah dengan menghindari atau meminimasi efeknya pada proyek.
4.     Monitor resiko. Resiko dinilai secara konstan dan rencana untuk meringankan resiko derevisi seiring bertambahnya informasi mengenai resiko tersebut.