SDLC Modelleri - Evrim
Bir Yazılım Geliştirme Yaşam Döngüsü (SDLC) modeli, bir yazılım geliştirme projesinin her aşamasında gerçekleştirilen faaliyetleri tanımlayan bir çerçevedir.
Bir Yazılım Geliştirme Yaşam Döngüsünde, faaliyetler beş aşamada gerçekleştirilir -
Requirements Gathering- Geliştirilecek bir yazılım için gereksinimler toplanır. Bu gereksinimler, müşteri / kullanıcı tarafından anlaşılan bir dilde olacaktır. Etki alanına özgü terminoloji önerilir.
Analysis - Toplanan gereksinimler uygulama açısından analiz edilir ve yazılım özellikleri, hem işlevsel gereksinimleri hem de işlevsel olmayan gereksinimleri kapsayacak şekilde yazılır.
Design - Bu aşama, yazılım mimarisine ve geliştirme için seçilen teknolojiye dayalı uygulama özelliklerine ulaşmayı içerir.
Construction - Bu aşamada kod geliştirilir, birim test edilir, entegre edilir, entegrasyon test edilir ve yapı üretilir.
Testing- Oluşturulan yazılımın fonksiyonel testi bu aşamada yapılır. Bu aynı zamanda işlevsel olmayan gereksinimlerin test edilmesini de içerir.
Bu etkinlikleri gerçekleştirmek için iki yaklaşım vardır -
Prescriptive - Faaliyetleri çerçeve tarafından tanımlanan şekilde önceden belirlenmiş bir şekilde gerçekleştirmenin yollarını sağlayacak SDLC modelleri.
Adaptive- İzlenmesi gereken belirli kurallar ile etkinlikleri gerçekleştirmede size esneklik sağlayacak SDLC modelleri. Çevik yöntemler çoğunlukla bu yaklaşımı izler ve her birinin kendi kuralları vardır. Ancak, uyarlanabilir veya çevik bir yaklaşım izlenmesi, yazılımın herhangi bir disipline uyulmadan geliştirildiği anlamına gelmez. Bu bir kaosa yol açar.
Belirli bir SDLC modelinin iyi veya kötü olduğunu söyleyemeyeceğimizi anlamanız gerekir. Her birinin kendi güçlü ve zayıf yönleri vardır ve bu nedenle belirli bağlamlara uygundur.
Projeniz için bir SDLC modeli seçtiğinizde, anlamanız gerekir -
- Kuruluş Bağlamınız
- Teknoloji Bağlamınız
- Takım Kompozisyonunuz
- Müşteri Bağlamınız
Örneğin, yazılım geliştirme öngörülebilir ise, Kuralcı bir yaklaşım kullanabilirsiniz. Öte yandan, yazılım geliştirme öngörülemezse, yani gereksinimler tamamen bilinmiyorsa veya geliştirme ekibinin mevcut alan veya teknolojiye önceden maruz kalmaması, vb. O zaman Uyarlamalı yaklaşım en iyi seçimdir.
Aşağıdaki bölümlerde, sektör genelinde yazılım geliştirme projelerinin yürütülmesi sırasında geliştirilen en yaygın SDLC modellerini anlayacaksınız. Ayrıca her birinin güçlü ve zayıf yönlerini ve hangi bağlamlarda uygun olduklarını da öğreneceksiniz.