Model Pada Life Cycle Software
Model siklus
pada perangkat lunak sebenarnya sangatlah banyak, namun disini saya akan
menjelaskan beberapa saja diantaranta model Waterfall, V-model, Simple
Interaction Desaign Model, Star Lifecycle Model. Berikut penjelasan dari
masing-masing model yang akan di jelaskan secara berurutan.
Waterfall model pertama kali diperkenalkanoleh Winston Royce
tahun 1970. Waterfall Model merupakan model klasik yang sederhana dengan aliran
sistem yang linier. Output dari setiap tahap merupakan input bagi tahap
berikutnya.
Model ini telah diperoleh dari proses rekayasa lainnya dan
menawarkan cara pembuatan rekayasa perangkat lunak secara lebih nyata.
Model ini melibatkan tim SQA (Software Quantity Assurance) dengan 5 tahapan,
dimana setiap tahapan selalu dilakukan verifikasi atau testing. Tahapan
model waterfall meliputi :
- Requirment
Dalam tahapan ini jasa, kendala dan tujuandari
konsultasi dengan pengguna sistem. Kemudian semuanya dibuat dalam bentuk
yang dapat dimengerti oleh user dan staf pengembang. Dengan kata lain,
dalam tahapn ini dilakukan analisa kebutuhan, kemdian diverifikasi klien dan
tim SQA.
- Specification
Dokumentasi spesifikasi, kemudian diperiksa oleh tim
SQA. Selanjutnya jika disetujui oleh klien, maka dokumen
tersebutmerupakan kontrak kerjaantaraklien dan pengembang s0ftware.
Selanjutnya merencanakan jadwal pengembangan software. Jika disetujui oleh SQA,
tahap desain baru dilakukan.
- Design
Proses design sistem membagi kebutuhan-kebutuhan menjadi
sistem perangkat lunak atau perangkat keras. Proses tersebut menghasilkan
sebuah arsitektur keseluruhan. Desain perangkat lunak termasuk menghasilkan
fungsi sistem perangkatlunak dalam bentuk yang mungkin ditransformasi kedalam
satu atau lebih program yang dapat dijalankan. Tahapan ini telah
menentukan alur software hingga pada tahap algoritma detail. Di akhir
tahap ini, kembali diperksa tim SQA.
- Implementation
Selama tahap ini, desain perangkat lunak disadari sebagai
sebuah program lengkap atau unit program. Desain yang telah disetujui,
diubah dalam bentuk kode-kode program. Tahap ini, kode-kode program yang
dihasilkan masih pada tahap modul-modul. Diakhir tahap ini, tiap modul di
testing tanpa diintegrasikan.
- Integration
Unit program diintegrasikan dandiuji menjadi sistem yang
lengkap untuk meyakinkan bahwa persyaratan perangkat lunak telah
dipenuhi. Setelah uji coba, sistem disampaikan ke konsumen.
- Operation & Maintenace
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.
- Kelebihan Waterfall Model
Kebutuhan sistem dapat didefinisikan secara utuh, eksplisit,
dan
Jika benar diawal proyek, maka software engineering dapat
berjalan dengan baik dan tanpa masalah.
- Kekurangan Waterfall Model
Karena pendekatannya secara sequential, maka setiap tahap
harus menunggu hasil dari tahap sebelumnya. Hal itu tentu membuang waktu yang
cukup lama, artinya bagian lain tidak dapat mengerjakan hal lain selain hanya
menunggu hasil dari tahap sebelumnya. Oleh karena itu, seringkali model
ini berlangsung lama pengerjaannya.
Pada setiap tahap proses tentunya dipekerjakan sesuai
spesialisasinya masing-masing. Oleh karena itu, ketika tahap tersebut sudah
tidak dikerjakan, maka sumber dayanya juga tidak terpakai lagi. Oleh karena
itu, seringkali pada model proses ini dibutuhkan seseorang yang “multi-skilled”,
sehingga minimal dapat membantu pengerjaan untuk tahapan berikutnya.
Ketika problem muncul, maka proses berhenti, karena tidak
dapat menuju ketahapan selanjutnya. Bahkan jika kemungkinan problem tersebut
muncul akibat kesalahan dari tahapan sebelumnya, maka proses harus membenahi
tahapan sebelumnya agar problem ini tidak muncul. Hal-hal seperti ini yang
dapat membuang waktu pengerjaan software engineering.
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.
- 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.
- 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.
- 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.
- 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.
- Coding
Dalam
tahap ini dilakukan pemrograman terhadap setiap modul yang sudah dibentuk.
- Keuntungan V Model
Bahasa yang digunakan untuk merepresentasikan konsep V model
menggunakan bahasa formal. Contoh : dengan menggunakan objek model ataupun
frame-frame • Meminimalisasikan kesalahan pada hasil akhir karena ada test pada
setiap prosesnya
Penyesuaian yang cepat pada projek yang baru
Memudahkan dalam pembuatan dokumen projek
Biaya yang murah dalam perawatan dan modifikasinya
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.
- Kerugian V Model
Aktifitas V-Model hanya difokuskan pada projectnya saja,
bukan pada keseluruhan organisasi. V-Model adalah proses model yang hanya
dikerjakan sekali selama project saja, bukan keseluruhan organisasi.
Prosesnya hanya secara sementara. Ketika project selesai,
jalannya proses model dihentikan. Tidak berlangsung untuk keseluruhan
organisasi.
Metode yang ditawarkan terbatas. Sehingga kita tidak
memiliki cara pandang dari metode yang lain. Kita tidak memiliki kesempatan
untuk mempertimbangkan jika ada tools lain yang lebih baik.
Toolnya tidak selengkap yang dibicarakan. SDE (Software
Development Environment).Tidak ada tools untuk hardware di V-Model. Tool yang
dimaksud adalah “software yang mendukung pengembangan atau pemeliharaan /
modifikasi dari system IT.
V Model adalah model yang project oriented sehingga hanya
bisa digunakan sekali dalam suatu proyek.
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.
3. Simple Interaction Design Model
Langkah-langkah :
- Identifikasi kebutuhan dan persyaratan sistem disini suatu
sistem akan di identifikasi sesuai dengan kebutuhan sistem itu sendiri.
- Pengembangan desain alternatif (desain konseptual dan
fisikal)
- Membuat versi interaktif dari desain yang dihasilkan
- Mengevaluasi desain (usabilitas dan user experience)
- 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.
4. Star Lifecycle Model (Hartson & Hix, 1989)
Dalam Siklus permodelan ini pengujian dilakukan terus
menerus, tidak harus diakhir. Misalnya dimulai dari menentukan konsep 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://stellaoctavius002.blogspot.com/2015/11/model-model-pada-life-cycle-software.html