Yazılım mühendisi, bilgisayar yazılımını tasarlamak, geliştirmek, sürdürmek, test etmek ve değerlendirmek için yazılım mühendisliği ilkelerini uygulayan kişidir. Bazen programcı teriminin yazılım mühendisi ile eşanlamlı olarak kullanıldığını görebilirsiniz.
Yazılım Gereksinimleri
Gereksinim mühendisliği, yazılım gereksinimlerinin ortaya çıkarılması, analizi, spesifikasyonu ve doğrulanması ile ilgilidir. Yazılım gereksinimleri üç farklı türde olabilir. İşlevsel gereksinimler, işlevsel olmayan gereksinimler ve alan gereksinimleri.
-İşlevsel gereksinimler, bir sistemin neyi başarması gerektiğini tanımlayan hesaplamaları, teknik ayrıntıları, veri manipülasyonlarını ve diğer özel işlevleri içerebilir.
-İşlevsel olmayan gereksinimler, taşınabilirlik, güvenlik, sürdürülebilirlik, güvenilirlik, ölçeklenebilirlik, performans, yeniden kullanılabilirlik ve esneklik gibi konularla ilgilidir. İşlevsel olmayan gereksinimlerin belirlenmesi söz konusu olduğunda, sistemin veya yazılımın nasıl çalıştığına ilişkin bilgi gereklidir.
-Alan gereksinimleri, belirli bir kategori veya proje alanının özelliği ile ilgilidir.
Yazılım Analizi
Yazılım analizi, bilgisayar programlarının performans, sağlamlık ve güvenlik gibi özelliklerle ilgili davranışlarını analiz etme sürecidir. Program yürütülmeden (statik program analizi), çalışma zamanı sırasında (dinamik program analizi) veya her ikisinin bir kombinasyonu halinde gerçekleştirilebilir.
Barış Baran ÇİÇEK