The Tambahan Pendekatan menggunakan satu set langkah-langkah dan pembangunan berjalan dari awal sampai akhir di jalur linear perkembangan.
Pengembangan inkremental dilakukan dalam beberapa langkah mulai dari desain, implementasi, pengujian / verifikasi, pemeliharaan. Ini dapat dipecah lebih lanjut menjadi sub-langkah tetapi sebagian besar model tambahan mengikuti pola yang sama. The Waterfall Model adalah pendekatan pengembangan inkremental tradisional.
The Approach Iteratif tidak memiliki jumlah set langkah-langkah, bukan pengembangan dilakukan dalam siklus.
Pengembangan berulang kurang memperhatikan pelacakan kemajuan fitur individu. Sebagai gantinya, fokus diberikan pada pembuatan prototipe yang berfungsi pertama dan menambahkan fitur dalam siklus pengembangan di mana langkah-langkah Pengembangan Peningkatan dilakukan untuk setiap siklus. Agile Modeling adalah pendekatan berulang yang khas.
Model inkremental awalnya dikembangkan untuk mengikuti model jalur perakitan tradisional yang digunakan di pabrik. Sayangnya, desain dan pengembangan perangkat lunak memiliki sedikit kesamaan dengan pembuatan barang fisik. Kode adalah cetak biru bukan produk akhir pengembangan. Pilihan desain yang baik sering 'ditemukan' selama proses pengembangan. Mengunci pengembang ke dalam serangkaian asumsi tanpa konteks yang tepat dapat menyebabkan desain yang buruk dalam kasus terbaik atau gangguan total dalam pengembangan dalam kondisi terburuk.
Pendekatan berulang sekarang menjadi praktik umum karena lebih sesuai dengan jalur alami perkembangan dalam pengembangan perangkat lunak. Alih-alih menginvestasikan banyak waktu / upaya mengejar 'desain sempurna' berdasarkan asumsi, pendekatan berulang adalah semua tentang menciptakan sesuatu yang 'cukup baik' untuk memulai dan mengembangkannya agar sesuai dengan kebutuhan pengguna.
tl; dr - Jika Anda menulis esai di bawah Model Incremental, Anda akan berusaha menulisnya dengan sempurna dari awal hingga menyelesaikan satu kalimat pada saat yang bersamaan. Jika Anda menulisnya di bawah Model Iteratif, Anda akan mengeluarkan draft kasar cepat dan bekerja untuk memperbaikinya melalui serangkaian fase revisi.
Memperbarui:
Saya memodifikasi definisi saya untuk 'Pendekatan Tambahan' agar sesuai dengan contoh yang lebih praktis.
Jika Anda pernah harus berurusan dengan mengontrak Pendekatan Tambahan adalah bagaimana sebagian besar kontrak dilakukan (terutama untuk militer). Meskipun banyak variasi halus dari 'Model Air Terjun' yang khas, kebanyakan / semuanya diterapkan dengan cara yang sama dalam praktik.
Langkah-langkahnya sebagai berikut:
- Penghargaan Kontrak
- Tinjauan Desain Pendahuluan
- Ulasan Desain Kritis
- Spesifikasi Bekukan
- Pengembangan
- Fielding / Integrasi
- Verifikasi
- Pengujian Keandalan
PDR dan CDR adalah tempat spec dibuat dan direvisi. Setelah spec selesai, harus dibekukan untuk mencegah creep lingkup. Integrasi terjadi jika perangkat lunak digunakan untuk memperluas sistem yang sudah ada sebelumnya. Verifikasi adalah untuk memeriksa apakah aplikasi cocok dengan spesifikasi. Reliabilitas adalah tes untuk membuktikan bahwa aplikasi akan dapat diandalkan dalam jangka panjang, ini dapat ditentukan seperti SLA (Service Level Agreement) di mana sistem diperlukan untuk mempertahankan persentase waktu kerja tertentu (misalnya waktu kerja 99% selama 3 bulan) ).
Model ini bekerja sangat baik untuk sistem yang mudah ditentukan di atas kertas tetapi sulit untuk diproduksi. Perangkat lunak sangat sulit untuk ditentukan di atas kertas hingga tingkat detail yang cukup besar (ex UML). Sebagian besar 'tipe bisnis' yang bertanggung jawab atas manajemen / kontrak gagal untuk menyadari bahwa - ketika menyangkut pengembangan perangkat lunak - kode itu sendiri adalah spesifikasi. Spesifikasi kertas seringkali membutuhkan waktu / upaya untuk menulis sebagai kode itu sendiri dan biasanya terbukti tidak lengkap / inferior dalam praktiknya.
Pendekatan inkremental mencoba menghabiskan waktu / sumber daya dengan memperlakukan kode itu sendiri sebagai spesifikasinya. Alih-alih menjalankan spesifikasi kertas melalui beberapa langkah revisi, kode itu sendiri melewati beberapa siklus revisi.