Metode pengembangan perangkat lunak
A. Rapid application development (RAD) atau rapid prototyping
adalah model proses pembangunan perangkat lunak yang tergolong dalam teknik incremental (bertingkat). RAD menekankan pada siklus pembangunan pendek, singkat, dan cepat. Waktu yang singkat adalah batasan yang penting untuk model ini. Rapid application development menggunakan metode iteratif (berulang) dalam mengembangkan sistem dimana working model (model bekerja) sistem dikonstruksikan di awal tahap pengembangan dengan tujuan menetapkan kebutuhan (requirement) user dan selanjutnya disingkirkan. Working model digunakan kadang-kadang saja sebagai basis desain dan implementasi sistem final
adalah model proses pembangunan perangkat lunak yang tergolong dalam teknik incremental (bertingkat). RAD menekankan pada siklus pembangunan pendek, singkat, dan cepat. Waktu yang singkat adalah batasan yang penting untuk model ini. Rapid application development menggunakan metode iteratif (berulang) dalam mengembangkan sistem dimana working model (model bekerja) sistem dikonstruksikan di awal tahap pengembangan dengan tujuan menetapkan kebutuhan (requirement) user dan selanjutnya disingkirkan. Working model digunakan kadang-kadang saja sebagai basis desain dan implementasi sistem final
Model RAD mengadopsi model waterfall dan pembangunan dalam waktu singkat
yang dicapai dengan menerapkan :
- Component based construction ( pemrograman berbasis komponen bukan prosedural).
- Penekanan pada penggunaan ulang (reuse) komponen perangkat lunak yang telah ada.
- Pembangkitan kode program otomatis/semi otomatis.
- Multiple team (banyak tim), tiap tim menyelesaikan satu tugas yang selevel tapi tidak sama. Banyaknya tim tergantung dari area dan kompleksitasnya sistem yang dibangun.
Beberapa hal (kelebhan dan kekurangan) yang perlu diperhatikan dalam
implementasi pengembangan menggunakan model RAD :
- Model RAD memerlukan sumber daya yang cukup besar, terutama untuk proyek dengan skala besar.
- Model ini cocok untuk proyek dengan skala besar.
- Model RAD memerlukan komitmen yang kuat antara pengembang dan pemesssan, bahkan keduanya bisa tergabung dalam 1 tim
- kinerja dari perangkat lunak yang dihasilkan dapat menjadi masalah manakala kebutuhan-kebutuhan diawal proses tidak dapat dimodulkan, sehingga pendekatan dengan model ini kurang bagus.
- sistem yang tidak bisa dimodularisasi tidak cocok untuk model ini.
- penghalusan dan penggabungan dari beberapa tim di akhir proses sangat diperlukan dan ini memerlukan kerja keras.
- proyek bisa gagal karena waktu yang disepakati tidak dipenuhi
- risiko teknis yang tinggi juga kurang cocok untuk model ini.
B. Software
Process Model
adalah Sebuah metodologi pengembangan perangkat lunak dipilih berdasarkan sifat proyek dan aplikasi, metode dan alat-alat yang akan digunakan, dan kontrol dan kiriman yang diperlukan.
adalah Sebuah metodologi pengembangan perangkat lunak dipilih berdasarkan sifat proyek dan aplikasi, metode dan alat-alat yang akan digunakan, dan kontrol dan kiriman yang diperlukan.
dan di bawah ini adalah beberapa contoh software process model:
1.
Incremental model adalah model pengembangan sistem pada
software engineering berdasarkan requirement software yang dipecah menjadi
beberapa fungsi atau bagian sehingga model pengembangannya secara bertahap. model ini pun juga memiliki tahapan tahapan untuk perancangan perangkat
lunaknya, yaitu:
- Requirement , Requirment adalah proses tahapan awal yang dilakukan pada incremental model adalah penentuan kebutuhan atau analisis kebutuhan.
- Specification, Specification adalah proses spesifikasi dimana menggunakan analisis kebutuhan sebagai acuannya.
- Architecture Design, adalah tahap selanjutnya, perancangan software yang terbuka agar dapat diterapkan sistem pembangunan per-bagian pada tahapan selanjutnya.
- Code setelah melakukan proses desain selanjutnya ada pengkodean.
- Test merupakan tahap pengujian dalam model ini.
Beberapa Kelebihan dan Kekurangan dari Mode Incremental
atara lain :
- Merupakan model dengan manajemen yang sederhana
- Nilai penggunaan dapat ditentukan pada setiap increment sehingga fungsionalitas sistem disediakan lebih awal.
- Memiliki risiko lebih rendah terhadap keseluruhan pengembagan sistem
- Prioritas tertinggi pada pelayanan sistem adalah yang paling diuji
- kemungkinan tiap bagian tidak dapat diintegrasikan
- Harus Open Architecture
- Mungkin terjadi kesulitan untuk memetakan kebutuhan pengguna ke dalam rencana spesifikasi masing-masing hasil increment.
2. Spiral Model yaitu suatu model
proses pengembangan perangkat lunak evolusioner yang menggabungkan pendekatan
prototyping yang sifatnya iterative dengan aspek-aspek sistematis dan terkendali
yang mana dijumpai pada model air terjun(waterfall).
Berikut kelebihan dan kekurangan spiral model
1. Lebih
cocok untuk pengembangan sistem dan perangkat lunak skala besar
2. Pengembang
dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko setiap
tingkat evolusi karena perangkat lunak terus bekerja selama proses
3. Memerlukan
tenaga ahli untuk memperkirakan resiko, dan harus mengandalkannya supaya sukses
4. Model
spiral ini merupakan model yang masih baru sehingga belum terbukti apakah model
ini efisien atau tidak.
3. Win-win spiral model adalah
satu perluasan dari Spiral Model. Di model ini, tim pengembang dan
pelanggan mendiskusikan dan merundingkan permintaan. Model ini disebut Win-Win
karena memberikan suatu situasi menguntungkan untuk tim pengembang dan juga
untuk pelanggan. Pelanggan untung dengan mendapatkan produk yang sesuai dengan
permintaan mereka, disamping itu regu pengembang untung dengan mengirim
software yang dikembangkan dengan semua permintaan yang dibentuk setelah
negosiasi-negosiasi dengan pelanggan.
Ada enam
tahapan model win-win spiral, diantaranya:
a.
Identifikasi permintaan.
b.
Negosiasi dengan konsumen
c.
Melakukan perubahan permintaan baru setelah melakukan negosiasi dengan
konsumen.
d. Menilai
proses dan produk alternative dan analisa kerusakan.
e.
Persetujuan proses dan produk.
f.
Tinjauan ulang dengan member laporan kepada konsumen.
Berikut adalah kelebihan dan kekurangan win-win
spiral model
1. Adanya kesepakatan dari pembuat dan pemakai
2. Terdapat kepuasan dan keuntungan anatara
developer dengan customer karena aplikasi yang dijalankan dengan negosiasi
sesuai kesepakatan
3. Membutuhkan waktu yang lama
4. Seringkali pada awal customer dengan developer mengalami ketidaksepakatan
saat negosiasi
C. component
Based Software Engineering (CBSE)
adalah konsep pengembangan perangkat lunak berbasis komponen. Konsep ini mencoba hadir untuk memperbaiki kekurangan atau kegagalan OOSE dengan tujuan meningkatkan reusability. Pengembangan dengan konsep ini menganut prinsip sistem sebagai hasil perakitan komponen-komponen, komponen sebagai entitas-entitas resusable, dan upgrading sistem dengan memodifikasi atau mengganti komponennya
adalah konsep pengembangan perangkat lunak berbasis komponen. Konsep ini mencoba hadir untuk memperbaiki kekurangan atau kegagalan OOSE dengan tujuan meningkatkan reusability. Pengembangan dengan konsep ini menganut prinsip sistem sebagai hasil perakitan komponen-komponen, komponen sebagai entitas-entitas resusable, dan upgrading sistem dengan memodifikasi atau mengganti komponennya
berikut
kelebihan dan kekurangan CBSE
- Menggunakan model reuse pada komponen yang sudah mewakili kebutuhan umum.
- Pengurangan waktu siklus pengembangan.
- Penurunan yang signifikan dalam biaya pengembangan proyek.
- Peningkatan yang signifikan dalam produktivitas.
- Pembangunan software dengan menggunakan komponen yang sudah tersedia dapat menggunakan komponen COTS (Commercial off-the-shelf) yang bisa didapatkan dengan membeli komponen yang sebelumnya sudah dibangun secara internal.
6.
Model ini bersifat iteratif atau berulang-ulang prosesnya.
7. Sistem yang tidak bisa
dimodularisasi tidak cocok untuk model ini.
D. Formal method model
adalah teknik yang mengandalkan perhitungan matematika dalam setiap prosesnya. Hanya digunakan pada sistem yang sangat memperhatikan keamanan atau keselamatan dari pengguna keamanan atau keselamatan dari pengguna.
Berikut adalah kelebihan dan kekurangan dari Formal method model
1.
Meminimalkan adanya resiko dengan adanya
perhitungan komputasi
2.
Biayanya mahal
3.
Tidak umum untuk proyek untuk software
umumnya.
E. Metode 4GT Fourth Generation Techniques
Adalah metode pengembangan perangkat lunak generasi
keempat, mengarah ke perangkat lunak yang umum yaitu tiap
pengembang perangkat lunak menentukan beberapa karakteristik perangkat
lunak pada level tinggi. Saat ini pengembangan perangkat lunak yang mendukung 4GT, berisi
tool-tool berikut:
- Bahasa non prosedural untuk query basis data
- Report generation
- Data manipulation
- Interaksi layar
- Kemampuan grafik level tinggi
- Kemampuan spreadsheet .
Tiap tool ini ada tapi hanya untuk sauatu aplikasi
khusus. Metode pengembangan
perangkat lunak 4GT menggunakan perangkat bantu (tools) yang akan
membuat kode sumber secara otomatis berdasarkan spesifikasi dari pengembang perangkat
lunak.
Kelebihan dan kekurangan dari 4GT
1.
Pengurangan waktu dan peningkatan
produktivitas secara besar
2.
Karena 4GT menggunakan 4GL yang
merupakan bahasa pemrograman yang khusus dirancang dengan tujuan tertentu
(spesifik), maka untuk permasalahan yang tertentu dengan 4GL tertentu pula
sangat tepat menggunakan 4GT.
3.
Tool yang menggunakan metode pengembangan perangkat lunak
4GL bisa meng-generate sistem dari output yang dihasilkan oleh CASE tools.
4.
Penggunaan perangkat bantu (tools)
dibandingkan dengan bahasa pemrograman, dan juga kode sumber yang dihasilkannya
tidak efisien.
5.
Untuk usaha yang besar, dibutuhkan pengembangan
strategi desain untuk sistem, walau digunakan bahasa 4GL.
6.
Penggunaan 4GT tanpa perencanaan
matang (untuk proyek besar) akan menyebabkan kesulitan yang sama (kualitas dan
pemeliharaan yang jelek, ketidakpuasan pelanggan) seperti dengan metode konvensional.


Komentar
Posting Komentar