Daftar Isi:
- Definisi - Apa yang dimaksud dengan Software Development Life Cycle Model (SDLC)?
- Techopedia menjelaskan Pengembangan Siklus Hidup Model Perangkat Lunak (SDLC)
Definisi - Apa yang dimaksud dengan Software Development Life Cycle Model (SDLC)?
Model siklus hidup pengembangan perangkat lunak (SDLC) adalah kerangka kerja konseptual yang menggambarkan semua kegiatan dalam proyek pengembangan perangkat lunak mulai dari perencanaan hingga pemeliharaan. Proses ini dikaitkan dengan beberapa model, masing-masing termasuk berbagai tugas dan kegiatan.
Pengembangan perangkat lunak adalah kegiatan rumit yang memerlukan identifikasi persyaratan yang tepat, implementasinya, dan penyebaran perangkat lunak. Namun, kegiatan tidak berakhir di situ. Setelah distribusi perangkat lunak, pemeliharaan yang tepat harus disediakan tepat waktu.
Istilah ini juga dikenal sebagai model proses pengembangan perangkat lunak.
Techopedia menjelaskan Pengembangan Siklus Hidup Model Perangkat Lunak (SDLC)
Kegiatan pengembangan perangkat lunak utama meliputi:
- Ekstraksi kebutuhan: Klien memiliki gagasan yang kabur tentang apa yang diperlukan. Setelah analisis menyeluruh tentang persyaratan dan langkah-langkah perencanaan untuk mencapai target, ide klien abstrak dipraktikkan oleh sekelompok insinyur perangkat lunak.
- Deskripsi perangkat lunak: Menjelaskan bahwa perangkat lunak adalah langkah selanjutnya dalam proses.
- Representasi sistem abstrak: Dibuat untuk mengonfirmasi bahwa ia memenuhi persyaratan produk dan antarmuka dengan produk perangkat lunak lainnya bersama dengan perangkat keras yang mendasarinya.
- Persyaratan klien: Diterapkan melalui kode yang diprogram oleh insinyur perangkat lunak.
- Pengujian kode: Kode ini diuji untuk memastikannya bebas dari bug dan mematuhi persyaratan klien.
- Dokumentasi desain internal: Untuk pemeliharaan dan peningkatan produk di masa depan.
- Pemeliharaan: Ini dilakukan untuk mengubah arsitektur sistem sesuai dengan kebutuhan masa depan. Ini mungkin memerlukan penambahan kode atau perubahan kode yang ada.
Proses pengembangan di atas disederhanakan oleh serangkaian model. Tim pengembang memilih model yang paling cocok. Model yang berbeda adalah:
- Model air terjun: Pengembang menyatakan persyaratan, menganalisisnya, menentukan solusi dan membingkai arsitektur perangkat lunak, representasi antarmuka, dan detail algoritmik. Kemudian mereka mengembangkan kode, menguji kode, menyebarkan perangkat lunak, dan memeliharanya. Meskipun metode air terjun mudah dipahami dan menetapkan stabilitas persyaratan, metode ini mungkin memberikan kesan yang salah karena tidak memberikan banyak partisipasi pelanggan. Masalah utama dengan model ini adalah bahwa persyaratan untuk memperbaiki kesalahan harus diketahui di muka dan pada tahap awal. Jika tidak, seluruh proses dapat berlanjut ke arah yang salah, yang dapat berdampak negatif pada biaya produksi.
- V Shaped model: Merupakan variasi dari model air terjun. Ini menekankan verifikasi dan validasi produk. Semua hasil dapat diuji dan kemajuan dilacak oleh tonggak sejarah. Pengujian dilaksanakan secara paralel dengan fase pengembangan.
- Model prototipe: Sebuah prototipe dikembangkan pada fase persyaratan dan dievaluasi oleh pengguna akhir. Berdasarkan umpan balik pengguna, pengembang mengubah prototipe untuk memenuhi kebutuhan pengguna. Sementara model ini menyelesaikan persyaratan dengan mudah, penggunaannya dalam lingkungan produksi dapat menghasilkan masalah kualitas, sehingga membuat proses koreksi berlanjut selamanya.
- Model spiral: Menggunakan model air terjun dan prototipe. Ia menambahkan bahasa pemrograman generasi ke-4, pembuatan prototipe aplikasi yang cepat dan analisis risiko pada model air terjun. Persyaratan sistem dirancang dan desain sistem pendahuluan dibuat. Prototipe awal dirancang dan diuji. Berdasarkan evaluasi hasil tes, prototipe kedua dibuat. Prototipe selanjutnya dibangun untuk memastikan kepuasan pelanggan. Sistem dibuat berdasarkan pada prototipe akhir. Sistem akhir dievaluasi dan diuji. Meskipun model ini mengurangi risiko sebagian besar, itu mungkin tidak memenuhi anggaran dan diterapkan secara berbeda untuk setiap aplikasi.
- Model SDLC berulang dan tambahan: Menentukan dan mengimplementasikan bagian dari perangkat lunak, yang kemudian ditinjau dan persyaratan lebih lanjut ditambahkan dan diimplementasikan dalam kelompok. Setiap rilis menghadirkan produk operasional yang menghadirkan fungsi penting kepada pelanggan terlebih dahulu, sehingga menurunkan biaya pengiriman awal. Risiko perubahan persyaratan sangat berkurang dan pelanggan diizinkan untuk menanggapi setiap bangunan. Terlepas dari kekuatannya, model ini membutuhkan perencanaan yang baik dan definisi awal dari sistem yang lengkap dan berfungsi penuh. Ini juga membutuhkan antarmuka modul yang terdefinisi dengan baik.
- Model pengembangan tangkas: Digunakan untuk aplikasi yang sangat menentukan waktu dalam organisasi yang menggunakan metode disiplin. Ini mempercepat fase siklus hidup dan telah mengurangi ruang lingkup.
- Model kotak ajaib: Adalah model pengembangan aplikasi Web. Ini adalah cara tercepat untuk menyelesaikan proyek dengan bug paling sedikit karena memberikan peluang untuk mengubah kode dan struktur database.