Project Life Cycle dan Metodologi Pengembangan Perangkat Lunak

 


Project lifecycle adalah tahapan dan pendekatan-pendekatan secara terstruktur/sistematis. Yang dimana kemudian akan digunakan dalam pengembangan suatu proyek. Project Life Cycle inilah yang akan dijadikan oleh seorang project manager untuk menjadi acuan dalam melaksanakan sebuah proyek. Tahapan dalam project life cycle terbagi menjadi 4 antara lain

1. Initiation

Initiation atau inisiasi adalah tahap pertama dalam Project LifeCycle atau dalam  memulai sebauah proyek. Di tahap inisiasi ini didefinisikan tujuan, ruang lingkup, dll. Fase inisiasi ini mencakup dalam memulai proyek dengan mendokumentasikan kasus bisnis,studi kelayakan, kerangka acuan, menunjuk tim, dan menyiapkan office project. Selama fase ini tim pengambilan keputusan akan menganalisis apakah proek tersebut dapat secara realistis diselesaikan. Pekerjaan pekerjaan dalam tahap inisiasi antara lain :

  • Membuat dan mengembangkan ide
  • Mengidentifikasi visi dan objektif dari proyek
  • Membuat daftar hasil proyek yang diberikan
  • Membuat pernyataan dari pelanggan setia serta stakeholder
  • Membuat daftar peran serta tanggung jawab dari para stakeholder
  • Membuat struktur organisasi
  • Mendokumentasikan seluruh rencana
  • Membuat daftar resiko, masalah, dan asumsu
  • Menunjuk tim proyek yang mebuat
  • Menyiapkan lokasi pengerjaan proyek
  • Melakukan tahap review

 

2. Plannung

Planning atau perencanaan adalah tahap yang dilaksanakan setelah ruang lingkup proyek telah ditetapkan dan tim pengerjaan proyek telah dibentuk. Di tahap ini, dokumen perencanaan akan disusun secara terperinci agar dapat menjadi panduan bagi tim prouel selama jalannya proyek. Tajap perencanaan memiliki 10 aktivitas penting antara lain :

  • Membuat rencana proyek
  • Membuat rencana penggunaan resource
  • Membuat perencanaan finansial
  • Membuat perencanaan kualitas
  • Membuat perencanaan resiko
  • Melakukan fase review
  • Mengontak supplier dari resource
  • Membuat rencana pengadaan resource
  • Membuat perencanaan komunikasi
  • Membuat rencana penerimaan

 

Disini manajer proyek memanta secara dekat proses pengembangan dan menyiapkan serta melaksanakan berbagai rencana pengaturan pemberdayaan resource agar mendapatkan hasil yang maksimal. Selain itu project manager juga harus menjaga agar komunikasi antar tim berjalan dengan baik.

 

3. Executing

Executing atau pelaksanaan adalah tahap dimana semua perencanaan dan persiapan dari tahap sebelumnya dilaksanakan. Pada tahap ini tujuan dari proyek secara fisik akan dibangun. Selruh aktivitas yang terdapat di dokumentasi project plan akan dieksekusi. Kemudian seorang project manager akan memonitoring dan mengontrol setiap kegiatan dari pengerjaan proyek ini. Beberapa hal yang dimonitoring oleh project manager antara lain

  • Manajemen waktu
  • Manajemen penggunaan dana
  • Manajemen kualitas
  • Manajemen perubahan apakah sesuai
  • Memanajemen komunikasi antar tim
  • Memanajemen accpetance
  • Manajemen pengadaan resource
  • Manajemen masalah
  • Manajemen resiko yang mungkin muncul

 

4. Closure

Closure atau penutupan merupakan tahap terakhir dalam aktivitas proyek. Pada tahap ini, hasil akhir proyek beserta dokumentasinya diserahkan kepada pelanggan, kontak kepada supplier diakhiri,tim proyek dibubarkan, dan memberikan laporan kepada stakeholder yang menyatakan bahwa proyek telah rampung. Kemudian dalam closure ini juga diakukan tahap post implementation review untuk mengetahui tingkat keberhasilan sebuah proyek dan mencatat pelajaran yang didapat dari proyek ini sebagai pembelajaran untuk proyek proyek berikutnya.


Agile Software Development

Metode pengembangan perangkat lunak ini adalah metodologi yang didasarkan pada prinsip-prinsip yang sama atau pengembangan sistem jangka pendek yang memerlukan adaptasi cepat dari pengembang terhadap bentuk apapun. Sesuai namanya Agile atau yang diartikan artinya cepat kata ini menggambarkan konsep proses yang berbeda dari model pengembangan perangkat lunak lainnya. Metode agile terdefinisi dalam empat nilai, yang disebut Agile Alliance’s Manifesto, antara lain:

  • Interaksi dan personel lebih penting dari proses dan alat
  • Perangkat lunak yang berfungsi lebih penting daripada dokumentasi yang lengkap
  • Kolaborasi dengan klien lebih penting daripada negosiasi kontrak
  • Respon terhadap perubahan lebih penting daripada mengikuti rencana

Kelebihan dari agile antara lain

  • Menambah produktivitas tim
  • Menambah kualitas perangkat lunak
  • Menambah kepuasan klien
  • Menghemat biaya

 

Rapid Application Development

Rapid Application Development atau Metode RAD adalah metode pengembangan perangkat lunak yang mirip dengan agile software development namun lebih fokus pada feedback dari pengguna dan kurang mengikuti perencanaan yang ketat. Degan demikian Prototip rapid dapat menekan biaya perencanaan. Ide dari RAD ini adalah membuat sebuah software agar fleksibel. Metode RAD dikembangkan oleh Barry Boehm, James Martin dan lainnya pada tahun 1980an. Tahapan tahapan dalam metode RAD antara lain terdiri dari:

  • Mendefinisikan kebutuhan: sebagai awal dari RAD programmer akan mulai dari mempersiapkan bahan bahan yang mentah. Bahan bahan sengaja mentah agar mudah diubah sesuai dengan kebutuhan kapanpun.
  • Prototype: kemudian dalam fase RAD ada pembuatan prototipe, tujuan dari prototipe ini agar programmer dapat mendemonstrasikan kepada klien mengenai aplikasi mereka. Yang kemudian akan dikomentari oleh klien untuk mendapatkan umpan balik
  • Menyerap Feedback : setelah demonstrasi dilakukan kepada para klien atau pengguna. Programmer kemundian mengumpulkan umpan bali mereka mulai dari tampilan hingga fungsi. Setelah umpan balik didapat dan klien setuju kemudian masuk ke tahap berikutnya
  • Finalize Product : di tahap terakhir ini developer mengimplementasikan apa yang telah didapat dari umpan balik para klien tadi. Kemudian developer juga mulai meningkatkan stabilitas, pemeliharaan perangkat. Developer di tahap ini juga mulai menulis dokumentasi dan menyelesaikan tugas sebelum menyerahkan kepada klien hasil dari produk tersebut.


Referensi
  • https://ryanwahyublog.wordpress.com/2017/11/26/beberapa-perbedaan-dalam-pengembangan-software/
  • https://www.outsystems.com/blog/posts/rapid-application-development/
  • https://youtu.be/vFZxQj8pO8s

Comments

Popular posts from this blog

ERD (Entity Relationship Diagram)

Perancangan Sistem 2