Selasa, 23 Oktober 2012

Model-Model Proses Software

Hoalaaahh... Akhirnya episode 3 dimulai juga! <( ^_^)

Nah.. Seperti yang sudah di janjikan.. Episode kali ini membahas tentang "Model-Model Proses Software!!  \(-^0^-)/

Yaa.. Kita mulai saja... Pertama2 yaitu:

WATERFALL MODEL




Nah.. Sepertinya gambar ini familiar y?
ya iya.. Kan udh di bahas di episode 2... <( ^_^)
Model ini disebut model waterfall..
Mengapa sedemikian? Hal ini disebabkan  ketika suatu tahapan proses selesai baru bisa dilanjutkan ke tahapan selanjutnya, jika suatu proses tidak dilakukan, proses selanjutnya tidak dapat dijalankan. Jadi seperti air terjun, airnya harus mengaliri semua bagian tahap demi tahap.

Bagaimana dengan prosesnya?

1. Requirement Analysis
Proses mengumpulkan informasi tentang kebutuhan pengguna. Biasanya dilakukan dalam bentuk diskusi atau wawancara

2.  System Design
Tahap ini bertujuan untuk memberikan gambaran apa yang seharusnya dikerjakan dan bagaimana tampilannya. Tahap ini membantu dalam menspesifikasikan kebutuhan hardware dan sistem serta mendefinisikan arsitektur sistem secara keseluruhan.

3.  Implementation
Dalam tahap ini dilakukan pemrograman. Pembuatan software dipecah menjadi modul-modul kecil.

4.  Integration & Testing
Di tahap ini dilakukan penggabungan modul-modul yang sudah dibuat dan dilakukan pengujian untuk mengetahui adanya eror di software yang dibuat atau tidak.

5.  Operation & Maintenance
Tahap ini merupakan tahap pemeliharaan. Pemeliharaan termasuk dalam memperbaiki  kesalahan yang tidak ditemukan pada langkah sebelumnya.


Kelebihan Waterfall Model :
  • Merupakan model pengembangan paling handal dan paling lama digunakan.
  • Cocok untuk system software berskala besar.
  • Cocok untuk system software yang bersifat generic.
  • Pengerjaan project system akan terjadwal dengan baik dan mudah dikontrol.
Kekurangan Waterfall Model :
  • Persyaratan system harus digambarkan dengan jelas.
  • Rincian proses harus benar-benar jelas dan tidak boleh berubah-ubah.
  • Sulit untuk mengadaptasi jika terjadi perubahan spesifikasi pada suatu tahapan pengembangan.


RAD (RAPID APPLICATION DEVELOPMENT)

RAD merupakan pengembangan lebih lanjut dari waterfall model.
Lalu, apa bedanya?
Perbedaannya adalah proses pengerjaannya terbagi atas beberapa bagian yang ditangani tim-tim kerja.




Kelebihan RAD yaitu waktu pengerjaan singkat karena tugas terbagi dalam tim. Sedangkan kekurangannya adalah kebutuhan harus sangat jelas dipaparkan, kalau ada kepincangan maka proses takkan berjalan lancar.


PROTOTYPING MODEL



Perbedaan mendasar pada prototyping model adalah pembuatan prototype (perancangan sementara) sebelum membuat software secara keseluruhan.
(-^w^-)/

Langkah-Langkah Prototyping Model

1. Pengumpulan Kebutuhan -->  yaitu mengumpulkan kebutuhan pelanggan.

2. Membangun prototyping --> Membuat rancangan sementara yang berfokus pada penyajian untuk pelanggan.

3. Evaluasi prototyping -->Prototyping yang sudah dibuat kemudian dievaluasi. Jika ada yang tak sesuai dengan keinginan pelanggan, maka prototyping dibuang dan dibuat ulang. Jika sudah sesuai berlanjut ke tahap sebelumnya.

4. Mengkodekan sistem --> prototyping yang sudah disetujui kemudian diterjemahkan ke dalam bahasa pemograman yang sesuai.

5. Menguji sistem --> Sistem software yang siap dipakai kemudian di tes. Pengujian dengan white box, black box, basis path, pengujian arsitektur dll.

6. Evaluasi sistem --> Sistem yang ada kemudian di evaluasi menurut keinginan pelanggan. Pada tahap ini jika pelanggan belum menyetujui software maka software masih bisa diubah. tetapi ketika pelanggan sudah menyetujui software, software tidak bisa diubah lagi (tidak dapat di maintenance)

7. Menggunakan sistem --> Pelanggan menggunakan sistem yang sudah disetujui.

Kelebihan Prototyping Model:
  • Sudah terstruktur
  • Komunikasi antara pengembang dan pelanggan baik
  • Menghemat waktu
  • Penerapan menjadi lebih mudah karena pelanggan mengetahui apa yang dia harapkan
Kekurangan Prototyping Model:
  • Software tidak cocok digunakan untuk waktu lama
  • Kurang fleksibel terhadap perubahan


INCREMENTAL MODEL

Pembuatan sofware dengan incremental model merupakan proses yang terpecah menjadi beberapa bagian.

Model ini mengandalkan prioritas dan sistematika, jadi software yang paling penting dan yang paling berpengaruh pada software lain yang harus dikerjakan terlebih dahulu. Di umpakan seperti menjahit baju. pertama-tama yang harus dilakukan adalah menggambar pola, menggunting kain dan menjahitnya.  Menggunting kain tidak dapat dilakukan sebelum menggambar pola, dan baju tak dapat dijahit sebelum kainya digunting. Seperti itulah ilustrasi incremental model.


Kelebihan Incremental Model:
  • Personil bekerja optimal
  • Pihak konsumen dapat langsung menggunakan dahulu bagian-bagian yang telah selesai dibangun.
  • Mengurangi trauma karena perubahan sistem.  Klien dibiasakan perlahan-lahan menggunakan produknya bagian per bagian
Kekurangan Incremental Model:
  • Ada kemungkinan tiap bagian tidak dapat diintegrasikan
  • Diperlukan kemampuan untuk selalu melakukan perubahan tanpa menurunkan kualitas
  • Memungkinkan penambahan staf

SPIRAL MODEL
Merupakan gabungan prototyping dan waterfall model. Proses pembuatannya mulai dari customer communication, planning, risk analysis, engineering, construction & release, customer evaluation. Proses ini akan terus berulang demi pemenuhan kebutuhan pelanggan, walaupun perangkat lunak telah selesai. 







 Langkah-langkah dalam spiral model

1.          1. Customer Comunication
Merupakan aktivitas yang dilakukan untuk membangun komunikasi yang efektif  antara pengembang dengan pengguna terutama mengenai kebutuhan dari pengguna.

2.          2.  Perencanaan
Aktivitas yang dibutuhkan untuk menentukan sumber daya, perkiraan waktu pengerjaan, analisa resiko dan informasi lainnya yang dibutuhkan untuk pengembangan perangkat lunak.

3.          3. Pemodelan
Aktivitas yang dijalankan untuk menganalisis design yang akan dibuat.

4.           4. Konstruksi
Aktivitas yang dibutuhkan untuk mengembangkan perangkat lunak, pengkodean, pengujian, penggunaan perangkat lunak, serta dokumentasi seperti buku manual penggunaan perangkat lunak.



5.          5. Penyebaran
Aktivitas yang dilakukan untuk mendapatkan respon dari pengguna berdasarkan evaluasi mereka selama representasi perangkat luak pada tahap permodelan maupun pada implementasi selama intalasi perangkat lunak pada tahap konstruksi. 


Kelebihan Model Spiral :
  • Lebih cocok untuk pengembangan sistem dan perangkat lunak skala besar
  • Dapat digunakan dalam waktu sangat lama karena perubahan terus dilakukan
  • Membutuhkan pertimbangan langsung terhadp resiko teknis sehingga mengurangi resiko sebelum menjadi permasalahan yang serius
Kelemahan Model Spiral :
  • Sulit untuk mengontrol perubahan yang ingin dilakukan karena jangka panjang
  • Sulit meyakinkan pelanggan mengenai pendekatan evolusioner
  • Memerlukan penaksiran resiko yang masuk akal dan akan menjadi masalah yangserius jika resiko mayor tidak ditemukan dan diatur.
  • Butuh waktu lama untuk menerapkan paradigma ini menuju kepastian yang absolut.
Daftar pustaka:
http://bluewarrior.wordpress.com/2009/10/12/waterfall-model-vs-v-model/
http://evelynhartanto.wordpress.com/category/rpl/
Pressman Book 5th series
Pic by Willbugzz.deviantART.com


Tidak ada komentar:

Posting Komentar