Siklus Hidup Pengembangan Perangkat Lunak
Siklus hidup pengembangan perangkat lunak (SDLC) adalah urutan fase ujung-ke-ujung di mana suatu sistem perangkat lunak berkembang, mulai dari konsepsi awal dan persyaratan hingga desain, konstruksi, pengujian, penerapan, dan akhirnya penghentian.
Definition
Siklus hidup pengembangan perangkat lunak adalah kerangka kerja terstruktur yang membagi pengembangan perangkat lunak menjadi fase-fase yang terdefinisi, masing-masing dengan kriteria masuk dan keluar, hasil akhir, dan aktivitas, yang digunakan untuk merencanakan, mengontrol, dan memahami produksi serta evolusi perangkat lunak.
Scope
Topik ini mencakup fase-fase kanonis SDLC yaitu perencanaan, analisis persyaratan, desain, implementasi, pengujian, penerapan, dan pemeliharaan; model-model standar yang mengatur fase-fase ini (waterfall, model-V, inkremental, iteratif, spiral); artefak yang dihasilkan pada setiap fase; dan standar proses siklus hidup seperti ISO/IEC/IEEE 12207.
Core questions
- Fase-fase apa saja yang membentuk siklus hidup dan artefak apa yang dihasilkan oleh masing-masing fase?
- Bagaimana model siklus hidup yang berbeda mengatur dan mengulang fase-fase ini?
- Kriteria masuk dan keluar apa yang mengatur transisi antar fase?
- Bagaimana siklus hidup melampaui pengiriman hingga operasi, pemeliharaan, dan penghentian?
Key theories
- Struktur siklus hidup berfase
- Pengembangan diuraikan menjadi fase-fase diskrit (persyaratan, desain, implementasi, pengujian, penerapan, pemeliharaan), masing-masing dengan hasil akhir yang terdefinisi dan gerbang tinjauan, memberikan dasar untuk perencanaan, estimasi, dan kontrol.
- Pemetaan verifikasi model-V
- Model-V memasangkan setiap fase konstruktif dengan fase pengujian yang sesuai (unit, integrasi, sistem, penerimaan), menjadikan verifikasi dan validasi sebagai padanan eksplisit dari spesifikasi dan desain.
Clinical relevance
Siklus hidup yang terdefinisi dengan baik meningkatkan prediktabilitas, ketertelusuran, dan kontrol kualitas, mendukung estimasi biaya dan jadwal, serta sering kali diamanatkan oleh rezim pengadaan dan regulasi yang memerlukan proses pengembangan yang dapat diaudit.
Evidence & guidelines
ISO/IEC/IEEE 12207:2017 adalah standar internasional utama yang mendefinisikan proses siklus hidup perangkat lunak dan banyak dirujuk dalam kontrak serta sistem kualitas.
History
Gagasan tentang serangkaian fase pengembangan yang terurut diformalkan pada akhir tahun 1960-an dan 1970-an ketika proyek-proyek menjadi terlalu besar untuk konstruksi ad hoc; model-model selanjutnya menambahkan iterasi dan manajemen risiko, sementara upaya standardisasi menghasilkan ISO/IEC 12207 pada tahun 1990-an dan revisi-revisinya kemudian.
Key figures
- Winston W. Royce
- Barry Boehm
Related topics
Seminal works
- royce1970
- iso12207
- sommerville2015
Frequently asked questions
- Apakah SDLC sama dengan model waterfall?
- Tidak. SDLC adalah kumpulan umum fase-fase yang dilalui perangkat lunak; model waterfall adalah salah satu cara khusus untuk mengurutkan fase-fase tersebut secara berurutan. Model Agile, iteratif, dan spiral melintasi fase-fase fundamental yang sama dengan urutan dan irama yang berbeda.
- Apakah siklus hidup berakhir pada penerapan?
- Tidak. Operasi, pemeliharaan, dan penghentian akhirnya merupakan fase siklus hidup yang integral; pada sebagian besar sistem, pemeliharaan dan evolusi mendominasi total biaya dan mencakup periode terpanjang dari siklus hidup.