SDLC (Systems Development Life Cycle) atau Systems Life Cycle (Siklus Hidup Sistem), dalam rekayasa sistem dan rekayasa perangkat lunak, 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.
Tahapan SDLC
Terdapat 6 tahapan dalam mengembangkan SDLC untuk pengembangan sistem yaitu :
- Planning
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.
- Analysis
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.
- Design
Sebuah 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.
- Implementation
Proses pembangunan dan pengujian sistem, instalasi sistem, dan rencana dukungan sistem.
- Build
Proses pengujian pada system yang sudah dibuat.
- Maintenance
Proses yang dilakukan oleh admin/programmer untuk menjaga system supaya berjalan dengan baik dan mengadaptasikan system sesuai dengan kebutuhan.
Metodologi Pengembangan
Metodologi pengembangan Sistem Informasi berkembang sesuai dengan perubahan teknologi yang mendasari seluruh komponen dari Sistem Informasi. Perubahan-perubahan yang terjadi yang mewarnai perkembangan metodologi pengembangan Sistem Informasi dewasa ini antara lain:
- Perkembangan teknologi pemrograman dari Structured Programming ke Object Oriented Programming.
- Perkembangan teknologi beserta infrastruktur aplikasi dari One Tier Application ke Two Tier Application, dan akhirnya menuju Many Tier Application.
- Perkembangan teknologi antar muka dari CLI (Command Line Interface) application ke GUI (Graphical User Interface)/ Web-based application.
- Perkembangan teknologi komputasi secara keseluruhan yang memungkinkan terciptanya hardware berkemampuan komputasi yang besar tetapi dengan biaya produksi yang semakin terjangkau.
Perbedaan mendasar antara masing-masing metodologi pengembangan yang ada adalah urutan dan pengulangan dari masing-masing tahap pengembangan Sistem Informasi dalam laju proses pengembangan. Perlu diingat bahwa masing-masing metodologi dirancang untuk digunakan dengan teknologi dan jenis proyek tertentu. Bahasan mengenai metodologi pengembangan selanjutnya meliputi kelebihan serta kekurangan masing-masing metodologi, yang akan membantu pengguna Standar Pengembangan Aplikasi untuk menentukan metodologi pengembangan mana yang tepat untuk kebutuhan pengembangan Sistem Informasi pengguna.