System Development
Life Cycle (SDLC) adalah pendekatan bertahap untuk melakukan analisa dan
membangun rancangan sistem dengan menggunakan siklus yang spesifik terhadap
kegiatan pengguna (Kendall & Kendall, 2006). System Development Life Cycle
(SDLC) juga merupakan pusat pengembangan sistem informasi yang efisien. SDLC
terdiri dari 4 (empat) langkah kunci yaitu, perencanaan dan seleksi, analisis,
desain, implementasi dan operasional (Valacich, George, & Hoffer, 2012).
Selain itu, System Development Life Cycle (SDLC) adalah sebuah proses memahami
bagaimana Sistem Informasi dapat mendukung kebutuhan bisnis, merancang system,
membangun sistem, dan memberikannya kepada pengguna (Dennis, Wixom, &
Tegarden, 2005).
Berdasarkan
pada penjelasan diatas maka SDLC dapat disimpulkan
SDLC (Systems Development Life Cycle, Siklus
Hidup Pengembangan Sistem) atau Systems Life Cycle (Siklus Hidup Sistem), dalam
rekayasa sistem dan rekayasa perangkat lunak, adalah proses pembuatan dan
pengubahan sistem serta model dan metodologi yang digunakan untuk mengembangkan
sistem-sistem tersebut.
1. Perencanaan
Fase perencanaan
adalah sebuah proses dasar untuk memahami mengapa sebuah sistem harus dibangun.
Pada fase ini diperlukan analisa kelayakan dengan mencari data atau melakukan
proses information gathering kepada pengguna.
2. Analisa
Fase analisa adalah
sebuah proses investigasi terhadap sistem yang sedang berjalan dengan tujuan untuk
mendapatkan jawaban mengenai pengguna sistem, cara kerja sistem dan waktu
penggunaan sistem. Dari proses analisa ini akan didapatkan cara untuk membangun
sistem baru.
3. Rancangan
Fase perancangan
merupakan proses penentuan cara kerja sistem dalam hal architechture design,
interface design, database dan spesifikasi file, dan program design. Hasil dari
proses perancangan ini akan didapatkan spesifikasi system.
4 Implementasi
Fase implementasi
adalah proses pembangunan dan pengujian sistem, instalasi sistem, dan rencana
dukungan sistem.
Dalam pengembangan
system menggunakan SDLC ada beberapa cara untuk mengimplementasinya dengan
metodologi yaitu waterfall model, prototype model, RAD(Rapid Application
Development) model, ASD(Agile Software Development) model. Diantara keempat
model tersebut waterfall, dan prototype adalah model yang paling sering
digunakan dalam pengembangan system. Berikut penjelasannya :
1Waterfall Model
Merupakan model yang
paling banyak dipakai didalam Software Engineering (SE). Model ini melakukan
pendekatan secara sistematis dan urut mulai dari level kebutuhan sistem lalu
menuju ke tahap analisis, desain, coding, testing / verification, dan
maintenance. Disebut dengan waterfall karena tahap demi tahap yang dilalui
harus menunggu selesainya tahap sebelumnya dan berjalan berurutan. Roger S.
Pressman memecah model ini menjadi 6 tahapan, yaitu :
a. Sistem modeling
d. Coding
b. Analisis kebutuhan
software
e. Testing
c. Desain
f. Maintenance
Keuntungan menggunakan teknik waterfall:
- Proses menjadi teratur
- Jadwal menjadi lebih menentu
Kelemahan menggunakan
teknik waterfall:
- Membutuhkan
daftar kebutuhan yang lengkap di awal, tapi jarang konsumen bisa memberikan
kebutuhan secara lengkap diawal
2 Prototype
Prototyping adalah
salah satu pendekatan dalam rekayasa perangkat lunak yang secara langsung
mendemonstrasikan bagaimana sebuah perangkat lunak atau komponen-komponen
perangkat lunak akan bekerja dalam lingkungannya sebelum tahapan konstruksi
aktual dilakukan (Howard, 1997). Beberapa model prototype adalah sebagai
berikut :
- Reusable prototype :
Prototype yang akan ditransformasikan menjadi produk final.
- Throwaway prototype
: Prototype yang akan dibuang begitu selesai menjalankan maksudnya.
- Input/output
prototype : Prototype yang terbatas pada antar muka pengguna (user interface).
- Processing prototype
: Prototype yang meliputi perawatan file dasar dan proses-proses transaksi
- System prototype :
Prototype yang berupa model lengkap dari perangkat lunak.
Proses pada model
prototyping adalah sebagai berikut :
- Pengumpulan
kebutuhan
- Perancangan
- Evaluasi prototype
Keuntungan menggunakan
prototype model, yaitu :
- Prototyping adalah
model aktif, tidak pasif, sehingga end user dapat melihat, merasakan, dan mengalaminya.
- Kesalahan yang
terjadi dalam prototyping dapat dideteksi lebih dini.
Kekurangan menggunakan
prototype model, yaitu :
- Prototyping
tidak menolak kebutuhan dari fase analisis sistem. Prototype hanya dapat
memecahkan masalah yang salah dan memberi
kesempatan sebagai sistem pengembangan konvensional.
- Prototyping dapat
mengurangi kreatifitas perancangan.
3RAD (Rapid Application Development)
Rapid application
development (RAD) atau rapid prototyping adalah model proses pembangunan
perangkat lunak yang tergolong dalam teknik incremental (bertingkat). RAD
menekankan pada siklus pembangunan pendek, singkat, dan cepat. Waktu yang
singkat adalah batasan yang penting untuk model ini. Rapid application
development menggunakan metode iteratif (berulang) dalam mengembangkan sistem
dimana working model (model bekerja) sistem dikonstruksikan di awal tahap
pengembangan dengan tujuan menetapkan kebutuhan (requirement) user. RAD
mengadopsi model waterfall dan pembangunan dalam waktu singkat dicapai dengan
menerapkan component based construction.
4Agile Software Development
Agile merupakan adalah
jenis pegembangan sistem jangka pendek yang memerlukan adaptasi cepat dan
pengembang terhadap perubahan dalam bentuk apapun. Dalam Agile Software
Development interaksi dan personel lebih penting dari pada proses dan alat,
software yang berfungsi lebih penting daripada dokumentasi yang lengkap,
kolaborasi dengan klien lebih penting dari pada negosiasi kontrak, dan sikap
tanggap terhadap perubahan lebih penting daripada mengikuti rencana. Agile juga
dapat diartikan sebagai sekelompok metodologi pengembangan software yang
didasarkan pada prinsip-prinsip yang sama atau pengembangan system jangka
pendek yang memerlukan adaptasi cepat dari pengembang terhadap perubahan dalam
bentuk apapun.
0 komentar:
Posting Komentar