Agile
Agile (Çevik), ekiplerin müşterilerine daha hızlı ve daha az sorunla değer sunmasına yardımcı olan proje yönetimi veya yazılım geliştirmeye yönelik yinelemeli (iterational) bir yaklaşımdır.
Agile (Çevik) Yazılım Geliştirme: Scrum, Extreme Programming veya Feature-Driven Development (FDD) gibi framework gruplarının genel adıdır.
Çevik Yazılım Geliştirme Manifestosu, 2001 yılında oluşturulduğu zaman değer sağlama ve müşterilerle işbirliği yapma konusunda çığır açan bir zihniyet ortaya koydu.
Agile dört temel değerden oluşur:
- Süreçler ve araçlar üzerinden bireyler ve etkileşimler
- Kapsamlı belgeler üzerinde çalışan yazılım
- Sözleşme müzakeresi üzerinden müşteri işbirliği
- Bir planı izleyip değişime yanıt vermek
Değer 1: Bireyler ve Etkileşimler
Yazılım ekipleri daha önce yazılımlarını oluşturmak ve ortaya bir ürün çıkarmak için mümkün olan en iyi araçlara ve süreçlere sahip olmaya odaklanırlardı. Agile (Çevik) Manifestosu, bu şeyler önemli olsa da, süreçlerin arkasındaki insanların daha da önemli olduğunu öne sürüyor. Çünkü, yanlış bir ekipte en iyi araçların hiçbir değeri yoktur.
Bir yazılım ekibinin doğru kişilerden oluşması başarı için hayati önem taşır. En önemli olan şey ekibin birbiriyle nasıl iletişim kurduğudur. Ekip üyeleri arasındaki etkileşimler, işbirliği yapmalarına ve ortaya çıkan sorunları çözmelerine yardımcı olur.
Değer 2: Çalışan Yazılım
Geçmişte, yazılım ekipleri ürünün geliştirilmesi, ürünün belgelenmesi ve nihai teslimat için oldukça fazla zaman harcarlardı. Bunun sebebi, belgelerin çok fazla detay içeriyor olmasıydı. Gerekli teknik özellikler, gereksinimler, arayüz tasarımı belgeleri, test planları vb. Agile (Çevik), belgeleri ortadan kaldırmıyor ancak geliştiriciye, küçük ayrıntılara takılmadan işi yapması için gerekenleri veren bir biçimde düzenler. Gereksinimleri, bir yazılım geliştiricinin yeni bir işlev oluşturmak için görevine başlamasına yeterli olan kullanıcı hikayeleri olarak belgeler.
Kısaca, çevik manifestosu belgelere değer verir ama çalışan yazılıma daha çok değer verir.
Değer 3: Müşteri İş birliği
Agile (Çevik) manifestosu, müşteri odaklıdır. Bir müşteri için ürün geliştirmenin üzerindeki önemini vurgular. Yine agile (çevik) ilkeler müşterilerin bir projenin tüm aşamalarında yer almasını gerektirir. Agile olmadan, Waterfall veya Türkçe adıyla şelale yaklaşımı gibi geleneksel yaklaşımlar kullanıldığında müşteriler ile proje bittikten sonra anlaşılmasına veya pazarlık yapılır. Bu da, hem zaman hem de kaynak olarak israfa neden olur.
Değer 4: Değişime Yanıt Verme
Bir yol haritanızın olduğunu düşünün ama bu yol haritası hiçbir zaman değişmeyecek. Proje yapacaksınız ve başta bir yol haritası çıkarıyorsunuz ama bir daha hiçbir değişiklik yapmıyorsunuz. Bir proje için elbette ki koşullar değişebilir ve bazen müşteriler nihai üründe proje kapsamını değiştirebilecek extra özellikler talep edebilirler. Agile, geçmiş yönetim metodolojilerinin aksine, proje başlamadan önce ayrıntılı ve kesin planlar kullanmaya karşı olup değişime her zaman için yanıt vermektedir. Bu vesileyle, proje yöneticileri ve ekipleri kaliteli bir ürün sunmak ve %100 müşteri memnuniyeti sağlamak için hızlı ve uyum içinde çalışırlar.