Langsung ke konten utama

Incremental Model dan Concurrent Development Model


            A.     Incremental Model
          Gambar 1. Incremenal Model
     

Model incremental, yang juga dikenal sebagai iteratif waterfall model.[1] Model Incremental  adalah metode pengembangan perangkat lunak dimana produk ini dirancang, diimplementasikan dan diuji secara bertahap sampai produk selesai dan dapat dilihat sebagai representasi dari tiga model air terjun secara bertahap. Model incremental menerapkan urutan linier seiring berjalannya waktu kalender. Metode yang berbeda dapat diterima untuk menyisir metodologi pengembangan sistem linier dan iteratif, dengan tujuan utama masing-masing adalah untuk mengurangi resiko proyek yang melekat dengan memecah proyek menjadi segmen-segmen yang lebih kecil dan memberikan kemudahan perubahan selama proses pengembangan.

Kelebihan : [2]

  • Membagi proyek menjadi bagian-bagian yang lebih kecil, sehingga menjadi fleksibel, cepat dan lebih murah untuk mengubah ruang lingkup dan kebutuhan. 
  • Memberikan umpan balik yang berharga, seperti penjadwalan lebih menentu, mudah untuk melakukan pengujian dan pemeliharaan dapat dilakukan dengan mudah. 
  • Umpan balik dari satu tahap menyediakan informasi desain untuk tahap berikutnya dan dapat melihat perembangan pada setiap tahap. 
  • Sangat berguna saat penambahan staf tidak tersedia.

Kekurangan : [2]


  • Komunitas pengguna perlu dilibatkan secara aktif dalam proyek. Ini menuntut waktu staf dan menambah penundaan proyek.
  • Keterampilan komunikasi dan koordinasi menjadi perhatian utama.
  • Permintaan informal untuk perbaikan untuk setiap tahap dapat menyebabkan kebingungan.
  • Ini dapat menyebabkan "Scope creep".
Dalam proses model incremental, pelanggan harus mengidentifikasi terlebih dahulu, dalam menguraikan layanan yang akan disediakan oleh sistem. Mereka mengidentifikasi layanan mana yang paling penting dan mana yang paling tidak penting bagi mereka. Sejumlah peningkatan pengiriman kemudian didefinisikan di mana setiap kenaikan menyediakan subset dari persyaratan fungsional. Persyaratan fungsional prioritas tertinggi disampaikan terlebih dahulu.

B. Concurrent Model 
Gambar 2. Concurrent Model

Concurrent Model atau Concurrent Engineering adalah pendekatan sistematis untuk desain produk yang terintegrasi dan bersamaan dan proses terkaitnya, termasuk pembuatan dan dukungan.[3] Pendekatan ini dimaksudkan untuk menyebabkan pengembang dari awal, untuk mempertimbangkan semua elemen siklus hidup produk dari konsepsi hingga pembuangan, termasuk kualitas, biaya, jadwal, dan persyaratan pengguna.

Kelebihan : [4]
  • Pengembangan dan waktu produksi terpimpin
  • Peningkatan kualitas yang terukur
  • Pengurangan biaya
  • Model pengembangan bersamaan, beberapa kali disebut rekayasa bersamaan. Ini dapat ditampilkan secara skematis sebagai serangkaian aktivitas kerangka kerja, tindakan rekayasa perangkat lunak, tugas rekayasa perangkat lunak, dan status terkaitnya.
  • Model proses konkuren mendefinisikan serangkaian kegiatan yang akan memicu transisi dari negara ke negara untuk masing-masing kegiatan dan tindakan atau tugas rekayasa perangkat lunak.
  • Model proses bersamaan berlaku untuk semua jenis pengembangan perangkat lunak dan memberikan gambaran yang akurat tentang keadaan proyek saat ini.

Kekurangan : [4]

  • Dibutuhkan disiplin untuk menghindari terlalu banyak menambahkan fitur baru di proyek.
  • Membutuhkan kerjasama tim yang baik, agar tidak terjadi miskomunikasi.
  • SRS harus terus diperbarui untuk mencerminkan perubahan.

Referensi :
[1] Nayan B. Ruparelia, "Software Development Lifecycle Models" ACM SIGSOFT Software    Engineering Notes, Volume 35, Page 9-10, Number 3, May 2010, [Online]. Tersedia : http://ejournal.ikado.ac.id/index.php/teknika/article/view/48/38 [Diakses 16 September 2019]
[2] Ashwini Mujumdar, Gayatri Masiwal, P. M. Chawan, "Analysis of various Software Process Models" International Journal of Engineering Research and Applications (IJERA)Vol. 2, pp.2015-2021, Issue 3, May-Jun 2012, ISSN: 2248-9622, [Online]. Tersedia : https://www.researchgate.net/publication/316510707_Analysis_of_various_Software_Process_Models [Diakses 16 September 2019]
[3] http://www.me.nchu.edu.tw/lab/CIM/www/courses/Computer%20Integrated%20Manufacturing/Chapter3%20-Concurrent%20Engineering.pdf [Diakses 16 September 2019]
[4] S.Thulasee Krishna ,Dr. S.Sreekanth ,K.Perumal, K.Rajesh Kumar Reddy, "Explore 10 Different Types of Software Development Process Models" (IJCSIT) International Journal of Computer Science and Information Technologies, Vol. 3 (4) , pp 4580 - 4584, 2012. [Online]. Tersedia : http://ijcsit.com/docs/Volume%203/vol3Issue4/ijcsit2012030405.pdf  [Diakses 16 September 2019]


  

Komentar

Postingan populer dari blog ini

Specialized Process Model, Agile Method dan Scrum

A. Specialized Process Model 1. Component-Based Development [1] Gambar 1. Component-Based Development Rekayasa perangkat lunak berbasis komponen (CBSE) adalah proses yang menekankan desain dan konstruksi sistem berbasis komputer menggunakan "komponen" perangkat lunak yang dapat digunakan kembali. Variasi model spiral dimana aplikasi dibangun dari komponen software dikemas disebut kelas. Kelebihan : [2] Komponen skalabilitas dapat dengan mudah ditambahkan, dihapus atau diperbarui, Sistem CBSE sangat scalable karena semakin banyak komponen dengan fungsi baru dapat ditambahkan dengan mudah, Kualitas yang akan terus ditingkatkan, Mengurangi Biaya & Jadwal, ketika komponen digunakan kembali, biaya dan waktu yang dibutuhkan untuk mengembangkan komponen baru akan lebih hemat. Biaya pengembangan komponen pulih setelah lima kali berturut-turut digunakan kembali. CBSE lebih mudah dirawat karena mudah untuk mengganti komponen yang salah dengan alternatifnya. Ke...

9 Tipe Diagram Unified Modeling Language (UML)

Unified Modeling Language (UML) adalah sebuah bahasa visual/grafis untuk memvisualisasikan, menentukan, membangun, dan mendokumentasikan sebuah perangkat lunak yang berorientasi objek (Object-Oriented). UML menjadi salah satu cara untuk mempermudah pengembangan sebuah perangkat lunak, dimana UML menggambarkan interaksi antara pengguna dan sistem, pembagian tanggung jawab, integrasi dengan sistem yang lebih besar atau yang sudah ada, aliran data dan ketergantungan, urutan operasi (algoritma), dan operasi bersamaan.  Tujuan penggunaan UML ini adalah untuk memberi gambaran mengenai proyek yang sedang dikerjakan, sebagai alat untuk berkomunikasi antara pengembang maupun pemangku kepentingan, membantu mengembangkan desain yang efisien, efektif dan benar. Diagram UML di klasifikasikan menjadi 2 jenis diagram, yaitu diagram struktur ( Structure diagram ) dan diagram perilaku ( Behavior diagram ). Berikut ini merupakan 9 tipe diagram dalam Unified Modeling Language: 1. Use case diagram Use...