~ PROTOTYPE
prototipe adalah awal sampel,
model, atau peluncuran produk yang dibangun untuk menguji suatu konsep atau
proses atau untuk bertindak sebagai sesuatu yang harus direplikasi atau belajar
dari. Ini adalah istilah yang digunakan dalam
berbagai konteks, termasuk semantic, desain
, elektronik, dan perangkat lunak pemrograman .
Sebuah prototipe dirancang untuk
menguji dan percobaan desain baru untuk meningkatkan presisi oleh analis sistem
dan pengguna.
Prototyping berfungsi untuk memberikan spesifikasi untuk
nyata, sistem bekerja daripada yang teoritis. Pada beberapa model alur kerja,
menciptakan prototipe (proses materialisasi kadang-kadang disebut)
adalah langkah antara formalisasi dan evaluasi dari ide.
Kelebihan :
1. Adanya komunikasi yang baik antara pengem bang dan
pelanggan
2. Pengembang dapat bekerja lebih baik dalam menentukan
kebutuhan pelanggan
3. Pelanggan berperan a ktif dalam pengembangan system
4. Lebih menghemat waktu dalam pengembangan system
5. Penerapan menjadi lebih mudah karena pemakai meng etahui
apa yang diharapkannya.
Kekurangan
1. Pelanggan kadang tidak melihat atau menyadari bahwa
perangkat lunak yang ada belum mencantumkan kualitas perangkat lunak secara
keseluruhan dan juga belummemikirkan
kemampuan pemeliha raan untuk jangja waktu lama.
2. Pengembang biasanya ingin cepat menyelesaikan proyek.
Sehingga menggunakan algoritma dan
prototyping lebihcepat selesai tanpa memikirkan lebih lanjut
bahwa program tersebut bahasa pemrograman yang sederhana untuk membuat hanya
merupakan cetak biru sistem
3. Hubungan pelanggan dengan komputer yang disediakan
mungkin tidak mencerminkan
teknik
perancangan yang baik.
~ TRANSFORMASI FORMAL
Transformasi formal
adalah transformasi
spesifikasi secara matematik melalui representasi yang berbeda untuk
suatu program yang dapat dieksekusi, Transformasi formal digunakan untuk
mengembangkan bagian bagian sistem yangmemiliki persyaratan keselamatan
yang tinggi dan pendekatan reuse digunakan untuk pengimplementasian
bagian bagian lain dari sistem data manajemen.
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. Pendekatan
ini berdasarkan pembuatan spesifikasi sistem
formal secara matematik dan transformasi
spesifikasi dengan menggunakan metode matematik atau dengan suatu program.
Transformasi iniadalah correctness preserving, ini berarti bahwa kita dapat yakin program yang dikembangkan sesuai dengan spesifikasi. Pengembangan
sistem formal menggunakan suatu model sistem matematika yangditransformasikan
ke implementasi,
Pengembangan sistem formal
merupakan pendekatan terhadap pengembangan perangkat
lunak yang memiliki kesamaan dengan model
air terjun, tetapi proses pengembangannya
didasarkan pada transformasi matematis dari
spesifikasi sistem menjadi program yang dapat
dijalankan
Kelebihan
dan Kekurangan Transformasi formal
Kelebihan Transformasi formal
adalah;
1. mengurangi jumlah kesalahan
pada sistem sehingga penggunaan
utamanya adalah pada sistem yang
kritis
2. efektif dalam segi biaya
3. Memiliki risiko lebih rendah
terhadap keseluruhan pengembagan sistem,
Kekurangan Transformasi formal
adalah;
1. Metode ini mempunyai
keterbatasan dalam Pemakaiannya
2. Memerlukan keahlian khusus dan
pelatihan untuk Mengaplikasikannya
3. Memerlukan keahlian khusus dan
pelatihan untuk Mengaplikasikannya
4. Memerlukan tingkat kerahasian
dan keamanan yang tinggi sebelum digunakan
~ Rapid application development
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.
PENERAPAN
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.
~ incremental
Incremental adalah menggabungkan
elemen-elemen model sekuensial linier (diimplementasikan secara berulang)
dengan filosofi prototype interatif. Model ini memakai urutan-urutan linier di
dalam model yang membingungkan, seiring dengan laju waktu kalender. Setiap
urutan linier
menghasilkan pertambahan perangkat lunak
yang kemudian dapat disampaikan kepada pengguna
Model proses incremental tersebut, seperti model prototype dan pendekatan-pendekatan evolusioner yang lain, bersifat iterative. Tetapi tidak seperti model prototype, model pertambahan berfokus pada penyampaian produk operasional dalam setiap pertambahannya. Pertambahan awal ada di versi stripped down dari produk akhir, tetapi memberikan kemampuan untuk melayani pemakai dan juga menyediakan platform untuk evaluasi oleh pemakai
Kelebihan model increment :
· Cocok digunakn 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.
Kelebihan Penggunaan Incremental
Model :
• Merupakan model dengan
manajemen yang sederhana
• Pelanggan tidak perlu menunggu sampai seluruh system dikirim untuk mengambil keuntungan dari system tersebut. Inkremen yang pertama sudah memenuhi persyaratan mereka yang paling kritis, sehingga perangkat lunak dapat segera digunakan.
• Pelanggan dapat memakai inkremen yang pertama sebagai bentuk prototype dan mendapatkan pengalaman yang dapat menginformasikan persyaratan untuk inkremen system berikutnya
• Resiko untuk kegagalan proyek secara keseluruhan lebih rendah. Walaupun masalah dapat ditemukan pada beberapa inkremen, bias saja beberapa inkremen diserahkan dengan sukses kepada pelanggan.
• Karena layanan dengan prioritas tertinggi diserahkan pertama dan inkremen berikutnya diintegrasikan dengannya, sangatlah penting bahwa layanan system yang paling penting mengalami pengujian yang paling ketat. Ini berarti bahwa pelanggan akan memiliki kemungkinan kecil untuk memenuhi kegagalan perangkat lunak pada inkremen system yang paling kecil.
Kekurangan Penggunaan Incremental
Model :
• Inkremen harus relative lebih kecil
(tidak lebih dari 20.000 baris kode) dan setiap inkremen harus menyediakan
sebagian dari fungsional system.
• Adanya kesulitan untuk memetakan persyaratan pelanggan pada inkremen dengan ukuran yang benar
Model Spiral
Model ini cukup baru ditemukan,yaitu
tahun 1988 oleh Barry Boehm. Spiral adalah salah satu bentuk evolusi yang
menggunakan metode iterasi natural yang dimiliki oleh model prototyping dan
digabungkan dengan aspek sistematis yang dikembangkan model waterfall.
Kelebihan model Spiral :
- Dapat disesuaikan agar perangkat lunak bisa dipakai selama hidup perangkat lunak komputer.
- 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 .
Kelemahan model Spiral :
- Sulit untuk menyakinkan pelanggan bahwa pendekatan evolusioner ini bisa dikontrol.
- Memerlukan penaksiran resiko yang masuk akal dan akan menjadi masalah yang serius jika resiko mayor tidak ditemukan dan diatur.
- Butuh waktu lama untuk menerapkan paradigma ini menuju kepastian yang absolute
~ Fourth
Generation Technique (4GT)
Fourth
Generation Technique (4GT) adalah meliputi seperangkat peralatan software yang
memungkinkan seorang developer software menerapkan beberapa karakteristik
software pada tingkat yang tinggi, yang kemudian menghasilkan source code dan
object code secara otomatis sesuai dengan spesifikasi yang ditentukan
developer.
Saat ini peralatan / tools 4GT adalah bahasa
non prosedur untuk :
· DataBase Query
· Pembentukan laporan ( Report Generation )
· Manipulasi data
· Definisi dan interaksi layar (screen)
· Pembentukan object dan source ( Object and source
generation )
· Kemampuan grafik yang tinggi, dan
· Kemampuan
spreadsheet
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.
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.
No comments:
Post a Comment