Görkem

WFN Üye
Konular
1,511
Mesajlar
1,535
Çözüm
1
Ticaret Puanı
0
Üyelik
1 Yıl 6 Ay 24 Gün
Konum
Adıyaman
Web Sitesi
Yok
Alanı
Reklam Al-Sat
1/1
Konu sahibi
Yazılım mühendisliği, yazılımı rastgele kod toplamak yerine gereksinimden bakıma kadar yönetilen bir süreç olarak kurma işidir. Kısacası, çalışan kod üretmek kadar doğru problemi çözmek ve çözümü sürdürülebilir tutmak da bu alanın parçasıdır.

Bu yazıda, yazılım mühendisliğinin ne anlama geldiğini, kodlamadan nerede ayrıldığını ve bir yazılım geliştirme işinde hangi aşamaları kapsadığını sade biçimde açıklayacağım. Ayrıca “iyi yazılım”ın sadece çalışan yazılım değil, aynı zamanda anlaşılır, test edilebilir ve bakım yapılabilir yazılım olduğunu nasıl anlamanız gerektiğini de göstereceğim.

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

Yazılım mühendisliği, yazılım geliştirmeyi tek seferlik bir yazma işi değil, baştan sona yönetilen bir mühendislik faaliyeti olarak ele alır. ISO’nun sözlüğü bu alan için ortak bir terminoloji sunduğunu, yaşam döngüsü standardı ise yazılımın edinim, geliştirme, işletim, bakım ve elden çıkarma süreçlerini kapsayan bir çerçeve kurduğunu söylüyor. Bu yüzden kavram, yalnızca programlama dili bilmekten daha geniştir.

Kod yazmakla aynı şey değildir​

Programlama, bir çözümün kod tarafını üretir; yazılım mühendisliği ise çözümün doğru ihtiyaçla başlamasını, teknik olarak kurulmasını ve zaman içinde bozulmadan yaşamasını hedefler. Bu fark pratikte gereksinim toplama, mimari düşünme, test etme ve bakım planlama gibi işleri zorunlu kılar. Böyle bakınca mühendislik, kodun etrafındaki kararları da kapsar.

Hangi işleri kapsar?​

Tipik yazılım mühendisliği işi; ihtiyacı anlamak, çözümü tasarlamak, kodlamak, test etmek, yayınlamak ve sonrasında güncellemeleri yönetmekten oluşur. ISO/IEC/IEEE 12207 bu yaşam döngüsü içinde geliştirme, operasyon, bakım ve elden çıkarma gibi süreçleri açıkça sayar. Bu nedenle yazılım mühendisliği, yalnızca ilk sürümü çıkarmayı değil, ürünün sonraki hayatını da planlamayı içerir.

BaşlıkAnlamı
Kısa tanımYazılımı planlı süreçlerle geliştirme, doğrulama, yayınlama ve sürdürme disiplinidir.
Kod yazmaktan farkıSadece programlama değil; gereksinim, tasarım, test, bakım ve değişiklik yönetimi de dahildir.
Temel çıktıÇalışan kodla birlikte sürdürülebilir, anlaşılır ve güncellenebilir bir ürün hedeflenir.
Nerede kullanılır?Tek kişinin yazdığı küçük araçlardan büyük kurumsal sistemlere kadar her ölçekte uygulanır.
Öğrenirken ilk sırada ne var?Gereksinimi doğru anlamak; çünkü yanlış ihtiyaç, doğru yazılmış kodu da yanlış çözüme dönüştürür.

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

Bir yazılım mühendisi, tek tek satırların çalışmasından önce sistemin nasıl davranacağını düşünür. Bu; gereksinimlerin açık yazılması, parçaların birbirine nasıl bağlanacağı, hata oluştuğunda ne olacağı ve değişiklik geldiğinde sistemin nasıl korunacağı gibi soruları içerir. Ortak sözlük standardının varlığı da bu alanın tek bir dilden çok ortak kavramlarla yürüdüğünü gösterir.

Sadece geliştirme değil, bakım da vardır​

Yazılımın gerçek sınavı ilk çalıştığı an değil, değişiklik geldiği andır. Yaşam döngüsü standardı, bakım ve işletimin yazılım süreçlerinin doğal parçası olduğunu vurgular. Bu yüzden yazılım mühendisliği iyi mimari kadar, sonradan okunabilirlik ve değiştirilebilirlik üretmeyi de amaçlar.

Neden ekip işi sayılır?​

Küçük projelerde bile ihtiyaç, kod, test ve teslim kararları birbirine bağlıdır. Büyüyen projelerde bu bağlar arttığı için mühendislik yaklaşımı, işi kişisel sezgiden çıkarıp tekrar edilebilir hale getirir. Ortak terminoloji ve yaşam döngüsü çerçevesi tam da bu yüzden önemlidir.

Yeni başlayan biri bu kavramı nasıl okumalı?​

“Yazılım mühendisliği ne demek?” sorusuna en yararlı kısa cevap şudur: Doğru problemi, doğru yöntemle, sürdürülebilir bir yazılım çözümüne dönüştürme disiplinidir. Eğer bir alanı öğrenirken yalnızca dili ya da sözdizimini değil, gereksinim, test ve bakım kavramlarını da öğreniyorsanız, aslında yazılım mühendisliğini öğrenmeye başlıyorsunuz demektir.
 

Sende şimdi bize katılmak ister misin?

Kayıt ol

Bize katılım kolay ve ücretsizdir!

Foruma git ?

Bu konuyu görüntüleyen kullanıcılar

Bu konuyu şu anda görüntüleyen üye bulunmuyor.