Müşteri memnuniyetini artırmak ve beklentilerine çabuk cevap verebilmek amacıyla uzun vadeli ve katı planlama ve geliştirme süreçleri yerine değişen koşullara hızla adapte olup kısa aralıklarla yeni sürümler çıkarmyı öne çıkaran bir yazılım geliştirme disiplinidir.

Çalışanlar arası iletişime ağırlık verilir.

Belirli presipleri benimsemek gerekir. (http://agilemanifesto.org/principles.html)

İş Adımları:

Sprint Planlama: Sprint 2-3 haftalık fazdır. Takım 2-3 haftalık periyotta yapacağı işler belirlenir. Product owner product backlog oluşturur.Product backlog ürünle ilgili yapılması gereken iş listesidir. İlgili fazdaki yapılacak işleri takım belirler. Her işe zorluk derecesi(story point) atanı.

İşin Gerçekleştirilmesi: 2-3 haftalık sürede takım üyeleri kendilerine atanan işleri tamamlar.

Daily Scrum: Günlük yapılan 15 dakikalık toplantılardır. Dün ne yaptın, bugün ne iş yapacaksın şeklinde bilgi verilen kısa toplantılardır. Takım içerisinde birbirine yapılabilecek yardımlar konuşulur.

Sprint Gözden Geçirme: Sprint tamamlanınca yapılan, eksik kalan işlerin gözden geçirildiği toplantıdır. Bu toplantıya diğer takımlardan katılım olabilir.

Geriye Dönük Değerlendirme: Takım içerisinde iyi yapılan, yapılmayan yönlerin değerlendirildiği bir toplantıdır.

Temel dezavantajları:

Maliyet ve Süre Tahminlerinde Sapma: Analiz en başta detaylı bir şekilde yapılmayıp her tekrarda sistemin bir kısmı detaylı analiz edilmektedir. Sorunsuz görünen detaylar bazen büyük işlere yol açabilir. Bu da maliyet ve zaman açısından önemli sapmalara sebep olur.

Dokümantasyon: Dokümantasyonun zayıf olması proje çalışanlarının değişmesi sonucu yeni gelenlerin sistemi anlamasını zorlaştırmaktadır.

Fonksiyonel olmayan isterlerin gözden kaçması: Tekrarlar kullanıcının fonksiyonel isteleri bazında planladığında sistemin performans, güvenlik gibi isterlerine yeterince kaynak ayrılamayabilir.Bu durumda giderek hantallaşan bir sistem ortaya çıkabilir.

Bakım projelerinde, risk içeren ve gereksinimlerin en başta tüm detayı ile belirlenemediği projelerde, müşteriye hızlı sonuç dönülmesi gereken projelerde avantaj saplayabilecek bir yöntemdir.