
<
Bir uygulama geliştirme ya da var olan uygulamaya bir ek, değişiklik yapmak, analiz, tasarım, geliştirme, test, hata düzeltme, test, tasarım düzeltme, test, test rutini düzeltme, gene test gibi döngüsel bir süreçtir. Bu süreç içerisinde kritik olmasına rağmen belki de en küçük alan programlamlama parçasıdır fakat hemen göze çarpacağı üzere en önemli parça ise test dir.
Özellikle büyük projelerde, projenin başarısını arttırmak için bu süreçlerin en iyi nasıl yönetilebileceğine dair çeşitli çalışmalar yapılmış, yapılmakta
*.
Bu süreç içerisinde bir programcıdan beklenmesi gereken yapılmış bir analiz üzerinde, yapılmış bir tasarımı istenilen programlama dili ile üretmektir ya da en azından böyle olmalıdır.
Fakat gerçek hayatta karşımıza çıkan ise, programcıdan
- analiz olduğu iddia edilen, kullanıcının taleplerinden yola çıkarak uygulamayı geliştirmesi
- uygulama bittikten sonra kullanıcının bakıp, verilmiş olan hiçbir dokümanda yazmayan bir şey için "ama bu böyle olmaz ki, bu ama hep böyledir" dediği, iş kurallarının o olmazsa olmaz olan parçasını ondan daha iyi bilmesi
- araya başka işler ekleyen proje yöneticisinin, sanki diğer işleri kendisi araya eklememiş gibi "ne zaman bitecek?" tacizine katlanması
- her zaman acil olan uygulama ihtiyacını gerekirse uyumadan karşılaması
- kendi yazdığı uygulamayı test etmesi
- uygulama kurulumunu yapması
- gerekli olan sunucu ve ağ ortamlarını en iyi şekilde bilip ayarlaması
- daha sonra kullanıcıya bu uygulamayı nasıl kullanacağına dair eğitim vermesi hatta kullanım kılavuzlarını yazması
- kullanıcıların ya da sistem yöneticilerinin girmesi gereken ilk başlangıç değerlerini girmesi
- bu değerlerden ya da alınan verilerdeki herhangi bir bozukluktan kaynaklanan beklenmeyen durumların neler olduğunu bulup bir de bunların neden böyle olduğuna dair kullanıcıyı ikna etmesi
- sistem yöneticileri ya da kullanıcılar tarafından yapılan işlemler sonucunda hata alındığında, bir destek uzmanı olarak hatanın ne olduğunu tahmin edip ( "Tam şunu yapıyorduk ki hata aldık." "Hata mesajı nedir?" "Okumadım" ) karşı tarafın hiçbir şey yapmasına gerek kalmadan nerdeyse mucizevi bir şekilde çözmesi
- zamanında yapılmamış testler yüzünden çıkan hataları çözmek üzere gecenin bir yarısı gidip hiç bir kullanım hakkı olmayan sistemlerde veri düzenlemeye çalışması
- yukarıda sayılanların kat kat fazlasına hiç sesini çıkarmadan katlanması
beklenmektedir.
Bütün bu iş yükünden sonra da, sürecin yanlış işlediğini, projenin başarı oranının düştüğünü defalarca söylemenize rağmen, uygulamaların, kalitesi ve neden zamanında bitmediğine dair sorgulanırsınız.
Peki, sistem analist olarak, sistem tasarımcısı olarak, programcı olarak, test uzmanı olarak, teknik doküman yazarı olarak, destek uzmanı olarak, proje ve ekip yöneticisi olarak, sorumluluğunuz nerden nereye kadardır?
Araştırmaya üşenenler için uygulama geliştirme süreçlerine dair bir miktar bağ :
agilemanifesto.org
agilealliance.org
extremeprogramming.org
xprogramming.com
pairprogramming.com/p>
<
<