Geçen haftaki etkinlikte sık sorulan sorular, tecrübeli yazılım geliştiricilerden geliyor; bir konuya odaklanıyordu: Çevik yöntemler ve süreç bazlı yöntemlerin arasındaki çelişki!..
Yazılımda, süreçlere ve dokümanlara dayalı yaklaşımlara alışmış; kalite ve verimin yükselmesi için süreç iyileştirme modelleri üzerinde çalışan grup, çevik yöntemler ile CMMI gibi süreç bazlı yöntemlerin iki ayrı yaklaşımı temsil ettiğini düşünüyordu.
Tolga Gündüz ve Cenk Çivici bu düğümü şöyle çözüyordu: “CMMI süreç iyileştirme için kullanılabilecek bir modeldir ve modelin gereksinimlerinin nasıl karşılanacağı belli bir yöntemle kısıtlanmamaktadır. Bu modele uygun bir süreç uygulaması, çevik yöntemlerin etkin kullanımıyla da yapılabilir. Modelinin en önemli özelliğinin ağır dokümantasyon olduğu, süreç ekibinin doğal çalışma ritminin de bu ağır dokümantasyonu sağlayacak hantallıkta olması gerektiği düşünülür! Oysa, çevik yöntemlerle de (L3 seviyesine kadar) gerektiği kadar ve canlı bir dokümantasyon oluşturulabilir. Bkz: www.agilecmmi.com”
Bu ilginç siteye baktık. Gördük ki; artık Agile ve CMMI’ı içiçe kullanmak çok yaygın,“Agile CMMI” bir oxymoron* olarak literatüre geçmiş. Sitede, “Çevik Yöntem Manifestosu” ile CMMI arasındaki geçişler detaylı anlatılmış.
Özetle:
1. Süreçler ve araçlar “out” kişiler ve etkileşimler “in”: CMMI öğrenilmesi ve uygulanması gereken kurallar içerir. Çevik metodlar kuralsızlık demek değildir. CMMI sürecinde çevik yöntem kullanılsa da kurallara, planlamaya ve eğitime ihtiyaç duyulacaktır.
2. Kapsamlı dokümanlar “out” çalışan yazılım ”in”: CMMI’da bilgi, dokümanlarda ve eğitimdedir. Süreçler olgunlaştırılıp kurumsallaştırılarak kişilerden bağımsız hale getirilir. Çevik yöntem ise hantal dokümanlara fazla bağlılık taşımamakla esneklik ve hızlı üretim sağlar.
3. Sözleşme görüşmeleri “out” müşteri etkileşimi “in”: Sürece dayalı yöntemlerde müşteri ile geliştiricinin anlaştığı sözleşmede müşteri istekleri başlangıçta tam bilinmeyebilir, değişebilir, yorum farklılıkları olabilir veya teknoloji değişebilir. Çevik yöntemlerde müşteri aktif olarak işin içinde olduğundan hızlı geri besleme sağlanır.
4. Plana bağlı kalmak “out” değişikliğe uyum “in”: İsterlerin değişmesi sürece dayalı yöntemlerde sorun yaratır. Çevik yöntemler değişimin kaçınılmaz olduğu durumlara daha uygundur.
*oxymoron : içinde anlamı çelişkili iki sözcük bulunan ifade
M. Şirin Aktaş