Yazılım Projelerinde Doğru Analiz için 5 Öneri
Merhaba;
Bu yazımda; proje yaşam döngüsündeki en önemli adımlardan olan ‘Müşterinin İhtiyacını Anlama’ kısmına değineceğim. ‘Yazılım Projelerinde Kalitenin Önemi’ isimli yazımda da belirttiğim üzere Kaliteli bir yazılım için ihtiyacı doğru anlamak en önemli safhalardan biridir. ‘İhtiyacın doğru anlaşılmaması’ yazılım projelerindeki başarısızlık nedenlerinde büyük bir paydaya sahiptir.
İhtiyaca doğru odaklanmamızda etkili olduğunu düşündüğüm 5 temel kavram aşağıdadır.
- En önemli konulardan biri; eğer mevcut bir yazılımı müşteriye uyarlamaya çalışıyorsak, müşteriyi dinlerken; ‘müşterinin ihtiyacını kendi yazılımımıza nasıl adapte ederiz’ sorusuna odaklanırız ve ihtiyaca daha şeffaf bir bakış açısından ziyade, yönlendirme yapmaya başlarız. Bu yanlışı yapmamak adına; ihtiyacın çözümünü daha sonra düşünmeliyiz, önce ihtiyacı net olarak anlamalıyız.
- Müşteriden talebi dinlerken;ihtiyacın süslü taraflarına odaklanmayıp, ihtiyacın ana kısmını anlamaya çalışmalıyız. Pareto ilkesi (80’e 20 kuralı) ile baktığımızda; ‘müşterinin ihtiyacının % 80’i, geliştirilecek olan yazılımın % 20’lik kapsamında bulunmaktadır’ diyebiliriz. Bu nedenle asıl ihtiyaç olan % 20 ‘lık kısmı yoğunlaşmalı, kapsamın bu kısmı için daha net çözümler üretmeliyiz.
- İhtiyaca doğru teknoloji ile uzun vadede çözümler üretmeliyiz. Müşterinin ihtiyacını karşılamak adına, pahalı ama gereksiz teknolojilere yönlendirmek veya tam tersi kısa sürede çözüm adına eski teknolojiler ile çözümler üretmek yanlıştır. Müşterinin yazılım ihtiyacının ömrüne göre; o süre içerisinde maksimum fayda minimum gider sağlayacak bir çözüm üretmeye odaklanmalıyız.
- Eğer şirketin organizasyon yapısı elveriyorsa; müşteri ile yazılım geliştirici arasındaki katmanları minimuma indirmeliyiz. Özellikle büyük firmalarda karmaşık süreçler ve ekipler olduğu için iletişimdeki kanal sayısı artmaktadır. İletişimde kanal sayısı arttıkça; parazit olma ihtimali de aynı oranda artmaktadır. Bu nedenle iletişimdeki katmanları minimuma indirmeli ve ihtiyacın ‘Talep Sahibinden Yazılım Geliştirici’ ye kadar olan döngüsünde parazite yer vermemeli ve ihtiyacın doğru anlaşıldığından ‘Onay alarak’ emin olmalıyız.
- Talebi doğru iletecek kişileri işin içine katmak… Bir önceki madde ile benzer bir konu aslında. ‘Talep sahibi ile Yazılım geliştirici’ arasındaki katmanları minimuma indirmeliyiz demiştik. Fakat öncelikle ‘Talep Sahibi kim?’ sorusunu doğru cevaplamalıyız. Doğru paydaşların talep sürecine dahil olmasını sağlamalı, eğer doğru paydaşlarını analiz sürecine dahil edilmediğini düşünüyorsak, dahil etmeye çalışmalı, gerekirse bu konuda üst yönetim desteğini almalıyız
Tüm bu maddeleri yazılım geliştirme yöntemi fark etmeksizin uygulamamız daha doğru bir analiz için faydalı olacaktır.