Son yıllarda özellikle yazılım dünyasında sıkça karşılaştığımız bir terim olan Agile (Çevik), proje yönetimlerinde giderek yaygınlaşan proje yönetimi metodolojilerinden biridir. Kelime anlamı Türkçede çevik olan Agile kelimesinin kökeni, İngilizcede çeviklik anlamına gelen Agility kelimesidir. Agility/çeviklik, değişen koşullara hızlı ve kolay cevap verme kabiliyeti demektir.

Nasıl doğdu?

Yazılım dünyasında önde gelen bir grup mühendisin, müşterilerinde gerçekleştirdiği çeşitli yazılım projelerinin başarısızlıkla sonuçlanması üzerine, ekibin bir çözüm arayışına girmesi ve Agile Proje Yönetimini geliştirmeleri ile ortaya çıkar.  Bu yöntem, ilk etapta “Agile/Çevik Yazılım Projeleri Yönetimi” olarak ortaya çıksa da, zamanla yazılım dışındaki sektörlerdeki projelerin yönetimlerinde de uygulanarak, proje yönetimi metodolojileri arasında “Agile Proje Yönetimi” olarak yerini almıştır.

Nasıl gerçekleştirilir?

Tek bir cümleye sığdıramayacağımız dört farklı değeri, farklı metodolojileri ve bu metodolojilerin prensiplerinden oluşan, kapsayıcı bir çerçevedir. Agile Proje Yönetimi manifestosu ve prensiplerinin temelde hizmet ettiği ilke, değişen koşullara hızlı ve kolay cevap vermeye dayanır. Bu bağlamda, Agile Proje Yönetimi metodolojilerinin her birinde, belli aralıklarla (minimum iki haftada bir) baştan sona tekrarlayan bir döngü vardır.

Ana projeyi, bir nevi alt projeciklere bölerek, elimizde her zaman çalışan minimum özellikli bir yazılım olmasını sağlayan bu döngüyü, yazılım projelerinde geleneksel olarak kullanılan Waterfall (Şelale) proje yönetimi yönteminden farklı kılan nedir?

Waterfall (Şelale) ve Agile Karşılaştırması

Waterfall (Şelale) proje yönetimi yöntemi geleneksel proje yönetimi yöntemidir. Fazları sırasıyla:

  1. Gereklilikler: Projenin başında detaylı bir proje planı yapılarak ihtiyaçların ve ekipteki rollerin belirlenmesi ile başlar.
  2. Tasarım: Fonksiyonel kavramsal tasarım yapılır. Hem müşteri hem de yazılım ekibi kelime anlamıyla da “şelale” gibi ortalama 1 sene sonra canlı sistemde kullanımına başlanacak projenin tasarımını, doğrusal olarak A’dan Z’ye bu süreçte yaparlar.
  3. Uygulama: Bu aşamada müşteri yer almaz; yazılım ekibi kavramsal tasarımda onaylanmış süreci hayata geçirir.
  4. Test: Müşterinin sistemi ilk kez gördüğü aşamadır. Bu aşamada müşteri sistem hem son kullanıcı gözünden hem de bir admin kullanıcı gözünden tanımaya ve test etmeye başlar.
  5. Canlı Geçişi: Canlı sistemde kullanıma geçilir.

https://nttdata-solutions.com/wp-content/usermedia/waterfall-agile.jpg

Agile proje yönetimi metodolojilerinde, Waterfall(Şelale) yönteminde sıraladığımız beş adım, müşteri ile birlikte fiziksel olarak da aynı çalışma ortamında çalıştığımız ve herkesin hizalı olduğu bir yapıda, birkaç haftada bir yapılan canlı geçişleri ile sürekli tekrarlanır. Böylece, projenin başladığı süreden sonra birkaç haftadan itibaren elimizde müşterinin ihtiyaçlarına ilk etapta minimum düzeyde cevap veren, çalışan bir yazılım olur.

Örnek: “Araba” Yapımı