Apa itu SDLC dan contoh-contohnya. Apa itu SDLC dan contoh-contohnya. 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 sebagai sebuah siklus untuk
membangun sistem dan memberikannya kepada pengguna melalui tahapan perencanaan,
analisa, perancangan dan implementasi dengan cara memahami dan menyeleksi keadaan
dan proses yang dilakukan pengguna untuk dapat mendukung kebutuhan pengguna.
Untuk menggunakan SDLC maka dibutuhkan sumber data awal dari pengguna yang
dijadikan acuan dalam perencanaan, analisa, perancangan dan implementasi.
Penggunaan acuan ini dimaksudkan agar sistem yang dibangun bisa menjembatani
kebutuhan pengguna dari permasalahan yang dihadapinya.
Berikut ini adalah penjelasan proses
tahapan SDLC, yaitu :
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 :
1.
Waterfall
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.
3. RAD (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.
4. Agile 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.
Sekian semoga bermanfaat.
Tidak ada komentar:
Posting Komentar