1. Model Linear
Sequential/Waterfall
Model Linear
Sequential/Waterfall merupakan paradigma rekayasa perangkat lunak yang
paling tua dan paling banyak dipakai.
Kelebihan
model Linear Sequential/Waterfall :
· Mudah
diaplikasikan
· Memberikan template tentang
metode analisis, desain, pengkodean, pengujian, dan pemeliharaan
· Cocok
digunakan untuk produk software yang sudah jelas kebutuhannya di awal, sehingga
minim kesalahannya
Kekurangan
model Linear Sequential/Waterfall :
· Terjadinya
pembagian proyek menjadi tahap-tahap yang tidak fleksibel, karena komitmen harus
dilakukan pada tahap awal proses
· Sulit
untuk mengalami perubahan kebutuhan yang diinginkan customer
· Customer
harus sabar untuk menanti produk selesai, karena dikerjakan tahap per
tahap,menyelesaikan tahap awal baru bisa ke tahap selanjutnya
· Perubahan
ditengah-tengah pengerjaan produk akan membuat bingung team work yang sedang
membuat produk
· Adanya
waktu menganggur bagi pengembang, karena harus menunggu anggota tim proyek
lainnya menuntaskan pekerjaannya
2. Model Prototyping
Pendekatan
prototyping model digunakan jika pemakai hanya mendefinisikan objektif umum
dari perangkat lunak tanpa merinci kebutuhan input, pemrosesan dan outputnya,
sementara pengembang tidak begitu yakin akan efisiensi algoritma, adaptasi
sistem operasi, atau bentuk interaksi manusia-mesin yang harus diambil.
Kelebihan
model Prototyping :
· 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
Kekurangan
model Prototyping :
· Proses
analisis dan perancangan terlalu singkat
· Biasanya
kurang fleksible dalam mengahadapi perubahan
· 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
3. Model RAD
(Rapid Application Development)
Model RAD
merupakan model proses pengembangan perangkat lunak secara linear sequential
yang menekankan pada siklus pengembangan yang sangat singkat.
Kelebihan
model RAD :
· Lebih
efektif dari pendekatan waterfall/sequential linear dalam menghasilkan
sistem yang memenuhi kebutuhan langsung dari pelanggan
· Cocok
untuk proyek yang memerlukan waktu yang singkat
Kekurangan
model RAD :
· RAD tidak
cocok digunakan untuk sistem yang mempunyai resiko teknik yang tinggi
· Membutuhkan
orang yang banyak untuk menyelesaikan sebuah proyek berskala besar
· Pengembang
dan customer harus punya komitmen yang kuat untuk menyelesaikan sebuah software
· Jika
sistem tidak di bangun dengan benar maka RAD akan bermasalah
· Jika ada
perubahan di tengah-tengah pengerjaan maka harus membuat kontrak baru antara
pengembang dan customer
4. Model Increment
Model Increment
merupakan kombinasi linear sequential model dan filosofi pengulangan dari
prototyping model.
Kelebihan
model Increment :
· Cocok digunakan
bila pembuat software tidak banyak/kekurangan pembuat
· Mampu
mengakomodasi perubahan kebutuhan customer
Kekurangan
model Increment :
· Hanya
akan berhasil jika tidak ada staffing untuk penerapan secara menyeluruh
· Penambahan
staf dilakukan jika hasil incremental akan dikembangkan lebih lanjut
· Hanya
cocok untuk proyek dengan skala kecil
5. Model
Spiral
Model
spiral merupakan model proses perangkat lunak yang memadukan wujud pengulangan
dari model prototyping dengan aspek 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 bereaksi terhadap resiko setiap
tingkat evolusi karena perangkat lunak terus bekerja selama proses
Kekurangan
model Spiral :
· Sulit
untuk meyakinkan pemakai (saat situasi kontrak) bahwa penggunaan pendekatan ini
akan dapat dikendalikan
· Memerlukan
tenaga ahli untuk memperkirakan resiko, dan harus mengandalkannya supaya sukses
·
Belum terbukti apakah metode ini cukup efisien karena usianya yang
relatif baru
6. Transformasi formal
.
Transformasi formal
Metode ini berbasiskan pada transformasi spesifikasi secara matematik melalui representasi yang berbeda untuk suatu program yang dapat dieksekusi. Trasformasi menyatakan spesifikasi program
Menggunakan pendekatan ‘Cleanroom’ untuk pengembangan PL.
Metode ini berbasiskan pada transformasi spesifikasi secara matematik melalui representasi yang berbeda untuk suatu program yang dapat dieksekusi. Trasformasi menyatakan spesifikasi program
Menggunakan pendekatan ‘Cleanroom’ untuk pengembangan PL.
Metode ini mempunyai keterbatasan dalam pemakaiannya. Keunggulannya adalah mengurangi jumlah kesalahan pada sistem sehingga penggunaan utamanya adalah pada sistem yang kritis. Hal ini menjadi efektif dari segi biaya.
Pemakaian model pengembangan formal memerlukan tingkat kerahasian sebelum digunakan.
Permasalahan dalam model pengembangan metode formal:
• Memerlukan keahlian khusus dan pelatihan untuk mengaplikasikannya
• Sulit menentukan beberapa aspek dari suatu sistem seperti
user interface
7. 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. Tool akan otomatis menghasilkan sumber berdasarkan spesifikasi
tersebut. Teknik 4GT ini menekankan pada kemampuan menentukan perangkat lunak
pada level mesin dengan bahasa yang lebih alami atau notasi yang lebih memiliki
arti.
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 dan definisi, code generation, kemampuan grafik level tinggi,
kemampuan spreadsheet, dan automated generation of HTML serta bahasa-bahasa
yang mirip yang digunakan untuk membuat suatu website dengan menggunakan
perangkat lunak tertentu. Tiap tool ini ada, tapi hanya untuk aplikasi khusus.
Metode 4GT ini dimulai dari
pengumpulan kebutuhan. Idealnya pelanggan akan menjelaskan kebutuhannya, yang
akan langsung ditranslasikan ke prototipe operasional. Tapi, prototipe ini
tidak bekerja. Pelanggan mungkin tidak pasti akan hal yang dibutuhkannya atau
tidak dapat menentukan informasi yang dapat ditangani tool 4GT. Tool 4GT yang
sudah ada tidak cukup canggih untuk mengakomodasikan bahasa alami. Pada saat
ini, dialog antara pelanggan dan pengembang yang ada pada metode sebelumnya
tetap menjadi bagian penting dari teknik 4GT.
Implementasi menggunakan 4GL
(Fourth-Generation Language) dapat dihasilkan dari program kode yang sesuai.
Tetapi struktur data dengan informasi lainnya harus ada dan dapat diakses oleh
4GL. Untuk aplikasi kecil, adalah mungkin untuk langsung berpindah dari
pengumpulan kebutuhan ke implementasi menggunakan bahasa non-prosedural
(Fourth-Generation Language - 4GL).
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.
3 komentar:
wuihhhh selain ada skype whatsapp juga ada bloggg hoho. salam sinkronisasi yaa wkwkw
welcome.. :D,mas hipli.. hihiih
wes mantap lg ni gan. thanks atas infonya gan..
Posting Komentar
tinggalkan jejak ya... :)