Çevik (Agile) Yaklaşımlar mı, Şelale (Waterfall) Modeli mi?

Doğru yöntem, projelerin ve dolayısıyla işletmelerin başarılı olmasını sağlayan unsurların başında gelir. Hatta denilebilir ki yanlış yöntemle ilerlemeye çalışmak, yöntemsizlik kadar vahim sonuçlar yaratabilir. Örneğin, projenin başarısızlığa uğraması bir yana, beklenenden daha fazla iş üretilmesi veya projenin teslimat tarihine yetişmemesi gibi. Dolayısıyla takımlar için en uygun yöntemin belirlenmesi şarttır. Bu yazımızda Çevik (Agile) yaklaşımlar ile Şelale (Waterfall) Modeli’ni detaylarıyla ele alacak ve artılarıyla, eksileriyle kıyaslayacağız.

 

Agile Yaklaşımlar

Agile, yani Çevik, paydaşların değişen gereksinimlerini zamanında ve uygun maliyetlerle karşılayan, yinelemeli ver artırımlı bir yaklaşımdır. Organize olmuş takımlarca, iş birliği içerisinde geliştirilir. Alışılagelmiş yöntemlerin kimi konularda eksik kalması nedeniyle 20. yüzyılın sonlarında üzerinde durulmaya başlanan Çevik yöntemler, 2001 yılında ortaya konmuş, 2010 yılı itibarıyla da tüm dünyada yaygınlaşmaya başlamıştır. (Agile Manifesto’da geçen değerler ve 12 ilke hakkında bilgi edinmek için lütfen tıklayınız.)

Ampirik bir yaklaşıma dayanan Çevik yöntemlerde geri bildirimler, edinilen tecrübeler ve tespit edilen aksaklıklar üzerine safhalar hâlinde yinelemeler yaşanır ve ürün geliştirilirken fazladan deney yaparak yenilikler ortaya koyabilme şansı yakalanır. Kaynakların ne şekilde kullanılacağını ise en iyiyi hedefleyen takımlar belirler. Eksisiyle artısıyla takımlar, ürün üretiminden bizzat sorumlu olduğundan iş birliği Çevik yönteminde oldukça önemlidir. Agile yaklaşımlarına uygun yürütülen faaliyetler, müşterinin ihtiyacını tam olarak karşılayan ürün üretilene kadar devam ettirilir. 

Günümüzde dünya genelinde yaygın olarak kullanılan yaklaşım Scrum’dur. Scrum’un yanı sıra Kanban ve XP (Extreme Programming) de değer görür. (Scrum ve Kanban arasındaki farklara ilgili bilgi edinmek için lütfen tıklayınız.) Kimi işletmeler, ihtiyaçlarını karşılamak için bu metodolojileri bir arada da kullanabilmektedir. 

Agile yaklaşımlarının Artıları
  • Projeler safhalar hâlinde ancak yinelemeli olarak sürdürüldüğü için değişse bile şartların kolay bir şekilde yönetilmesine imkân sunar. Ayrıca, yine aynı nedenle hataların erkenden tespit edilmesi mümkün olur, proje riski azalır.
  • Çevik düşünme tarzının benimsenmesiyle takımlar daha üretken hâle gelir.
  • Merkezinde iletişim olması sebebiyle takımlar sürekli motive hâlde olur. 
  • İş yükü azalır, süreç hızlanır (2 hafta ila 2 ay arasında tamamlanır), ürün pazara daha hızlı bir şekilde giriş yapar.
  • Geliştirme süresince hata yapılması sorun yaratmaz. Sürekli geri bildirim alınmasıyla geriye dönük aksaklıklar kolayca saptanarak düzeltilir ve nihai tüketicinin istek ve beklentisi tam anlamıyla karşılanır. 
Agile Yaklaşımlarındalerinin Eksileri

 

  • İş birliği zaruri olduğundan iletişim teknolojilerine ve altyapısına yatırım yapılmasını gerekli kılar.
  • Kimi sistemler yinelemeler için safhalara ayrıştırılamayabilir. 
  • Takımı oluşturan bireylerin her birinin Çevik kültürünü benimsemesi gerekir. Ayrıca, tecrübesiz üyelerden oluşan takımların projenin gidişatını riske sokması olasıdır.
  • İhtiyaçların ve/veya projeye yönelik beklentilerin değişken özellikte olmaması gerekir. Değişen kararlar projeyi olumsuz yönde etkiler. Ek olarak doğru tanımlamalar yapılabilmesi için nihai kullanıcının/müşterinin projeye dâhil olması gerekir.
  • Teslim tarihi net olarak verilemeyebilir.,
  • Dokümantasyon yetersizliği söz konusudur. 
  • Çevik yaklaşımı kullanılarak üretilen ürünlerin bir diğer projede kullanılması söz konusu değildir. Zira ilgili ihtiyaca yönelik üretilirler.
  • Süreç boyu yapılan testler, kimi durumlarda yeterli olmayabilir.
  • Fonksiyona odaklanıldığından kullanıcı arayüzü ile kullanıcı deneyimi arka planda kalabilir. 

    Agile dönüşüm ilk bakışta çok bilinmeyenli bir denklem gibi karmaşık görünebilir. Buna karşın Makers Türkiye’den gerekli eğitimleri ve danışmanlıkları alarak siz de Agile dönüşüm için gereken ihtiyaçlarınızı belirleyip eksiksiz olarak karşılayabilirsiniz. Detaylı bilgi almak için lütfen bize ulaşın.

Waterfall Modeli

Waterfall, yani Şelale Modeli, Agile Yaklaşımlarında aksine yinelemeyi teşvik etmeyen, yazılım mühendisliğinin temel modelidir. 1968 yılında Almanya’da düzenlenen Yazılım Mühendisliği Konferansı’nı müteakip (1970 yılında) Dr. Winston W. Royce tarafından tanıtılmıştır. Bu tanıtım çerçevesinde model, Çevik uygulamalara taban oluşturmuş olsa da zaman içerisinde değişerek bugünkü hâlini almış ve projelerin yönetim standardı olarak kabul görür olmuştur.

Modelin safhaları; sistem gereksinimleri, yazılım gereksinimleri, analiz, tasarım, kodlama, test ve entegrasyon, idame ve bakımdır. Safhalar, bir sonraki safhanın girdisi olduğundan geri dönüşlere izin verilmez zira dönüşlerin maliyeti bir hayli fazla olur. Agile Yaklaşımda esneklik söz konusu değildir; uygulanışı katı bir disiplin gerektirir. Model kapsamında en başta gereksinimler/ihtiyaçlar tüm yönleriyle ve eksiksiz olarak ortaya konur, önden büyük tasarım yapılır.

Waterfall Modeli’nin Artıları
  • Proje başlamadan yapılan tanımlamalar, teslimat süresi ve maliyet tahmininin daha gerçekçi olmasını sağlar. Bu da projedeki belirsizliklerin önüne geçilmesine yarar.
  • Şelalenin çalışma mantığını kavramak kolaydır zira süreçlerin ayrıntılı tanımlamaları yapılmıştır. Bu kolaylık, tecrübesiz yönetici ve ekiplerin projeyi sorunsuz bir şekilde yürütmesine olanak sunar.
  • Bir safha tamamlanmadan diğerine geçilmediğinden proje kolaylıkla takip edilebilir. Ayrıca, engellerle karşılaşmadan ilerlemek mümkün olur.
  • Dokümantasyon eksikliği yoktur ve bu, projenin güncel hâlinin değerlendirilebilmesine ve yüz yüze iletişime duyulan ihtiyacın azalmasına yarar.
  • Müşterilerin her safhada projeye katılımını gerekli kılmaz.
Waterfall Modeli’nin Eksileri
  • Olası bir değişiklik isteği ya da tespit edilen aksaklık sonrası geriye dönük güncellemelere veyahut geliştirmelere izin vermez. Bu da modeli riskli kılar. Ayrıca, tespit edilmiş bir hata, daha sonraki safhalara da sirayet eder. 
  • Başlangıçta ihtiyaçların/beklentilerin net bir şekilde tanımlanmamış olması, ortaya hatalı ya da eksik bir ürün çıkarılmasına yol açabilir. 
  • Yavaş ilerleyen bir süreçtir. Çalışmalar aylar sürer ve müşteriler son aşamalara yaklaşmadan ürünle tanışmaz.
  • Dokümantasyon oluşturma gerekliliği, geliştiricilerce yük olarak algılanır.
  • Tasarım ve kodlama aşamalarına gelmeden sistem bileşenindeki eksiklikler, ihtiyaçlardaki tutarsızlıklar veya umulmadık geliştirme gereksinimleri tespit edilemez. Ayrıca hataların tespiti ancak sistem testi yapıldığında ortaya çıkar. 
  • Safhaların girdi-çıktı özelliğinde olmaları nedeniyle olası bir gecikme, diğer safhalardaki üyelerin de zaman kaybı yaşamasına neden olur.
  • Yaratıcılığa ket vuran bir modeldir. 

Çevik Yaklaşım vs Şelale Modeli

Projelerin başarısının doğru yöntemi uygulamaya almaktan geçtiğinden bahsetmiştik. Andığımız üzere aynı amaçla ortaya çıkmış olsa da klasikleşmiş Şelale Modeli, Agile yaklaşımların tam karşısında durur. İşte, kesiştikleri ve karşı karşıya geldikleri noktalar:

  • Her ikisinde de bir planlama söz konusudur. Buna karşın Şelale Modeli’nde uzun vadeli, Agile lerinde kısa vadeli planlamalar yapılır. Ayrıca, Şelale Modeli’nde, Çevik Yaklaşımlarının aksine her ayrıntı titizlikle planlanmalıdır.
  • Şelale Modeli’nin takip ettiği bir görev sırası vardır. Bir safha tamamlanmadan diğer safhaya geçiş yapılmaz. Çevik yöntemlerde ise bu tür bir düzen söz konusu değildir. Sondan başa doğru ilerlemek dahi mümkündür. 
  • Detaylı incelemeler ikisinde de vardır. İncelemeler, Şelale Modeli’nde dokümantasyonla ve safhalar arası geçişte, Agile Yaklaşımlarında ise yinelemelerle ortaya çıkan ürünler ve müşteriler vasıtasıyla yapılır.
  • Kullanımı kolay olmasına karşın Şelale Modeli, maliyeti bir hayli artırması nedeniyle değişikliklere kesinlikle izin vermez. Çevik Yaklaşımlarında ise değişiklik, ürünün nihai hâline getirilmesine katkıda bulunur. 
  • Agile Yaklaşımları esnek yapısıyla yaratıcılığın ortaya çıkmasına olanak sunarken Şelale Modeli katı bir mühendislik yaklaşımı sunar. 
  • Çok sayıda planlamanın bulunduğu Şelale Modeli; çok büyük, değişme ihtimali bulunmayan, tam anlaşılmış projeler için uygundur. Çevik yaklaşımlarda ise tam tersi bir durum söz konusudur.

 

Agile Yaklaşımları mı, Waterfall Modeli mi projenizi başarıya götürür? Cevabını merak ediyorsanız doğru bir tercih yapmak için Makers Türkiye’nin eğitimlerinden yararlanın. Detaylı bilgi almak için lütfen tıklayınız.

 

Size ulaşmamız için aşağıdaki formu doldurun.


bir yorum bırakın