Senin, 01 April 2013

Proses Model


Proses Model

1. Waterfall Model
Model ini adalah model klasik yang bersifat sistematis, berurutan dalam
membangun software. 
Fase-fase dalam Waterfall Model menurut referensi Pressman:



Kelebihan
Model waterfall ini akan menjadi pilihan yang bagus jika semua kebutuhan dalam membuat sebuah software sudah terpenuhi jauh sebelum model ini
direncanakan atau dimulai. Karena jika sudah memilih model ini dan kebutuhan belum di daftar, akan memakan waktu yang lama dalam pembuatannya.

Kekurangan yang utama dari model ini adalah kesulitan dalam
mengakomodasi perubahan setelah proses dijalani. Fase sebelumnya harus lengkap
dan selesai sebelum mengerjakan fase berikutnya.Masalah dengan waterfall :
1. Perubahan sulit dilakukan karena sifatnya yang kaku.
2. Karena sifat kakunya, model ini cocok ketika kebutuhan dikumpulkan secara
lengkap sehingga perubahan bisa ditekan sekecil mungkin. Tapi pada
kenyataannya jarang sekali konsumen/pengguna yang bisa memberikan
kebutuhan secara lengkap, perubahan kebutuhan adalah sesuatu yang wajar
terjadi.
3. Waterfall pada umumnya digunakan untuk rekayasa sistem yang besar dimana
proyek dikerjakan di beberapa tempat berbeda, dan dibagi menjadi beberapa
bagian sub-proyek.

2. V Model
Variasi dari waterfall model yang berhubungan dengan adanya aksi jaminan kualitas yang terhubung dengan komunikasi modeling dan coding construction activates

bentuknya hampir sama seperti Waterfall model, tiap tahap harus diselesaikan satu persatu dahulu sebelum melanjutkan ke tahap berikutnya. Akan tetapi model ini memiliki tahapan testing. Bila terjadi kesalahan, dapat mengulang ke tahap sebelumnya.




Keuntungan:

  • Sederhana.
  • Mudah digunakan.
  • Persentase berhasil lebih besar daripada waterfall model.


Kerugian:

  • Masih beresiko seperti waterfall model.
  • Tidak dapat membuat protoype.


3. Incremental Model

Model ini seperti kombinasi dari linear dan prototype karena alurnya sama seperti waterfall yang linear, bila ternyata terjadi kesalahan/perubahan, harus mengulang lagi dari awal sementara produk dari proses sebelumnya dapat digunakan sebagai protoype.





Kelebihan

  • User dapa menggunakan dan mengeavaluasi dengan memodifikasi yang lebih baik
  • Muncul ide baru kerena kebutuhan yang mendesak untuk memperluas sistem yang baru
  • Resiko lebih rendah.
  • Dapat memberikan hasil yang lebih baik secara bertahap karena dpat di modifikasi di increment berikutnya
  • Dapat membuat prototype

Kekurangan

  • Butuh waktu yang lama jika terjadi perubahan dalam proses pembuatan software yang bisa di lakukan di increment berikutnya , tidak bisa langsung
  • Ada penambahan staff jika terjadi increment


4. Evolutionary Model
Software berkembang dari waktu ke waktu sesuai dengan kebutuhan yg terus sering berubah. Biasanya model ini di pilih kalau sekumpulan dari produk inti / kebutuhan sistem bisa di pahami dengan baik, tapi detail dan perluasannya belum di definisikan

Ada 2 macam model Evolutionary

1. Prototyping
Prototyping model digunakan ketiika user mendefinisikan sekumpulan tujuan umumnya, tapi kebutuhan fungsi dan fitur belum di definisikan dengan detail atau pengembang tidak yakin dengan efisiensi algoritma yang di bentuknya.

Kelebihan

  • Stackholder dan engineer terlibat langsung sehingga engineer bisa bekerja lebih baik dalam menentukan kebutuhan pelanggan
  • Mempersingkat waktu pengembangan sistem
  • Penerapan menjadi lebih mudah
  • Menghasilkan banyak prototype
Kekurangan

  • Kebutuhan client belum di definisikan dengan detail
  • Proses analisa dan perancangan terlalu cepat
  • Kurang  fleksibel dalam menghadapi perubahan

2. Spiral

Proses digambarkan sebagai spiral. Setiap loop mewakili satu fase dari software process. Loop paling dalam berfokus pada kelayakan dari sistem, loop selanjutnya tentang definisi dari kebutuhan, loop berikutnya berkaitan dengan desain sistem dan seterusnya

Kelebihan

  • Selalu ada analisis terhadap resiko
  • Adanya prototyping untuk mengurangi resiko
  • Menggunakan prototype dan model waterfall menjadikan model ini lebih realistis , cocok untuk pengembangan sistem yang besar

Kekurangan

  • Sulit untuk meyakinkan stackholder dalam mengontrol jika terjadi resiko yang besar
  • Masih ada kendala dalam komunikasi karena biasanya pihak client tidak terlalu memahami kebutuhannya sendiri.
  • Butuh waktu lama untuk menerapkan karena pengembangan yang terus menerus dilakukan

Tidak ada komentar:

Posting Komentar