Pada proses pengembangan perangkat lunak (SDLC) Metode Iterative adalah salah satu Model atau Metode untuk pengembangan perangkat lunak dalam pembuatan sebuah produk.

Metode Iterative
Metode Pengembangan Software Iterative


Apa itu Metode Iteratif?

Model proses berulang (Metode Iteratif) adalah implementasi siklus hidup pengembangan perangkat lunak di mana pengembangan awal dimulai berdasarkan persyaratan awal dan lebih banyak fitur ditambahkan ke produk perangkat lunak dasar dengan iterasi yang berkelanjutan hingga sistem akhir dibuat.

Intinya, model iteratif memecah proses pengembangan perangkat lunak dari aplikasi yang sangat besar menjadi bagian-bagian yang lebih kecil.

Manfaat dari model ini adalah bahwa hal itu digunakan selama tahap awal SDLC. Ini memungkinkan pengembang dan penguji proyek untuk menemukan kelemahan praktis atau terkait desain sedini mungkin. Hal ini selanjutnya memungkinkan mereka untuk mengambil tindakan korektif dalam anggaran terbatas.


Fitur Metode Iteratif

Model iteratif dirancang sebagai penyempurnaan dari model waterfall yang sudah ada. Model air terjun adalah model SDLC linier sedangkan model iteratif bersifat siklis.

Setelah proses perencanaan kebutuhan awal selesai, beberapa tahap lainnya diulang. Saat siklus ini diselesaikan dan diimplementasikan, produk akhir secara keseluruhan ditingkatkan dan diulang.





  • Tahap pertama adalah tahap perencanaan. Ini digunakan untuk memetakan persyaratan tertentu. Baik itu perangkat keras maupun perangkat lunak. Di sini, kami juga mempersiapkan tahap-tahap lain untuk diikuti.
  • Tahap kedua adalah tahap analisis. Hal ini dilakukan untuk memeriksa apakah model yang diperlukan, logika bisnis dimasukkan ke dalam proyek atau tidak. Di sini, kami memecah hasil yang diharapkan menjadi persyaratan bisnis yang lebih rinci. Rencana Manajemen Persyaratan dibuat untuk menentukan bagaimana persyaratan akan didokumentasikan, dikomunikasikan, dilacak, dan diubah sepanjang sisa proyek. Arah yang akan diambil proyek dan penggunaan dokumen strategi proyek juga ditentukan selama tahap ini.
  • Kemudian datanglah tahap desain (Tahap Ketiga). Pada tahap ini, tim proyek harus memiliki seperangkat persyaratan lengkap untuk bekerja bersama dengan arah yang akan diambil untuk proyek dan Desain Sistem Konseptual. Sekalipun proyeknya kecil dan persyaratan proyeknya sederhana, masih ada proses desain mental yang terjadi di antara memahami persyaratan proyek dan mulai membangunnya. Desain menjadi semakin penting karena ukuran proyek menjadi lebih besar dan lebih kompleks. Tahap Desain adalah di mana banyak solusi potensial untuk proyek dianalisis. Solusinya dipersempit. Setelah itu, cara yang paling efektif dan efisien untuk membangun sistem diputuskan. Persyaratan teknis untuk proyek dirinci untuk memenuhi kebutuhan apa pun yang ditemukan selama tahap analisis.
  • Tahap keempat adalah tahap implementasi dan pengkodean. Semua persyaratan, perencanaan, dan rencana desain diimplementasikan dan dikodekan dalam tahap ini. Ini adalah titik dalam proyek ketika konstruksi sistem yang sebenarnya dimulai. Inilah saatnya untuk mulai menulis kode program untuk proyek tersebut.
  • Tahap kelima adalah tahap pengujian. Di sini iterasi build saat ini diuji terhadap beberapa standar dan norma untuk memeriksa apakah mereka memenuhinya. Prosedur pengujian ini ditetapkan untuk mengetahui bug atau kesalahan dalam sistem kami. Solusi proyek divalidasi ulang untuk stabilitas. Dengan kata lain, dipastikan bahwa koreksi satu bug tidak menyebabkan bug baru di sistem kami. Ada berbagai jenis teknik pengujian yang dapat diterapkan oleh tim untuk menguji sistem mereka. Ini termasuk – pengujian kinerja, pengujian stres, pengujian keamanan, pengujian persyaratan, pengujian kegunaan, pengujian multi-situs, pengujian pemulihan bencana, dll.
  • Akhirnya, ketika semua tahapan ini selesa (Tahap Keenam Evaluasi)i. Evaluasi  yang cermat dilakukan pada sistem yang dikembangkan hingga tahap ini. Tim pengembang dan pemangku kepentingan dapat memeriksa sistem dan memberikan umpan balik mereka mengenai berbagai aspek sistem.

Kelebihan dari Model Iteratif

  1. Versi Inheren: Agak jelas bahwa sebagian besar siklus hidup pengembangan perangkat lunak akan mencakup beberapa bentuk versi, yang menunjukkan tahap rilis perangkat lunak pada tahap tertentu. Namun, model iteratif membuatnya lebih mudah dengan memastikan bahwa iterasi yang lebih baru adalah versi yang ditingkatkan secara bertahap dari iterasi sebelumnya. Selain itu, jika iterasi baru secara fundamental merusak sistem dengan cara yang fatal, iterasi sebelumnya dapat dengan cepat dan mudah diimplementasikan atau "diputar kembali", dengan kerugian minimal; keuntungan khusus untuk pemeliharaan pasca-rilis atau aplikasi web.
  2. Perputaran Cepat: Meskipun tampaknya setiap tahap proses berulang tidak terlalu berbeda dari tahapan model yang lebih tradisional seperti metode air terjun — dan dengan demikian prosesnya akan memakan banyak waktu — keindahan dari pengulangan prosesnya adalah bahwa setiap tahap dapat secara efektif dirampingkan menjadi kerangka waktu yang lebih kecil dan lebih kecil; apa pun yang diperlukan untuk memenuhi kebutuhan proyek atau organisasi. Sementara menjalankan awal melalui semua tahap mungkin memakan waktu, setiap iterasi berikutnya akan lebih cepat dan lebih cepat, meminjamkan dirinya ke moniker tangkas itu dengan sangat baik, dan memungkinkan siklus hidup setiap iterasi baru dipangkas menjadi hitungan hari. atau bahkan berjam-jam dalam beberapa kasus.
  3. Cocok untuk Organisasi Agile: Sementara proses langkah demi langkah seperti model air terjun dapat bekerja dengan baik untuk organisasi besar dengan ratusan anggota tim, model berulang benar-benar mulai bersinar ketika berada di tangan tim yang lebih kecil dan lebih gesit. Khususnya ketika dikombinasikan dengan kekuatan sistem kontrol versi modern, "proses iterasi" penuh dapat secara efektif dilakukan oleh sejumlah anggota tim individu, mulai dari perencanaan dan desain hingga implementasi dan pengujian, dengan sedikit atau tanpa perlu umpan balik atau bantuan dari luar. .
  4. Mudah Beradaptasi: Bergantung pada kekuatan inti dari iterasi yang konstan dan sering keluar secara teratur, keuntungan utama lain dari model berulang adalah kemampuan untuk cepat beradaptasi dengan kebutuhan yang selalu berubah baik dari proyek atau keinginan klien. Bahkan perubahan mendasar pada struktur atau implementasi kode yang mendasarinya (seperti sistem basis data baru atau implementasi layanan) biasanya dapat dibuat dalam kerangka waktu yang minimal dan dengan biaya yang wajar, karena setiap perubahan yang merugikan dapat dikenali dan dikembalikan dalam jangka waktu yang singkat. kembali ke iterasi sebelumnya.

Kekurangan Model Iteratif

  1. Masalah Tahap Akhir yang Mahal: Meskipun tidak selalu menjadi masalah untuk semua proyek, karena perencanaan awal yang minimal sebelum pengkodean dan implementasi dimulai, ketika menggunakan model berulang, ada kemungkinan bahwa masalah yang tidak terduga dalam desain atau arsitektur sistem yang mendasari akan muncul terlambat ke proyek. Menyelesaikan ini bisa memiliki efek yang berpotensi menghancurkan pada kerangka waktu dan biaya proyek secara keseluruhan, membutuhkan banyak iterasi di masa depan hanya untuk menyelesaikan satu masalah.
  2. Peningkatan Tekanan pada Keterlibatan Pengguna: Tidak seperti model air terjun, yang menekankan hampir semua keterlibatan pengguna/klien dalam tahap awal proyek selama periode waktu yang singkat, model berulang sering kali membutuhkan keterlibatan pengguna di seluruh proses. Ini terkadang merupakan kewajiban yang tidak menguntungkan, karena setiap iterasi baru kemungkinan akan memerlukan pengujian dan umpan balik dari pengguna untuk mengevaluasi perubahan yang diperlukan dengan benar.
  3. Feature Creep: Tidak hanya model iteratif yang memerlukan umpan balik pengguna selama proses, tetapi ini juga secara inheren berarti proyek dapat mengalami creep fitur yang tidak diinginkan, di mana pengguna mengalami perubahan di setiap iterasi, dan cenderung terus mengajukan permintaan baru untuk fitur tambahan yang akan ditambahkan ke versi mendatang.

Kapan menggunakan Model Iteratif?

  1. Ketika persyaratan didefinisikan dengan jelas dan mudah dimengerti.
  2. Ketika aplikasi perangkat lunak berukuran besar.
  3. Ketika ada kebutuhan perubahan di masa depan.

Baca Juga: