dwi h (09)

28
WATERFALL & PROTOTYPING

Upload: dwiharyani-dwiharyani

Post on 16-Apr-2017

93 views

Category:

Software


0 download

TRANSCRIPT

Page 1: Dwi h (09)

WATERFALL & PROTOTYPING

Page 2: Dwi h (09)

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).

Sejarah Model Waterfall

Page 3: Dwi h (09)

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.

Waterfall

Page 4: Dwi h (09)

Berikut adalah Gambar dan penjelasan dari tahap-tahap yang dilakukan di dalam model ini menurut Pressman:

Page 5: Dwi h (09)

🔰 Penjelasan :

System / Information Engineering and Modeling. Permodelan ini diawali dengan

mencari kebutuhan dari keseluruhan sistem yang akan diaplikasikan ke dalam bentuk

software. Hal ini sangat penting, mengingat software harus dapat berinteraksi dengan

elemen-elemen yang lain seperti hardware, database, dsb. Tahap ini sering disebut

dengan Project Definition.

Page 6: Dwi h (09)

Next 👉

Software Requirements Analysis. Proses pencarian kebutuhan diintensifkan dan

difokuskan pada software. Untuk mengetahui sifat dari program yang akan dibuat, maka

para software engineer harus mengerti tentang domain informasi dari software, misalnya

fungsi yang dibutuhkan, user interface, dsb. Dari 2 aktivitas tersebut (pencarian

kebutuhan sistem dan software) harus didokumentasikan dan ditunjukkan kepada

pelanggan.

Page 7: Dwi h (09)

Next 👉

Design. Proses ini digunakan untuk mengubah kebutuhan-kebutuhan diatas menjadi

representasi ke dalam bentuk “blueprint” software sebelum coding dimulai. Desain

harus dapat mengimplementasikan kebutuhan yang telah disebutkan pada tahap

sebelumnya. Seperti 2 aktivitas sebelumnya, maka proses ini juga harus

didokumentasikan sebagai konfigurasi dari software.

Page 8: Dwi h (09)

Next 👉

Coding. Untuk dapat dimengerti oleh mesin, dalam hal ini adalah komputer, maka desain

tadi harus diubah bentuknya menjadi bentuk yang dapat dimengerti oleh mesin, yaitu ke

dalam bahasa pemrograman melalui proses coding. Tahap ini merupakan implementasi

dari tahap design yang secara teknis nantinya dikerjakan oleh programmer.

Page 9: Dwi h (09)

Next 👉

Testing / Verification. Sesuatu yang dibuat haruslah diujicobakan. Demikian juga dengan

software. Semua fungsi-fungsi software harus diujicobakan, agar software bebas dari

error, dan hasilnya harus benar-benar sesuai dengan kebutuhan yang sudah didefinisikan

sebelumnya.

Page 10: Dwi h (09)

Next 👉

Maintenance. Pemeliharaan suatu software diperlukan, termasuk di dalamnya adalah

pengembangan, karena software yang dibuat tidak selamanya hanya seperti itu. Ketika

dijalankan mungkin saja masih ada errors kecil yang tidak ditemukan sebelumnya, atau

ada penambahan fitur-fitur yang belum ada pada software tersebut. Pengembangan

diperlukan ketika adanya perubahan dari eksternal perusahaan seperti ketika ada

pergantian sistem operasi, atau perangkat lainnya.

Page 11: Dwi h (09)

Dalam model ini terdapat beberapa sifat-sifat yang menojol dan cenderung menjadi

permasalahan pada model waterfall.

🔰 Karakteristik

Ketika problem muncul, maka proses berhenti karena tidak dapat menuju

ke tahapan selanjutnya.

Karena pendekatannya secara sequential, maka setiap tahap harus

menunggu hasil dari tahap sebelumnya.

Page 12: Dwi h (09)

🔰 Mengapa Model ini Sangat Populer ???

Selain karena pengaplikasian menggunakan model ini mudah, kelebihan dari model

ini adalah ketika semua kebutuhan sistem dapat didefinisikan secara utuh, eksplisit, dan

benar di awal project, maka SE dapat berjalan dengan baik dan tanpa masalah.

Meskipun seringkali kebutuhan sistem tidak dapat didefinisikan seeksplisit yang

diinginkan, tetapi paling tidak, problem pada kebutuhan sistem di awal project lebih

ekonomis dalam hal uang (lebih murah), usaha, dan waktu yang terbuang lebih sedikit jika

dibandingkan problem yang muncul pada tahap-tahap selanjutnya.

Page 13: Dwi h (09)

🔰 Kapan Model Waterfall Digunakan ???

Teori-teori lama menyimpulkan ada beberapa hal, yaitu:

1. Ketika semua persyaratan sudah dipahami dengan baik di awal pengembangan.

2. Definisi produk stabil dan tidak ada perubahan saat pengembangan untuk alasan apapun

seperti perubahan eksternal, perubahan tujuan, perubahan anggaran atau perubahan

teknologi. Untuk itu, teknologi yang digunakan pun harus sudah dipahami dengan baik.

Page 14: Dwi h (09)

3. Menghasilkan produk baru, atau versi baru dari produk yang sudah ada. Sebenarnya, jika

menghasilkan versi baru maka sudah masuk incremental development, yang setiap

tahapnya sama dengan Waterfall kemudian diulang-ulang.

4. Porting produk yang sudah ada ke dalam platform baru.

Next 👉

Page 15: Dwi h (09)

🔰 Keuntungan 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

Page 16: Dwi h (09)

🔰 Kelemahan dari Model Waterfall

Waktu pengembangan lama. hal ini dikarenakan input tahap berikutnya adalah output dari

tahap sebelumnya.

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.

Page 17: Dwi h (09)

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.

Next 👉

Page 18: Dwi h (09)

PROTOTYPING

Page 19: Dwi h (09)

Prototyping Model Prototyping adalah suatu proses pembuatan software yang yang bersifat berulang dan dengan perencanaan yang cepat yang dimana terdapat umpan balik yang memungkinkan terjadinya perulangan dan perbaikan software sampai dengan software tersebut memenuhi kebutuhan dari si pengguna.

Page 20: Dwi h (09)
Page 21: Dwi h (09)

PROSES – PROSES PROTOTYPING

• Pengumpulan KebutuhanDeveloper dan klien akan bertemu terlebih dahulu dan kemudian menentukan tujuan umum, kebutuhan yang diketahui dan gambaran bagian-bagian yang akan dibutuhkan berikutnya.

• PerancanganPerancangan dilakukan dengan cepat dan rancangan tersebut mewakili semua aspek software yang diketahui, dan rancangan ini menjadi dasar pembuatan prototype.

• Evaluasi Prototype Client akan mengevaluasi prototype yang dibuat dan digunakan untuk memperjelas kebutuhan software.• Pengguna Selanjutnya

Page 22: Dwi h (09)

Tahapan – Tahapan Protyping • Pengumpulan kebutuhan Pelanggan dan pengembang bersama-sama mendefinisikan format dan kebutuhan kesseluruhan perangkat lunak, mengidentifikasikan semua kebutuhan, dan garis besar sistem yang akan dibuat.

• Membangun prototypingMembangun prototyping dengan membuat perancangan sementara yang berpusat pada penyajian kepada pelanggan (misalnya dengan membuat input dan contoh outputnya).

• Evaluasi protoptypingEvaluasi ini dilakukan oleh pelanggan apakah prototyping yang sudah dibangun sudah sesuai dengan keinginan pelanggan. Jika sudah sesuai maka langkah keempat akan diambil. Jika tidak, maka prototyping diperbaiki dengan mengulang langkah 1, 2 , dan 3.

Page 23: Dwi h (09)

• Mengkodekan systemDalam tahap ini prototyping yang sudah disepakati diterjemahkan ke dalam bahasa pemrograman yang sesuai.

• Menguji systemSetelah sistem sudah menjadi suatu perangkat lunak yang siap pakai, harus dites dahulu sebelum digunakan. Pengujian ini dilakukan dengan White Box, Black Box, Basis Path, pengujian arsitektur dan lain-lain.

• Evaluasi SistemPelanggan mengevaluasi apakah sistem yang sudah jadi sudah sesuai dengan yang diharapkan . Jika sudah, maka langkah ketujuh dilakukan, jika belum maka mengulangi langkah 4 dan 5.

• Menggunakan systemPerangkat lunak yang telah diuji dan diterima pelanggan siap untuk digunakan.

Page 24: Dwi h (09)

JENIS – JENIS PROTYPING• Feasibility prototyping.

Digunakan untuk menguji kelayakan dari teknologi yang akan digunakan untuk system informasi yang akan disusun.

Requirement prototyping.

Digunakan untuk mengetahui kebutuhan aktivitas bisnis user. • Desain Prototyping.

Digunakan untuk mendorong perancangan system informasi yang akan digunakan.• Implementation prototyping

Merupakan lanjutan dari rancangan protipe, prototype ini langsung disusun sebagai suatu system informasi yang akan digunakan.

Page 25: Dwi h (09)

TEKNIK – TEKNIK PROTOTYPING

• Perancangan Model. • Perancangan Dialog. • Simulasi.

Page 26: Dwi h (09)

Keunggulan metode prototyping :

• Adanya komunikasi baik antara pengembang dengan pelanggan.• Pengembang dapat bekerja lebih baik untuk memenuhi

kebutuhan pelanggan.• Pelanggan berperan aktif dalam pengembangan sistem.• Menghemat waktu dalam pengembangannya.• Penerapan lebih mudah karena pemakai akan mengetahui

apa yang diharapkan.

Page 27: Dwi h (09)

 Kelemahan metode prototyping :

• Kualitas sistem kurang baik karena hanya mengedepankan aspek kenyamanan user.• Pengembang kadang-kadang menggunakan implementasi

yang sembarangan.• Tidak mencerminkan proses perancangan yang baik.

Page 28: Dwi h (09)

Sekian!!!