Bunun doğru olduğunu düşünüyorum, bazı ortamlarda Agile, disiplinsiz bir bahane olarak kullanılıyor. Asıl sorun, neden herhangi bir metodolojiye sahip olduğumuz konusundaki görüşümüzü yitirdik. Şahsen, metodolojinin işlevsel olmayan, kalite niteliklerine hitap etmesi gerektiği, sistemin mimarisinin işlevsel olmayan, kalite özelliklerini ele alması gerektiği yönündeki mimari bir mesele olduğunu düşünüyorum; ve ark.)
Metodolojiyi proses nitelikleri için bir kontrol olarak görmek birkaç şeyi ifade eder: 1) metrikler olmadan bir metodolojinin etkinliğini diğerine göre kıyaslayamayız, 2) hangi özelliklerin önemli olduğu konusunda etkin bir karar verilmesi gerekir (teslimat süresi ve kod kalite vs bilgi aktarımı).
Hem metriklere hem de somut bir hedefe sahip olmadan, basitçe "sihirli kuş tüyü" olarak bir metodoloji seçiyoruz, eğer sıkı tutarsak, yazılımı sunabileceğiz.
Şimdi, Agile, XP, Scrum, vb. Söyleyiciler, bu belirli metodoloji kategorisinin kırılganlıklarından bahseder. Argüman şu: neden tüm kuralları takip etmek için disipline sahip olmayan bir kişi tarafından sabote edilebilecek bir metodoloji kullanıyorsunuz? Soru geçerli bir soru; Ancak, bu belirti, nedeni değil. Doğru ve anlamlı (bu zor kısım) süreç ölçümleri kümesi tanımlanır, test edilir ve zamanında geri bildirim verilirse, belirli bir metodolojinin başarı ile ilgisi olmadığını keşfedeceğimizi düşünüyorum. (Anektolojik olarak konuşursak, sayısız metodolojiyi kullanarak başarılı projeler gördüm ve aynı metodolojileri kullanarak iki katı başarısız oldum)
Peki ölçütler neler? Projeden projeye, takımdan takıma ve zaman zaman değişiyorlar. Teslimat planının önemli olduğu durumlarda kullanışlıdır, şahsen kullandığım bir tahmin yeteneği ve kalitesi. Çoğu geliştirici, bir hafta veya daha kısa süren görevleri doğru bir şekilde tahmin edebilir. Bu yüzden bir yaklaşım, projeyi bir hafta boyunca geliştirici olarak görevlere bölmek ve bu tahminde bulunanı takip etmektir. Proje ilerledikçe tahminlerini değiştirebilirler. Bir görev tamamlandıktan sonra, eğer% 10'dan daha fazla (günde 1/2) kapalıysa, bunu bir hata olarak görüyoruz - tahminin neden kapalı olduğunu tespit ediyoruz (yani bir veritabanı tablosu düşünülmedi), düzeltici eylem (yani tahminde DBA'yı dahil edin) ve sonra ilerleyin. Bu bilgileri kullanarak, haftada tahmin sayısı, geliştirici başına hata sayısı gibi metrikler oluşturabiliriz,
Ne olmuş yani? Metodolojiler ortaya çıktığında - süreç niteliklerini karşılamayan yordayıcı bir modeliniz varsa, metodolojinin bir kısmını eklemeyi veya kaldırmayı seçebilir ve modelinizi nasıl etkilediğini görebilirsiniz. Kabul edilirse, hiç kimse başarısızlık korkusuyla ilgili bir gelişim süreci oynamak istemez, ama biz zaten sürekli olarak yüksek ve öngörülebilir bir oranda başarısız oluyoruz. Bireysel değişiklikler yaparak ve sonucu ölçerek Agile'nin ekibiniz için mükemmel bir metodoloji olduğunu öğrenebilirsiniz, ancak RUP, şelale veya en iyi uygulamalardan oluşan bir çit yuvasını kolayca bulabilirsiniz.
Bu yüzden önerim, süreç olarak adlandırdığımız şey hakkında endişelenmeyi bırakıp, gelişim süreci hedeflerimizle ilgili kontrolleri yerine getirmemize ve bu süreci iyileştirmek için farklı tekniklerle denemeler yapmanıza izin vermektir.