Selamlar,
Bugün içinde bulunduğumuz sektörün adını çıkaran bir durum olan, "iptal edilen projeler" veya "başlayıp da bitemeyen projeler" üzerine biraz içimi dökmek ve sizlerin de fikirlerini almak istiyorum. Bu yüzden başlıca birkaç sorunu herkesin fayda görmesi adına paylaşmak istedim, konu altındaki her bir yorumunuz çok değerli olacaktır.
1- Hem ucuz olsun, hem Facebook gibi olsun?
En büyük sorun genelde masada başlar. Müşteri piyasa şartlarının altında bir bütçeyle piyasa şartlarının üstünde özellikler ister. Sonucunda evet, bir anlaşmaya varılır. Ancak müşteri fazla ücret ödediğini düşünür, yazılımcı düşük ücrete emeğini verdiğini düşünür. Bu durumda iki taraf da mutlu olmaz, böyle bir proje de ilerlemez.
2- Yazılımcının prensip masasına yumruğunu vuramaması.
Suçu biraz da kendi tarafımızda arayalım, bir proje iptal oluyorsa suçun yarısından fazlası
hayır diyemeyen yazılımcınındır.
Müşteri kaybetme korkusuyla her zaman yetiştiririz tarzında yaklaşır, iyi bir yazılımcıya her hafta farklı kanallardan en az 8-9 yeni proje teklifi gelir. Ancak bunlardan sadece 1 tanesi gerçekten işi verir, doğal olarakta yazılımcı her projeye fiyat teklifi vermeden önce kağıt üzerinde tasarlayıp geliştirme planını çıkaramaz, ancak bir yazılım projesi böyle yürümez. Bir yazılım projesinin henüz iş başındayken kapsamı net bir şekilde çizilir, geliştirme planı tarih tarih çıkarılır.
3- Kervan yolda düzülür mantığı.
Proje başlıyor, her şey yolunda. Sonra bir telefon: "Özgür Bey şuraya bir de şu butonu eklesek?", "Bunu yapmışken şu modülü de bağlayalım." Başta küçük görünen bu eklemeler, projenin ana mimarisini bozmaya başladığında ipin ucu kaçıyor. Analizi baştan düzgün yapılmayan, yolda sürekli değişen bir projenin bitme ihtimali neredeyse sıfırdır. Yazılım iş başındaki plana göre geliştirilir, bitirilir. Ardından ne yapılacaksa ek ücret tekabülünde yapılır.
4- İletişim kopukluğu.
Yazılımcı teknik konuşur, müşteri hayal satar. Aradaki bu dil farkı tercüme edilmezse; yazılımcı harika bir kod yazar ama müşterinin istediği o değildir. Yazılımcı müşteriyi müşteriden daha iyi anlamalı, müşterinin hayalindeki platformu kendi hayalinde gibi görüp tasarlamalıdır. Müşteri ürünü gördüğünde "Benim hayalim bu değildi" derse, o proje orada ölür. İyi bir proje geliştirme ortamı için yazılımcının projeye proje sahibi kadar inanması gerekir.
5- MVP (Minimum Viable Product) nedir bilmeyenler.
Projeyi mezara götüren en sinsi düşmanlardan biri de "eksiksiz olsun" takıntısıdır.
- Sorun: Piyasaya çıkıp kullanıcı tepkisini ölçmek yerine, kapalı kapılar ardında aylarca "mükemmel" ürünü geliştirmeye çalışmak.
- Sonuç: Bütçe ve enerji, belki de kullanıcının hiç kullanmayacağı özellikler için harcanır.
Mantığıyla ilerlense, proje hayatta kalacak ve kendi kendini finanse edebilecektir. Ama bizde genelde "Ya yapmışken şu da olsun, bu özellik olmadan çıkmayalım" denildiği için proje hantallaşır ve asla bitiş çizgisini göremez.
Özetle; Bir projenin başarısı, yazılan kodun kalitesi kadar; doğru bütçe, gerçekçi beklenti, MVP kültürü ve dik durabilen bir yazılımcı-girişimci uyumuna bağlıdır.
Ayrıca, konuyla ilgilenenler için şu konuyu da mutlaka okumalarını tavsiye ederim. Forumun bu tarz kıymetli konulara ve üyelere çok ihtiyacı var.
https://www.r10.net/yazilim-kodlama-...ayik-olun.html