Senin, 16 September 2019

Incremental Model dan Concurrent Development Model



     Model Incremental adalah model pengembangan sistem pada software developmet berdasarkan requirement sortware yang dipecah menjadi beberapa fungsi atau bagian sehingga model pengembangannya secara bertahap. Dengan menggunakan incremental modal dapat mebantu kita untuk mengurangi biaya sebelum mencapai level dari initial productivity dan mengakselerasi proses dari pembuatan suatu fungsi sistem. Incremental model menggambarkan suatu proses dimana mengutamakan perhatian pada sistem reqirement dan mengimplementasikannya dalam team development. [1]


Tahap-tahap pada Incremental model, yaitu:
  • Requirement: Proses penentuan kebutuhan atau analisis kebutuhan
  • Specificatuin: proses pesifikasi dimana menggunakan analis kebutuhan sebagai acuannya
  • Architecture design: perancangan software yang terbuka agar dapat diterapkan sistem pembangunan perbagian pada tahapan selanjutnya
  • Code: Melakukan coding
  • Test: melakukam testing dalam model ini [1]
     More Risky Incremental model adalah suatu solusi untuk mengantisipasi kondisi yang tidak di inginkan saat mengimplementasikan incremental model. More risk incremental model menerapkan sistem kerja parallel dimana tahap awal yaitu membuat daftar kebutuhan user kemudian dianalisa.
     setelah spesifikasi pertama telah selesai, tim design akan membuat design untuk modul pertama. Pada saat itu juga, tim spesifikasi akan membuat spesifikasi untuk modul kedua dan jika sudah selesai, maka tim design akan membuat design untuk modul ke dua, dan seterusnya. Sehingga tidak harus menunggu modul pertama selesai dan dikirim ke use,baru lanjut ke modul kedua [1]

Kelebihan Incremental Model:
  1. Merupakan model design dengan menejemen yang sederhana
  2. Pengguna tidak perlu menunggu sampai seluruh sistem dikirim untuk mengambil keuntungan dari sistem tersebut
  3. Resiko untuk kegagalan proyek secara keseluruhan lebih rendah. Walaupun masalah masih dapat ditemukan pada beberapa increment
  4. Nilai penggunaan dapat ditentukan pada setiap increment sehingga fungsionalitas sistem disediakan lebih awal
  5. Memilik resiko lebih redah terhadap keseluruha  pengebangan sistem
  6. Prioritas tertinggi pada pelayanan sistem adalah yang paling diuji
  7. Review detil. Hasil review tersebut menjadi bekal untuk pembangunan pada incremental berikutnya
  8. Personil kerja optimal
  9. Mampu mengakomodasi perubahan secara  fleksibel
  10. Merupakan model dengan manajemen yang sederhana
  11. Prioritas tinggi pada pelayanan system adalah yang paling diuji
  12. Pihak konsumen dapat langsung menggunakan bagian-bagian yang telah selesai dibangun. Contohnya pemasukan data karyawan
  13. Mengurangi trauma karena perubahan sistem. Klien dibiasakan perlahan-lahan menggunakan produknya bagian perbagan
  14. Memaksimalkan pengembalian modal investasi konsumen [2]

Kelemahan Incremental Model:
  1. Kemungkinan tiap bagian tidak dapat di intregasikan
  2. Dapat menjadi build dan fix model, karena kemampuannya untuk selalu mendapat perubahan selama proses rekayasa berlangsung
  3. Harus open architecture
  4. Mungkin terjadi kesulitan untuk memetakan kebutuhan pengguna kedalam rencana spesifikasi masing-masing hafil incremental
  5. Memutuhkan waktu yang relative lama untuk untuk menghasilkan product yang lengkap
  6. Cocok untuk proyek berukuran kecil (tidak lebih dari 200.000 baris coding)
  7. Kemungkinan tiap bagian tidak dapat di intregasikan
  8. Mungkin terjadi kesulitan untuk memetakan kebutuhan pengguna ke dalam rencana spesifikasi masing-masing hasil increment [2]

Concurrent Development Model

     Concurrent Development model adalah cara/proses pengenbangan yang pada dasarnya adalah rangkaian dari kegiatan teknis,tugas,dan hubungan saling terkait dengan kegiatan seperti analisi desain atau komunikasi. aktifitas dalam model ini dilakukan secara simultan, setiap aktifitas kerja saling terkait dengan klasifikasi kerja lain.
     Concurrent Development model mirip dengan Spiral model,biasa digunakan dalam pengembangan aplikasi clint/server.  Concurrent Development model memungkinkan tim software untuk mempresentasikan secara berulang-ulang dan elemen-element searah mengenai segala model proses.
      Concurrent Development model biasa diaplikasikan kedalam semua tipe pengembangan perangkat lunak dan memberikan keadaan akurat mengenai keadaan tertentu dari sebuah proyek. Ketika di aplikasikan untuk client/server,  Concurrent Development model menggambarkan aktiviras di dua dimensi yaitu:  [3]

  • Dimensi sistem situnjukan menggunakan tiga aktivitas: Design,perakitan dan penggunaan
  • Dimensi Komponen ditunjukan dengan dua aktivitas: Design dan realisasi  [3]

Concurrency dicapai dalam jalan dua arah yaitu sebagain berikut
  • Sistem dan komponen aktivitas terjadi secara simultan dan dapat diperagakan menggunakan pendekatan yang berorientasi status sebelumnya
  • kekhasan aplikasi client/server adalah diterapkan dengan banyak komponen, masing-masing dapat dirancang dan direalisasikan secara bercamaan  [3]
Kelebihan Concurrent Development Model
  1. Hasil yang didapat akan menghasilkan suatu sistem yang sangat baik karena terdapat perancangan yang terjadi secara besar dan terencana secara matang
  2. proses  Concurrent Development model ini berlaku untuk semua jenis pengenbangan perangkat lunak dan memberikan gambaran yang akurat tentang keadaan sekarang dari suatu proyek
  3. produk yang dihasilkan oleh  Concurrent Development model ini lebih kokoh dan teratur dikarenaka prosesnya langsung dirancang sekaligus dibuat oleh teknisi
  4. Masing-masing kegiatan pada jaringan ada persamaan dengan kegiatan lain sehingga bisa dimulai atau diperbaharui dari semua step
  5. Fitur-fitur baru dapat ditambahkan nanti di akhir proyek
  6. Ketika tahap validasi akhir tidak akan terkejut akan kesalahan-kesalahan atau permasalahan. Hal ini dikarenakan percobaan (testing) dilakukan secara terus menerus seiring dengan proyek berjalan
  7.  Concurrent Development model bersifat fleksibel karena perkembangan incremental yang terjadi dapat secara penuh dianalis oleh tim, dan secara langsung akan memperoleh feedback melalui testing  [3]
Kekurangan Concurrent Development Model
  1. Memungkinkan terjadinya perubahan besar-besaran, maka akan membuat biaya dan waktu yang diperlukan lebih banyak
  2. Implementasi awal design yang sedikit lebih sulit, dan membutuhkan komunikasi dan kemampuan yang baik pada tiap teknisi dan timnya
  3. Karena kurangnnya waktu, bila permasalahan tidak dapat diselesaikan dengan baik, maka kemungkinan Concurrent design ini tidak akan bekerja dengan baik dan efisien
  4. Karena kegiatannya membentuk pararel akan sedikit sulit bila ditemukan suatu permasalahan ditengah proses
  5. lebih lama proses pembuatan terhenti akan lebih banyak timbul masalah saat mulainya proses pembuatan saat berhenti [3]
sumber:
https://sis.binus.ac.id/2019/07/02/software-development-model-incremental-model/  [1]
https://www.academia.edu/34511536/Model_Incremental_dalam_rekayasa_perangkat_lunak  [2]
https://sites.google.com/a/student.unsika.ac.id/metodologi-penelitian-septian-maulana-1141177004039/documents/metode-the-concurrent-development-model   [3]