İçeriğe geç
parazade

Yazılım Mühendisliği Nedir?

İngilizce: Software Engineering

Yayın: · Son güncelleme:

Yazılım Mühendisliği Nedir? Kısaca

Yazılım mühendisliği, yazılımı mühendislik ilkeleriyle planlayan, tasarlayan, test eden ve yıllarca bakımını sürdüren disiplindir. Amaç yalnız çalışan değil, güvenilir, ölçeklenebilir ve değiştirilmesi kolay yazılım üretmektir.

Yazılım Mühendisliği nedir?
İçindekiler
  1. Yazılım mühendisliği nedir?
  2. Bir yazılım mühendisi ne yapar?
  3. Programcılıktan farkı

Yazılım mühendisliği nedir?

Yazılım mühendisliği, yazılım üretimine köprü ya da bina yapımındaki gibi planlı ve ölçülebilir bir yaklaşım getiren disiplindir. Tek başına kod yazmanın ötesine geçer: gereksinimleri belgelemek, mimariyi tasarlamak, test stratejisi kurmak ve ekip çalışmasını düzenlemek de bu alana girer.

Bu sorunun, yani "yazılım mühendisliği ne demek" sorusunun meslek tarafı da var. Türkiye'de üniversitelerde ayrı bir lisans bölümü olarak okutulur, mezunlar genellikle yazılım geliştirici, test uzmanı ya da sistem tasarımcısı olarak çalışır.

Bir yazılım mühendisi ne yapar?

Gündelik iş, kod yazmak kadar karar vermekle de ilgilidir. Bir mühendis, örneğin günde 50.000 sipariş alan bir sitenin kampanya gününde çökmemesi için sistemi nasıl bölmesi gerektiğini düşünür. Hangi veritabanının seçileceği, hataların nasıl izleneceği ve yeni özelliklerin eskileri bozmadan nasıl ekleneceği de onun masasındadır.

Tipik sorumluluklar:

Programcılıktan farkı

Programcı belirli bir işi koda dökmeye odaklanır. Mühendis ise o işin bütün sistem içindeki yerini, maliyetini ve uzun vadeli bakımını hesaba katar. Pratikte iki rol sık sık iç içe geçer.

Bu alana ilgi duyuyorsanız tek bir dil öğrenmekle yetinmeyin. Küçük bir projeyi baştan sona, test ve belgeleriyle birlikte tamamlamak, mühendislik bakışını en hızlı kazandıran alıştırmadır.

Sıkça Sorulan Sorular

Yazılım mühendisliği ne demek, bilgisayar mühendisliğinden farkı ne?

Yazılım mühendisliği yazılımın planlanması, geliştirilmesi ve bakımına odaklanır. Bilgisayar mühendisliği ise donanım, elektronik ve yazılımı birlikte ele alan daha geniş bir alandır.

Yazılım mühendisi olmak için diploma şart mı?

Unvan olarak mühendislik diploması gerekir. Ancak sektörde yazılım geliştirici olarak çalışmak için diploma kadar portfolyo ve gerçek proje deneyimi de değerlendirilir.

İlgili terimler

Yazılım Geliştirme(Software Development)Yazılım geliştirme, bir ihtiyacı çalışan programa dönüştürmek için yapılan analiz, tasarım, kodlama, test, yayına alma ve bakım işlerinin tamamıdır. Yalnız kod yazmayı değil, sürecin her adımını kapsar.Yazılım Mimarisi(Software Architecture)Yazılım mimarisi, bir yazılım sisteminin ana bileşenlerini, bu bileşenlerin birbiriyle nasıl iletişim kurduğunu ve sistemin hangi ilkelere göre büyüyeceğini belirleyen üst düzey yapı ve kararlar bütünüdür.Yazılım Testi(Software Testing)Yazılım testi, bir programın beklendiği gibi çalışıp çalışmadığını kontrol etmek ve hataları kullanıcıya ulaşmadan bulmak için yapılan sistemli denemelerin bütünüdür. Elle ya da otomatik araçlarla yapılabilir.Yazılım Geliştirici(Software Developer)Yazılım geliştirici, kullanıcıların ya da işletmelerin ihtiyaçlarını karşılayan programları, web sitelerini, mobil uygulamaları ve sistemleri tasarlayan, kodlayan, test eden ve bakımını yapan kişidir.Yazılım(Software)Yazılım, bir bilgisayarın ya da akıllı cihazın ne yapacağını adım adım tarif eden programların, verilerin ve talimatların bütünüdür. Donanım fiziksel parçaları, yazılım ise bu parçaları çalıştıran mantığı ifade eder.Gereksinim Analizi(Requirements Analysis)Gereksinim analizi, bir yazılımın ne yapması ve hangi koşulları karşılaması gerektiğinin paydaşlarla birlikte belirlenip yazılı, ölçülebilir ve onaylanmış maddelere dönüştürüldüğü yazılım geliştirme aşamasıdır.Sürekli Entegrasyon(Continuous Integration)Sürekli entegrasyon (Continuous Integration, CI), geliştiricilerin kod değişikliklerini gün içinde sık sık ortak depoya birleştirdiği ve her birleştirmede otomatik derleme ile testlerin çalıştığı yazılım geliştirme pratiğidir.