1.Waterfall
a.Sejarah
model Waterfall
Nama model ini
sebenarnya adalah “Linear Sequential Model”. Model ini sering disebut dengan “classic
life cycle” atau model waterfall. Model ini pertama kali yang diperkenalkan
oleh Winston Royce sekitar tahun 1970 sehingga sering dianggap kuno, tetapi
merupakan model yang paling banyak dipakai didalam Software Engineering
(SE). Model ini melakukan pendekatan secara sistematis dan berurutan. Disebut
dengan waterfall karena tahap demi tahap yang dilalui harus menunggu selesainya
tahap sebelumnya dan berjalan berurutan.
b.Pengertian
model Waterfall
Waterfall atau
air terjun adalah model yang dikembangkan untuk pengembangan perangkat lunak,
membuat perangkat lunak. model berkembang secara sistematis dari satu
tahap ke tahap lain dalam mode seperti air terjun. Model ini mengusulkan sebuah
pendekatan kepada pengembangan software yang sistematikdan sekuensial yang
mulai dari tingkat kemajuan sistem pada seluruh analisis, desain, kode,
pengujian dan pemeliharaan. Model ini melingkupi aktivitas-aktivitas sebgai
berikut : rekayasa dan pemodelan sistem informasi, analisis kebutuhan, desain,
koding, mengujian dan pemeliharaan.
Model
pengembangan ini bersifat linear dari tahap awal pengembangan system yaitu
tahap perencanaan sampai tahap akhir pengembangan system yaitu tahap
pemeliharaan. Tahapan berikutnya tidak akan dilaksanakan sebelum tahapan
sebelumnya selesai dilaksanakan dan tidak bisa kembali atau mengulang ke tahap
sebelumnya.
c.Tahapan model
Waterfall
Ini adalah
gambar tahapan atau fase yang paling umum tentang model waterfall
1. Requirement
Analysis
Seluruh kebutuhan software harus bisa didapatkan dalam fase ini, termasuk di dalamnya kegunaan software yang diharapkan pengguna dan batasan software. Informasi ini biasanya dapat diperoleh melalui wawancara, survey atau diskusi. Informasi tersebut dianalisis untuk mendapatkan dokumentasi kebutuhan pengguna untuk digunakan pada tahap selanjutnya.
Seluruh kebutuhan software harus bisa didapatkan dalam fase ini, termasuk di dalamnya kegunaan software yang diharapkan pengguna dan batasan software. Informasi ini biasanya dapat diperoleh melalui wawancara, survey atau diskusi. Informasi tersebut dianalisis untuk mendapatkan dokumentasi kebutuhan pengguna untuk digunakan pada tahap selanjutnya.
2. System
Design
Tahap ini dilakukan sebelum melakukan coding. 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.
Tahap ini dilakukan sebelum melakukan coding. 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 yang nantinya akan digabungkan dalam tahap berikutnya. Selain itu dalam tahap ini juga dilakukan pemeriksaaan terhadap modul yang dibuat, apakah sudah memenuhi fungsi yang diinginkan atau belum.
Dalam tahap ini dilakukan pemrograman. Pembuatan software dipecah menjadi modul-modul kecil yang nantinya akan digabungkan dalam tahap berikutnya. Selain itu dalam tahap ini juga dilakukan pemeriksaaan terhadap modul yang dibuat, apakah sudah memenuhi fungsi yang diinginkan atau belum.
4. Integration
& Testing
Di tahap ini dilakukan penggabungan modul-modul yang sudah dibuat dan dilakukan pengujian ini dilakukan untuk mengetahui apakah software yang dibuat telah sesuai dengan desainnya dan masih terdapat kesalahan atau tidak.
Di tahap ini dilakukan penggabungan modul-modul yang sudah dibuat dan dilakukan pengujian ini dilakukan untuk mengetahui apakah software yang dibuat telah sesuai dengan desainnya dan masih terdapat kesalahan atau tidak.
5. Operation
& Maintenance
Ini merupakan tahap terakhir dalam model waterfall. Software yang sudah jadi dijalankan serta dilakukan pemeliharaan. Pemeliharaan termasuk dalam memperbaiki kesalahan yang tidak ditemukan pada langkah sebelumnya. Perbaikan implementasi unit sistem dan peningkatan jasa sistem sebagai kebutuhan baru.
Ini merupakan tahap terakhir dalam model waterfall. Software yang sudah jadi dijalankan serta dilakukan pemeliharaan. Pemeliharaan termasuk dalam memperbaiki kesalahan yang tidak ditemukan pada langkah sebelumnya. Perbaikan implementasi unit sistem dan peningkatan jasa sistem sebagai kebutuhan baru.
d. Kelebihan dari model Waterfall
· 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
e. Kekurangan
dari model Waterfall
·
Waktu pengembangan lama. hal ini dikarenakan input
tahap berikutnya adalah
output dari tahap sebelumnya. Jika satu tahap waktunya molor, maka
waktu keseluruhan pengembangan juga ikut molor.
·
Biaya juga mahal, hal ini juga dikarenakan waktu
pengembangan yang lama
·
Terkadang perangkat lunak yang dihasilkan tidak akan
digunakan karena sudah tidak sesuai dengan requirement bisnis customer. hal ini
juga dikarenakan waktu
pengembangan yang lama. selain itu dikarenakan waterfall merupakan aliran
yang linear, sehingga jika requirement berubah proses tidak dapat diulang lagi.
·
Karena tahap-tahapan pada waterfall tidak dapat
berulang, maka model ini tidak
cocok untuk pemodelan pengembangan sebuah proyek yang memiliki kompleksitas
tinggi.
·
Meskipun waterfall memiliki banyak kelemahan yang
dinilai cukup fatal, namun
model ini merupakan dasar bagi model-model lain yang dikembangkan
setelahnya
.
2.RAD (Rapid
Application Development)
a. Pengertian
RAD (Rapid Application Development)
Rapid Application Development (RAD)
adalah sebuah model proses perkembangan software sekuensial linier yang
menekankan siklus perkembangan yang sangat pendek. Model RAD ini merupakan
sebuah adaptasi “kecepatan tinggi” dari model sekuensial linier di mana
perkembangan cepat dicapai dengan menggunakan pendekatan kontruksi berbasis
komponen. Jika kebutuhan dipahami dengan baik, proses RAD memungkinkan tim
pengembangan menciptakan “sistem fungsional yang utuh” dalam periode waktu yang
sangat pendek (kira-kira 60 sampai 90 hari). Karena dipakai terutama pada
aplikasi sistem konstruksi, pendekatan RAD melingkupi fase – fase sebagai
berikut : bussiness modeling, data modeling, process modeling, application
generation dan testing and turnover.
b. Tahapan dari RAD (Rapid Application
Development) model
1. Bussiness
Modeling.
Fase ini untuk mencari aliran
informasi yang dapat menjawab pertanyaan berikut:
Informasi apa yang menegndalikan
proses bisnis?
Informasi apa yang dimunculkan?
Di mana informasi digunakan ?
Siapa yang memprosenya ?
2. Data
Modeling.
Aliran informasi yang didefinisikan
sebagai bagian dari fase bussiness modeling disaring ke dalam serangkaian objek
data yang dibutuhkan untuk menopang bisnis tersebut. Karakteristik (atribut)
masing-masing objek diidentifikasi dan hubungan antar objek-objek tersebut
didefinisikan.
3. Proses
Modeling.
Aliran informasi yang didefinisikan di
dalam fase data modeling ditransformasikan untuk mencapai aliran informasi yang
perlu bagi implementasi sebuah fungsi bisnis. Gambaran pemrosesan diciptakan
untuk menambah, memodifikasi, menghapus, atau mendapatkan kembali sebuah objek
data.
4. Aplication
Generation.
Selain menggunakan bahasa pemrograman
generasi ketiga, RAD juga memakai komponen program yang telah ada atau
menciptakan komponen yang bisa dipakai lagi. Ala-alat bantu bisa dipakai untuk
memfasilitasi konstruksi perangkat lunak.
5. Testing
dan Turnover.
Karena proses RAD menekankan pada
pemakaian kembali, banyak komponen program telah diuji. Hal ini mengurangi
keseluruhan waktu pengujian. Tetapi komponen baru harus diuji dan semua
interface harus dilatih secara penuh.
c. Keuntungan RAD
Beberapa keuntungan dalam menggunakan
metode RAD adalah sebagai berikut:
- Membeli sistem yang baru memungkinkan untuk lebih menghemat biaya
- Membeli sistem yang baru memungkinkan untuk lebih menghemat biaya
ketimbang
mengembangkan sendiri.
- Proses pengiriman menjadi lebih mudah, hal ini dikarenakan proses pembuatan
- Proses pengiriman menjadi lebih mudah, hal ini dikarenakan proses pembuatan
lebih
banyak menggunakan potongan-potongan script.
- Mudah untuk diamati karena menggunakan model prototype, sehingga user lebih
- Mudah untuk diamati karena menggunakan model prototype, sehingga user lebih
mengerti
akan sistem yang dikembangkan.
- Lebih fleksibel karena pengembang dapat melakukan proses desain ulang pada
- Lebih fleksibel karena pengembang dapat melakukan proses desain ulang pada
saat
yang bersamaan.
- Bisa mengurangi penulisan kode yang kompleks karena menggunakan wizard.
- Keterlibatan user semakin meningkat karena merupakan bagian dari tim secara
- Bisa mengurangi penulisan kode yang kompleks karena menggunakan wizard.
- Keterlibatan user semakin meningkat karena merupakan bagian dari tim secara
keseluruhan.
- Mampu meminimalkan kesalahan-kesalahan dengan menggunakan alat-alat
- Mampu meminimalkan kesalahan-kesalahan dengan menggunakan alat-alat
bantuan
(CASE tools).
- Mempercepat waktu pengembangan sistem secara keseluruhan karena cenderung
- Mempercepat waktu pengembangan sistem secara keseluruhan karena cenderung
mengabaikan
kualitas.
- Tampilan yang lebih standar dan nyaman dengan bantuan software-software
- Tampilan yang lebih standar dan nyaman dengan bantuan software-software
pendukung.
e.Kerugian RAD
e.Kerugian RAD
Beberapa kerugian dalam menggunakan
metode RAD adalah sebagai berikut :
- Dengan melakukan pembelian belum tentu bisa menghemat biaya dibanding-
- Dengan melakukan pembelian belum tentu bisa menghemat biaya dibanding-
kan
dengan mengembangkan sendiri.
- Membutuhkan biaya tersendiri untuk membeli peralatan-peralatan penunjang
- Membutuhkan biaya tersendiri untuk membeli peralatan-peralatan penunjang
seperti
misalnya software dan hardware.
- Kesulitan melakukan pengukuran mengenai kemajuan proses.
- Kurang efisien karena apabila melakukan pengkodean dengan menggunakan
- Kesulitan melakukan pengukuran mengenai kemajuan proses.
- Kurang efisien karena apabila melakukan pengkodean dengan menggunakan
tangan
bisa lebih efisien.
- Ketelitian menjadi berkurang karena tidak menggunakan metode yang formal
- Ketelitian menjadi berkurang karena tidak menggunakan metode yang formal
dalam
melakukan pengkodean.
- Lebih banyak terjadi kesalahan apabila hanya mengutamakan kecepatan diban-
- Lebih banyak terjadi kesalahan apabila hanya mengutamakan kecepatan diban-
dingkan
dengan biaya dan kualitas.
- Fasilitas-fasilitas banyak yang dikurangi karena terbatasnya waktu yang tersedia.
- Sistem sulit diaplikasikan di tempat yang lain.
- Fasilitas yang tidak perlu terkadang harus disertakan, karena menggunakan
- Fasilitas-fasilitas banyak yang dikurangi karena terbatasnya waktu yang tersedia.
- Sistem sulit diaplikasikan di tempat yang lain.
- Fasilitas yang tidak perlu terkadang harus disertakan, karena menggunakan
komponen
yang sudah jadi, sehingga hal ini membuat biaya semakin meningkat.
3.V-Model
a.Sejarah V Model
Pada tahun
1986, Federal Ministry for Defense negara Jerman memulai dua proyek teknologi
informasi. Kedua proyek tersebut adalah software development environment for
information system (SEU-IS) dan software development environment for weapon and
weapon delivery systems (SEU-WS). Dalam pelaksanaan kedua proyek tersebut ada
beberapa goal yang ingin dicapai yaitu:
- Membuat biaya dan proses-proses yang ada pada
seluruh software development
process menjadi jelas.
- Menerapkan minimum standard untuk menjamin kualitas software yang
dihasilkan.
- Melakukan standarisasi dan membuat software development process lebih
- Menerapkan minimum standard untuk menjamin kualitas software yang
dihasilkan.
- Melakukan standarisasi dan membuat software development process lebih
transparan.
V Model dikembangkan
untuk mewujudkan goal di atas. Hal ini disebabkan karena model-model yang ada
pada masa itu dirasa belum sesuai dengan kebutuhan yang ada.
Variant pertama V Model muncul pada tahun 1988 sebagai akibat dari proyek SEU-WS. Lalu pada tahun 1991, variant V Model yang lebih baru muncul karena proyek SEU-IS. Hal ini terus berlangsung. Begitu dirasa adanya kebutuhan untuk melakukan perubahan maka akan dikembangkan variant V Model yang baru.
Variant V Model yang akan dibahas dengan lebih spesifik di sini adalah variant V Model yang dikembangkan pada tahun 1997. Variant V Model ini muncul karena adanya perkembangan pada software development process (misal: object orientation).
Variant pertama V Model muncul pada tahun 1988 sebagai akibat dari proyek SEU-WS. Lalu pada tahun 1991, variant V Model yang lebih baru muncul karena proyek SEU-IS. Hal ini terus berlangsung. Begitu dirasa adanya kebutuhan untuk melakukan perubahan maka akan dikembangkan variant V Model yang baru.
Variant V Model yang akan dibahas dengan lebih spesifik di sini adalah variant V Model yang dikembangkan pada tahun 1997. Variant V Model ini muncul karena adanya perkembangan pada software development process (misal: object orientation).
b.Pengertian V-Model
Model V ini
merupakan metode lain dimana model ini merupakan perluasan dari model
waterfall. Kenapa disebut 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.
c.Tahapan dari V-Model
Berikut
penjelasan masing-masing tahap beserta tahap pengujiannya:
1. Requirement Analysis & Acceptance Testing
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.
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.
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
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.
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.
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 :V Model sangat fleksibel 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. V Model juga memiliki beberapa kekurangan. V Model adalah model yang project oriented sehingga hanya bisa digunakan sekali dalam suatu proyek.
Dalam tahap ini dilakukan pemrograman terhadap setiap modul yang sudah dibentuk.V Model memiliki beberapa kelebihan :V Model sangat fleksibel 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. V Model juga memiliki beberapa kekurangan. V Model adalah model yang project oriented sehingga hanya bisa digunakan sekali dalam suatu proyek.
d.Kelebihan dari V-Model
- 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.
- 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.
e.Kekurangan dari 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 activity dalam V Model
yang digambarkan terlalu abstrak sehingga tidak bisa diketahui dengan jelas apa
yang termasuk dalam activity tersebut dan apa yang tidak.
4.Simple Interaction Desain Model
a.Pengertian dari Simple Interaction Desain Model
Simple
Interaction Design Model sebagai suatu proses untuk mencapai suatu tujuan
dengan pencarian berbagai solusi melalui ruang lingkup sistem, materi, biaya
dan kemungkinan penyelesaiannya (feasibilitas), sebagai wujud kreativitas dan
pengambilan keputusan untuk menyeimbangkan trade-off. Dan Sebagai representasi
suatu perencanaan pengembangan yang berisikan sekumpulan elaborasi alternatif
dan suksesif.
b.Tahapan dari Simple Interaction Design Model
Pada model rancangan interaksi sederhana ini input atau masukan hanya memiliki satu titik. yang mana masukan tersebut diidentifikasikan apakah sesuai dengan kebutuhan, lalu didesain sesuai dengan persyaratan yang telah ditetapkan. Setelah diDesain rancangan tersebut dibangun dan harus interaktif. Setelah itu barulah rancangan tersebut dievaluasi.
Evaluasi dapat dilakukan dimana saja, rancangan yang telah di evakuasi dapat kambali didesain ulang atau apakah rancangan tersebut tidak sesuai dengan kebutuhan user, maka alur tersebut akan terus berputar hingga pada tahap evaluasi tidak lagi terjadi kesalahan, baik dalam penetapan kebutuhan user maupun pendesainannya, sehingga pada tahap evaluasi terciptalah sebuah hasil akhir yang valid.
5.Star Lifecycle Model
a.Tahapan dari Star LifeCycle Model
Dalam Siklus
permodelan ini pengujian dilakukan terus menerus, tidak harus dikahir. Misalnya
dimulai dari menentukan kosep desain (conceptual design) dalam proses ini akan
langsung terjadi evaluasi untuk langsung ternilai apakah sudah sesuai dengan
kebutuhan user, bila belum maka akan terus berulang di evaluasi hingga
benar-benar pas, selanjutnya apabila sudah pas, maka dari tahap evaluasi yang
pertama akan lanjut ke proses yg selanjutnya yakni requirements/specification
yakni memverifikasikan persyaratan rancangan tersebut, dan pada tahap itu juga
langsung terjadi pengevaluasian seperti tahap pertama, dan selanjutnya akan
tetap sama terjadi pada tahapan-tahapan selanjutnya yakni task
analysis/fungsion analysis, pengimplementasian, prototyping hingga pada
akhirnya terciptalah sebuah aplikasi yang sesuai dengan kebutuhan user.Intinya
pada rancangan model ini pengevaluasian dilakukan disetiap tahapan tidak hanya
pada tahapan akhir seperti model-model rancangan yang lainnya
Sumber:
-
http://novyinkie.wordpress.com/2013/01/25/penjelasan-dari-macam-macam-model/
- http://samrony.wordpress.com
- http://bluewarrior.wordpress.com/2009/10/12/waterfall-model-vs-v-model/
-
http://hansiaditya.wordpress.com/2007/09/25/waterfall-process-model/
-
http://ayuputrimahadi.blogspot.com/2013/01/tugas-interaksi-manusia-komputer-teori.html
- http://vitategal.blogspot.com/