İyi Yazılım

İyi yazılım paylaşımları

Yazılım Projelerinde "Proje Yönetimi" Boyutu

"Başarılı insanların planları vardır, başarısızların ise mazeretleri…"

Her “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
kadircam@hotmail.com

Okuyucu Yorumları

Toplam 4 Yorum

Yazılım geliştirme özellikle ülkemizde maliyetsizmiş gibi görünen bir konu. Oysa Microsoft'un dediği gibi : "Aslında yazılım geliştirmek çok maliyetli bir iştir." Bence Kadir Bey, tek kişinin program yazma sürecini bu kadar basite indirgememeliydi. Çünkü, emek açısından grup çalışmasından aşağı kalır yanı olduğuna inanmıyorum.

Yorum yapan kişiye bende katılıyorum. Ama buradaki hedef proje yönetimini bilincini kavratmak.

Oldukca basite indirgenmiş hali elbette.

Kadir Bey tek kişinin program yazma süreci ile ilgilenmiyor dikkatinizi çekerim. Proje ile program arasındaki farkı kavrayınız...

Kadir beye katılıyorum.Proje bir müşteriye maddi bir değer karşılığı emek harcanarak sağlanan hizmetler bütünüdür.Sadece yazılım değil.Dolayısıyle zaman,maliyet ve kapsam süreçlerinden geçilmelidir, ki başarıya bir adım yakın olunsun.Ve projenin tanımında da kişi sayısından ziyade bir hizmet kavramı vardır.Kadir beyi anlamak için yeterli sanırım.Teşekkürler kadir bey...

Sen de yorum yaz

Takip Edin