Çevik ve Scrum
Agile ve Scrum, proje yönetiminde kullanılan terimlerdir. Çevik metodoloji, sprint olarak da adlandırılan artımlı ve yinelemeli iş kadanslarını kullanır. Scrum ise yazılım geliştirmede kullanılan çevik yaklaşım türüdür.
Çevik
Çevik metodoloji proje yönetiminde kullanılır ve proje oluşturucuların doğası gereği öngörülemeyen yazılım uygulamaları oluşturmasına yardımcı olur. Bu metodolojide sprint adı verilen yinelemeli ve artımlı iş kadansları kullanılır. Temel olarak geleneksel sıralı modelden veya şelale modelinden esinlenmiştir.
Çevik metodolojiyi kullanmanın yararı, geliştirme döngüsü boyunca projenin yönüne erişilebilmesidir. Geliştirmeye yinelemeler veya sprintler yardımıyla erişilir. Her sprintin sonunda, projeyi geliştiren ekip tarafından bir iş artışı sunulur. Odak noktası esas olarak iş döngülerinin tekrarı ve ürettikleri ürün üzerindedir. Çevik metodolojinin artımlı ve yinelemeli olarak da adlandırılmasının nedeni budur.
Çevik yaklaşımda, gereksinimler, analiz, tasarım vb. geliştirmenin her adımı projenin yaşam döngüsü boyunca sürekli olarak izlenirken şelale modelinde durum böyle değildir. Böylece geliştirme ekipleri çevik yaklaşımı kullanarak projeyi doğru yöne yönlendirebilir.
Scrum
Scrum, yazılım uygulamalarının geliştirilmesinde kullanılan bir tür çevik yaklaşımdır. Bu sadece bir çerçevedir ve bir metodoloji veya tam bir süreç değildir. Ne yapılması gerektiğine dair ayrıntılı talimatlar sağlamaz, bunun yerine çoğu yazılımı geliştiren ekibe bağlıdır. Çünkü projeyi geliştiren kişi sorunun nasıl çözülebileceğini biliyor, bu yüzden üzerlerinde çok şey kalıyor.
Çapraz işlevli ve kendi kendini organize eden ekipler, hücum durumunda çok önemlidir. Bu durumda ekip üyelerine görev atayacak bir ekip lideri yoktur, bunun yerine tüm ekip sorunları veya sorunları ele alır. Fikirden projenin uygulanmasına kadar herkesin projeye dahil olacağı şekilde çapraz işlevlidir.
Çevik bir metodoloji olduğu için, aynı zamanda bir dizi yineleme veya sprint kullanır. Bazı özellikler, sprint'in bir parçası olarak ve her sprint'in sonunda geliştirilir; özellikler, kodlama, test etme ve ürüne entegrasyonundan itibaren tamamlanır. Bir sonraki sprint için yardımcı olabilecek geri bildirim alınabilmesi için her sprint sonunda sahibine işlevselliğin bir gösterimi sağlanır.
Ürün, bir saldırı projesinin birincil nesnesidir. Her sprint sonunda sistem veya ürün ekip üyeleri tarafından sevk edilebilir duruma getirilir.