Makalah V - Model
Rekayasa Perangkat Lunak
Di Susun Oleh :
Wildan Rosikh Kurniawan (131080200193)
Heri Sugiono (131080200272)
UNIVERSITAS MUHAMMADIYAH SIDOARJO
2015
BAB I
V - MODEL
Model V
Model ini merupakan perluasan dari model waterfall.
Disebut sebagai perluasan karena tahap-tahapnya mirip dengan yang yang dalam
model waterfall. Jika dalam model waterfall proses dijalankan secara linier,
maka dalam model V proses dalikukan bercabang dalam model V ini digambarkan
hubungan antara tahap pengembangan software dengan tahap pengujiannya.
Bisa dikatakan model ini merupakan perluasan dari
model waterfall. Disebut sebagai perluasan karena tahap-tahapnya mirip dengan
yang terdapat dalam model waterfall. Jika dalam model waterfall proses
dijalankan secara linear, maka dalam model V proses dilakukan bercabang. Dalam
model V ini digambarkan hubungan antara tahap pengembangan software dengan
tahap pengujiannya.
Berikut
penjelasan masing-masing tahap beserta tahap pengujiannya:
1. Requirement Analysis & Acceptance Testing
Tahap Requirement Analysis sama seperti yang terdapat dalam model
waterfall. Keluaran dari tahap ini adalah dokumentasi kebutuhan pengguna.
Acceptance Testing merupakan tahap yang akan mengkaji apakah dokumentasi yang dihasilkan tersebut dapat diterima oleh para pengguna atau tidak.
2. System Design & System Testing
Acceptance Testing merupakan tahap yang akan mengkaji apakah dokumentasi yang dihasilkan tersebut dapat diterima oleh para pengguna atau tidak.
2. System Design & System Testing
Dalam tahap ini analis sistem mulai merancang sistem dengan mengacu pada
dokumentasi kebutuhan pengguna yang sudah dibuat pada tahap sebelumnya.
Keluaran dari tahap ini adalah spesifikasi software yang meliputi organisasi
sistem secara umum, struktur data, dan yang lain. Selain itu tahap ini juga
menghasilkan contoh tampilan window dan juga dokumentasi teknik yang lain
seperti Entity Diagram dan Data Dictionary.
3. Architecture Design & Integration Testing
3. Architecture Design & Integration Testing
Sering juga disebut High Level Design. Dasar dari pemilihan arsitektur
yang akan digunakan berdasar kepada beberapa hal seperti: pemakaian kembali
tiap modul, ketergantungan tabel dalam basis data, hubungan antar interface,
detail teknologi yang dipakai.
4. Module Design & Unit Testing
Sering juga disebut sebagai Low Level Design. Perancangan dipecah menjadi modul-modul yang lebih kecil. Setiap modul tersebut diberi penjelasan yang cukup untuk memudahkan programmer melakukan coding. Tahap ini menghasilkan spesifikasi program seperti: fungsi dan logika tiap modul, pesan kesalahan, proses input-output untuk tiap modul, dan lain-lain.
5. Coding
4. Module Design & Unit Testing
Sering juga disebut sebagai Low Level Design. Perancangan dipecah menjadi modul-modul yang lebih kecil. Setiap modul tersebut diberi penjelasan yang cukup untuk memudahkan programmer melakukan coding. Tahap ini menghasilkan spesifikasi program seperti: fungsi dan logika tiap modul, pesan kesalahan, proses input-output untuk tiap modul, dan lain-lain.
5. Coding
Dalam tahap ini dilakukan pemrograman terhadap setiap modul yang sudah
dibentuk.
V Model memiliki beberapa kelebihan. Kelebihan-kelebihan tersebut secara
garis besar dapat dijelaskan seperti berikut:
a.
V Model
sangat fleksibel. V Model mendukung project tailoring dan penambahan dan
pengurangan method dan tool secara dinamik. Akibatnya sangat mudah untuk
melakukan tailoring pada V Model agar sesuai dengan suatu proyek tertentu dan
sangat mudah untuk menambahkan method dan tool baru atau menghilangkan method
dan tool yang dianggap sudah obsolete.
b.
V Model
dikembangkan dan di-maintain oleh publik. User dari V Model berpartisipasi
dalam change control board yang memproses semua change request terhadap V
Model.
c.
V Model juga
memiliki beberapa kekurangan. Kekurangan-kekurangan tersebut yaitu:
d.
V Model
adalah model yang project oriented sehingga hanya bisa digunakan sekali dalam
suatu proyek.
e.
V Model
terlalu fleksibel dalam arti ada beberapa activity dalam V Model yang
digambarkan terlalu abstrak sehingga tidak bisa diketahui dengan jelas apa yang
termasuk dalam activity tersebut dan apa yang tidak.
Kelebihan Dan Kekurangan Model Proses Pada Rekayasa
Perangkat Lunak
Prespective
model adalah model proses dasar yang dipakai seperti dengan aturan-aturan yang
ditentukan agar dapat menghindari kesalahan dalam jadwal kegiatan kerja. Tetapi
pada kenyataannya bahwa setiap proyek memiliki keadaan, situasi, dan kondisi
yang berbeda dan akan sangat sulit jika hanya memiliki acuan terhadap aturan -
aturan yang ditentukan sebelum proyek mulai dikerjakan.
Ada beberapa
Prespective model, diantaranya adalah :
Waterfall
model adalah model yang melakukan pendekatan pada perkembangan perangkat lunak
secara seistematik dan sekuensial. Yang artinya kegiatan pada model ini
dilakukan secara terurut berdasarkan panduan proses mulai dari komunikasi
kepada client atau pelanggan sampai dengan aktifitas sampai pengorderan setelah
masalah dipahami secara lengkap dan berjalan stabil sampai selesai.
Ada 2
fase-fase dalam Waterfall model :
1. Menurut referensi Pressma

2. Menurut referensi Sommerville
Kedua fase-fase menggunakan nama yang berbeda pada tiap fasenya, tetapi pada dasarnya inti dari kedua fase-fase tersebut adalah sama. Tahapan-tahapan yang sering dijumpai adalah menurut refrensi dari Sommerville karena lebih terperinci perbedaan pada tiap fasenya.
a. Requirements definition
b. System and software design
c. Implementation and unit testing
d. Integration and system testing
e. Operation and maintenance
Kelebihan Waterfall Model :
- 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
Waterfall model :
- Waterfall model bersifat kaku
sehingga sulit untuk melakukan perubahan pada sistem perangkat lunak.
- Terjadinya pembagian proyek
menjadi tahap-tahap yang tidak fleksibel, karena komitmen harus dilakukan
pada tahap awal proses.
- 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.
Pemakaian
Waterfall model : Waterfall
model digunakan untu pembuatan sistem perangkat lunak yang berukuran besardan
pembuatannya secara terpisah.
2. Model V / V-Model.
Bisa
dikatakan model ini merupakan perluasan dari model waterfall. Disebut sebagai
perluasan karena tahap-tahapnya mirip dengan yang terdapat dalam model
waterfall. Jika dalam model waterfall proses dijalankan secara linear, maka
dalam model V proses dilakukan bercabang. Dalam model V ini digambarkan
hubungan antara tahap pengembangan software dengan tahap pengujiannya.
Kelebihan v model :
- V Model sangat fleksibel. V
Model mendukung project tailoring dan penambahan dan pengurangan method
dantool secara dinamik. Akibatnya sangat mudah untuk melakukan tailoring
pada V Model agar sesuai dengan suatu proyek tertentu dan sangat mudah
untuk menambahkan method dan tool baru atau menghilangkan method dan tool
yang dianggap sudah obsolete.
- V Model dikembangkan dan
di-maintain oleh publik. Userdari V Model berpartisipasi dalam change
control boardyang memproses semua change request terhadap V Model.
Kekurangan v model :
- V Model adalah model yang
project oriented sehingga hanya bisa digunakan sekali dalam suatu proyek.
- V Model terlalu fleksibel dalam
arti ada beberapa activitydalam V Model yang digambarkan terlalu abstrak
sehingga tidak bisa diketahui dengan jelas apa yang termasuk dalamactivity
tersebut dan apa yang tidak.
3. Incremental Model.
Dalam model Incremental ini proses
pengerjaan perangkat lunak akan dilakukan perbagian sehingga bagian selanjutnya
akan dikerjakan setelah bagian awal telah selesai dan selanjutnya sampai
menghasilkan perangkat lunak yang lengkap dengan semua fungsi yang diperlukan
dan pengerjaan perangkat lunak berakhir. Sebelum pengerjaan perangkat lunak
akan dilakukan perancangan arsitektur software sebagai kerangka dalam
pengerjaan perbagian.
Kelebihan
incremental model :
- Resiko yang rendah pada
pengembangan sistem.
- Mengutamakan fungsi-fungsi pada
sistem perangkat lunak sehingga kemudahan pemakaian sistem yang paling di
utamakan.
- Tahap awal adalan dasar dari
pembuatan tahap berikutnya (dikerjakan secara terurut).
- Cocok digunakan bila pembuat
software tidak banyak/kekurangan pembuat
- Mampu mengakomodasi perubahan
kebutuhan customer.
- Mengurangi trauma karena
perubahan sistem. Klien dibiasakan perlahan-lahan menggunakan produknya
bagian per bagian.
- Memaksimalkan pengembalian
modal investasi konsumen.
Kekurangan incremental model :
- 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.
- kemungkinan tiap bagian tidak
dapat diintegrasikan.
4. Prototyping Model.
Protoyping Model 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.
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.
- Bisanya kurang fleksible dalam
mengahadapi perubahan.
- Prototype yang dihasilkan tidak
selamanya mudah dirubah
- Pelanggan kadang tidak melihat
atau menyadari bahwa perangkat lunak yang ada belum mencantumkan kualitas
perangkat lunak secara keseluruhan dan juga belum memikirkan kemampuan
pemeliharaan untuk jangja waktu lama.
- Pengembang biasanya ingin cepat
menyelesaikan proyek. Sehingga menggunakan algoritma dan bahasa
pemrograman yang sederhana untuk membuat prototyping lebih cepat selesai
tanpa memikirkan lebih lanjut bahwa program tersebut hanya merupakan cetak
biru sistem.
- Hubungan pelanggan dengan
komputer yang disediakan mungkin tidak mencerminkan teknik perancangan
yang baik.
5. Spiral Model.
Spiral model adalah model proses
yang pendekatannya bersifat realistis pada software besar karena proses dari
awal sampai proses pengiriman dan perbaikan dapat dipahami dnegan baik oleh
clieent dan developer. Model ini mempunyai rangkaian kerja yang iterasi
(peningkatan pada model) awal yang berbentuk prototype dan kemudian iterasi
selanjutnya akan menjadi perkembangan dari model sebelumnya. Model ini dapat
terus digunakan meskipun software sudah dikirimkan karena proses (siklus)dapat
berputar lagi jika ada perubahan pada software sampai tidak ada permintaan
perupbahan pada software oleh client.

Ada 6 pembagian proses pembuatan pada spiral model :
- Komunikasi Pelanggan.
- Perencanaan.
- Analisis resiko.
- Perekayasaan.
- Konstruksi dan Peluncuran.
- Evaluasi Client
Kelebihan model Spiral :
- Setiap tahap pengerjaan dibuat
prototyping sehingga kekurangan dan apa yang diharapkan oleh client dapat diperjelas
dan juga dapat menjadi acuan untuk client dalam mencari kekurangan
kebutuhan.
- Lebih cocok untuk pengembangan
sistem dan perangkat lunak skala besar.
- Dapat disesuaikan agar
perangkat lunak bisa dipakai selama hidup perangkat lunak komputer.
- Pengembang dan pemakai dapat
lebih mudah memahami dan bereaksi terhadap resiko setiap tingkat evolusi
karena perangkat lunak terus bekerja selama proses.
- Menggunakan prototipe sebagai
mekanisme pengurangan resiko dan pada setiap keadaan di dalam evolusi
produk.
- Tetap mengikuti langkah-langkah
dalam siklus kehidupan klasik dan memasukkannya ke dalam kerangka kerja
iteratif.
- Membutuhkan pertimbangan
langsung terhadp resiko teknis sehingga mengurangi resiko sebelum menjadi
permaslahan yang serius.
Kekurangan model Spiral :
- Banyak konsumen (Client) tidak
percaya bahwa pendekatan secara evolusioner dapat dikontrol oleh kedua
pihak. Model spiral mempunyai resiko yang harus dipertimbangkan ulang oleh
konsumen dan developer.
- Memerlukan tenaga ahli untuk
memperkirakan resiko, dan harus mengandalkannya supaya sukses.
- Belum terbukti apakah metode
ini cukup efisien karena usianya yang relatif baru.
- 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.
Kesimpulan :
Dari
beberapa Prespective model yang telah di jabarkan, saya beranggapan spiral
modellah yang paling bagus, spiral model saya pilih mengingat banyaknya kelebihan
pada model ini terutama karena Dapat disesuaikan agar perangkat lunak bisa
dipakai selama hidup perangkat lunak komputer dan cocok untuk perangkat lunak
sekala besar, meskipun model ini memiliki beberapa kekurangan tapi semua
kekurangan tersebut dapat tertutupi dengan besarnya kelebihan yang dimilikinya,
yang antara lain :
- Setiap tahap pengerjaan dibuat
prototyping sehingga kekurangan dan apa yang diharapkan oleh client dapat
diperjelas dan juga dapat menjadi acuan untuk client dalam mencari kekurangan
kebutuhan.
- Lebih cocok untuk pengembangan
sistem dan perangkat lunak skala besar.
- Dapat disesuaikan agar
perangkat lunak bisa dipakai selama hidup perangkat lunak komputer.
- Pengembang dan pemakai dapat
lebih mudah memahami dan bereaksi terhadap resiko setiap tingkat evolusi
karena perangkat lunak terus bekerja selama proses.
- Menggunakan prototipe sebagai
mekanisme pengurangan resiko dan pada setiap keadaan di dalam evolusi
produk.
- Tetap mengikuti langkah-langkah
dalam siklus kehidupan klasik dan memasukkannya ke dalam kerangka kerja
iteratif.
Sumber : www.academia.edu/6539949/Model_V





