Manajemen Resiko Proyek

 MANAJEMEN RESIKO PROYEK




        Manajemen resiko pada proyek meliputi langkah memahami dan mengidentifikasi masalah potensial yang mungkin terjadi, mengevaluasi, memonitoring dan menangani risiko. Manajemen risiko yang proaktif artinya  menjawab bagaimana orang secara aktif berusaha mengurangi risiko serta memperbaiki tingkat probabilitas keberhasilan pelaksanaan proyek.

             Risiko merupakan kombinasi dari kemungkinan suatu kejadian dan akiat dari kejadian tersebut dengan tidak menutup kemungkinan bahwa ada lebih dari satu akibat yang mungkin terjadi untuk satu kejadian tertentu. Pada umumnya risiko dipandang daru perspektif negatif, seperti kehilangan, bahaya, kerugian, kegagalan dan lain sebagainya. Hal-hal tersebut pada prinsipnya merupakan bentuk ketidak pastian yang mestinya dipahami dan dikelola secara efektif sehingga dapat menjadi nilai tambah bagi organisasi.

        Secara umum, tujuan manajemen risiko yang utama adalah mencegah atau meminimisasi pengaruh yang tidak baik akibat kejadian yang tidak terduga melalui penghindaran risiko atau persiapan rencana kontingensi yang berkaitan dengan risiko tersebut.  Dalam manajemen proyek risiko proyek adalah suatu peristiwa atau kondisi yang tidak pasti, dan jika terjadi mempunyai pengaruh positif atau bisa juga negatif pada tujuan proyek. Suatu risiko mempunyai sebab dan bila terjadi akan membawa dampak, oleh karena itu risiko dapat dinyatakan sebagai fungsi dari kemungkinan dan dampak.

        Lebih jauh, dalam konteks manajemen proyek, manajemen risiko proyek dipahami sebagai seni dan ilmu untuk mengidentifikasi, menganalisis dan merespon risiko selama umur proyek dan tetap menjamin tercapainya tujuan proyek..  Manajemen risiko proyek yang baik akan mampu memperbaiki tingkat keberhasilan proyek secara signifikan. Bagaimanapun, manajemen risiko proyek akan memberikan suatu pengaruh positif dalam hal memilih proyek, menentukan lingkup proyek, membuat jadwal yang realistis dan estimasi biaya yang baik.

Per definisi risiko merupakan suatu kesempatan atau peluang yang secara matematis dapat diformulasikan sebagai berikut:

            Risk exposure = risk likelihood x risk impact

Risk likelihood adalah probabilitas terjadinya suatu peristiwa yang dikuantifisir menjadi angka probabilitas, risk impact adalah dampak dari peristiwa tersebut yang biasanya diukur dengan satuan moneter misalnya rupiah, sedang tingkat kepentingan risiko disebut risk exposure, yang dalam analisis biaya-manfaat akan mencerminkan besarnya biaya. Risk exposure inilah yang nantinya akan diperbandiongkan dengan risk exposure suatu  pekerjaan lainnya dan menjadi acuan bagi orang untuk memilih pekerjaan mana yang akan dilakukan.


JENIS-JENIS RISIKO

Menurut IRM (2002), ada setidaknya 4 jenis risiko yang  selama ini sudah dikenal orang, yakni:

  • Risiko Operasional, yakni risiko yang berhubungan dengan operasional organisasi, antra lain misalnya risiko yang mencakup sistem organisasi, proses kerja, teknologi dan sumber daya manusia.
  • Risiko Finansial, yakni risiko yang berdampak pada kinerja keuangan organisasi seperti kejadian risiko akibat dari fluktuasi mata uang, tingkt suku bunga termasuk risiko pemeberian kredit, likuiditas da kondisi pasar.
  • Hazard Risk, yaitu risiko yang terkait dengan kecelakaan fisik seperti kerusakan karena kebakaran, gempa bumi, ancaman fisik dll
  • Risiko stratejik, yaitu risiko yang ada hubungannya dengan strategi perusahaan, politik, ekonomi, hukum. Risiko ini juga terkait dengan reputasi kepemimpinan organisasi dan perubahan selera pelanggan.


HAL – HAL YANG HARUS DIPERHATIKAN DALAM MANAJEMEN RESIKO PROYEK PERANGKAT LUNAK

Ada tiga hal yang perlu diperhatikan dalam manajemen risiko proyek yakni:

  • Identifikasi, analisis dan penilaian risiko di awal proyek secara sistematis serta mengembangkan rencana untuk mengantisipasi risiko.
  • Mengalokasikan tanggungjawab kepada pihak yang paling sesuai untuk mengelola risiko
  • Memastikan bahwa biaya penanganan risiko adalah cukup kecil dibanding nilai proyek. Artinya bahwa biaya yang diperlukan untuk mengurangi dampak negatif dari suatu risiko realatif lebih rendah atau sama dengan besaran manfaat dari terhindarnya/ berkurangnya risiko tersebut.


PROSES MANAJEMEN RISIKO

Proses manajemen risiko memberikan gambaran kepada kita bahwa untuk mengelola risiko ada beberapa tahapan yakni:

1. Perencanaan Manajemen Risiko.

        Perencanaan meliputi langkah memutuskan bagaimana mendekati dan merencanakan kegiatan manajemen risiko untuk sebuah proyek. Dengan mempertimbangkan lingkup proyek, rencana manajemen proyek, faktor lingkungan perusahaan, maka tim proyek dapat mendiskusikan dan menganalisis aktivitas manajemen risiko untuk proyek-proyek tertentu.

        Untuk membuat perencanan manajemen risiko, ada bebrapa hal yang diperlukan yakni 1) Project Charter, yakni dokumen yang dikeluarkan oleh manajemen senior yang secara formal menyatakan adanya suatu proyek. Dokumen ini memberi otorisasi kepada manajer proyek untuk menggunakan sumberdaya organisasi untuk melaksanakan aktivitas proyek. 2) Kebijakan manajemen risiko, 3) Susunan peran dan tanggung jawab 4) Toleransi stakeholder terhadap risiko 5) Tamplate untuk rencana manajemen risiko organisasi 6) Work Breakdown Structure (WBS)

Output dari perencanaan manajemen risiko adalah Risk Management Plan yang berisi:

  • Metodologi yang menguraikan definisi alat, pendekatan, sumber data yang mungkin digunakan dalam manajemen risiko proyek tertentu
  • Peran dan Tanggung Jawab yang menguraikan tanggung jawab dan peran utama serta pendukung berikut keanggotaan tim manajemen risiko untuk setiap tindakan
  • Budget yang berisi rencana anggaran untuk manajemen risiko proyek
  • Waktu yang berisi rencana waktu pelaksanaan proses manajemen risiko di sepanjang siklus proyek
  • Scoring dan Intepretasi yang menguraikan metode skoring dan intepretasi yang sesuai tipe dan waktu analisis risiko kualitatif maupun kuantitatif.

2. Identifikasi Risiko

        Sebagai suatu rangkaian proses, identifikasi risiko dimulai dengan memahami apa sebenarnya yang disebut sebagai risiko. Berikutnya adalah pendefinisian risiko yang mungkin mempengaruhi tingkat keberhasilan proyek dan mendokumentasikan karakteristik dari tiap-tiap risiko dengan melakukan Hasil utama dari langkah ini adalah risk register.

        Identifikasi risiko dapat dilakukan dengan analisis sumber risiko dan analisis masalah Analisis sumber risiko yaitu analisis risiko dengan melihat darimana risiko berasal. Ada tiga sumber risiko yang sudah banyak dikenal yakni Risiko internal yakni risiko yang bersumber dari internal organisasi yang dapat dikategorikan dalam non technical risk (manusia, material, keuangan) dan technical risk (disain, konstruksi dan operasi). Analisis masalah adalah analisis risiko  yang terkait dengan kekawatiran/ rasa khawatir.

Untuk dapat mengidentifikasi risiko setidaknya ada empat metode yang digunakan, yakni :

1) Identifikasi risiko berdasarkan tujuan, yaitu risiko diidentifikasi berdasarkan sejauh mana suatu peristiwa dapat membahayakan pencapaian tujuan secara perbagian atau secara keseluruhan pekerjaan proyek.

2) Identifikasi Risiko berdasarkan Skenario,yakni risiko diidentifikasi berdasarkan skenario yang dibuat berdasarkan perkiraan terjadinya sebuah peristiwa.

3) Identifikasi risiko berdasarkan Taksonomi,yakni risiko dibreakdown berdasarkan sumber risiko dengan menggunakan pengetahuan praktik yang ada melalui daftar pertanyaan yang telah disusun yang jawabannya akan menunjukkan risiko yang ada.

4) Common risk check,yakni risiko yang sudah biasa terjadi didaftar dan dilakukan pemilihan mana risiko yang sesuai dengan proyek yang sedang dikerjakan.


3. Analisis Risiko Kualitatif

        Analisis kualitatif salam manajemen risiko adalah proses menilai dampak dan kemungkinan risko yang sudah diidentifikasi. Proses ini dilakukan dengan menyusun risiko berdasarkan dampaknya terhadap tujuan proyek. Analisis ini merupakan cara prioritisasi risiko sehingga membentuk gambaran risiko yang harus mendapat perhatian khusus dan cara merespon risiko tersebut seandainya terjadi.


4. Analisis Risiko Kuantitatif

        Analisis risiko secara kuantitatif merupakan metode untuk mengidentifikasi risiko kemungkinan kegagalan sistem dan memprediksi besarnya kerugian. Analisis ini dilakukan dengan mengaplikasikan formula matematis yang dikaitkan dengan nilai finansial. Secara matematis penghitungan risiko dilajkukan dengan mengalikan tingkat kemungkinan kejadian dengan dampak yang ditimbulkan. Hasil analisis ini dapat digunakan untuk mengambil langkah strategis dalam mengatasi risiko yang teridentifikasi.. Meskipun analisis kuantitatif ini menggunakan pendekatan matematis, namun pada prinsipnya analsisi ini merupakan tindak lanjut yang mengikuti hasil analisis kualitatif. Kesulitan utama dalam analisis risiko kuantitatif adalah pada saat menentukan tingkat kemungkinan karena data-data statistik belum tentu tersedia untuk semua peristiwa.


5. Penanganan Risiko

        Penangan risiko diartikan sebagai proses yang dilakukan untuk meminimalisasi tingkat risiko yang dihadapi sampai pada batas yang dapat diterima. Sacra kuantitatif, upaya meminimalisasi risiko dilakukan dengan menerapkan langkah-langkah yang diarahkan pada turunnya angka hasil ukur yang diperoleh dari analisis risiko. Meskipun dalam penanganan risiko dapat dilakukan dengan satu atau lebih cara yang diaplikasikan secara bersamaan atau simultan misalnya mengurangi risiko sekaligus mengalihkan risiko, namun secara umum, teknik yang digunakan untuk menangani risiko dikelompokkan menjadi beberapa kategori, yaitu 1) Menghindari risiko yakni dengan tidak melakukan aktivitas yang beresiko dan memilih melakukan kegiatan yang tidak memiliki risiko. 2) Mitigasi/ Reduksi/ Mengurangi risiko yakni dengan melakukan tindakan untuk mengurangi peluang terjadinya peristiwa yang tidak diharap. Misalnya dengan memilih orang-orang yang kompeten untuk dipekerjakan di proyek. 3) Menerima risiko yakni tetap melakukan pekerjaan yang mengandung risiko dengan tidak melakukan perubahan apapun namun menyiapkan rencana kontingensi jika risiko terjadi. 4) Tranfer Risiko yakni dengan mengalihkan risiko ke pihak lain misalnya dengan membeli asuransi.


KETIDAKPASTIAN RESIKO

Pengambilan keputusan secara umum bisa masuk ke dalam tiga kategori, yaitu :

1. Pengambilan keputusan dalam kondisi pasti. Yang dimaksud di sini adalah bahwa dalam kondisi pasti, artinya semua informasi tentang suatu peristiwa dapat ditentukan dengan pasti sehingga hasil setiap keputusan dapat diketahui dengan pasti pula. Perbandingan dari berbagai alternatif keputusan dapat dilakukan secara langsung karena semua informasi terkait alternatif keputusan dapat diketahui dengan pasti

2. Pengambilan keputusan di bawah risiko. Artinya bahwa  bahwa keputusan diambil dengan kondisi tersedianya informasi yang pasti tentang  kemungkinan dan dampak sehingga nilai harapan dapat diketahui.

3.Pengambilan keputusan dalam ketidakpastian. Artinya keputusan diambil dengan kondisi dimana informasi tentang kemungkinan dan dampak tidak dapat diperoleh sehingga orang tidak dapat memperkirakan apapun tntang kemungkinan-keumngkinan.

Cara Menggunakan Git dan Github dalam SCM


MENGGUNAKAN GIT DAN GITHUB (PENGALAMAN PRIBADI)





Git merupakan sebuah aplikasi Verison Control System (VCS). VCS adalah sebuah sistem yang merekam perubahan-perubahan dari sebuah berkas atau sekumpulan berkas dari waktu ke waktu kedalam repository lokal. 

Sementara GitHub adalah sebuah aplikasi berbasis website dengan Version Control System (VCS) yang menyediakan layanan untuk menyimpan repository dengan gratis secara online. Respository merupakan tempat yang dapat Anda gunakan untuk menyimpan berbagai file berupa source code.

VCS memperbolehkan pengguna untuk mengembalikan berkas-berkas ke keadaan sebelumnya, mengembalikan seluruh proyek kembali ke keadaan sebelumnya, membandingkan perubahan-perubahan di setiap waktu, melihat siapa yang terakhir mengubah sesuatu yang mungkin menimbulkan masalah, siapa dan kapan yang mengenalkan sebuah isu dan banyak lagi.

BAGIAN 1 : BEKERJA DENGAN GIT

Inisiasi : Setelah menginstal GIT (Jika belum silahkan unduh di https://git-scm.com/downloads ), Buka Git Bash Atau CMD untuk cek versi GIT.

Dengan perintah “git --version”

 




Login GIT : Masuk kedalam GIT untuk dapat melakukan operasi-operasi GIT

Dengan perintah “git config –global user.email “you@example”” dan “git config –global user.name “your_username””




Membuat repository : Buka folder yang ingin dijadikan repository, klik kanan pilih Git Bash Here. Kemudian buat repository dengan “git init”


Maka folder yang dipilih akan menjadi repository git dengan branch “master”

Melakukan commit : Commit merupakan tindakan untuk memasukan file baru kedalam repsitory ataupun menyimpan perubahan yang terjadi terhadap file di dalam repsitory

Untuk menampilkan status (keadaan) dari repository kita, gunakan perintah “git status”


Untuk menambahkan file diluar repository (untracked), pertama anda harus memindahkan file kedalam folder repository. Kemudian ketikan “git add namafile.ekstensi”, maka file akan masuk kedalam staging area. Lalu “git commit -m “Pesan anda terhadap perubahan yang terjadi”

 







Untuk mengupdate file yang diubah (modified), tidak perlu melakukan “git add” langsung saja commit dengan “git commit -am “Pesan anda terhadap perubahan yang terjadi””. Atau “git restore <file>” untuk membatalkan perubahan (mengembalikan file seperti semula).


Jika terdapat file didalam folder repository yang terhapus / hilang (missing) maka kita harus add kemudian commit file tersebut untuk menyimpan perubahan pada repository. Atau “git restore <file>” untuk membatalkan perubahan (mengembalikan file).


BAGIAN 2 : BRANCH & MERGE

Branch di analogikan seperti cabang, sehingga setiap perubahan yang dilakukan pada branch tidak akan mempengaruhi jalur utama (master/main). Sementara merge adalah menggabungkan suatu branch dengan jalur utama (master/main).

Membuat Branch : Untuk membuat branch dapat dilakukan dengan perintah “git branch <nama branch>”


Melihat Branch dan Pindah ke Branch Lain : Untuk dapat melihat semua branch yang terdapat pada repository gunakan perintah “git branch”. Untuk dapat bekerja pada suatu branch, kita perlu memindahkan head/pointer (tempat kerja kita) ke branch yang dituju. Hal tersebut dapar dilakukan dengan perintah “git checkout <nama branch>”.


*Sehingga, setiap perubahan yang dilakukan hanya akan berpengaruh pada branch mahasiswa.

Melakukan Merge : Untuk melakukan merge, pertama kita harus berada pada branch master, kemudian buat perintah “git merge <nama branch yang ingin dimerge>”


*Maka setiap file yang ada pada branch mahasiswa akan pindah ke branch master.

Menghapus Branch: Setelah dilakukan merge, maka branch yang sudah dimerge (mahasiswa) tidak kita butuhkan. Untuk menghapus branch dapat digunakan perintah “git branch -b <nama brach yang ingin dihapus>”. Dan perintah “git branch -B <nama brach yang ingin dihapus>” untuk menghapus branch yang belum dimerge.


Melakukan Merge Conflict : Jika kita ingin melakukan merge suatu branch ke master, namun kedua branch mengerjakan file dan baris yang sama, maka akan terjadi conflict. Kemudian git akan meminta kita untuk memilih menggunakan script pada branch a atau branch b.

*Misal pada branch mahasiswa, file mahasiswa.html diubah <h3>Data Mahasiswa</h3> menjadi <h1>Data Mahasiswa</h1>, kemudian commit seperti biasa.

Dan pada branch master, file mahasiswa.html juga terjadi perubahan namun berbeda, <h3>Data Mahasiswa</h3> diubah menjadi <h5>Data Mahasiswa</h5>, kemudian commit seperti biasa.

Maka jika dilakukan merge antara branch mahasiswa dan branch master, akan terjadi conflict dan git akan secara otomatis membuka code editor dan menunjukan letak masalahnya.


Untuk mengatasinya kita harus resolve (memilih kode) secara manual di code editor. Disini saya perubahan yang dilakukan pada branch mahasiswa (perubahan menjadi h5), dengan menghapus opsi perubahan pada master (perubahan menjadi h1).


Setelah itu lakukan commit pada file mahasiswa yang telah dimodifikasi


BAGIAN 3 : BEKERJA DENGAN GITHUB (GIT REMOTE)

Inisiasi : Membuat akun GITHUB pada https://github.com/

Membuat Repository Pada GITHUB : Untuk membuat repository pada GIYHUB sangatlah mudah, pilih ”Your repository” lalu pilih “New”. Makan akan muncul tampilan :


Isi keterangan yang diminta lalu pilih “Create repository”

Clone Repository : Clone digunakan untuk memindahkan atau mengkoneksikan repository pada GITHUB (remote) ke GIT (lokal). Untuk dapat melakukan clone, pilih repository yang ingin di clone, pilih “code” pada GITHUB lalu copy link HTTPS yang tersedia.


Lalu buat folder baru pada komputer anda. Kemudian klik kanan, pilih "Git Bash Here"










Pada GIT BASH ketikan “git clone <linkyangdicopy>”.







Maka repository pada GITHUB akan ter-clone ke GIT lokal komputer anda, dan folder repository juga akan tercopy.








Kemudian masuk kedalam folder origin (repository) dengan cara berikut :








Misalnya, kemudian saya menambahkan file baru (index.html) kedalam folder repository (lokal). Maka jika saya lihat statusnya :









Maka file tersebut harus diadd dan dicommit.








Namun commit yang kita lakukan barusan, mendahului origin (repository remote). Maka kita harus kirim perubahan yang terjadi tersebut dengan perintah PUSH "git push"








Maka perubahan akan terkirim ke GITHUB










Sama halnya jika terdapat file yang modified atau deleted

Melakukan PULL : Pull dilakukan jika terjadi perubahan pada repository GITHUB yang dilakukan oleh orang lain sehingga kita tidak dapat melakukan push. Maka kita harus mengupdate repository lokal kita terlebih dahulu dengan melakukan PULL. Pull dapat dilakukan dengan perintah "git fetch" kemudian "git pull". Maka akan repository lokal kita akan menyesuaikan dengan repository di GITHUB. Hal ini bisa saja mengakibatkan conflict yang harus kita selesaikan secara manual nantinya.

Software Configuration Management


Software Configuration Management

Misalnya, dalam setiap proyek perangkat lunak, terdapat pihak pengembang (developer) yang bekerja dengan cara membuat kode (coding) agar perangkat lunak yang dikembangkan sesuai dengan apa yang disepakati para stakeholder. Jumlah para pengembang yang bekerja dalam suatu proyek, dapat terdiri dari beberapa orang bahkan beberapa grup pengembang,  dengan tools yang berbeda-beda sesuai dengan bidang keahlian dan tugasnya masing-masing. Dalam melaksanakan tugasnya, para pengembang bekerja secara bersamaan duduk didepan komputer mereka, mengerjakan satu perangkat lunak dengan satu "working place" atau "source code" yang sama. Setiap perubahan yang dilakukan oleh satu pengembang tidak dapat secara langsung merubah "source code" yang dikerjakan oleh pengembang lainnya, padahal mereka bekerja untuk perangkat lunak yang sama. Kecuali proyek yang dikerjakan berupa skala kecil dan hanya membutuhkan beberapa orang pengembang dan bersedia untuk "copy paste" dengan rekan setiap perubahan baru terjadi. Namun jika pihak pengembang terdiri dari banyak orang dan tersebar di beberapa kota bahkan negara, maka akan banyak perubahan yang terjadi selama proses pengembangan proyek dan hal tersebut tidak dapat dihindari dan akan meningkatkan tingkat kebingungan di antara para software engineer yang berkerja pada proyek tersebut.

Kebingungan dalam sebuah proyek akan muncul apabila setiap perubahan-perubahan yang terjadi tidak dianalisis sebelum perubahan tersebut dilaksanakan; dicatat sebelum diimplementasi, dilaporkan kepada yang ingin mengetahui, atau dikontrol dengan suatu cara yang akan meningkatkan kualitas & mengurangi error. Maka disinilah letak peran dan kegunaan dari Software Configuration Management (SCM) yang mengelola konfigurasi dari file "work place" sehingga dapat dikerjakan oleh setiap pengembang dengan berbagai software dan versi software yang berbeda-beda.

SCM merupakan serangkaian kegiatan tracking & control yang dimulai ketika suatu proyek perangkat lunak dimulai dan berakhir ketika perangkat lunak sudah tidak beroperasi lagi.

Karena perubahan dapat terjadi kapan saja, maka kegiatan SCM dibuat untuk;

  • mengidentifikasi perubahan,
  • mengontrol perubahan,
  • mengimplementasikan perubahan dengan benar, dan
  • melaporkan perubahan kepada pihak-pihak yang mempunyai kepentingan.

SCM adalah sekumpulan kegiatan yang telah dikembangkan untuk menangani perubahan-perubahan selama siklus hidup dari perangkat lunak komputer. SCM adalah sebuah elemen penting dari SQA (Software Quality Assurance). Tanggung jawab utamanya adalah mengontrol perubahan. SCM juga bertanggung jawab untuk :
  • mengidentifikasi individual Software Configuration Items (SCI) & berbagai versi perangkat lunak,
  • meng-audit software configuration untuk memastikan bahwa dia telah dikembangkan dengan benar, dan
  • melaporkan semua perubahan yang telah dilakukan pada konfigurasi tersebut.
Ranah tugas (task) dari SCM mencakup dari 5 hal, yaitu identifikasi, kontrol versi, kontrol perubahan, auditing konfigurasi, dan pelaporan.

Manajemen Resiko Proyek

 MANAJEMEN RESIKO PROYEK         Manajemen resiko pada proyek meliputi langkah memahami dan mengidentifikasi masalah potensial yang mungkin ...