CARA MEMBUAT PERENCANAAN PROYEK APLIKASI
Kali ini kita akan bahas bagaimana cara membuat perencanaan proyek aplikasi.
Pada dasarnya ini tentang Project Management. Software Development Life Cycle yang sudah kita bahas sebelumnya dibungkus dalam rencana proyek, atau Project Management Plan.
Jadi, mari kita posisikan diri kita sebagai Manager Proyek.
Rencana manajemen proyek adalah dokumen resmi yang disetujui yang menjelaskan bagaimana proyek dilaksanakan, dipantau, dan dikendalikan. Bisa berupa ringkasan atau dokumen rinci.
Dokumen ini digunakan untuk menentukan pendekatan yang diambil oleh tim proyek untuk menyampaikan lingkup manajemen proyek yang dimaksudkan dari proyek tersebut.
Manajer proyek akan membuat perencanaan mengikuti masukan dari tim proyek dan pemangku kepentingan utama, seperti pemilik perusahaan, direksi, ya pokoknya pejabat atau orang yang berpengaruh besar bagi proyek.
Ok, Katakan kita ditugaskan untuk memanage proyek aplikasi, mulai dari requirements gathering sampai dengan peluncuran aplikasi.
Disini saya akan berikan poin-poin apa saja yang harus kita lakukan. Dan informasi ini akan berdasarkan dari pengetahuan yang saya dapat di pelatihan Project Management Profesional dan pengalaman jadi Manager Proyek Aplikasi selama kurang lebih 5 tahun.
Saya akan rangkumkan dalam 14 hal yang harus kita lakukan saat kita -sebagai Manajer Proyek- ditugaskan memanage proyek peluncuran aplikasi, entah itu aplikasi mobile android atau iOS, atau aplikasi web, atau aplikasi desktop.
PERTAMA. KUMPULKAN INFORMASI TENTANG PROYEK SEDETIL-DETILNYA.
Pada tahapan ini kita haru mencari informasi bisa ke bos kita, cari tahu kita diassign untuk tujuan apa; apa untuk memperbaiki sesuatu yang bermasalah, perbaikan seperti apa yang diperlukan, outputnya harus seperti apa, dan kondisi skrg seperti apa. Ataukah untuk meningkatkan performa bisnis perusahaan, tanyakan seperti apa hasil akhir yang diharapkan, apa goal dari proyek ini. Tanyakan juga apakah mereka melihat pencapaian seperti ini, apakah ada dokumen blueprint atau topologi aplikasi yang menggambarkan seperti apa aplikasi yang akan diluncurkan, apakah sudah ada kontraknya, ruang lingkupnya seperti apa. Pokoknya minta semua informasi yang dibutuhkan terkait proyek ini.
KEDUA. MEMBUAT DOKUMEN PROJECT CHARTER.
Dokumen ini berisi tentang gambaran proyek secara luas. Bisa satu atau beberapa dokumen, yang berisikan ruang lingkup proyek; tujuannya apa, bagaimana cara melakukan pengukuran kemajuannya, berapa budgetnya, berapa lama waktunya, siapa saja orang yang berpengaruh atas proyek, apa saja area kewenangan PM, dan apakah ada tahapan-tahapan atau goal jangka pendek, atau istilahnya quick win, yang ingin dicapai.
Setelah dokumen jadi, lakukan review bareng bos kita, dan kalau sudah OK, minta bos tandatangan, dan kalau bisa, minta bos kita kirim email untuk menginformasikan ke jajaran top level manager bahwa proyek sudah dimulai dan kita ditugaskan menjadi PM-nya. Hal itu akan memberikan kita kredibilitas dan mempermudah komunikasi antar level management di perusahaan kita dan perusahaan client kita selaku pemesan aplikasi.
KETIGA. MENGIDENTIFIKASI PEMANGKU KEPENTINGAN/STAKEHOLDER
STAKEHOLDER adalah orang-orang yang terdampak dari adanya proyek aplikasi ini, baik berdampak pada proyek secara positif maupun negatif. Bisa siapa aja, misalkan; bagian penjualan, pengadaan, hrd, IT,...siapa saja.
KEEMPAT. MULAI MEMBUAT RENCANA MANAJEMEN PROYEK.
Dalam pembuatannya, rencana managemen proyek bisa jadi memerlukan beberapa waktu untuk menyelesaikannya. Kita harus berdiskusi dengan banyak tim/organisasi, minta kontribusi mereka, apakah mereka ada saran/pertimbangan, apakah ada aturan-aturan yg harus diikutin. Hal-hal ini akan memerlukan waktu. Sampaikan kepada bos kita perkiraan tentang berapa hari yang dibutuhkan untuk membuat rencana managemen proyek.
KELIMA. DARI STAKEHOLDER, KITA KUMPULKAN KEBUTUHAN MEREKA.
Mulai dari spesifikasi produk, kualitasnya akan seperti apa, cara berkomunikasi, dan kebutuhan sumber daya manusia / orang.
Spesifikasi produk seperti kondisi atau kemampuan yang harus dimiliki system aplikasi, atau standarisasi tertentu yang harus dipenuhi. Cara berkomunikasi seperti media untuk komunikasi atau bahkan bahasa yang digunakan. Dan kebutuhan sumber daya manusia atau berapa orang yang diperlukan, berapa jam kerjanya.
Hasil akhir pengumpulan kebutuhan tersebut adalah nanti produknya akan seperti apa dan kapabilitasnya akan seperti apa.
KEENAM. MEMBUAT RUANG LINGKUP PEKERJAAN
Ruang lingkup pekerjaan merupakan pendetilan dari Project Charter. Berisikan penjelasan produk dan tujuan dari pembuatan suatu produk aplikasi, bagaimana hasil akhir dari produk tersebut, bagaimana tahapan-tahapan pengerjaan aplikasi, apakah ada batasan dan asumsi. Batasan itu maksudnya: Faktor yang membatasi pilihan tim, batasan waktu, jadwal, sumber daya, biaya, ruang lingkup. Asumsi: adalah hal-hal yang dianggap benar tetapi mungkin tidak benar disebut Asumsi.
Contoh asumsi dalam proyek aplikasi :
Teknologi. Konteks teknis proyek seperti platform (iOS atau Android, atau Cloud AWS atau Microsoft Azure, atau Google Cloud, atau Telkom CLoud).
Fasilitas. Fasilitas yang akan tersedia untuk suatu proyek seperti kantor atau data center.
Infrastruktur. Infrastruktur yang akan tersedia untuk suatu proyek seperti jaringan dan alat komunikasi.
Arsitektur & Desain. Asumsi seperti pendekatan arsitektur atau desain yang sudah mapan di industri atau organisasi. Contoh mulitier atau micro services. (kasih contoh gambar).
Bisnis. Asumsi tentang konteks dan strategi bisnis.
Keuangan. Asumsi tentang keuangan proyek seperti mata uang dan proses anggaran.
Metodologi & Standar. Asumsi mengenai pendekatan yang akan diterapkan pada proyek, termasuk manajemen proyek dan metodologi pengembangan.
KETUJUH. MEMBUAT RINCIAN AKTIVITAS PEKERJAAN, ATAU WORK BREAKDOWN STRUCTURE.
Berisikan tentang rincian aktivitas pekerjaan. Setiap aktivitas didetilkan sampai turunan terkecil, agar lebih mudah dimanage dan dipantau.
KEDELAPAN. MEMBUAT PERENCANAAN KEBUTUHAN SUMBER DAYA MANUSIA.
Berisikan tentang rincian kebutuhan sumber daya manusia; berapa orang yang dibutuhkan, bahasa pemrograman apa yang dikuasai, junior atau senior, atau tim leader. Kadang kita perlu meminta sumber daya dari lintas organisasi, untuk itu kita harus pastikan bahwa sumber daya tersebut memenuhi kebutuhan.
KESEMBILAN. MEMBUAT JADWAL PROYEK atau PROJECT SCHEDULE.
Aktivitasnya, urutannya, perkiraan waktunya. Form sederhana bisa dibuat menggunakan Excel. Tapi kalau mau membuat yang lebih kompleks akan perlu tools seperti MS Project misalnya (tunjukkan gambar Excel dan MS Project). Karena dengan tools project, kita bisa liat hubungan antar aktivitas, kalau ada perubahan di satu aktivitas, aktivitas yang lain bisa menyesuaikan secara otomatis.
Cara bikin Project Schedule :
Identifikasi aktivitasnya, ada pekerjaan apa saja disitu.
Urutkan berdasarkan prioritas.
Identifikasi aktivitas yang punya keterkaitan dengan aktivitas yang lain.
Perkirakan waktu yang dibutuhkan untuk setiap aktivitas.
Kategorikan mana Leads dan Lags. Leads adalah akselerasi aktivitas penerus dan hanya dapat digunakan pada hubungan aktivitas tipenya selesai-untuk-memulai, artinya aktivitas yang harus selesai dulu baru bisa memulai aktivitas lain. Lag adalah penundaan aktivitas.
Perkirakan ketersediaan sumber daya manusia.
Konfirmasi jam dan hari kerja.
Setelah semuanya lengkap, diskusikan dengan bos kita, minta persetujuan, dan tandatangannya.
KESEPULUH. MEMBUAT PERENCANAAN ANGGARAN.
Kita sudah mengumpulkan data tentang teknologi apa yang dipakai, infrastrukturnya, jadwalnya, dan sumber daya manusianya. Dari situ kita bisa mendapatkan kebutuhan anggarannya. Bahkan kita juga bisa memperkirakan kebutuhan mingguan, dan bulanan, atau mungkin per tiga bulanan kalau kita perlu. Dengan data itu kita bisa mengatur aliran anggaran, baik anggaran yg masuk maupun yang keluar. Juga kita bisa membuat perencanaan rencana pembiayaan untuk diajukan ke management di organisasi atau perusahaan kita.
Nah, data-data tadi seperti ruang lingkup, kebutuhan anggaran, kebutuhan sumber daya, dan jadwal, kita gunakan untuk memonitor jalannya proyek.
Setelah itu..
KESEBELAS. IDENTIFIKASI RESIKO.
Secara sederhana, risiko adalah kemungkinan terjadinya sesuatu yang buruk. Resiko melibatkan ketidakpastian tentang dampak / implikasi dari suatu kegiatan sehubungan dengan sesuatu yang manusia hargai (seperti kesehatan, kesejahteraan, kekayaan, properti atau lingkungan), seringkali berfokus pada konsekuensi negatif yang tidak diinginkan.
Jadi ajak tim kita untuk melakukan identifikasi resiko.
Setelah kita punya data resiko apa saja yang mungkin terjadi.
KEDUABELAS. MITIGASI RESIKONYA.
Apa maksudnya mitigasi. Mitigasi resiko itu maksudnya hilangkan atau kurangi dampak dari resiko tersebut. Identifikasi besar kecilnya kemungkinan resiko akan terjadi dan identifikasi juga dampaknya pada tujuan proyek aplikasi kita.
Ada 4 cara untuk memitigasi resiko :
Hindari resikonya. Contoh; kalau kita khawatir akan resiko kapasitas penyimpanan yang tidak cukup, kita siapkan media penyimpanan cadangan.
Pindahkan resikonya. Bisa dengan membeli asuransi, misalnya.
Kurangi dampak dari resiko. Bisa dengan menambah kapasitas, atau menambah jumlah orang.
Kalau semuanya ga bisa kita lakukan, maka terima aja resikonya. Kita bisa menerima dengan cara siapkan anggaran cadangan atau kita terima begitu aja karena ga ada yang bisa kita lakukan.
KETIGABELAS. PERBAHARUI PROJECT MANAGEMENT PLAN.
Kita cek lagi ruang lingkup, kebutuhan anggaran, kebutuhan sumber daya, dan jadwal..kalau ada yang perlu disesuaikan, maka kita sesuaikan di perencanaan proyek. Misalkan dengan perencanaan yang baru ini kita bisa menghemat anggaran, atau mempercepat jadwal, atau mengurangi resiko.
KEEMPATBELAS. REVIEW/TINJAU RENCANA TERBARU DENGAN BOS-BOS KITA.
Ruang lingkup apa yang kita sesuaikan, jadwal apa yang kita sesuaikan, dan anggaran apa yang kita sesuaikan. Ketiga hal ini adalah hal kunci yang kita mau supaya bos-bos kita setuju. Bos kita bisa review rencana kita dan bilang semuanya bagus, terus kita bisa minta tandatangannya.
Setelah tandatangan, maka itulah langkah-langkah dalam membuat perencanaan proyek.