Yazılım Geliştirme Yaşam Döngüsü
Yazılım geliştirme yaşam döngüsü (SDLC), bir yazılım sisteminin ilk kavram ve gereksinimlerden başlayarak tasarım, yapım, test, dağıtım ve nihai kullanımdan kaldırmaya kadar ilerlediği uçtan uca fazlar dizisidir.
Tanım
Yazılım geliştirme yaşam döngüsü, yazılım geliştirmeyi, her biri giriş ve çıkış kriterleri, teslim edilebilirler ve faaliyetler içeren tanımlanmış fazlara ayıran, yazılımın üretimini ve evrimini planlamak, kontrol etmek ve anlamlandırmak için kullanılan yapılandırılmış bir çerçevedir.
Kapsam
Bu konu, planlama, gereksinim analizi, tasarım, uygulama, test, dağıtım ve bakım gibi kanonik SDLC fazlarını; bu fazları düzenleyen standart modelleri (şelale, V-modeli, artımlı, yinelemeli, sarmal); her fazda üretilen çıktıları; ve ISO/IEC/IEEE 12207 gibi yaşam döngüsü süreç standartlarını kapsamaktadır.
Temel sorular
- Yaşam döngüsünü hangi fazlar oluşturur ve her biri hangi çıktıları üretir?
- Farklı yaşam döngüsü modelleri bu fazları nasıl düzenler ve yineler?
- Fazlar arasındaki geçişi hangi giriş ve çıkış kriterleri belirler?
- Yaşam döngüsü, teslimatın ötesine geçerek işletme, bakım ve kullanımdan kaldırma süreçlerine nasıl uzanır?
Temel kuramlar
- Fazlı yaşam döngüsü yapısı
- Geliştirme, her biri tanımlanmış teslim edilebilirler ve gözden geçirme kapıları içeren ayrı fazlara (gereksinimler, tasarım, uygulama, test, dağıtım, bakım) ayrılmakta, böylece planlama, tahmin ve kontrol için bir temel sağlamaktadır.
- V-modeli doğrulama eşleştirmesi
- V-modeli, her yapıcı fazı karşılık gelen bir test fazıyla (birim, entegrasyon, sistem, kabul) eşleştirmekte, böylece doğrulama ve geçerliliği, şartname ve tasarımın açık karşılıkları haline getirmektedir.
Klinik önem
İyi tanımlanmış bir yaşam döngüsü, öngörülebilirliği, izlenebilirliği ve kalite kontrolünü artırmakta, maliyet ve zaman çizelgesi tahminini desteklemekte ve denetlenebilir geliştirme süreçleri gerektiren tedarik ve düzenleyici rejimler tarafından sıklıkla zorunlu kılınmaktadır.
Kanıt ve kılavuzlar
ISO/IEC/IEEE 12207:2017, yazılım yaşam döngüsü süreçlerini tanımlayan başlıca uluslararası standart olup, sözleşmelerde ve kalite sistemlerinde yaygın olarak referans gösterilmektedir.
Tarihçe
Sıralı bir geliştirme fazları kümesi kavramı, projelerin geçici (ad hoc) yapım için çok büyük hale gelmesiyle 1960'ların sonları ve 1970'lerde resmileştirilmiştir; sonraki modeller yineleme ve risk yönetimini eklerken, standardizasyon çabaları 1990'larda ISO/IEC 12207'yi ve sonraki revizyonlarını ortaya çıkarmıştır.
Öne çıkan isimler
- Winston W. Royce
- Barry Boehm
İlgili konular
Temel eserler
- royce1970
- iso12207
- sommerville2015
Sıkça sorulan sorular
- SDLC, şelale modeliyle aynı mıdır?
- Hayır. SDLC, yazılımın geçtiği genel fazlar kümesidir; şelale modeli ise bu fazları sıralı olarak düzenlemenin belirli bir yoludur. Çevik, yinelemeli ve sarmal modeller aynı temel fazları farklı sıralarda ve ritimlerde kat etmektedir.
- Yaşam döngüsü dağıtımda mı sona erer?
- Hayır. İşletme, bakım ve nihai kullanımdan kaldırma, yaşam döngüsünün ayrılmaz fazlarıdır; çoğu sistemde bakım ve evrim, toplam maliyete hakim olmakta ve yaşam döngüsünün en uzun süresini kapsamaktadır.