Çevik ve V Metodolojileri (Model)
Günümüzde yazılım endüstrisinde kullanılan çok sayıda farklı yazılım geliştirme metodolojisi vardır. V Metodolojileri (V-Model), Şelale geliştirme yönteminin (en eski yöntemlerden biri olan) bir uzantısıdır. V-Model'in ana odak noktası, kodlamaya ve test etmeye eşit ağırlık vermektir. Çevik model, mevcut modellerde bulunan eksiklikleri gidermek için tanıtılan daha yeni bir yazılım geliştirme modelidir. Agile'ın ana odak noktası, mümkün olduğunca erken testleri dahil etmek ve sistemi çok küçük ve yönetilebilir alt parçalara bölerek ürünün çalışan bir sürümünü çok erken yayınlamaktır.
V Metodolojileri (Model) Nedir?
V Metodolojileri (V-Model) bir yazılım geliştirme modelidir. Tipik Şelale yazılım geliştirme modelinin bir uzantısı olarak kabul edilir. V-Model, Şelale modelinde tanımlanan fazlar arasındaki aynı ilişkileri kullanır. Ancak (Şelale modeli gibi) lineer olarak inmek yerine, V-Modeli çapraz olarak aşağı iner ve sonra tekrar yukarı hareket eder (kodlama aşamasından sonra), V harfinin şeklini oluşturur. Bu V şekli, her bir faz arasındaki ilişkiyi göstermek için oluşturulur. geliştirme/tasarım ve ilgili test aşaması. Soyutlamanın zamanı ve seviyesi sırasıyla yatay ve dikey eksen ile temsil edilir.
Test (yükselen yol, V'nin sağ tarafı) doğrulama için yapılırken ilgili tasarım aşamaları (azalan yol, V'nin sol tarafı) doğrulama için kullanılır. V-Model'de kodlamaya ve test etmeye eşit ağırlık verilir. V-Model, tasarım belgeleri/kodu yanında test belgesi oluşturmayı önerir. Örneğin, üst düzey tasarım belgelenirken entegrasyon test belgeleri yazılmalı ve ayrıntılı tasarım planı yapılırken birim testleri belgelenmelidir. Bu, test ekibine teslim edilebilmesi için geliştirmenin tamamlanmasını beklemeden, her test için bir uygulama planının önceden oluşturulması gerektiği anlamına gelir.
Çevik Nedir?
Agile, çevik manifestoya dayalı çok yeni bir yazılım geliştirme metodolojisidir. Bu, geleneksel V-Model ve Şelale yazılım geliştirme metodolojilerindeki bazı eksiklikleri gidermek için geliştirildi. Çevik yöntemler, geliştirme döngüsünün başlarında müşteri katılımına yüksek öncelik vermeyi temel alır. Müşteri tarafından testlerin mümkün olduğunca erken ve sıklıkla dahil edilmesini önerir. Kararlı bir sürüm kullanıma sunulduğunda her noktada test yapılır. Agile'ın temeli, teste projenin başlangıcından başlayıp projenin sonuna kadar devam etmeye dayanır. Agile'ın temel değerleri, yazılımın kalitesinin tüm ekibin (sadece test ekibinin değil) sorumluluğunda olduğunu vurgulayan “kalite ekibin sorumluluğudur” dur. Agile'ın bir diğer önemli yönü, yazılımı daha küçük yönetilebilir parçalara bölerek müşteriye çok hızlı bir şekilde teslim etmesidir. Çalışan bir ürün sunmak son derece önemlidir. Ardından ekip, yazılımı geliştirmeye ve her büyük adımda sürekli olarak teslim etmeye devam eder. Bu, sprint adı verilen çok kısa sürüm döngülerine sahip olarak ve her döngünün sonunda iyileştirme için geri bildirim alarak elde edilir. Önceki yöntemlerde geliştiriciler ve testçiler gibi ekibin çok fazla etkileşimi olmayan katkıda bulunanlar, artık Çevik model içinde birlikte çalışıyor.
Çevik ve V Metodolojileri (Model) arasındaki fark nedir?
Çevik model, ürünün çalışan bir sürümünü V-Model'e kıyasla çok erken sunar. Daha fazla özellik aşamalı olarak sunulduğundan, müşteri bazı avantajları erkenden fark edebilir. Agile'ın test çevrim süresi, V-Model'e kıyasla nispeten kısadır, çünkü testler geliştirmeye paralel olarak yapılır. Çevik, çok daha reaktif V-Model ile karşılaştırıldığında (çok kısa döngüleri nedeniyle) proaktif bir modeldir. V-Model, Çevik modelden çok sert ve nispeten daha az esnektir. Tüm bu avantajlarından dolayı şu anda V-modeline göre Agile tercih ediliyor.