Minggu, 15 September 2019

SOFTWARE DEVELOPMENT LIFE CYCLE

Incremental Model

Dalam model Incremental ini proses pengerjaan perangkat lunak akan dilakukan dengan metode pengembangan perangkat lunak dimana produk dirancang, diimplementasikan, dan diuji secara bertahap hingga produk selesai sampai menghasilkan perangkat lunak yang lengkap dengan semua fungsi yang diperlukan.



Kelebihan Incremental Model :
  1. Dikerjakan secara urut dan sistematis.
  2. Merupakan model dengan manajemen yang sederhana
  3. Mencegah ketidaknyamanan saat perubahan system. Klien dibiasakan perlahan-lahan menggunakan produknya setiap bagian per-bagian.
  4. Mampu menyesuaikan perubahan kebutuhan klien/customer.
  5. Resiko yang rendah pada pengembangan sistem.
  6. Mengutamakan fungsi-fungsi pada sistem perangkat lunak sehingga kemudahan pemakaian sistem yang paling di utamakan.
  7. Tahap awal adalan dasar dari pembuatan tahap berikutnya (dikerjakan secara berurutan).
  8. Cocok digunakan bila pembuat software tidak banyak/kekurangan pembuat.
  9. Mampu mengakomodasi perubahan kebutuhan customer.
  10. Memaksimalkan pengembalian modal investasi konsumen.
Kekurangan Incremental Model :
  1. Staf dapat ditambahkan jika hasil incremental dikembangkan secara lebih lanjut.
  2. Cocok untuk proyek dengan skala kecil.
  3. Kemungkinan tiap bagian tidak dapat diintegrasikan.


Concurrent Development Model


Concurrent Development Model adalah suatu model pembuatan perangkat lunak yang mengimplementasikan suatu proses kerja yang dilakukan cepat namun dikerjakan secara bersama-sama dengan menjaga komunikasi dengan klien dan tetap efektif dalam mengerjakan berbagai penyelesaian masalah sesuai permintaan klien agar mudah dalam penggunaannya.

Kelebihan Concurrent Development Model :

  1. Hasil yang di dapat akan menghasilkan suatu sistem yang sangat baik karena terdapat perancangan yang terjadi secara besar dan terencana secara matang.
  2. Komunikasi dengan klien terjaga dengan baik.
Kekurangan Concurrent Development Model :

  1. Jika terjadi perubahan besar-besaran, maka akan membutuhkan biaya dan waktu yang besar.

Kelebihan v model:
1.    Sangat mudah untuk melakukan tailoring pada V Model agar sesuai dengan suatu proyek tertentu dan mudah juga untuk menambahkan method dan tool baru atau menghilangkan method dan tool yang dianggap sudah usang.
2.      V Model dikembangkan dan dipertahankan oleh publik. User dari V Model berpartisipasi dalam mengontrol dan menetapkan permintaan.
3.      Penyesuaian yang cepat pada projek yang baru.
4.      Memudahkan dalam pembuatan dokumen projek.

5.      Biaya yang murah dalam modifikasi dan perawatannya.

Kekurangan v model:
1.      V Model adalah model yang project oriented sehingga hanya bisa digunakan sekali dalam suatu proyek.
2.  V Model terlalu fleksibel yang artinya ada beberapa activity dalam V Model yang digambarkan terlalu abstrak sehingga tidak jelas apa yang dilakukan dalam activity tersebut.
3.      Prosesnya hanya secara sementara
4.      Tidak memiliki kesempatan untuk mempertimbangkan jika ada tools lain yang lebih baik, karena metode yang ditawarkan terbatas.

Kelebihan model Spiral:

1.       Setiap tahap pengerjaan dibuat prototyping sehingga kekurangan dan apa yang diharapkan oleh client dapat diperjelas dan juga dapat menjadi acuan untuk client dalam mencari kekurangan kebutuhan.
2.       Lebih cocok untuk pengembangan sistem dan perangkat lunak skala besar.
3.      Dapat disesuaikan agar perangkat lunak bisa dipakai selama hidup perangkat lunak komputer. 
4.       Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko setiap tingkat evolusi karena perangkat lunak terus bekerja selama proses.
5.     Menggunakan prototipe sebagai mekanisme pengurangan resiko dan pada setiap keadaan di dalam evolusi produk.
6.   Tetap mengikuti langkah-langkah dalam siklus kehidupan klasik dan memasukkannya ke dalam kerangka kerja iteratif.
7.    Membutuhkan pertimbangan langsung terhadap resiko teknis sehingga mengurangi resiko sebelum menjadi permasalahan yang serius.

Kekurangan model Spiral:

1.  Model spiral mempunyai resiko yang harus dipertimbangkan ulang oleh konsumen dan developer. Karena rata-rata klien tidak percaya pendekatan evolusioner dapat diatur oleh kedua pihak.
2.   Memerlukan tenaga ahli untuk memperkirakan resiko, dan harus mengandalkannya supaya sukses. Agar resiko yang buruk tersebut dapat dikendalikan dan diatur.
3.       Belum adanya bukti jika metode ini cukup efisien karena usianya relatif baru.
4.   Membutuhkan waktu yang lama untuk menerapkan paradigma ini menuju kepastian yang absolute.

Kelebihan Rapid Application Development           :
  1. Penghematan waktu dalam keseluruhan fase projek dapat dicapai.
  2. RAD sangat membantu pengembangan aplikasi yang berfokus pada waktu penyelesaian projek.
  3. Perubahan desain sistem dapat lebih berpengaruh dengan cepat.
  4. Sudut pandang user disajikan dalam sistem akhir baik melalui fungsi-fungsi sistem atau antarmuka pengguna.
  5.  RAD menciptakan rasa kepemilikan yang kuat di antara user dan pengembang.


Kekurangan Rapid Application Development   :
  1. Membutuhkan SDM yang cukup besar karena model ini cocok untuk proyek dengan skala besar.
  2. Kinerja dari perangkat lunak yang dihasilkan dapat menjadi masalah jika perangkat lunak yang akan dibangun tidak dapat dibagi menjadi beberapa komponen, sehingga pendekatan dengan model ini kurang bagus.
  3. RAD model tidak cocok digunakan untuk sistem perangkat lunak yang memiliki risiko sangat tinggi, misalnya menggunakan teknologi baru yang belum dikenal dan dikuasai pengembang.
  4. Proyek bisa gagal karena waktu yang disepakati tidak dipenuhi.

     Specialized Process Models
Model proses khusus ini mengambil banyak karakteristik dari satu atau lebih dari model tradisional yang lainnya.

       1.       Component-Based Development,
     Component-Based Development juga dikenal sebagai pembangunan berbasis komponen (CBD) yang mengedepankan konsep reusability (dalam bentuk komponen). Component-Based Development merupakan variasi model spiral. 

  
        2.       The Formal Methods Models
     Formal Methods adalah jenis tertentu dari teknik matematis berbasis spesifikasi, pengembangan dan verifikasi sistem perangkat lunak dan perangkat keras. 


       3.       Aspect-Oriented Software Development (AOSD)
     Aspect-Oriented Software Development adalah teknologi pengembangan perangkat lunak dari sistem software untuk mengisolasi fungsi sekunder atau pendukung dari logika program utama ini dan mengedepankan pendefinisian, penspesifikasian, dan pembangunan aspek.



  


     Agile Method
Agile Method adalah model proses yang menekankan pada fast delivery dari setiap poin aktifitas dalam rangka memperpendek jangka waktu proyek pembangunan perangkat.

 
     Kelebihan dari Agile Method           :
1.      Meningkatkan kepuasan kepada klien.
2.      Dapat melakukan review pelanggan mengenai software yang dibuat lebih awal.
3.      Pembangunan system dibuat lebih cepat.
4.      Mengurangi resiko kegagalan implementasi software dari segi non-teknis.
5.      Jika pada saat pembangunan system terjadi kegagalan kerugian dari segi materi relatif kecil.
     Kekurangan dari Agile Method      :
1.      Developer harus selalu siap dengan perubahan karena perubahan akan selalu diterima.
2.      Agile tidak akan berjalan dengan baik jika komitmen tim kurang.
3.      Tidak cocok dalam skala tim yang besar (>20 orang).
4.      Perkiraan waktu release dan harga perangkat lunak sulit ditentukan.


  
     Scrum
            Scrum adalah sebuah metode iteratif yang termasuk dalam metode Agile tentang bagaimana cara Anda mengelola dan menjalankan sebuah proyek untuk manajemen pengembangan software. 

      Kelebihan dari Scrum          :
      1.      Keperluan berubah dengan cepat.
2.     Tim berukuran kecil sehingga melancarkan komunikasi, mengurangi biaya dan memberdayakan          satu sama lain.
3.      Pekerjaan terbagi-bagi sehingga dapat diselesaikan dengan cepat.
4.      Dokumentasi dan pengujian terus menerus dilakukan setelah software dibangun.
5.      Proses Scrum mampu menyatakan bahwa produk selesai kapan pun diperlukan.
      Kekurangan sari Scrum       :
      1.      Developer harus selalu siap dengan perubahan karena perubahan akan selalu diterima.
2.      Lemah dalam perencanaan arsitektur

0 komentar:

Posting Komentar