11 Şubat 2012 Cumartesi

Çevik Yazılım Projelerinde Başarının Anahtarları Nelerdir?


Başarının ne olduğunu düşündünüz mü? Hangi durumlarda kendinizi veya işinizi başarılı olarak değerlendirirsiniz? Herkesin kendine göre bir başarı tanımı vardır. Genel bir tanım bulmak gerekirse, Standish’in tanımına bakabiliriz, bütçe sınırları içinde ve istenen özelliklerle ürün sunabilmedir. Başarının farklı boyutları vardı: kurumsal başarı, teknik başarı ve kişisel başarı. Gerçek anlamda başarı bu üç boyutunda kesişimi olandır. Kurumsal başarının olmadığı bir ortamda kişisel başarının bir anlamı yoktur. Tam tersi kişisel başarının olmadığı bir ortamda tek başına kurumsal başarı yetersiz olacaktır. Bu yazıda bu üç başarının birlikte ortaya çıkması için gerekli olan anahtarlardan bahsediyoruz.

Projelerde başarının anahtarları birçok yerde yazılmış anlatılmıştır. Çevik Yazılım Geliştirme (Agile Development) yapılan projelerde başarının olmazsa olmazlarını altta listeledim:

·         Yönetim desteği: Yönetimin destek olmadığı bir çalışmanın kurum içinde destek görmesi ve başarılı olması mümkün değildir.

·         Ekip uyumu: Ekip üyelerinin uyumlu çalışabilmesi, birbirini tamamlar özellikler ile donanmış olmaları çok önemlidir.

·         Aynı lokasyona toplanmış ekip: Ekip üyelerinin aynı ortamda çalışması, sorularını doğrudan (telefon, eposta, vb gerek kalmadan) sorabilmeleri büyük avantaj sağlar.

·         Ekiple aynı ortamda ve birlikte çalışan müşteri: Müşterinin de ekiple birlikte olduğu, ekibin sorularına anında yanıt verebildiği bir ortam, proje süresini oldukça kısaltacaktır.

·         İdeal ekip büyüklüğü: Ekibin 4-6 teknik personel ve diğer personelden oluşması en idealidir.  

Bu ön koşulları oluşturduktan sonra, başarıya giden yolda en önemli ekibin nokta güçlü tasarım yetkinliğidir. Tasarımların sağlamlığı ileride oluşabilecek potansiyel sorunları önlemede, çıkabilecek yeni talepleri karşılamada en önemli yardımcı olacaktır. Arkadaşlık ve bağlılık olan bir ekip ortamı oluşturulması da başarıya giden yolda bir diğer yardımcı olacaktır. Seçilen yazılım dilinin yeniden düzenlemeye (refactoring) elverişli olması da iyileştirme çalışmalarına dolayısıyla  başarıya katkı yapacaktır. Agresif teslim tarihleri bir noktaya kadar ekibi motive etse de ulaşılması imkansız hedeflerin yarattığı stres, hedeflenen süreyi kısaltmak yerine uzatmaktadır (McConnell 1996). Ulaşılabilir ama iddialı hedefler konulması da ekibi motive etmektedir. Herkese başarılı projeler, keyifli çalışmalar...

Hiç yorum yok:

Yorum Gönder