Sytem Development Life Cycle (SDLC)
Apa yang dimaksud dengan SDLC?
Pengertian SDLC - SDLC merupakan singkatan dari System Development Life Cycle atau dalam bahasa Indonesia berarti System Development Life Cycle. SDLC merupakan siklus yang digunakan dalam membuat atau mengembangkan sistem informasi yang ditujukan untuk memecahkan masalah secara efektif. Dengan kata lain, SDLC adalah fase pekerjaan yang bertujuan untuk menciptakan sistem berkualitas tinggi yang memenuhi keinginan pelanggan atau tujuan penggunaan sistem tersebut. SDLC merupakan framework yang berisi langkah-langkah yang harus diselesaikan untuk pengembangan perangkat lunak. Sistem ini mencakup rencana lengkap untuk pengembangan, pemeliharaan, dan penggantian perangkat lunak tertentu. SDLC digunakan untuk membangun sistem informasi agar dapat berfungsi sesuai dengan yang diharapkan. SDLC (Systems Development Life Cycle) atau Siklus Hidup Sistem, dalam rekayasa sistem dan rekayasa perangkat lunak, adalah proses pembuatan dan penyesuaian sistem dan model serta metode yang digunakan untuk mengembangkan sistem ini. Istilah ini biasanya mengacu pada komputer atau sistem informasi. SDLC juga merupakan model untuk mengembangkan perangkat lunak, yang terdiri dari langkah-langkah berikut:
Plan (perencanaan), analisis (analysis), desain (planning), implementasi (implementation), percobaan (testing) dan pengelolaan (maintenance).
Dalam pengembangan perangkat lunak, konsep SDLC mendukung banyak jenis metodologi pengembangan perangkat lunak. Metode-metode ini membentuk kerangka kerja untuk merencanakan dan mengendalikan pembuatan sistem informasi, yaitu. proses perangkat lunak. Ada tiga jenis metode siklus hidup sistem yang paling umum digunakan, yaitu:
siklus hidup sistem tradisional (traditional system life cycle), siklus hidup prototipe (life cycle using prototyping) , dan siklus hidup sistem berbasis objek (object-oriented system life cycle).
Fungsi dari SDLC
Sangat sulit untuk membuat perangkat lunak tanpa desain yang optimal. Sampai saat ini, beberapa teknik pengembangan perangkat lunak masih terus dikembangkan. Masih banyak perdebatan tentang metode mana yang terbaik dan paling cocok untuk jenis perangkat lunak yang mana. Namun, beberapa perencanaan lebih baik daripada tidak ada perencanaan. Dilihat dari perspektif yang berbeda, SDLC memiliki banyak fungsi, termasuk alat komunikasi antara tim pengembang dan pemangku kepentingan. SDLC juga berfungsi untuk memberikan peran dan tanggung jawab yang jelas antara pengembang, desainer, analis bisnis, dan manajer proyek. Fitur lain dari SDLC adalah dapat memberikan gambaran yang jelas tentang input dan output dari satu fase ke fase lainnya.
Tahapan atau fase dalam SDLC
1. Perencanaan Sistem (Systems Planning)
Tahapan SDLC pertama adalah planning atau perencanaan. Pada tahapan ini, para tim pengembangkan harus mengetahui tujuan sebuah perangkat dibuat. Dengan mengetahui tujuan ini, perangkat nantinya akan menjadi suatu produk yang tepat guna bagi target market dan perusahaan.
a. Pembentukan dan konsolidasi tim pengembang.
b. Mendefinisikan tujuan dan ruang lingkup pengembangan.
c. Mengidentifikasi apakah masalah yang ada bisa diselesaikan melalui pengembangan sistem.
d. Menentukan dan evaluasi strategi yang akan digunakan dalam pengembangan sistem.
e. Penentuan prioritas teknologi dan pemilihan aplikasi.
2. Analisis Sistem (Systems Analysis)
Pada fase ini sistem dianalisa untuk melihat bagaimana nanti kerjanya. Hasil analisis berupa kelebihan dan kekurangan sistem, fitur sistem dan pembaharuan yang dapat diterapkan. Bagian ini termasuk dalam bagian desain. Bagian lain yang terlibat dalam perencanaan adalah alokasi sumber daya, perencanaan kapasitas, perencanaan proyek, estimasi biaya dan spesifikasi. Hasil dari fase perencanaan adalah rencana proyek, jadwal, perkiraan dan cadangan. Idealnya, manajer proyek dan pengembang dapat bekerja paling baik pada tahap ini.
Analisis sistem adalah langkah di mana kegiatan berikut dilakukan:
a. Lakukan pencarian literatur untuk menemukan kasus yang dapat ditangani oleh sistem.
b. Brainstorming dalam tim pengembang mengenai kasus mana yang paling tepat dimodelkan dengan sistem.
c. Mengklasifikasikan masalah, peluang, dan solusi yang mungkin diterapkan untuk kasus tersebut.
d. Analisa kebutuhan pada sistem dan membuat Batasan-batasan sistem.
e. Mendefinisikan kebutuhan sistem.
3. Perancangan sistem (Systems Design)
Pada tahap ini, prototipe dan beberapa kiriman lainnya dibuat, termasuk dokumen yang berisi desain, model, dan komponen yang diperlukan untuk menjalankan proyek. Setelah pendefinisian, langkah selanjutnya adalah merancang sistem. Fase ini merupakan fase dimana semua hasil analisis dan pembahasan spesifikasi sistem diterapkan pada rancangan atau perencanaan sistem. Fase ini disebut sebagai perencanaan dimana sistem siap dikembangkan mulai dari implementasi hingga analisis sistem hingga personel pendukung sistem yang akan dikembangkan.
Pada tahap ini, features dan operasi-operasi pada sistem dideskripsikan secara detail. Aktivitas-aktivitas yang dilakukan adalah:
a. Menganalisa interaksi obyek dan fungsi pada sistem.
b. Menganalisa data dan membuat skema database.
c. Merancang user interface.
4. Implementasi Sistem (Systems Implementation)
Tahap berikutnya adalah implementasi yaitu mengimplementasikan rancangan dari tahap-tahap sebelumnya dan melakukan uji coba. Dalam implementasi, dilakukan aktivitas-aktivitas sebagai berikut:
a. Pembuatan database sesuai skema rancangan.
b. Pembuatan aplikasi berdasarkan desain sistem.
c. Pengujian dan perbaikan aplikasi (debugging).
5. Pemeliharaan Sistem (Systems Maintenance)
Dilakukan oleh admin yang ditunjuk untuk menjaga sistem tetap mampu beroperasi secara benar melalui kemampuan sistem dalam mengadaptasikan diri sesuai dengan kebutuhan.
Model Pengembangan SDLC
Model pengembangan ini sangat penting untuk membantu proses pengembangan perangkat lunak. Terdapat beberapa model pengembangan SDLC yang diikuti oleh berbagai organisasi, yaitu:
1. 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.
Keuntungan dari model RAD
a. Lebih efektif daripada pengembangan model waterfall/sequential linier dalam menghasilkan sistem yang memenuhi kebutuhan langsung dari pelanggan.
b. Cocok untuk proyek yang membutuhkan sedikit waktu.
c. Model RAD mengikuti tahapan pengembangan sistem dengan cara biasa, namun memiliki kemampuan untuk menggunakan kembali komponen yang ada, sehingga pengembang tidak perlu membuatnya dari awal, mengurangi waktu pengembangan dan membuatnya lebih efisien.
Kekurangan model RAD:
a. Model RAD memerlukan pengembangan dan komitmen pelanggan untuk operasi kebakaran cepat yang diperlukan untuk menyelesaikan sistem dalam waktu yang jauh lebih singkat. Jika komitmen ini tidak ada, proyek RAD akan gagal.
b. Tidak semua aplikasi cocok untuk RAD, jika sistem tidak dapat dimodulasi secara teratur, membuat komponen penting di RAD sangat bermasalah.
c. RAD tidak cocok untuk sistem risiko teknis tinggi.
d. Dibutuhkan banyak tenaga kerja untuk mengimplementasikan proyek besar. (Jadi Anda tidak bisa menggunakannya di TA)
e. Jika terjadi perubahan selama pekerjaan konstruksi, kontrak baru harus dibuat antara klien dan klien.
Baca konten-konten menarik Kompasiana langsung dari smartphone kamu. Follow channel WhatsApp Kompasiana sekarang di sini: https://whatsapp.com/channel/0029VaYjYaL4Spk7WflFYJ2H