Sunday, April 2, 2017

Pengertian Prototype Transformasi Formal RAD Incremental Spiral Fourth Generation Techniques

Pengertian Prototype Transformasi Formal RAD Incremental Spiral Fourth Generation Techniques


1. Model Prototype

Prototype/Protoyping Model ini adalah model yang dapat diterapkan pada model apapun. Model ini tidak memerlukan data yang lengkap dari sisi client dan banyaknya keraguan dari pembuat software karena kondisi yang belum diketahui (seberapa besar software, bagaimana sistem penerapannya). Model ini tepat digunakan jika pihak client menginginkan prototype dari software dalam waktu yang singkat. Dan prototype inilah yang akan menjadi acuan dari client untuk memberikan data kebutuhan yang lebih lengkap pada pembuat software (developer).

Kelebihan Prototyping model :

  • Menghemat waktu pengembangan.
  • Adanya komunikasi yang baik antara pengembang dan pelanggan.
  • Pengembang dapat bekerja lebih baik dalam menentukan kebutuhan pelanggan.
  • Penerapan menjadi lebih mudah karena pemakai mengetahui apa yang diharapkannya.
  • User dapat berpartisipasi aktif dalam pengembangan sistem.
  • Punya kemampuan menangkap requirement secara konkret daripada secara abstrak.
  • Untuk digunakan secara standalone.
  • Digunakan untuk memperluas SDLC.
a     Kekurangan Prototyping model :
  • Pada prototype tentu saja banyak kebutuhan yang tidak di tampilkan seluruhnya karena data yang dikumpulkan hanya sebagian.
  • Prototype yang di setujui oleh client harus dikembangkan oleh developer tanpa ada data tambahan dari client dan software dari prototype harus memiliki fungsi yang lengkap.
  • Banyak ketidak sesuaian pada bentuk prototype.
  • Proses analisis dan perancangan terlalu singkat.
  • Walaupun pemakai melihat berbagai perbaikan dari setiap versi prototype, tetapi pemakai mungkin tidak menyadari bahwa versi tersebut dibuat tanpa memperhatikan kualitas dan pemeliharaan jangka panjang.
  • Pengembang kadang-kadang membuat kompromi implementasi dengan menggunakan sistem operasi yang tidak relevan dan algoritma yang tidak efisien.
  • Mengesampingkan alternatif pemecahan masalah.
  • Prototype yang dihasilkan tidak selamanya mudah dirubah

2. Rapid Application Development (RAD) 

adalah sebuah proses perkembangan perangkat lunak sekuensial linier yang menekankan siklus perkembangan yang sangat pendek. Jika kebutuhan dipahami dengan baik, proses RAD memungkinkan tim pengembangan menciptakan “sistem fungsional yang utuh” dalam periode waktu yang sangat pendek (kira-kira 60 sampai 90 hari).



Keunggulan :
  • Setiap fungsi mayor dapat dimodulkan dalam waktu tertentu kurang dari 3 bulan dan dapat dibicarakan oleh tim RAD yang terpisah dan kemudian diintegrasikan sehingga waktunya lebih efisien
  • RAD mengikuti tahap pengembangan sistem seperti umumnya, tetapi mempunyai kemampuan untuk menggunakan kembali komponen yang ada sehingga pengembang tidak perlu membuat dari awal lagi dan waktu yang lebih singkat
Kelemahan :
  • Model yang besar (skala proyek), membutuhkan resources yg baik dan solid
  • Membutuhkan komitmen pengembang dan user yang sama agar cepat selesai sesuai dengan rencana

3. Incremental

merupakan perbaikan dari  model waterfall dan sebagai standar pendekatan top-down.

Kelebihan Incremental :
  • Memberikan kualitas produk operasional pada setiap tahap tetapi hanya satu yang memenuhi persyaratan dari klien.
  • Pihak konsumen dapat langsung menggunakan dahulu bagian-bagian yang telah selesai dibangun. Contohnya pemasukan data karyawan.
  • Mengurangi trauma karena perubahan sistem.  Klien dibiasakan perlahan-lahan menggunakan produknya bagian per bagian.
  • Memaksimalkan pengembalian modal investasi konsumen.
Kekurangan Incremental :
  • Tiap bagian tidak dapat diintegrasikan.
  • setiap tambahan yang dibangun harus dimasukkan kedalam struktur yang ada tanpa menurunkan kualitas dari yang telah dibangun system tersebut sampai saat ini.
  • Penambahan staf dilakukan jika hasil incremental akan dikembangkan lebih lanjut.

4. Model Spiral

Model spiral merupakan model  proses perangkat lunak yang memadukan wujud pengulangan dari model prototyping dengan asprk pengendalian dan sistematika dari linear sequential  model.

Kelebihan model Spiral :
  • Lebih cocok untuk pengembangan sistem dan perangkat lunak skala besar.
  • Pengembang dan pemakai dapat lebih mudah memahami dan beraksi terhadap resiko setiap tingkat evolusi karena perangkat lunak terus bekerjaselama proses.


Kekurangan model Spiral :

·           Sulit untuk meyakinkan pemakai (saat situasi kontrak) bahwa pengguna pendekatan akan dapat dikendalikan.

  • Memerlukan tenaga ahli untuk resiko, dan harus mengendalikannya supaya sukses.
  • Belum terbukti apakah metode ini cukup efisien karena usianya yang relatif baru.

5. Metode Fourth-Generation Techniques (4GT)

Istilah Fourth-Generation (generasi keempat) mengarah ke perangkat lunak yang umum yaitu, tiap pengembang perangkat lunak menentukan beberapa karakteristik perangkat lunak pada level yang tinggi.


Kelebihan:



Karena 4GT menggunakan 4GL yang “notabene” merupakan bahasapemrograman yang  khusus dirancang dengan tujuan tertentu (spesifik), maka untuk permasalahan yang tertentu dengan 4GL tertentu pula sangat tepat menggunakan 4GT. Bahkan ada 4GL yang bisa meng-generate sistem dari output yang dihasilkan oleh CASE tools.


Kekurangan:


Untuk usaha yang besar, dibutuhkan pengembangan strategi desain untuk sistem, walau digunakan bahasa 4GL. Penggunaan 4GT tanpa perencanaan matang (untuk proyek besar) akan menyebabkan kesulitan yang sama (kualitas dan pemeliharaan yang jelek, ketidakpuasan pelanggan) seperti dengan metode konvensional.

4GL tidak selalu berhasil menghasilkan sistem yang diinginkan.



6. Transformasi Formal

Transformasi  formal  digunakan  untuk  mengembangkan  bagian ?bagian  sistem yang  memiliki  persyaratan  keselamatan  yang  tinggi  dan  pendekatan  reuse digunakan  untuk  pengimplementasian  bagian ?bagian  lain  dari  sistem  data  manajemen.Masalah pengembangan sistem forma (kekurangan) :Dibutuhkan  ketrampilan  dan  pelatihan  khusus untuk mengaplikasikan teknik iniKesulitan dalam menspesifikasikan beberapa aspek ke  dalam  sistem  misalnya  dalam penentuan  user interface.