SDLC - Model Air Terjun

Model Waterfall adalah model SDLC klasik yang dikenal luas, dipahami, dan umum digunakan. Ini diperkenalkan oleh Royce pada tahun 1970 dan masih diikuti sebagai pendekatan umum untuk pengembangan perangkat lunak di berbagai organisasi di seluruh industri.

Dalam model Waterfall, setiap fase siklus proses hanya dapat dimulai setelah fase siklus proses sebelumnya selesai. Jadi, ini adalah model linier tanpa loop umpan balik.

Model Air Terjun - Kekuatan

Kekuatan model Air Terjun adalah -

  • Mudah dimengerti, mudah digunakan.
  • Memberikan struktur kepada tim pengembangan yang tidak berpengalaman.
  • Tonggak sejarah dipahami dengan baik.
  • Menetapkan stabilitas persyaratan.
  • Ideal untuk pengendalian manajemen (perencanaan, pemantauan, pelaporan).
  • Berfungsi dengan baik bila kualitas lebih penting daripada biaya atau jadwal.

Model Air Terjun - Kelemahan

Kelemahan atau kekurangan dari model Waterfall adalah -

  • Ideal - Tidak sesuai dengan kenyataan dengan baik.

  • Tidak realistis - tidak dapat mengharapkan persyaratan yang akurat di awal proyek.

  • Tidak mencerminkan sifat iteratif dari pengembangan eksplorasi yang lebih umum.

  • Sulit dan mahal untuk melakukan perubahan.

  • Perangkat lunak dikirim hanya pada akhir proyek. Karena ini -

    • Menunda penemuan cacat serius.

    • Kemungkinan pengiriman persyaratan usang.

  • Overhead manajemen yang signifikan, yang dapat menjadi mahal untuk tim dan proyek kecil.

  • Membutuhkan sumber daya yang berpengalaman di setiap fase - analis, desainer, pengembang, penguji.

  • Pengujian dimulai hanya setelah pengembangan selesai dan penguji tidak terlibat dalam fase sebelumnya.

  • Keahlian tim lintas fungsi tidak dibagikan karena setiap fase dijalankan secara terpisah.

Kapan Menggunakan Model Air Terjun?

Anda dapat menggunakan model Waterfall jika -

  • Persyaratan sangat terkenal.

  • Definisi produk stabil.

  • Teknologi dipahami dengan baik.

  • Versi baru dari produk yang sudah ada.

  • Porting produk yang sudah ada ke platform baru.

  • Organisasi besar dengan tim lintas fungsi terstruktur.

  • Saluran komunikasi dibangun dengan baik di dalam organisasi dan dengan pelanggan juga.

Model Pembuatan Prototipe Evolusioner

Dalam pengembangan perangkat lunak menggunakan model Evolutionary Prototyping, pengembang membangun prototipe selama tahap persyaratan. Pengguna akhir kemudian mengevaluasi prototipe dan memberikan umpan balik. Umpan balik dapat berupa koreksi prototipe atau fungsionalitas tambahan. Berdasarkan umpan balik tersebut, pengembang selanjutnya menyempurnakan prototipe tersebut.

Dengan demikian, produk berkembang melalui Prototipe → Umpan Balik → Siklus Prototipe Halus dan karenanya dinamai Evolutionary Prototyping. Ketika pengguna puas dengan fungsionalitas, dan kerja produk, kode prototipe dibawa ke standar yang diperlukan untuk pengiriman produk akhir.

Model Pembuatan Prototipe Evolusioner - Kekuatan

Kekuatan atau keunggulan model Evolutionary Prototyping adalah -

  • Pelanggan / pengguna akhir dapat memvisualisasikan persyaratan sistem saat mereka berkumpul melihat prototipe.

  • Pengembang belajar dari pelanggan dan karenanya tidak ada ambiguitas terkait domain atau lingkungan produksi.

  • Memungkinkan desain dan pengembangan yang fleksibel.

  • Interaksi dengan prototipe menstimulasi kesadaran akan fungsionalitas tambahan yang dibutuhkan.

  • Persyaratan yang tidak terduga dan perubahan persyaratan dapat dengan mudah diakomodasi.

  • Tanda-tanda kemajuan yang mantap dan terlihat dihasilkan.

  • Pengiriman produk akhir yang akurat dan dapat dipelihara.

Model Pembuatan Prototipe Evolusioner - Kelemahan

Kelemahan atau kekurangan model Evolutionary Prototyping adalah sebagai berikut -

  • Kecenderungan untuk meninggalkan pengembangan terstruktur dalam pengembangan kode dan perbaikan, meskipun bukan itu yang ditentukan oleh model.

  • Model ini menerima reputasi buruk untuk metode cepat-dan-kotor.

  • Pemeliharaan keseluruhan mungkin dapat diabaikan.

  • Pelanggan mungkin saja dapat meminta pengiriman prototipe sebagai final, tidak memberikan kesempatan kepada pengembang untuk melakukan langkah terakhir yaitu standarisasi produk akhir.

  • Proyek dapat berlanjut selamanya (dengan cakupan creep berkelanjutan) dan manajemen mungkin tidak menghargainya.

Kapan Menggunakan Model Evolutionary Prototyping?

Anda dapat menggunakan model Evolutionary Prototyping -

  • Ketika persyaratan tidak stabil atau harus diklarifikasi
  • Sebagai tahap klarifikasi kebutuhan model waterfall
  • Untuk mengembangkan antarmuka pengguna
  • Untuk demonstrasi berumur pendek
  • Untuk pengembangan baru atau asli
  • Untuk menerapkan teknologi baru