You are on page 1of 5

MODEL PROSES SEKUENSIAL LINIER

A. Pengertian Model Proses

Model proses merupakan peta jalan (roadmap) yang sangat berguna


bagi perekayasa perangkat lunak untuk menghasilkan produk yang
berkualitas tinggi. Ada banyak model proses dengan berbagai kelebihan
dan kekurangan masing-masing yang akan dibahas lebih lanjut.
Pengembang sistem memilih suatu model proses untuk mengembangkan
sistem dan mengikutinya. Model proses penting dalam pengembangan
sistem karena akan menyediakan stabilitas, kontrol, dan organisasi
sehingga proses rekayasa perangkat lunak terhindar dari chaos. Model
proses mengarahkan team pengembang perangkat lunak melalui
kerangka kerja yang disusun dalam suatu aliran kerja yang bisa linear,
incremental, atau evolusioner. Terminologi dan detil dari tiap-tiap model
proses bisa berbeda, namun aktivitas framework tetap sama.

B. Model Proses Sekuensial linier

Sekuensial linier, yang sering disebut juga classic life cycle atau waterfall
model, menyampaikan suatu pendekatan yang berurutan untuk
pengembangan perangkat lunak. Pengembangan dimulai dari
perencanaan sistem (rekayasa sistem), analisa kebutuhan, desain,
penulisan program, pengujian dan perawatan sistem. Sekuensial model
adalah paradigma tertua dalam rekayasa perangkat lunak. Namun, pada
dua dekade terakhir dengan banyaknya kritik terhadap model proses ini
telah memunculkan keraguan dari para pengguna model ini mengenai
kehandalan model proses ini.
Adapun tahapan-tahapan prosesnya adalah:

1. Rekayasa dan pemodelan system/informasi (System


Engineering)

Kerja dimulai dengan membangun syarat dari semua elemen sistem


dan mengalokasikan beberapa subset dari kebutuhan ke perangkat
lunak tersebut. Pandangan system ini penting ketika perangkat
lunak harus berhubungan dengan elemen-elemen yang lain seperti
perangkat lunak, manusia, dan database. Rekayasa informasi
mencakup juga pengumpulan kebutuhan pada tingkat bisnis
strategis dan tingkat area bisnis.

2. Analisis kebutuhan perangkat lunak. (Analysis)

Proses pengumpulan kebutuhan diintensifkan dan difokuskan,


khususnya pada perangkat lunak. Untuk memahami sifat program
yang dibangun, perekayasa perangkat lunak (analisis) harus
memahami domain informasi, tingkah laku, unjuk kerja, dan antar
muka (interface) yang diperlukan. Kebutuhan baik untuk system
maupun perangkat lunak didokumentasikan dan dilihat lagi dengan
pelanggan.

3. Desain (Design)

Desain perangkat lunak sebenarnya adalah proses multi langkah


yang berfokus pada empat attribute sebuah program yang berbeda;
strktur data, arsitektur perangkat lunak,representasi interface dan
detail (algoritma) procedural. Proses desain menerjemahkan syarat/
kebutuhan kedalam sebuah representasi perangakat lunak yang
dapat diperkirakan demi kualitas sebelum dimulai pemunculan
kode. Sebagai mana persyaratan, desain didokumentasikan dan
menjadi bagian dari konfigurasi perangkat lunak.

4. Generasi Kode (Coding).

Disain 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 (Testing) .

Sekali kode dibuat, pengujian program dimulai. Proses pengujian


berfokus pada logika internal perangkat lunak, memastikan bahwa
pernyataan sudah diuji, dan pada eksterna fungsional – yaitu
mengarahkan pengujian untuk menemukan keslahan-kesalahan dan
memastikan bahwa input yang dibatasi akan mamberikan hasil
actual yang sesuai dengan hasil yang dibutuhkan.

6. Pemeliharaan (Maintenance).

Perangkat lunak akan mengalami perubahan setelah disampaikan


kepada pelanggan (perkecualian yang mungkin adalah perangkat
lunak yang dilekatkan) perubahan akan terjadi karena kesalahan-
kesalahan ditentukan, karena perangkat lunak harus disesuaikan
untuk mengakomodasi perubahan-perubahan didalam lingkungan
eksternalnya( contohnya perubahan yang dibutuhkan karena
perangkat pheriperal system operasi yang baru), atau karena
pelanggan membutuhkan perkembangan fungsional atau unjuk
kerja. Pemeliharaan perangkat lunak mengaplikasikan lagi setiap
fase program sebelumnya dan tidak membuat yang baru lagi.

C. Kendala Dalam Model Sekuensial Linier

Dalam metode sekuensial ini ternyata dalam


pengimplementasiannya mengalami beberapa kendala, beberapa
diantaranya:
- Proyek-proyek di dunia nyata jarang yang mengikuti alur
berurutan seperti yang dikemukakan model ini. Meskipun iterasi
dapat diakomodasi dalam model linear seperti ini, namun tidak
dilakukan secara langsung. Sebagai akibatnya, perubahan-
perubahan yang terjadi dapat menyebabkan kebingungan bagi
anggota team pengembangan.
- Seringkali pengguna/customer kesulitan menyampaikan
semua kebutuhannya secara jelas. Sedangkan, model ini
mensyaratkan bahwa semua kebutuhan customer harus
disampaikan secara jelas pada tahap awal proyek dikerjakan
- Customer harus memiliki kesabaran, karena hasil proses
pengembangan perangkat lunak tidak segera dapat dilihat oleh
customer.
- Model sekuesial ini bisa membawa kearah ‘blocking state’
atau status terblok. Status terblok ini terjadi dimana beberapa
anggota team harus menunggu anggota lain team ini untuk
menyelesaikan tugas yang ada kaitannya. Dimana, waktu yang
diperlukan untuk menunggu ini bisa melebihi waktu produktif
yang diperlukan untuk mengerjakan tugasnya. Status terblok ini
cenderung terjadi

Contoh kasus
Sebuah perusahaan pemasaran dibidang agribisnis membutuhkan
software yang dapat mengolah data penjualan, distrbusi, suplai, serta hal
yang berhubungan dengan persedian barang. Perusahaan ini telah berdiri
cukup lama dengan pengelolaan administrasi yang cukup baik namun
masih secara secara konvensional. Dalam perkembangannya, sistem
konvensional yang digunakan selama ini tidak mampu lagi mengelola
seluruh urusan serta data yang dibutuhkan dalam pengelolaan
administrasi tersebut. Perusahaan ini berencana akan
mengimplementasikan seluruh kegiatan dan urusan administrasinya ke
dalam sebuah software yang terintegrasi ke seluruh bagian dalam
perusahaan tersebut. Untuk mewujudkan rencana tersebut, perusahaan
itu menawarkan proyek pembuatan software ini kepada konsultan bidang
IT. Pada tahap pertama konsultan yang ditunjuk ini menganalisa dan
mengkaji semua elemen-elemen yang terkait dalam proyek pembuatan
software tesebut. Selanjutnya perusahaan meberikan semua informasi
dan data yang akan digunakan dan dibutuhkan dalam software ini.
Konsultan kemudian menganalisis system database dan mendefinisikan
kebutuhan yang harus dipenuhi oleh system yang akan dibangun. Setelah
seruruh kebutuhan selsai dikumpulkan secara lengkap, maka hal lain yang
sangat penting yang akan dirancang adalah antarmuka dari sebuah
system agar dapat dimplementasikan dengan mudah. Dengan selesainya
pembuatn desain antarmuka dari system tersebut, langkah selnajutnya
konsultan memterjemahkan desain tersebut kedalam coding-coding pada
suatu bahasa pemrograman. Setelah pengkodean selesai maka dilakukan
uji coba terhadap system yang telah dibuat. Bila pada system terjadi
kesalahan maka system yang telah dibuat akan danalisis kembali sampai
pada tahap pengujian. Bila system telah dirasa sempurna dan sesuai
dengan permintaan, maka system diserahkan kepada perusahaan dan
siap diimplementasikan dalam sistem administrasi perusahaan itu. Dalam
perjalanannya, dibutuhkan perawatan terhadap system yang telah
dibangun karena akan ada kemungkinanan perubahan system yang
disebabkan kesalahan-kesalahan yang ditemukan dikumudian hari.

pada tahap awal dan akhir dari model ini:

Model sekuensial linier (clasic life cycle/waterfall model),


terdiri dari tahapan perencanaan sistem (rekayasa sistem), analisa
kebutuhan, desain, penulisan program, pengujian dan perawatan sistem.
Waterfall
• Disebut juga siklus klasik (1970-an) dan
sekarang ini lebih dikenal dengan
sekuensial linier
• Membutuhkan pendekatan sistemstis dan
sekuensial dalam pengembangan s/w
• Dimulai dari analisis, desain, coding,
testing dan pemeliharaan.

Rekayasa sistem & analisa : pembentukan


kebutuhan dari semua elemen sistem dan
menganalisa kebutuhan keinginan user.
Meliputi I/O, waktu pengerjaan , ukuran
dan jumlah data yang ditangani

- Analisa kebutuhan sistem dan perangkat lunak: proses menentukan


arsitektur sistem secara total dan menentukan ukuran data dan
jumlah data
- Design : menentukan dasar-dasar pembentukan dan pemilihan
struktur data,strukrtur program, arsitektur program, pemilihan
algoritma, intereksi dgn user
- Coding, mentrasformasikan desainkedalam baris-baris program,
pemilihan bahasa
- Testing, pengujian kebenaran program,error debugging
- Maintenance, perawatan perangkat lunak agar dapat digunakan
terus.

Kelemahan Waterfall
• Iterasi sering terjadi menyebabkan
masalah baru
• Client kesulitan untuk menyatakan semua
ke inginannya secara eksplisit diawal
tahap pengembangan.
• Hasil s/w yang dikembangkan baru akan
diketahui lama setelah proyek
pengembangan dimulai

You might also like