Konu Başlıkları
10 bölüm ve 40 konu başlığıyla dersin tamamı.
01 Yazılım Mühendisliğine Giriş 4 konu
Yazılım mühendisliği, yazılım sistemlerinin sistematik, planlı ve ölçülebilir yöntemlerle geliştirilmesini konu alan mühendislik disiplinidir. Amaç yalnızca çalışan kod üretmek değil, aynı zamanda güvenilir, sürdürülebilir, bakımı kolay ve kullanıcı ihtiyaçlarını karşılayan yazılımlar geliştirmektir. Yazılım geliştirme sürecinde analiz, tasarım, kodlama, test ve…
Örnek soru: Yazılım sürecinin faaliyetleriyle ilgili aşağıdaki ifadelerden hangileri doğrudur? I. Beli...
- Yazılım Mühendisliği Kavramı
- Yazılım Süreçleri
- Yazılım Ürün Özellikleri
- Yazılım Projelerinde Risk Kavramı
02 Gereksinim Mühendisliği 4 konu
Gereksinimler, yazılım sisteminin sağlaması gereken hizmetleri ve uyması gereken kısıtları tanımlar. Gereksinimler kullanıcı, müşteri, sistem yöneticisi veya diğer paydaşların beklentilerinden ortaya çıkabilir. Doğru gereksinim belirlemek, projenin sonraki aşamalarının sağlıklı ilerlemesi açısından önemlidir. Gereksinimlerin yanlış veya eksik anlaşılması maliyetli değişikliklere yol…
Örnek soru: İyi bir yazılım gereksinimiyle ilgili aşağıdaki ifadelerden hangisi yanlıştır?
- Gereksinim Kavramı
- İşlevsel Gereksinimler
- İşlevsel Olmayan Gereksinimler
- Gereksinimlerin Toplanması ve Analizi
03 Yazılım Geliştirme Süreç Modelleri 4 konu
Şelale modeli, yazılım geliştirme faaliyetlerinin belirli aşamalar halinde ve büyük ölçüde sıralı yürütüldüğü geleneksel süreç modellerinden biridir. Gereksinim analizi, tasarım, gerçekleştirme, test ve bakım gibi aşamalar tanımlı bir düzen içinde ele alınır. Bir aşamanın çıktıları sonraki aşamanın girdilerini oluşturur. Gereksinimlerin…
Örnek soru: Çevik (agile) yazılım geliştirmenin temel özelliklerinden biri aşağıdakilerden hangisidir?
- Şelale Modeli
- Artımlı Geliştirme Modeli
- Spiral Model
- Çevik (Agile) Yazılım Geliştirme
04 Yazılım Tasarımı ve Modelleme 4 konu
Yazılım tasarımı, gereksinimlerin uygulanabilir bir yazılım yapısına dönüştürülmesi aşamasıdır. Tasarımda sistemin bileşenleri, bu bileşenlerin sorumlulukları ve aralarındaki ilişkiler belirlenir. İyi bir tasarım, sistemin anlaşılabilirliğini, değiştirilebilirliğini ve bakımını kolaylaştırır. Tasarım sırasında veri yapıları, arayüzler, bileşenler ve mimari kararlar dikkate alınabilir. Tasarım,…
Örnek soru: Gereksinimlerin hangi yapıyla karşılanacağının ortaya konduğu aşamada aşağıdakilerden hang...
- Yazılım Tasarımının Temelleri
- Modülerlik ve Soyutlama
- Bağlaşım ve İçsel Uyum
- UML ve Modelleme
05 Yazılım Mimarisi ve Geliştirme 4 konu
Yazılım mimarisi, sistemin ana bileşenlerini ve bu bileşenlerin birbirleriyle ilişkilerini yüksek seviyede tanımlar. Mimari kararlar performans, güvenlik, ölçeklenebilirlik ve bakım gibi kalite özelliklerini etkileyebilir. Mimari, tek tek kod satırlarından daha üst düzeyde bir tasarım görünümü sağlar. Sistem büyüdükçe mimarinin doğru…
Örnek soru: Katmanlı yazılım mimarisinde katmanlardan biri aşağıdakilerden hangisidir?
- Yazılım Mimarisi
- Katmanlı Mimari
- Nesne Yönelimli Programlama
- Tasarım Kalıpları
06 Yazılım Testi ve Kalite 4 konu
Yazılım testi, yazılımın belirtilen gereksinimleri karşılayıp karşılamadığını ve beklenmeyen davranışların bulunup bulunmadığını değerlendirmek için yapılan faaliyetlerdir. Test, hataların bulunmasına yardımcı olur ancak hatasızlığı matematiksel olarak garanti etmez. Test süreci planlama, test durumlarının hazırlanması, uygulanması ve sonuçların değerlendirilmesini içerebilir. Testler geliştirme…
Örnek soru: Beklenen çıktıların tanımlandığı girdi kümeleri oluşturulmakta, yazılım bunlarla çalıştırı...
- Yazılım Testinin Temelleri
- Birim, Entegrasyon ve Sistem Testleri
- Kara Kutu ve Beyaz Kutu Testleri
- Doğrulama, Geçerleme ve Yazılım Kalitesi
07 Yazılım Bakımı ve Evrimi 4 konu
Yazılımın teslim edilmesinden sonra hata düzeltme, değişen ihtiyaçlara uyum sağlama ve iyileştirme amacıyla gerçekleştirilen faaliyetlere yazılım bakımı denir. Bakım yalnızca hata düzeltmekten ibaret değildir. Yazılımın kullanım süresince değişen işletim sistemi, donanım, mevzuat veya kullanıcı ihtiyaçlarına uyarlanması da bakım kapsamına girebilir.…
Örnek soru: Aşağıdakilerden hangisi yanlıştır?
- Yazılım Bakımı
- Düzeltici ve Uyarlayıcı Bakım
- Mükemmelleştirici ve Önleyici Bakım
- Yazılım Evrimi
08 Yazılım Konfigürasyon ve Sürüm Yönetimi 4 konu
Yazılım konfigürasyon yönetimi, yazılım ürünlerinin ve bunlarla ilişkili bileşenlerin değişikliklerinin sistematik biçimde yönetilmesini sağlar. Kaynak kodu, dokümanlar, test dosyaları ve yapılandırma dosyaları konfigürasyon öğeleri olabilir. Amaç, hangi sürümün hangi değişiklikleri içerdiğinin izlenebilmesidir. Konfigürasyon yönetimi özellikle büyük ekiplerde değişikliklerin kontrol edilmesini…
Örnek soru: Sürüm kontrol sistemlerinin temel işlevi aşağıdakilerden hangisidir?
- Yazılım Konfigürasyon Yönetimi
- Sürüm Kontrolü
- Değişiklik Yönetimi
- Yapılandırma ve Sürüm Etiketleme
09 Yazılım Proje Yönetimi 4 konu
Yazılım proje planlaması; kapsam, zaman, kaynak, maliyet, risk ve görevlerin belirlenmesini içerir. Planlama sırasında projenin amaçları ve teslim edilecek ürünler netleştirilir. Görevler bağımlılıkları dikkate alınarak sıralanabilir. Proje planı proje boyunca yeni bilgiler doğrultusunda güncellenebilir.
Örnek soru: A görevi 6 gün, B görevi 4 gün sürmektedir. B, A bitmeden başlayamadığına ve proje 1. günd...
- Proje Planlama
- Zaman ve Görev Planlama
- Maliyet ve Kaynak Yönetimi
- Yazılım Proje Risk Yönetimi
10 Yazılım Kalitesi, Ölçüm ve Profesyonel Uygulamalar 4 konu
Yazılım kalite güvencesi, yazılım geliştirme sürecinin ve ürünün belirlenen kalite hedeflerine uygun olmasını destekleyen sistematik faaliyetlerdir. Kalite güvencesi yalnızca son ürünü test etmeye dayanmaz; süreçlerin, standartların ve uygulamaların izlenmesini de kapsayabilir. Amaç hataların erken bulunmasını ve kalitenin süreç boyunca geliştirilmesini…
Örnek soru: Kalite güvencesi (QA) ile kalite kontrol (QC) arasındaki temel fark hangisidir?
- Yazılım Kalite Güvencesi
- Yazılım Ölçütleri
- Kod Kalitesi ve Yeniden Düzenleme
- Yazılım Etiği ve Profesyonel Sorumluluk