Model Sekuensial Linier (Waterfall)
Model sekuensial linear disebut juga model waterfall
atau air terjun. Model ini peertama kali muncul pada tahun1970 yang
diperkenalkan oleh WinstonW.Royce. walaupun sudah dikenal dalam waktu yang lama
dan sering di anggap kuno tetapi model ini paling banyak dipakai dalam industri
perangkat lunak .
Model sekuensial linear berisi rangkaian proses yang
disajikan secara terpisah, yaitu analisis
kebutuhan,perancangan,pemgkodean,pemgujian, seta implementasi dan pemeliharaan.
Setelah setiap proses dilakukan, proses tersebut ditutup dan pengembangan
dilanjutkan pada proses berikutnya.
Untuk mengatasi kekurangna-kekurangan tersebut,
dibuatlah model sekuensial linear yang dimodifikasis. Keunggulan model ini
dibandingkan model sekuensial linear biasa adalah model ini memungkinkan
tahap-tahap yang telah dilalui ditinjau kembali sehinnga jika ternyata terjadi
kesalahan atau kekurangan dalam menentukan kebutuhan di tahap awal, bisa
dilakukan perbaikan atau peambahan lagi.
Model sekuensial linier melingkupi aktivitas aktivitas sebagai berikut :
Model sekuensial linier melingkupi aktivitas aktivitas sebagai berikut :
1. Rekayasa dan pemodelan
sistem/informasi
Karena sistem merupakan bagian dari sebuah sistem yang lebih besar, kerja dimulai dengan membangun syarat dari semua elemen sistem dan mengalokasikan beberapa subset dari kebutuhan ke software tersebut. Pandangan sistem ini penting ketika software harus berhubungan dengan elemen-elemen yang lain seperti software, manusia, dan database. Rekayasa dan anasisis system menyangkut pengumpulan kebutuhan pada tingkat sistem dengan sejumlah kecil analisis serta disain tingkat puncak. Rekayasa informasi mancakup juga pengumpulan kebutuhan pada tingkat bisnis strategis dan tingkat area bisnis.
Karena sistem merupakan bagian dari sebuah sistem yang lebih besar, kerja dimulai dengan membangun syarat dari semua elemen sistem dan mengalokasikan beberapa subset dari kebutuhan ke software tersebut. Pandangan sistem ini penting ketika software harus berhubungan dengan elemen-elemen yang lain seperti software, manusia, dan database. Rekayasa dan anasisis system menyangkut pengumpulan kebutuhan pada tingkat sistem dengan sejumlah kecil analisis serta disain tingkat puncak. Rekayasa informasi mancakup juga pengumpulan kebutuhan pada tingkat bisnis strategis dan tingkat area bisnis.
2. Analisis kebutuhan Software
Proses pengumpulan kebutuhan diintensifkan dan difokuskan, khusunya pada software. Untuk memahami sifat program yang dibangun, analis harus memahami domain informasi, tingkah laku, unjuk kerja, dan interface yang diperlukan. Kebutuhan baik untuk sistem maupun software didokumentasikan dan dilihat lagi dengan pelanggan.
Proses pengumpulan kebutuhan diintensifkan dan difokuskan, khusunya pada software. Untuk memahami sifat program yang dibangun, analis harus memahami domain informasi, tingkah laku, unjuk kerja, dan interface yang diperlukan. Kebutuhan baik untuk sistem maupun software didokumentasikan dan dilihat lagi dengan pelanggan.
3. Desain
Desain software sebenarnya adalah proses multi langkah yang berfokus pada empat atribut sebuah program yang berbeda struktur data, arsitektur software, representasi interface, dan detail (algoritma) prosedural. Proses desain menterjemahkan syarat/kebutuhan ke dalam sebuah representasi software yang dapat diperkirakan demi kualitas sebelum dimulai pemunculan kode. Sebagaimana persyaratan, desain didokumentasikan dan menjadi bagian dari konfigurasi software.
Desain software sebenarnya adalah proses multi langkah yang berfokus pada empat atribut sebuah program yang berbeda struktur data, arsitektur software, representasi interface, dan detail (algoritma) prosedural. Proses desain menterjemahkan syarat/kebutuhan ke dalam sebuah representasi software yang dapat diperkirakan demi kualitas sebelum dimulai pemunculan kode. Sebagaimana persyaratan, desain didokumentasikan dan menjadi bagian dari konfigurasi software.
4. Generasi Kode
Desain harus diterjemahkan kedalam bentuk mesin yang bisa dibaca. Langkah pembuatan kode melakukan tugas ini. Jika desain dilakukan dengan cara yang lengkap, pembuatan kode dapat diselesaikan secara mekanis.
Desain harus diterjemahkan kedalam bentuk mesin yang bisa dibaca. Langkah pembuatan kode melakukan tugas ini. Jika desain dilakukan dengan cara yang lengkap, pembuatan kode dapat diselesaikan secara mekanis.
5. Pengujian
Sekali program dibuat, pengujian program dimulai. Proses pengujian berfokus pada logika internal software, memastikan bahwa semua pernyataan sudah diuji, dan pada eksternal fungsional, yaitu mengarahkan pengujian untuk menemukan kesalahan kesalahan dan memastikan bahwa input yang dibatasi akan memberikan hasil aktual yang sesuai dengan hasil yang dibutuhkan.
Sekali program dibuat, pengujian program dimulai. Proses pengujian berfokus pada logika internal software, memastikan bahwa semua pernyataan sudah diuji, dan pada eksternal fungsional, yaitu mengarahkan pengujian untuk menemukan kesalahan kesalahan dan memastikan bahwa input yang dibatasi akan memberikan hasil aktual yang sesuai dengan hasil yang dibutuhkan.
6. Pemeliharaan
Software akan mengalami perubahan setelah disampaikan kepada pelanggan (perkecualian yang mungkin adalah software yangdilekatkan). Perubahan akan terjadi karena kesalahan kesalahan ditentukan, karena software harus disesuaikan untuk mengakomodasi perubahan perubahan di dalam lingkungan eksternalnya (contohnya perubahan yang dibutuhkan sebagai akibat dari perangkat peripheral atau sistem operasi yang baru), atau karena pelanggan membutuhkan perkembangan fungsional atau unjuk kerja. Pemeliharaan software mengaplikasikan lagi setiap fase program sebelumnya dan tidak membuat yang baru lagi.
Software akan mengalami perubahan setelah disampaikan kepada pelanggan (perkecualian yang mungkin adalah software yangdilekatkan). Perubahan akan terjadi karena kesalahan kesalahan ditentukan, karena software harus disesuaikan untuk mengakomodasi perubahan perubahan di dalam lingkungan eksternalnya (contohnya perubahan yang dibutuhkan sebagai akibat dari perangkat peripheral atau sistem operasi yang baru), atau karena pelanggan membutuhkan perkembangan fungsional atau unjuk kerja. Pemeliharaan software mengaplikasikan lagi setiap fase program sebelumnya dan tidak membuat yang baru lagi.
KEKURANGAN
MODEL SEKUENSIAL LINEAR
1. Masalah
yang kadang terjadi ketika model sekuensial linier diaplikasikan adalah :
Jarang sekali proyek nyata mengikuti aliran sekuensial yang dianjurkan oleh model. Meskipun model linier bisa mengakomodasi iterasi, model ini melakukannya dengan cara tidak langsung. Sebagai hasilnya, perubahan perubahan dapat menyebabkan keraguan pada saat tim proyek berjalan.
Jarang sekali proyek nyata mengikuti aliran sekuensial yang dianjurkan oleh model. Meskipun model linier bisa mengakomodasi iterasi, model ini melakukannya dengan cara tidak langsung. Sebagai hasilnya, perubahan perubahan dapat menyebabkan keraguan pada saat tim proyek berjalan.
2. Kadang kadang sulit bagi pelanggan untuk
menyatakan semua kebutuhannya secara eksplisit. Model linier sekuensial
memerlukan halini dan mengalami kesulitan untuk mengakomodasi
ketidakpastiannatural yang ada pada bagian awal beberapa proyek.
3. Pelanggan
harus bersifat sabar. Sebuah versi kerja dari program program kerja itu tidak
akan diperoleh sampai akhir waktu proyek dilalui. Sebuah kesalahan besar, jika
tidak terdeteksi sampai program yang bekerja tersebut dikaji ulang, bisa menjadi
petaka
4. Pengembang
sering melakukan penundan yang tidak perlu. Sifat alami dari siklus kehidupan
klasik membawa kepada blocking state di mana banyak anggota tim proyek harus
menunggu tim yang lain untuk melengkapi tugas yang saling memiliki
ketergantungan. Blocking state cenderung menjadi lebih lazim pada awal dan
akhir sebuah proses sekuensial linier
KELEBIHAN
MODEL SEKUENSIL LINIER
1. software
yang dikembangkan dengan metode ini biasanya menghasilkan kualitas yang baik.
2. Document pengembangan sistem sangat terorganisir,
karena setiap fase harus terselesaikan dengan lengkap sebelum melangkah ke fase
berikutnya.
Model
Prototype
Prototype adalah sebuah Javascript Framework yang dibuat untuk lebih memudahkan proses dalam membangun aplikasi berbasis web.
Paradigma dari metode prototyping adalah sistem informasi yang menggambarkan hal-hal penting dari sistem informasi yang akan datang. Prototipe sistem informasi bukanlah merupakan sesuatu yang lengkap, tetapi sesuatu yang harus dimodifikasi kembali, dikembangkan, ditambahkan atau digabungkan dengan sistem informasi yang lain bila perlu.
Model ini digunakan jika customer tidak menjelaskan detail kebutuhan input, proses atau output, sehingga developer tidak dapat memastikan algoritma yang akan dipakai, kesesuaian sistem operasi atau bentuk user interface. Prototyping model dimulai dengan mendengarkan kebutuhan user. Engineer dan customer bertemu dan menentukan semua tujuan software dan menentukan kebutuhan-kebutuhan. Developer kemudian membangun prototype dan user menguji coba prototype untuk memberikan feedback. Prototype dapat dijalankan sebagai sistem yang pertama. User bisa mendapatkan pengertian dari sistem yang sesungguhnya dan developer dapat membangun sistem dengan segera. Kekurangan : kontrak akan merugikan, dirugikan oleh keinginan customer yang meminta penambahan-penambahan. Kelebihan : akan mengurangi waktu pembuatan program, kebutuhan customer akan lebih terpenuhi dengan baik, jika kebutuhannya belum jelas, maka dengan prototype akan lebih menguntungkan.
Prototype adalah sebuah Javascript Framework yang dibuat untuk lebih memudahkan proses dalam membangun aplikasi berbasis web.
Paradigma dari metode prototyping adalah sistem informasi yang menggambarkan hal-hal penting dari sistem informasi yang akan datang. Prototipe sistem informasi bukanlah merupakan sesuatu yang lengkap, tetapi sesuatu yang harus dimodifikasi kembali, dikembangkan, ditambahkan atau digabungkan dengan sistem informasi yang lain bila perlu.
Model ini digunakan jika customer tidak menjelaskan detail kebutuhan input, proses atau output, sehingga developer tidak dapat memastikan algoritma yang akan dipakai, kesesuaian sistem operasi atau bentuk user interface. Prototyping model dimulai dengan mendengarkan kebutuhan user. Engineer dan customer bertemu dan menentukan semua tujuan software dan menentukan kebutuhan-kebutuhan. Developer kemudian membangun prototype dan user menguji coba prototype untuk memberikan feedback. Prototype dapat dijalankan sebagai sistem yang pertama. User bisa mendapatkan pengertian dari sistem yang sesungguhnya dan developer dapat membangun sistem dengan segera. Kekurangan : kontrak akan merugikan, dirugikan oleh keinginan customer yang meminta penambahan-penambahan. Kelebihan : akan mengurangi waktu pembuatan program, kebutuhan customer akan lebih terpenuhi dengan baik, jika kebutuhannya belum jelas, maka dengan prototype akan lebih menguntungkan.
Empat langkah yang menjadi karakteristik metode
Prototyping yaitu
1. Pemilihan
fungsi
Mengacu pada pemilahan fungsi yang harus ditampilkan oleh prototyping. Pemilahan harus selalu dilakukan berdasarkan pada tugas-tugas yang relevan yang sesuai dengan contoh: kasus yang akan diperagakan
Mengacu pada pemilahan fungsi yang harus ditampilkan oleh prototyping. Pemilahan harus selalu dilakukan berdasarkan pada tugas-tugas yang relevan yang sesuai dengan contoh: kasus yang akan diperagakan
2. Penyusunan
Sistem Informasi
Bertujuan untuk memenuhi permintaan akan tersedianya prototype
Bertujuan untuk memenuhi permintaan akan tersedianya prototype
3. Evaluasi
4. Penggunaan
Selanjutnya
Tahapan-tahapan
Prototyping
1. Pengumpulan
kebutuhan : Pelanggan dan pengembang bersama-sama mendefinisikan format seluruh
perangkat lunak, mengidentifikasikan semua kebutuhan, dan garis besar sistem
yang akan dibuat.
2. Membangun
prototyping : Membangun prototyping dengan membuat perancangan sementara yang
berfokus pada penyajian kepada pelanggan (misalnya dengan membuat input dan
format output)
3. Evaluasi
prototyping : Evaluasi ini dilakukan oleh pelanggan apakah prototyping yang
sudah dibangun sudah sesuai dengan keinginann pelanggan. Jika sudah sesuai maka
langkah 4 akan diambil. Jika tidak prototyping direvisi dengan mengulangu
langkah 1, 2 , dan 3.
4. Mengkodekan
sistem : Dalam tahap ini prototyping yang sudah di sepakati diterjemahkan ke
dalam bahasa pemrograman yang sesuai
5. Menguji
sistem : Setelah 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
6. Evaluasi
Sistem : Pelanggan mengevaluasi apakah sistem yang sudah jadi sudah sesuai
dengan yang diharapkan . Jika ya, langkah 7 dilakukan; jika tidak, ulangi
langkah 4 dan 5.
7. Menggunakan
sistem : Perangkat lunak yang telah diuji dan diterima pelanggan siap untuk
digunakan.
Jenis-jenis Prototyping
Jenis-jenis Prototyping
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 lanjytan dari rancangan protipe, prototype ini langsung disusun sebagai suatu system informasi yang akan digunakan.
Requirement prototyping digunakan untuk mengetahui kebutuhan aktivitas bisnis user.
Desain Prototyping - digunakan untuk mendorong perancangan system informasi yang akan digunakan.
Implementation prototyping merupakan lanjytan dari rancangan protipe, prototype ini langsung disusun sebagai suatu system informasi yang akan digunakan.
Teknik-teknik Prototyping meliputi
1. Perancangan
Mode
2. Perancangan
Dialog
3. Simulasi
Keunggulan dan Kelemahan Prototyping
Keunggulan Prototyping :
1. End
user dapat berpartisipasi aktif
2. Penentuan
kebutuhan lebih mudah diwujudkan
3. Mempersingkat
waktu pengembangan SI
4. Adanya
komunikasi yang baik antara pengembang dan pelanggan
5. Pengembang
dapat bekerja lebih baik dalam menentukan kebutuhan pelanggan
6. Pelanggan
berperan aktif dalam pengembangan system
7. Lebih
menghemat waktu dalam pengembangan system
8. Penerapan
menjadi lebih mudah karena pemakai mengetahui apa yang diharapkannya.
Kelemahan
Prototyping :
1. Proses
analisis dan perancangan terlalu singkat
2. Mengesampingkan
alternatif pemecahan masalah
3. Bisanya
kurang fleksible dalam mengahadapi perubahan
4. Prototype
yang dihasilkan tidak selamanya mudah dirubah
5. Prototype
terlalu cepat selesai
Tidak ada komentar:
Posting Komentar