INCREMENTAL MODEL
Haii hallo semua selamat pagi, siang, malam, sore
dll.. hehehe :)
Berjumpa lagi dengan saya di catatanryu.com, di
artikel sebelumnya saya sudah membahas tentang
rekayasa perangkat lunak.
Dan pada kesempatan kali ini saya akan membahas
tentang “incremental model” mungkin kata-kata ini terdengar asing bagi
teman-teman namun incremental model merupakan salah satu bagian penting dari
rekayasa perangkat lunak. jadi bagi teman-teman yang bergelut di bidang RPL wajib
mengetahui tentang incremental model.
Incremental model adalah model pengembangan sistem
pada software engineering berdasarkan requirement software yang dipecah menjadi
beberapa fungsi atau bagian sehingga model pengembangannya secara bertahap.
dilain pihak ada mengartikan model incremental sebagai perbaikan dari model waterfall dan
sebagai standar pendekatan topdown. Layaknya Model Waterfall.
Pada awal tahapan dilakukan penentuan kebutuhan dan spesifikasi,Kemudian dilakukan perancangan arsitektursoftware yang terbuka, agar dapat diterapkan pembangunan per-bagian pada tahapan selanjutnya.
Pada saat model incremental (pertambahan) ini digunakan, pertambahan pertama sering merupakan produk inti (core product), yaitu sebuah model pertambahan yang dipergunakan, tetapi beberapa muka tambahan (beberapa diketahui dan beberapa tidak) tetap tidak disampaikan.
Produk inti tersebut dipergunakan oleh pelanggan (atau mengalami pengkajian detail). Sebagai hasil dari pemakaian dan/atau evaluasi maka dikembangkan rencana bagi pertambahan selanjutnya. Rencana tersebut menekankan modifikasi produk inti untuk secara lebih baik memenuhi kebutuhan para pelanggan dan penyampaian fitur serta fungsional tambahan. Proses ini mengikuti penyampaian setiap pertambahan sampai bisa menghasilkan produk yang lengkap.
Model proses incremental tersebut, seperti model prototype dan pendekatan-pendekatan evolusioner yang lain, bersifat iterative. Tetapi tidak seperti model prototype, model pertambahan berfokus pada penyampaian produk operasional dalam setiap pertambahannya. Pertambahan awal ada di versi stripped down dari produk akhir, tetapi memberikan kemampuan untuk melayani pemakai dan juga menyediakan platform untuk evaluasi oleh pemakai.
Perkembangan pertambahan, khususnya berguna pada saat staffing, tidak bisa dilakukan dengan menggunakan implementasi lengkap oleh batasan waktu bisnis yang sudah disepakati untuk proyek tersebut. Jika produk inti diterima dengan baik, maka staf tambahan (bila dibutuhkan) bisa ditambahkan untuk mengimplementasi pertambahan selanjutnya. Sebagai tambahan, system mayor yang sedang pada masa perkembangan serta waktu penyampaiannya belum pasti, mungkin membutuhkan keberadaan perangkat keras yang baru. Bisa juga rencana tertentu dibuat untuk menghindari pemakaian perangkat lunak ini, sehingga memungkinkan fungsionalitas partial disampaikan kepada pemakai tanpa harus banyak tertunda.
Misalnya, perangkat lunak pengolah kata yang dikembangkan dengan menggunakan paradigma penambahan akan menyampaikan manajemen file dasar, editing serta fungsi penghasilan dokumen pada penambahan pertama; kemudian editing dan kemampuan penghasilan dokumen yang lebih canggih pada pertambahan kedua; pengecekan spelling dan tata bahasa pada pertambahan ketiga; serta kemampuan pengaturan halaman tingkat lanjut pada tahap pertambahan keempat. Harus dicatat bahwa aliran proses untuk berbagai pertambahan tersebut dapat menggabungkan paradigma prototype.
D. kelebihan penggunaan incremental model
- Requirement adalah proses tahapan awal yang dilakukan pada incremental model adalah penentuan kebutuhan atau analisis kebutuhan.
- Specification adalah proses spesifikasi dimana menggunakan analisis kebutuhan sebagai acuannya.
- Architecture Design adalah tahap selanjutnya, perancangan software yang terbuka agar dapat diterapkan sistem pembangunan per-bagian pada tahapan selanjutnya.
- Code setelah melakukan proses desain selanjutnya ada pengkodean.
- Test merupakan tahap pengujian dalam model ini.
Pada saat model incremental (pertambahan) ini digunakan, pertambahan pertama sering merupakan produk inti (core product), yaitu sebuah model pertambahan yang dipergunakan, tetapi beberapa muka tambahan (beberapa diketahui dan beberapa tidak) tetap tidak disampaikan.
Produk inti tersebut dipergunakan oleh pelanggan (atau mengalami pengkajian detail). Sebagai hasil dari pemakaian dan/atau evaluasi maka dikembangkan rencana bagi pertambahan selanjutnya. Rencana tersebut menekankan modifikasi produk inti untuk secara lebih baik memenuhi kebutuhan para pelanggan dan penyampaian fitur serta fungsional tambahan. Proses ini mengikuti penyampaian setiap pertambahan sampai bisa menghasilkan produk yang lengkap.
Model proses incremental tersebut, seperti model prototype dan pendekatan-pendekatan evolusioner yang lain, bersifat iterative. Tetapi tidak seperti model prototype, model pertambahan berfokus pada penyampaian produk operasional dalam setiap pertambahannya. Pertambahan awal ada di versi stripped down dari produk akhir, tetapi memberikan kemampuan untuk melayani pemakai dan juga menyediakan platform untuk evaluasi oleh pemakai.
Perkembangan pertambahan, khususnya berguna pada saat staffing, tidak bisa dilakukan dengan menggunakan implementasi lengkap oleh batasan waktu bisnis yang sudah disepakati untuk proyek tersebut. Jika produk inti diterima dengan baik, maka staf tambahan (bila dibutuhkan) bisa ditambahkan untuk mengimplementasi pertambahan selanjutnya. Sebagai tambahan, system mayor yang sedang pada masa perkembangan serta waktu penyampaiannya belum pasti, mungkin membutuhkan keberadaan perangkat keras yang baru. Bisa juga rencana tertentu dibuat untuk menghindari pemakaian perangkat lunak ini, sehingga memungkinkan fungsionalitas partial disampaikan kepada pemakai tanpa harus banyak tertunda.
C. Contoh Penggunaan Incremental Model
Misalnya, perangkat lunak pengolah kata yang dikembangkan dengan menggunakan paradigma penambahan akan menyampaikan manajemen file dasar, editing serta fungsi penghasilan dokumen pada penambahan pertama; kemudian editing dan kemampuan penghasilan dokumen yang lebih canggih pada pertambahan kedua; pengecekan spelling dan tata bahasa pada pertambahan ketiga; serta kemampuan pengaturan halaman tingkat lanjut pada tahap pertambahan keempat. Harus dicatat bahwa aliran proses untuk berbagai pertambahan tersebut dapat menggabungkan paradigma prototype.
D. kelebihan penggunaan incremental model
- Merupakan model dengan manajemen yang sederhana.
- Bersifat interatif atau perulangan.
- mampu mengakomodasi perubahan secara fleksibel.
- prioritas tinggi pada pelayanan system adalah yang paling diuji.
- Produk yang dihasilkan semakin lama semakin lengkap, hingga versi akhir dari sebuah produk akan dianggap paling lengkap dan sempurna karena mengalami perbaikan yang berkesinambungan.
- Model ini cocok jika jumlah anggota tim pengembangan/pembangunan software terbatas
- Pelanggan dapat memakai inkremen yang pertama sebagai bentuk prototype dan mendapatkan pengalaman yang dapat menginformasikan persyaratan untuk inkremen system berikutny
- Resiko untuk kegagalan proyek secara keseluruhan lebih rendah. Walaupun masalah dapat ditemukan pada beberapa inkremen, bias saja beberapa inkremen diserahkan dengan sukses kepada pelanggan.
- Inkremen harus relative lebih kecil (tidak lebih dari 20.000 baris kode) dan setiap inkremen harus menyediakan sebagian dari fungsional system
- Adanya kesulitan untuk memetakan persyaratan pelanggan pada inkremen dengan ukuran yang benar
- Butuh waktu yang relatif lebih lama untuk menghasilkan produk yang lengkap.
Nah.. itulah tadi sedikit bahasan saya tentang incremental
model semoga dapat bermanfaat dan menambah wawasan teman-teman dalam
mempelajari rekayasa perangkat lunak. Artikel ini saya buat berdasarkan hasil
presentasi teman saya dan dari beberapa sumber yang terpercaya.
Sekian untuk kali ini. Sampai jumpa lagi di artikel yang
berikutnya, dada....
Komentar
Posting Komentar