Anda di halaman 1dari 5

SLDC Beserta Model dan Contoh

Pengertian SDLC (System Development Life Cycle)


SDLC merupakan singkatan dari System Development Life Cycle yaitu yang berarti sebuah proses tahapan yang dikerjakan oleh
programmer dan system analys dalam membangun dan mengembangkan sistem rekayasa perangkat lunak(software) yang disesuaikan
dengan kebutuhan konsumen sistem tersebut.
Proses ini umumnya merujuk pada sistem komputer atau informasi. SDLC juga merupakan pola yang diambil untuk mengembangkan
sistem software, yang terdiri dari tahap-tahap rencana(planning), analisis (analysis), desain (design), implementasi (implementation),
uji coba (testing) dan pengelolaan (maintenance). SDLC mendasari berbagai jenis metodologi pengembangan software. Metodologi-
metodologi ini membentuk suatu kerangka kerja untuk perencanaan dan pengendalian pembuatan sistem informasi, yaitu proses
pengembangan software.
System Development Life Cycle disingkat dengan SDLC. SDLC merupakan siklus
pengembangan sistem. Pengembangan sistem teknik (engineering system
development). Fungsi SDLC adalah menggambarkan tahapan-tahapan utama dan
langkah-langkah dari setiap tahapan yang secara garis besar terbagi dalam empat
kegiatan utama, yaitu initiation, analysis, design dan implementation.
Software yang dikembangkan berdasarkan SDLC akan menghasilkan sistem
dengan kualitas yang tinggi, memenuhi harapan penggunanya, tepat dalam waktu
dan biaya, bekerja dengan efektif dan efsien dalam infrastruktur teknologi
informasi yang ada atau yang direncanakan, serta murah dalam perawatan dan
pengembangan lebih lanjut.
SDLC meliputi tahapan berikut:
1. System initiation ialah perencanaan awal untuk sebuah proyek guna mendefinisikan lingkup, tujuan, jadwal dan anggaran
bisnis awal yang diperlukan untuk memecahkan masalah atau kesempatan yang direpresentasikan oleh proyek. Lingkup
proyek mendefinisikan area bisnis yang akan ditangani oleh proyek dan tujuan-tujuan yang akan dicapai. Lingkup dan tujuan
pada akhirnya berpengaruh pada komitmen sumber yaitu jadwal dan anggaran yang harus dibuat supaya berhasil
menyelesaikan proyek.
2. System analysis ialah studi domain masalah bisnis untuk merekomendasikan perbaikan dan menspesifikasikan persyaratan dan
prioritas bisnis untuk solusi. Analisis system ditujukan untuk menyediakan tim proyek dengan pemahaman yang lebih
menyeluruh terhadap masalah-masalah dan kebutuhan-kebutuhan yang memicu proyek. Area bisnis dipelajari dan dianalisis
untuk memperoleh pemahaman yang lebih rinci mengenai apa yang bekerja, apa yang tidak bekerja dan apa yang dibutuhkan.
3. System design ialah spesifikasi atau konstruksi solusi yang teknis dan berbasis komputer untuk persyaratan bisnis yang
diidentifikasikan dalam analisis sistem. Selama desain sistem, pada awalnya akan mengekspolarasi solusi teknis alternatif.
Setelah alternatif solusi disetujui, fase desain sistem mengembangkan cetak biru (blueprint) dan spesifikasi teknis yang
dibutuhkan untuk mengimplementasikan database, program, antarmuka pengguna dan jaringan yang dibutuhkan untuk sistem
informasi,
4. System implementation ialah konstruksi, instalasi, pengujian dan pengiriman sistem ke dalam produksi (artinya operasi sehari-
hari). Implementasi sistem mengontruksi sistem informasi baru dan menempatkannya ke dalam operasi, selanjutnya
dilaksanakan pengujian.
5. System Testing and Itegration ialah menguji software tersebut ke dalam hardware dengan menilai system tersebut secara
keseluruhan apakah sudah compatible dengan hardware sudah terpenuhi ataupun menemukan bug atau masalah pada saat
pengujian
6. System Maintenance ialah melakukan pemeliharaan terhadap system, dengan meperbaharui modul modul software guna
memberbaiki kerusakan serta bug pada program.Kerusakan yang terjadi pada program harus segera di perbaiki, menghindari
terjadinya kegagalan system software itu sendiri.

Model-Model SDLC Beserta Contoh Penerapannya

1. Waterfall Model
Waterfall Model,  adalah pendekatan klasik dalam pengembangan perangkat lunak yang menggambarkan metode
pengembangan linier dan berurutan. Model ini mengusulkan sebuah pendekatan perkembangan perangkat lunak yang
sistematik dan sekunsial yang dimulai pada tingkat dan kemajuan sistem pada seluruh tahapan analisis, desain , kode,
pengujian, dan pemeliharaan.

Model air terjun Waterfall Model pada dasarnya terdiri dari


tujuh fase berturut-turut:

1. Persyaratan sistem: Tahap pertama


berkaitan dengan persyaratan yang tidak
terkait dengan produk digital itu sendiri
melainkan dengan aspek yang relevan
dengan bisnis seperti harga dan
ketersediaan. Aspek dokumentasi dan
keselamatan juga ditentukan di sini. Secara
umum, persyaratan non-fungsional
disebutkan di sini.
2. Persyaratan perangkat lunak: Persyaratan
fungsional untuk perangkat lunak
didefinisikan pada fase kedua. Pertanyaan tentang apa yang harus dapat dilakukan oleh perangkat lunak dijawab
di sini dan diklarifikasi dalam “spesifikasi,” yang juga mencakup hasil tahap pertama.
3. Analisis persyaratan: Pada fase analisis persyaratan, fungsi-fungsi perangkat lunak dibedah dan disusun
sedemikian rupa sehingga elemen-elemen fungsional individu dan unit-unit fungsional dapat dipisahkan satu
sama lain. Analisis persyaratan dimaksudkan untuk menguji fungsi untuk kelayakan dan kepentingannya. Hasil
dari fase ini adalah spesifikasi yang berisi persyaratan yang perlu dikembangkan.
4. Desain program: Desain teknis sekarang diimplementasikan dengan bantuan spesifikasi persyaratan ini.
Komponen fase ini juga termasuk keputusan tentang arsitektur informasi dan teknologi terapan seperti bahasa
pemrograman, perpustakaan kelas, dan urutan program. Hasil desain program biasanya direkam dalam diagram
yang menggambarkan perilaku teoritis perangkat lunak.
5. Implementasi: Selama implementasi, struktur dan alur kerja dilaksanakan dengan mempertimbangkan kondisi
dan tujuan kerangka kerja sistemik. Desain perangkat lunak menjadi program yang terkait langsung dengan
sistem operasi, satu atau lebih bahasa pemrograman, dan infrastruktur. Hasilnya biasanya berupa perangkat
lunak operasional, seringkali sebagai versi beta.
6. Pengujian: Tahap implementasi diikuti oleh pengujian semua komponen perangkat lunak, modul, dan seluruh
sistem. Integrasi ke dalam sistem operasi spesifik juga diperiksa. Jika kesalahan dan konflik terjadi, mereka
harus segera diperbaiki. Hal ini dapat menyebabkan peningkatan biaya keseluruhan karena kesalahan yang
mungkin dapat dikaitkan dengan fase yang berbeda dan tidak selalu disebabkan pada fase sebelumnya.
7. Peluncuran: Perangkat lunak diimplementasikan setelah penerimaan oleh klien. Pembaruan dan pemeliharaan
mungkin diperlukan sebelum produk memasuki toko atau dikirim ke pelanggan.
Contoh Penerapan dari Pengembangan Model Sekuensial Linear / Waterfall Development Model
Contoh dari penerapan model pengembangan ini adalah pembuatan program pendaftaran antrian online pasien ke Poliklinik
Rumah Sakit. Program ini akan sangat membantu dalam proses pendaftaran, karena dapat meng-efektifkan waktu serta
pendaftar tidak perlu repot-repot mengantri untuk melakukan registrasi pendaftaran . Teknisnya adalah sebagai berikut :
⦁ Sistem program untuk pendaftaran dibuat menggunakan bahasa pemrograman PHP, dengan Sistem Database yang dibuat
menggunakan MySQL, dan diterapkan (diaplikasikan) pada PC (personal computer) dengan sistem operasi berbasis Microsoft
Windows, Linux, dan sebagainya.
⦁ Setelah program selesai dibuat dan kemudian dipergunakan oleh user, programmer akan memelihara serta menambah atau
menyesuaikan program dengan kebutuhan serta kondisi user.
Kelebihan dan Kekurangan Waterfall Development Model:
Kelebihan Model Sekuensial Linear / Waterfall Development Model :
1. Tahapan proses pengembangannya tetap (pasti), mudah diaplikasikan, dan prosesnya teratur.
2. Cocok digunakan untuk produk software/program yang sudah jelas kebutuhannya di awal, sehingga minim
kesalahannya.
3. Software yang dikembangkan dengan metode ini biasanya menghasilkan kualitas yang baik.
4. Documen pengembangan sistem sangat terorganisir, karena setiap fase harus terselesaikan dengan lengkap sebelum
melangkah ke fase berikutnya.
Kekurangan Model Sekuensial Linear / Waterfall Development Model :
1. Proyek yang sebenarnya jarang mengikuti alur sekuensial seperti diusulkan, sehingga perubahan yang terjadi dapat
menyebabkan hasil yang sudah didapatkan tim pengembang harus diubah kembali/iterasi sering menyebabkan masalah
baru.
2. Terjadinya pembagian proyek menjadi tahap-tahap yang tidak fleksibel, karena komitmen harus dilakukan pada tahap
awal proses.
3. Sulit untuk mengalami perubahan kebutuhan yang diinginkan oleh customer/pelanggan.
4. Pelanggan harus sabar untuk menanti produk selesai, karena dikerjakan tahap per tahap, dan proses pengerjaanya akan
berlanjut ke setiap tahapan bila tahap sebelumnya sudah benar-benar selesai.
5. Perubahan ditengah-tengah pengerjaan produk akan membuat bingung tim pengembang yang sedang membuat produk.
6. Adanya waktu kosong (menganggur) bagi pengembang, karena harus menunggu anggota tim proyek lainnya
menuntaskan pekerjaannya.

2. Prototype Model
Metode Prototype merupakan suatu paradigma baru dalam metode pengembangan perangkat lunak dimana metode ini tidak
hanya sekedar evolusi dalam dunia pengembangan perangkat lunak, tetapi juga merevolusi metode pengembangan perangkat
lunak yang lama yaitu sistem sekuensial yang biasa dikenal dengan nama SDLC atau waterfall development model.

Dalam Model Prototype, prototype dari perangkat lunak


yang dihasilkan kemudian dipresentasikan kepada
pelanggan, dan pelanggan tersebut diberikan
kesempatan untuk memberikan masukan sehingga
perangkat lunak yang dihasilkan nantinya betul-betul
sesuai dengan keinginan dan kebutuhan pelanggan.
Perubahan dan presentasi prototype dapat dilakukan
berkali-kali sampai dicapai kesepakatan bentuk dari
perangkat lunak yang akan dikembangkan.
⦁ Teknik – teknik Prototyping Meliputi :
1. Perancangan Model
2. Perancangan Dialog
3. Simulasi
⦁ Berikut adalah 4 langkah yang menjadi karakteristik dalam proses pengembangan pada metode prototype, yaitu :
1. Pemilihan fungsi
2. Penyusunan Sistem Informasi
3. Evaluasi
4. Penggunaan Selanjutnya

Metode ini menyajikan gambaran yang lengkap dari suatu sistem perangkat lunak, terdiri atas model kertas, model kerja dan
program. Pihak pengembang akan melakukan identifikasi kebutuhan pemakai, menganalisa sistem dan melakukan studi
kelayakan serta studi terhadap kebutuhan pemakai, meliputi model interface, teknik prosedural dan teknologi yang akan
dimanfaatkan.

Berikut adalah Tahapan – tahapan Proses Pengembangan dalam Model Prototype, yaitu :
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 protoptyping
Evaluasi ini dilakukan oleh pelanggan, apakah prototyping yang sudah dibangun sudah sesuai dengan keinginan pelanggan
atau belum. Jika sudah sesuai, maka langkah selanjutnya akan diambil. Namun jika tidak, prototyping direvisi dengan
mengulang langkah-langkah sebelumnya.
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, kemudian dilakukan proses Pengujian. Pengujian ini
dilakukan dengan White Box, Black Box, Basis Path, pengujian arsitektur, dll.
6. Evaluasi Sistem
Pelanggan mengevaluasi apakah perangkat lunak yang sudah jadi sudah sesuai dengan yang diharapkan . Jika ya, maka
proses akan dilanjutkan ke tahap selanjutnya, namun jika perangkat lunak yang sudah jadi tidak/belum sesuai dengan apa
yang diharapkan, maka tahapan sebelumnya akan diulang.
7. Menggunakan sistem
Perangkat lunak yang telah diuji dan diterima pelanggan siap untuk digunakan.
Model Prototyping ini sangat sesuai diterapkan untuk kondisi yang beresiko tinggi di mana masalah-masalah tidak terstruktur
dengan baik, terdapat fluktuasi kebutuhan pemakai yang berubah dari waktu ke waktu atau yang tidak terduga, bila interaksi
dengan pemakai menjadi syarat mutlak dan waktu yang tersedia sangat terbatas sehingga butuh penyelesaian yang segera.
Model ini juga dapat berjalan dengan maksimal pada situasi di mana sistem yang diharapkan adalah yang inovatif dan
mutakhir sementara tahap penggunaan sistemnya relatif singkat.
Berikut merupakan Jenis – jenis dari 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 sistem informasi yang akan digunakan
 Implementation prototyping, merupakan lanjutan dari rancangan prototype, prototype ini langsung disusun sebagai
suatu sistem informasi yang akan digunakan.
Contoh Penerapan Metode Prototype.
Rumah Sakit membuat aplikasi sistem database Rekam Medis untuk pendataan pasiennya. Seorang atau sekelompok
programmer akan melakukan identifikasi mengenai apa saja yang dibutuhkan oleh pelanggan, dan bagaimana model kerja
program tersebut. Kemudian dilakukan rancangan program yang diujikan kepada pelanggan. Hasil/penilaian dari pelanggan
dievaluasi, dan analisis kebutuhan pemakai kembali di lakukan.

Kelebihan dan Kekurangan Model Prototype:


Kelebihan Model Prototype :
1. Pelanggan berpartisipasi aktif dalam pengembangan sistem, sehingga hasil produk pengembangan akan semakin mudah
disesuaikan dengan keinginan dan kebutuhan pelanggan.
2. Penentuan kebutuhan lebih mudah diwujudkan.
3. Mempersingkat waktu pengembangan produk software.
4. Adanya komunikasi yang baik antara pengembang dan pelanggan.
5. Pengembang dapat bekerja lebih baik dalam menentukan kebutuhan pelanggan.
6. Lebih menghemat waktu dalam pengembangan sistem.
7. Penerapan menjadi lebih mudah karena pelanggan mengetahui apa yang diharapkannya.
Kekurangan Model Prototype :
1. Proses analisis dan perancangan terlalu singkat.
2. Biasanya kurang fleksibel dalam mengahadapi perubahan.
3. Walaupun pemakai melihat berbagai perbaikan dari setiap versi prototype, tetapi pemakai mungkin tidak menyadari
bahwa versi tersebut dibuat tanpa memperhatikan kualitas dan pemeliharaan jangka panjang.
4. Pengembang kadang-kadang membuat kompromi implementasi dengan menggunakan sistem operasi yang tidak
relevan dan algoritma yang tidak efisien.

3. Rapid Application Development


(RAD) Model
Rapid Aplication Development (RAD) adalah
sebuah model proses perkembangan perangkat
lunak sekuensial linier yang menekankan siklus
perkembangan yang sangat pendek (kira-kira 60
sampai 90 hari). Model RAD ini merupakan sebuah
adaptasi “kecepatan tinggi” dari model
sekuensial linier dimana perkembangan cepat
dicapai dengan menggunakan pendekatan
konstruksi berbasis komponen.

Berikut adalah Tahapan – tahapan Proses Pengembangan dalam Model Rapid Application Development (RAD), yaitu :
1. Bussiness Modeling
Fase ini untuk mencari aliran informasi yang dapat menjawab pertanyaan berikut:
1. Informasi apa yang menegndalikan proses bisnis?
2. Informasi apa yang dimunculkan?
3. Di mana informasi digunakan ?
4. Siapa yang memprosenya ?

2. Data Modeling
Aliran informasi yang didefinisikan sebagai bagian dari fase bussiness modeling disaring ke dalam serangkaian objek data
yang dibutuhkan untuk menopang bisnis tersebut. Karakteristik (atribut) masing-masing objek diidentifikasi dan hubungan
antar objek-objek tersebut didefinisikan.

3. Proses Modeling
Aliran informasi yang didefinisikan di dalam fase data modeling ditransformasikan untuk mencapai aliran informasi yang
perlu bagi implementasi sebuah fungsi bisnis. Gambaran pemrosesan diciptakan untuk menambah, memodifikasi,
menghapus, atau mendapatkan kembali sebuah objek data.

4. Aplication Generation
Selain menggunakan bahasa pemrograman generasi ketiga, RAD juga memakai komponen program yang telah ada atau
menciptakan komponen yang bisa dipakai lagi. Ala-alat bantu bisa dipakai untuk memfasilitasi konstruksi perangkat
lunak.

5. Testing dan Turnover


Karena proses RAD menekankan pada pemakaian kembali, banyak komponen program telah diuji. Hal ini mengurangi
keseluruhan waktu pengujian. Tetapi komponen baru harus diuji dan semua interface harus dilatih secara penuh.

Contoh Penerapan RAD dalam Kehidupan


Model RAD mengadopsi model waterfall dan pembangunan dalam waktu singkat yang dicapai dengan menerapkan:
1. Component based construction (pemrograman berbasis komponen bukan prosedural).
2. Penekanan pada penggunaan ulang (reuse) komponen perangkat lunak yang telah ada.
3. Pembangkitan kode program otomatis/semi otomatis.
4. Multiple team (banyak tim), tiap tim menyelesaikan satu tugas yang selevel tapi tidak sama. Banyaknya tim tergantung dari
area dan kompleksitasnya sistem yang dibangun.

Kelebihan dan Kekurangan Model RAD:


Kelebihan Model RAD :
 Lebih efektif dari Pengembangan Model waterfall/sequential linear dalam menghasilkan sistem yang memenuhi
kebutuhan langsung dari pelanggan.
 Cocok untuk proyek yang memerlukan waktu yang singkat.
 Model RAD mengikuti tahap pengembangan sistem seperti pada umumnya, tetapi mempunyai kemampuan untuk
menggunakan kembali komponen yang ada sehingga pengembang tidak perlu membuatnya dari awal lagi sehingga
waktu pengembangan menjadi lebih singkat dan efisien.
Kekurangan Model RAD :
 Model RAD menuntut pengembangan dan pelanggan memiliki komitmen di dalam aktivitas rapid-fire yang diperlukan
untuk melengkapi sebuah sistem, di dalam kerangka waktu yang sangat diperpendek. Jika komitmen tersebut tidak ada,
proyek RAD akan gagal.
 Tidak semua aplikasi sesuai untuk RAD, bila system tidak dapat dimodulkan dengan teratur, pembangunan komponen
penting pada RAD akan menjadi sangat bermasalah.
 RAD tidak cocok digunakan untuk sistem yang mempunyai resiko teknik yang tinggi.
 Membutuhkan Tenaga kerja yang banyak untuk menyelesaikan sebuah proyek dalam skala besar.
 Jika ada perubahan di tengah-tengah pengerjaan maka harus membuat kontrak baru antara pengembang dan pelanggan.
Sumber :
https://www.educba.com/what-is-sdlc/
https://en.wikipedia.org/wiki/Systems_development_life_cycle

Anda mungkin juga menyukai