Metode Pengembangan Software Yang Umum Digunakan




Enam dari sekian banyak metode pengembangan software yang umum digunakan. Kita juga akan melihat kelebihan serta kekurangan dari masing-masing metode. Dengan demikian kita bisa menentukan metode yang paling tepat untuk digunakan pada proyek mendatang:
  1. Waterfall Metode Waterfall dikenal sebagai metode tradisional yang kini dianggap sudah kuno dan tidak fleksibel. Namun, kita perlu belajar banyak dari metode ini karena metode ini merupakan dasar dari metode-metode baru yang muncul kemudian.
    Metode waterfall pertama kali dibuat pada tahun 1970 dan selama beberapa dekade merupakan metode pengembangan perangkat lunak terkemuka dan banyak digunakan.
    Jika menggunakan metode ini, kita membutuhkan banyak dokumentasi serta struktur di awal pembuatan. Prosesnya dibagi dalam beberapa langkah dan tahapan yang mandiri. Tahap pertama merupakan tahapan yang sangat penting, Pemahaman penuh dari pengembang dan pengguna mengenai ruang lingkup dan tuntutan proyek sangat dibutuhkan sebelum memulai segala sesuatu.
    Tahapan pada metode ini kaku dan biasanya berpola seperti berikut: menentukan ruang lingkup dan persyaratan proyek, menganalisa persyaratan tersebut, membuat desain, menerapkannya, melakukan uji coba, menggunakannya pada proyek dan terakhir mempertahankan atau memeliharanya.
    Metode ini kurang fleksibel, karena apa yang ditentukan dari awal oleh pengembang dan pengguna di awal proyek harus benar-benar sempurna. Jika ternyata ada perubahan atau kesalahan selama berlangsungnya proses dan tahapan, maka segala sesuatu harus dimulai dari awal lagi.
  2. Agile Metode pengembangan perangkat lunak Agile ini muncul karena keinginan yang besar untuk dapat meninggalkan metode lama (Waterfall) yang tidak fleksibel. Pendekatan metode ini dirancang untuk mengakomodasi perubahan serta menghasilkan perangkat lunak secara lebih cepat. 

    Berikut gambaran mengenai metode Agile:
    ·   Lebih menghargai hubungan dan interaksi antar pribadi, tidak hanya memperdulikan sarana (tools)
    ·   Menampilkan kerjasama dengan pengguna selama proses pengembangan berlangsung. 
    ·   Memberi tanggapan terhadap munculnya perubahan; tidak hanya melulu mengikuti rencana yang sudah ditetapka.
    ·     Fokus untuk menampilkan perangkat lunak yang benar-benar berfungsi; bukan hanya sekedar mementingkan dokumentasi


Berbeda dengan metode waterfall, Agile ditujukan untuk menangani munculnya berbagai variabel dan kekompleksan yang mungkin terjadi dalam pengembangan sebuah proyek.
Kepuasan pengguna merupakan prioritas utama dari metode Agile ini yang diraih dengan terus menerus menghadirkan fitur yang berfungsi dengan baik, teruji serta diprioritaskan.

3.     Scrum Metode Scrum pada dasarnya meminjam filosofi metode Agile dalam hal pengembang dan pengguna harus saling bekerjasama secara terus menerus setiap hari.
Cara kerjanya adalah dengan memecah tujuan akhir menjadi beberapa tujuan kecil pada awal proyek dan mengerjakan terlebih dahulu tujuan-tujuan kecil tersebut. Cara yang digunakan untuk mengerjakan tujuan kecil adalah dengan melakukan pengulangan kerja secara berkala dalam membuat software. Kemudian sesering mungkin menampilkan hasilnya; proses ini biasanya memakan waktu kurang lebih dua minggu.
Selama pelaksanaan pengulangan kerja, pengembang dan pengguna perlu melakukan banyak pertemuan guna menunjukkan hasil sementara dari proyek. Hal ini berguna agar keduanya dapat mengikuti perkembangan terbaru dari proyek serta menampung berbagai masukan mengenai hasil yang ada serta kemungkinan perbaikan atau perubahannya.
Dengan demikian dapat terjadi perubahan dan perkembangan yang lebih cepat menuju hasil akhir yang baik. Hal ini  sangat berguna untuk diterapkan pada proyek yang rumit. Pada dasarnya, metode Scrum merupakan gabungan dari struktur dan ilmu dari metode pengembangan software tradisional (Waterfall) dengan fleksibilitas dan praktik pengulangan dari metode Agile yang modern.

4.  Prototype Merupakan metode yang memicu pengembang hanya membuat contoh resolusi guna secara resmi menunjukkan esensi fungsional produk kepada pengguna. Pengembang akan melakukan berbagai perubahan yang diperlukan sesuai dengan permintaan pengguna.Setelah sampel di atas disepakati, pengembang baru akan membuat produk aslinya sebagai hasil akhir dari proyek. Metode prototype memiliki tendensi untuk dapat menyelesaikan beragam masalah yang terjadi di metode Waterfal.

5. DevOps DevOps bukan hanya merupakan metode pengembangan sistem saja, melainkan serangkaian praktik yang mendukung budaya keorganisasian.Metode ini berpusat pada perubahan yang meningkatkan kerjasama antar departemen yang bertanggung jawab terhadap segmen yang berbeda pada pengembangan siklus hidup organisasi. Siklus tadi meliputi pengembangan, jaminan kualitas serta pelaksanaan atau operasi.



Comments