Yazılım geliştirme metodolojilerini: Waterfall
(Şelale), V-Model (Validation and Verification: Sağlama ve Doğrulama),
Iterative (yinelemeli) ve Agile (çevik) olarak genel bir sınıflama içerisine
alabiliriz. Her bir metodolojinin kendine özel yapısı olmakla birlikte Agile
diğerlerinden ayrılmaktadır. Agile iteratif yazılım geliştirmeden esinlenilmiş
ve bir grup oluşumu vardır ve grubun başarı kriteri tamamen grubun çıkardığı
işin kalitesiyle ölçülmektedir. Grup içerisindeki bütün üyeler deneyimli,
iletişime açık ve yardımlaşmanın ön planda olduğu, plandan sapma durumunda
herkes sorumluluğu üstenir. Daha fazla insan odaklıdır bu yüzden geliştirme
ortamına uyum sağlamak ve saygı temel felsefesini oluşturur. 2001 yılında
yayınlanan bir manifestosu
vardır ve özetle Agile'nin ne olduğunu açıklamaktadır. Agile bir
yazılım geliştirme metodolojisidir ve pratikte oluşturulmuş alt başlıkları
vardır. Bunları genel olarak şu şekilde sıralayabiliriz: RUP (Rational Unified
Process), Scrum, EP (Extreme Programming).
Ülkemizdeki durumu genel olarak değerlendirmek
gerekirse: Agile çok fazla bilinmeyen veya bilinmeden uygulaması yapılan
yöntemdir. Bilinçi bir şekilde uygulama yapan firma sayısının ise çok az olduğu
tahmin edilmektedir. Türkiye'deki Agile yöntemlerinin uygulaması konusunda
bilgiler vermek adına AgileTurkey isimli bir oluşum vardır. 2012
yılında başlatmış olduğu Türkiye'deki Agile yöntemlerinin uygulaması ile ilgili
durumun incelenmesine yönelik yaptığı çalışmalarda bazı önemli bilgiler
vermektedir. Bu araştırmalarda kullanılacak veriyi toplamak için hazırlanan
anketi geçen sene sektörden 400 kişilik bir gruba uygularken bu sene 540
kişilik bir grup üzerine uygulamıştır. Sonuçları gösteren bir rapor kendi
sayfasında yayınlamıştır.
Bu yılki anketini genel olarak değerlendirmek
gerekirse: çok fazla firma Agile kullanmıyor fakat buna rağmen kullanmak
isteyen azımsanmayacak bir kitle vardır ve 2013 sonuçlarındaki bu oran 2012
sonuçlarına göre daha yüksektir. Bu durum ise Agile'nin popülaritesinin/bilinirliliğinin
arttığını gösteriyor. Agile içeresinde en çok kullanılan pratik ise Scrum
olarak belirtiliyor. Diğer bir önemli çıkarım ise her ne kadar Agile
yöntemlerinde yazılımcı veya işi yapan kişinin daha fazla aktif ve adapte
olması gerekirse de Türkiye'de genelde yönetim kadrosunu daha fazla istekli
olduğu sonucu ortaya çıkmasıdır. Agile yöntemlerini bilinçli uygulamak önemlidir genel
olarak sertifikasyon bir işin bilindiğinin gerçek bir göstergesi değildir fakat
yine de elle tutulur bilgiler verebilmektedir. Agile için sertifika veren
kurumlar göz önüne alındığında sadece %12'lik küçük bir kesim Agile ile ilgili
sertifika almıştır.
Daha fazla bilgi için AgileTurkey tarafından yapılan
araştırma sonuçlarını inceleyebilirsiniz. 2013 raporunu buradan ve 2012 raporunu buradan indirebilirsiniz.