Yazılım Geliştirme # Software Development

Ben bu Türkiye'deki yazılım sektörüne taktım arkadaşlar. Haddime düşmese de gördüğüm yanlışlıkları sizlerle paylaşayım ki bizler de aynı hatalara düşmeyelim düşenleri uyaralım hatta ellerinden tutup kaldıralım.

Malesef ülkemizde yazılım şirketleri işi profesyonelce yapmak yerine kısa yoldan halletme ve acilen köşeyi dönme hesapları yapmakta. Elbette istisnai şirketlerimiz var. Hatta göğsümüzü kabartanlar da var. Onlar bu eleştirilerden müstesna.

Daha önceki bazı yazılarımda da bu konuya kısmen değinmiştim. Kullanılan programlama dillerinden bahsetmiştim. Şimdi ise ekip ve departmanlardan, aşamalardan bahsetmek istiyorum. Ama önce şu tespiti sizlerle paylaşmam lazım. Bu bir tespit, önyargı v.s. değil.
Bahsettiğim yurdum yazılım firmalarnın bir çoğu, 2-5 arası programcı arkadaş çalıştırır. Genelde de bunlar ekip olarak değil de bireysel projeler yazarlar. Yazarlar ama nasıl?
Örnek veriyorum;
- Emlak Programını sen yazacaksın.
- Peki abi. Ama ben emlak sektörünü pek bilmem nasıl olur? Neler lazım? ArGe vercek misiniz?
- Ne argesi emlak işte, ev, arsa, tükkan alım satım kiralama olcak. Ne yoksa yazamaz mısın?
- Yazarım abi... Yazarım....

Arkadaşımız verilen bu aydınlatıcı bilgiler doğrultusunda olayı tek başına kurgulamaya çalışır, mevcut emlak programlarını inceleyerek fikir edinir, Veritabanını kendisi modeller, Form tasarımlarını kendisi yapar, ve kodlamaya başlar.

Tamam verdiğim örnekdeki emlak programı belki size küçük bir proje gibi gelebilir ve 1 kişi yapabilir bunları görüşünü öne sürebilirsiniz. SÜRMEYİN! Bu kadar küçük veya basit gibi görünen bir projede bile tüm işi 1 kişiye yüklerseniz 1 aylık proje olur size 3 ay. Üstelik sonunda istediğiniz gibi bir program çıkmadığı gibi Test ve Beta süreci de hayal edemiyeceğiniz kadar uzun sürer. Projenin gelişimi esnasında da programlamadan anlamayan ama bir şekilde sizin şefiniz, hatta patronunuz arada bir gelip şuraya bir buton koy ona basılıncada şöyle şöyle olsun diye ahkam kesmezse olmaz. Bir de "Biz niye kaliteli yazılım yapamıyoruz?" diye dizinizi döversiniz.

Peki olması gereken ekip ve çalışma planı ne? Müsadenizle Şekillerle izah etmeye çalışayım.






Bir yazılım projesinin ekip ve süreç yönetimi gayet açık bir şekilde karşınızda. Eğer bu kriterleri hiçe sayıp hala bildiğinizi okumakta ısrar ederseniz daha çok dizinizi döversiniz benden söylemesi.
Peki neden bu kriterlere uygun yazılım firmalarımız veya projelerimiz azınlıkta. Sebebi çok açık;
1. Yazılım firmaları, yazılımı hafife ve basite aldıkları için,
2. Daha az eleman ile yani maliyetle daha çok para kazanacakları gafletine düşmeleri,
3. ArGe ve Kaliteli yazılım, görev dağılımı, ekip bilinci gibi kavramlardan yoksun olmaları.

Bu kadar yeterli. Daha fazla üstlerine gidersem nem'e lazım bir daha yazılım piyasasında iş bulamam :)

Ha bir de şu var. Adam masaüstü db programı yapacak .NET ci arıyor. 5-10 tabloluk bir DB olacak MsSql Server hatta Oracle kullanmayı düşünüyor. Peki neden?
Bunu da ben söyleyeyim, bu kavramlar son kullanıcı tarafından bilinen şeyler olduğu için neymiş efendim biz projelerimizde son teknolojiyi kullanırız havasını atmak. Yerim sizin havanızı. Hava atmakla değil doğru, düzgün, kaliteli işler yapmaya uğraşın.
Ama biliyorum gecenin 02:11 inde ben gene boşuna gırtlak patlattım yok pardon yanlış deyim oldu, boşuna parmak yordum.....

Herşeyin hayırlısı olsun..... Okyanus - Atlas

Hiç yorum yok: