10/02/2014Bilgisayar Genel

Yazılım Projelerinde Proje Yönetimi

projeHer “Yazılım Projesi” öncelikle bir projedir. Bu nedenle yazılımın zamanında ve istenilen niteliklerle bitirilmesi projenin iyi yönetilmesine bağlı olacaktır. Başlangıcı ve bitişi belirli olan bir zaman aralığında, müşterinin istediği özelliklerde bir yazılımı, belirli kaynaklarda üretmekten bahsediyorum. Böyle söyleyince pek de yabancı gelmiyor kulağa değil mi? İşte “proje yönetimi” dediğimiz şey de bu zaten…

Müşteri bizden bir proje ister. Diyelim ki stok takibi. Ne kadar zamanda biter proje? Ne kadara mal olur?

Evet, şimdi top sizde…

Ne diyeceksiniz? Tabii hemen gönlümüzden geçen bir rakamı fiyat olarak verir, akla çok aykırı gelmeyecek de bir süreyi biçtik mi tamamdır.

Peki ya sonra…

Sonrasını ben söyleyeyim. Bir kere zaman hiçbir zaman tutmaz. Çünkü hesaplama yapmadan söylenmiştir? Neyi mi hesaplamadan? Birazdan değineceğim. Ayrıca rakam da tutmaz. Verdiğiniz süreyle orantılı olsun, müşteri kaçmasın, zaten ben yazacağım ne olacak bir maliyeti mi var dediyseniz, kesin fiyat konusunda da içeridesinizdir. Gerisini varın siz düşünün.

Peki, ne yapsaydık?

Bir kere yazılım projeleri de dâhil tüm projelerin doğası gereği üç temel bileşeni vardır:

1. Zaman, projenin ne kadar sürede tamamlanacağı.

2. Maliyet, proje için kullanılacak insan ve diğer kaynakların maliyeti.

3. Kapsam, proje sonunda müşteriye teslim edilecek özelliklerin toplamı. Yani müşterinin istediği şey.

Gördüğünüz gibi Tek Kişilik Yazılımevi boyutundan baktığınızda proje yönetimi çok karmaşık değildir. Ancak proje büyüdükçe; kaynaklar çeşitlendikçe ve kapsam genişledikçe işler biraz daha farklılaşır. Biz olaya ana hatlarıyla yaklaşmaya devam edelim.

Şimdi buraya kadar bahsettiklerimi toparlayacak olursam

• Projeler, belirli bir zaman aralığında gerçekleştirilir ve süre sonunda sona erer.

• Projeler, belirli bir amacı yerine getirmek için gerçekleştirilir. (Stok takip programı, CRM, alışveriş porteli)

• Her projede verilen sürede istenilenleri gerçekleştirmek için belirli kaynaklar kullanılır.

Şimdi gelelim projenin adımlarına.

1. İlk olarak amacın ne olduğu belirlenmeli. Amaçtan kasıt müşterinin sürenin sonunda beklediğinin ne olduğunun belirlenmesidir. Yazılımın özelliklerinin toplamı, projenin amacını oluşturur.

2. Sonraki adımda verilen zaman içerisinde istenilen özellikleri oluşturabilmek, amaca ulaşabilmek için kaynak planlaması yapılır. Hangi kaynağın, ne zaman, nerede ve nasıl kullanılacağını belirlersiniz?

3. Plan tamamlandıktan sonra sıra planı uygulamaya gelir. Burada uygulama sırasında gerekirse planda düzenlemeler yaparak amaca zamanında ve projeye atanmış kaynaklarla bitirmeye çalışırsınız.

4. Ve son olarak proje bitirilir ve müşteriye teslim edilir.

İşte size yazılım geliştirecekseniz bir gerçek daha: Yukarıda bahsettiğim seviyede bile olsa mutlaka proje yönetimini bilmelisiniz. Elinizdeki kaynakları ve zamanı planlamayı öğrenmelisiniz ki aldığınız işi istenen zamanda ve istenildiği gibi bitirebilin.

Son olarak arada açıkta kalan bir konuyu kapatalım. Proje için süreyi ve fiyatı ne zaman vermeliyiz? Yukarıdakileri dikkatlice okuduysanız büyük ihtimalle cevabı zaten bulmuşsunuzdur. Tabii ki proje süresini ve fiyatı, ne yapılacağı belli olduktan sonra ve elinizdeki kaynakları da göz önünde bulundurarak belirlemelisiniz.

En başta da söylediğim gibi, “Başarılı insanların planları vardır; başarısızların ise mazeretleri…”. Siz siz olun, mutlaka bir planınız olsun.

Kadir Çamoğlu