Incremental Development - Pembuatan Sistem Software Dengan Metode Penambahan

Incremental Development
Pembuatan Sistem Software Dengan Metode Inkremental


Pembangunan inkremental didasarkan kepada ide pengembangan pada implementasi awal, memperhatikan komentar pengguna, dan berkembang melalui beberapa versi sampai sistem yang memadai. Spesifikasi, pengembangan, dan validasi kegiatan tidak disisipkan secara terpisah, dengan umpan balik yang cepat di seluruh kegiatan. Simak terus di kafetech.blogspot.co.id.

Metode ini lebih baik daripada pendekatan air terjun (waterfall) bagi sebagian besar bisnis, e-commerce, dan sistem pribadi. Pembangunan inkremental mencerminkan cara kita memecahkan masalah. Sering kali pengembang (developer) jarang bekerja dan bersolusi dengan masalah lengkap di muka, tetapi lebih sering pengembang bergerak ke arah solusi dalam serangkaian langkah-langkah, dan ketika pengembang menyadari bahwa telah melakukan kesalahan, pengembang akan mundur ke langkah sebelumnya. Maka dari itu, dengan mengembangkan perangkat lunak secara bertahap, perangkat lunak akan lebih murah dan lebih mudah, serta melakukan perubahan dalam perangkat lunak yang sedang dikembangkan.

Ini berarti bahwa pelanggan dapat mengevaluasi sistem pada tahap yang relatif awal dalam pengembangan untuk melihat apakah itu memberikan apa yang dibutuhkan. Jika tidak, maka hanya perubahan saat itu yang akan diubah dan/mungkin akan ditetapkan fungsi baru untuk penambahan kemudian.


Pembangunan inkremental memiliki tiga manfaat penting, dibandingkan dengan model air terjun (waterfall), antara lain :
  1. Biaya menampung kebutuhan pelanggan berkurang. Jumlah analisis dan dokumentasi yang harus diulang jauh lebih sedikit dari yang dibutuhkan apabila menggunakan model air terjun (waterfall).
  2. Lebih mudah untuk mendapatkan umpan balik pelanggan pada pekerjaan pembangunan yang telah dilakukan. Pelanggan dapat mengomentari demonstrasi dari software dan melihat sejauh mana pengembang membuat.
  3. Pengiriman lebih cepat dan penyebaran perangkat lunak yang berguna untuk pelanggan tidaklah menjadi hal yang mustahil, bahkan jika semua fungsi belum disertakan. Sehingga pelanggan dapat menggunakan dan mendapatkan nilai dari perangkat lunak awal.
Pembangunan inkremental dalam beberapa bentuk sekarang adalah pendekatan yang paling umum untuk pengembangan sistem aplikasi. Pendekatan ini dapat berupa plan-driven, agile, dan/atau campuran pendekatan ini. Dalam pendekatan plan-driven, kenaikan sistem diidentifikasi terlebih dahulu. Jika pada pendekatan agile, kenaikan awal diidentifikasi tetapi perkembangan bertahap kemudian tergantung pada kemajuan dan pelanggan prioritas.

Dari perspektif manajemen, pendekatan inkremental memiliki dua masalah, yaitu :
  1. Proses tidak terlihat. Manajer perlu kiriman rutin untuk mengukur kemajuan. Jika sistem dikembangkan dengan cepat, itu tidak efektif untuk menghasilkan dokumen yang mencerminkan setiap versi dari sistem.
  2. Sistem struktur cenderung menurunkan sebagai peningkatan baru ditambahkan. Kecuali waktu dan uang yang dihabiskan untuk refactoring untuk meningkatkan perangkat lunak, perubahan biasa cenderung korup strukturnya. Menggabungkan perubahan perangkat lunak lebih lanjut menjadi semakin sulit dan mahal.
Masalah pembangunan inkremental menjadi sangat akut untuk membesar, kompleks, lama sistem untuk hidup, dimana tim yang berbeda mengembangkan berbagai bagian dari sistem. Sistem yang besar membutuhkan kerangka kerja atau arsitektur yang stabil dan tanggung jawab atau kejelasan dari tim yang bekerja pada bagian yang berbeda. Ini harus direncanakan terlebih dahulu daripada dikembangkan secara bertahap.

Model ini mengembangkan sistem secara bertahap dan memaparkannya kepada pelanggan untuk komentar, tanpa benar-benar memberikan dan menyebarkan di lingkungan massa. Pengiriman bertahap dan penyebaran menjadikan perangkat lunak dapat digunakan secara real proses operasional. Hal ini tidak selalu mungkin karena bereksperimen dengan perangkat lunak baru dapat mengganggu proses bisnis yang normal. Ini juga salah satu keuntungan dan kerugian dalam pengiriman software secara bertahap.

Artikel terkait

Agile Software DevelopmentScrum dan Agile Model LainnyaJenis-Jenis DMBSBig Data, dan sebagainya.

Comments

Popular posts from this blog

Mengenal Perbedaan Telnet Dan SSH Pada Jaringan Komputer

Reuse Oriented atau Component Based Software Engineering (CBSE)

Cara Import SQL PowerDesigner Ke Database SQL