RPL - Pertemuan 4
RPL - Pertemuan 4
RPL - Pertemuan 4
Jenis-jenis SDLC
PERTEMUAN 4
Definisi
SDLC (System Development Life Cycle) atau Siklus hidup pengembangan sistem adalah proses
pembuatan dan pengubahan sistem serta model dan metodologi yang digunakan untuk
mengembangkan sistem-sistem tersebut. Konsep ini umumnya merujuk pada sistem komputer
atau informasi.
SDLC juga merupakan pola yang diambil untuk mengembangkan sistem perangkat lunak, yang
terdiri dari tahap-tahap: rencana (planning), analisis (analysis), desain (design), implementasi
(implementation), uji coba (testing) dan pengelolaan (maintenance) proses pembuatan dan
pengubahan sistem serta model dan metodologi yang digunakan untuk mengembangkan
sistem-sistem tersebut. Konsep ini umumnya merujuk pada sistem komputer atau informasi.
12 Model SDLC
(Software Development Life Cycle)
1. Waterfall Development Model
(Model Sekuensial Linier)
Model Sekuensial Linier atau sering disebut Model Pengembangan Air Terjun, merupakan
paradigma model pengembangan perangkat lunak paling tua, dan paling banyak dipakai. 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.
Kelebihan dan Kekurangan
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.
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. Model Prototype
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.
Kelebihan dan Kekurangan
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 perangkat lunak.
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. Model Rapid Application
Development (RAD)
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.
Kelebihan dan Kekurangan
Kelebihan Model RAD :
1. Lebih efektif dari Pengembangan Model waterfall dalam menghasilkan sistem yang memenuhi kebutuhan
langsung dari pelanggan.
2. Cocok untuk proyek yang memerlukan waktu yang singkat.
3. 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 :
1. 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.
2. Tidak semua aplikasi sesuai untuk RAD, bila system tidak dapat dimodulkan dengan teratur, pembangunan
komponen penting pada RAD akan menjadi sangat bermasalah.
3. RAD tidak cocok digunakan untuk sistem yang mempunyai resiko teknik yang tinggi.
4. Membutuhkan Tenaga kerja yang banyak untuk menyelesaikan sebuah proyek dalam skala besar.
(Jadi dak biso di pake utk TA)
5. Jika ada perubahan di tengah-tengah pengerjaan maka harus membuat kontrak baru antara pengembang
dan pelanggan.
4. Model Evolutionary Development
(Evolutionary Software Process Models)
Model Evolutionary Development bersifat iteratif (mengandung perulangan). Hasil prosesnya
berupa produk yang makin lama makin lengkap sampai versi terlengkap dihasilkan sebagai
produk akhir dari proses.
Model Evolutionary Development / Evolutionary Software Process terbagi menjadi 2, yaitu :
1. Model Incremental
2. Model Spiral
Model Incremental
Model Incremental merupakan hasil kombinasi elemen-elemen dari model waterfall yang
diaplikasikan secara berulang, atau bisa disebut gabungan dari Model linear sekuensial
(waterfall) dengan Model Prototype. Elemen-elemen tersebut dikerjakan hingga menghasilkan
produk dengan spesifikasi tertentu kemudian proses dimulai dari awal kembali hingga muncul
hasil yang spesifikasinya lebih lengkap dari sebelumnya dan tentunya memenuhi kebutuhan
pemakai.
Model ini berfokus pada penyampaian produk operasional dalam setiap pertambahanya.
Pertambahan awal ada di versi stripped down dari produk akhir, tetapi memberikan kemampuan
untuk melayani pemakai dan juga menyediakan platform untuk evaluasi oleh pemakai. Model ini
cocok dipakai untuk proyek kecil dengan anggota tim yang sedikit dan ketersediaan waktu yang
terbatas.
Kelebihan dan Kekurangan
Kelebihan Model Incremental :
1. Personil bekerja optimal.
2. Mampu mengakomodasi perubahan secara fleksibel, dengan waktu yang relatif singkat dan
tidak dibutuhkan anggota/tim kerja yang banyak untuk menjalankannya.
3. Pihak konsumen dapat langsung menggunakan dahulu bagian-bagian yang telah selesai
dibangun. Contohnya pemasukan data karyawan.
4. Mengurangi trauma karena perubahan sistem. Klien dibiasakan perlahan-lahan
menggunakan produknya setiap bagian demi bagian.
5. Memaksimalkan pengembalian modal investasi konsumen.