5 Ekim 2025 Pazar

TBML306-Yazılım mühendisliği

 1- Yazılım nedir?

Yazılım bir ihtiyacı karşılayan programlar+veriler+yapılandırma+dokümantasyonun bütünüdür.


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

Yazılımı sistematik, ölçülebilir biçimde geliştirme, işletme ve bakım disiplinidir.


3- Yazılım mühendisliğinin bilgisayar biliminden ne farkı vardır?

Bilgisayar bilimi kuram ve genel tekniklerle ilgilenir. Yazılım mühendisliği bu bilgiyi ürünleştirir.


4- Yazılım mühendisliği ile sistem mühendisliği arasında ne fark vardır?

Sistem mühendisliği, insan, donanım, yazılım ve sürecin yaşam çevrimi ile ilgilidir. Yazılım mühendisliği yazılımın derinliği ile ilgilenir.


5- Yazılım süreci nedir?

Gereksinim → analiz/tasarım → geliştirme → test → dağıtım/işletme → bakım döngüsüne yazılım süreci denir.


6- Yazılım süreç modeli nedir?

Yazılım süreç modeli, yazılım geliştirme, bakım ve yönetimi için gerekli tüm görevleri, adımları ve aşamaları tanımlayan çerçevedir. Bu model, bir yazılım projesini baştan sona yönetmek için yol haritası sunar. Başlıca örnekleri Şelale, Çevik (Agile) ve V-Model'dir.


7- Requirement nedir?

sistemin yapması gereken doğrulanabilir ifade.


8-V&V nedir?

V&V doğrulama ve geçerlemedir:

doğrulama: doğru yaptık mı?

geçerleme: doğru şeyi yaptık mı?

 

9- Mimari tasarım denir?

MİMARİ TASARIM. Mimari tasarım, bir yazılım sisteminin genel yapısını ve ana bileşenlerini belirleme sürecini ifade eder. 


10- Mimari tasarımın amaçları nelerdir?

sistemin yapısını tanımlamak

kalite niteliklerini sağlamak

iletişimi kolaylaştırmak

geliştirme sürecini yönlendirmek


11- Teknik borç nedir?

Teknik borç hız için alınan kalite borcudur, faizi bakım maliyeti ve hata oranı olarak geri döner.


12- Yazılım mühendisliğinde ana test yüzeyleri nelerdir?

birim testi

entegrasyon testi

sistem testi

kabul testi


13- Agilenin popüler olmasının sebepleri nelerdir?

değişen gereksinime uyum

erken değer

geri bildirim döngüsünün kısalığı


14- Temel üçlü nedir?

Temel üçlğ UML'in en sık kullanılan ve en temel diyagramlarını ifade eder: use-caseclasssequence


15- SOLID nedir?

single responsibility

open/closed principle

Liskov substitution

interface segregation

dependency inversion

 


16- Yüksek bağlaşıklık nedir?

Bir modül içindeki elemanlar (fonksiyonlar, sınıflar) güçlü bir şekilde birbiriyle ilişkili ise yüksek bağlaşıklık vardır.


17- Düşük bağlayıcılık nedir?

Modüller ve sınıflar arasındaki bağımlılıkların minimumda tutulmasına düşük bağlayıcılılık denir.


18- DRY nedir?

Don't repeat yourself.


19- KISS nedir?

Keep it simple, stupid.


20- YAGNI nedir?

You aren't gonna need it.


 21. En yaygın kullanılan yazılım modelleme dili hangisidir?

UML

22. Bilgi sisteminin bileşenleri nelerdir?

donanım

yazılım

veri

insan

süreç

23. En çok maliyet gerektiren sistem bileşeni hangisidir?

yazılım


24) ... bilgi sisteminin soyut ve işlevsel bileşenidir

yazılım

25) Sistem yaşam çevrimi nedir?

Sistem yaşam çevrimi, bir yazılımın ya da bilgi sisteminin fikir aşamasından başlayıp kullanımdan kalkana kadar geçen tüm süreçleri kapsayan modeldir. Ana evreleri  şunlardır:

Planlama

Analiz

Tasarım

Kodlama

Test

Kurulum ve bakım

Bir e-ticaret sitesi için ana evreler:

PLANLAMA. Hangi ürünlerin satılacağı, hedef kitlenin kim olduğu belirlenir.

ANALİZ. Müşterilerin ürünleri nasıl arayacağı, sepetine nasıl ekleyeceği gibi gereksinimler toplanır.

TASARIM. Sitenin ana sayfası, ürün sayfaları ve ödeme sayfasının taslakları oluşturulur.

KODLAMA. Front-end ve back-end kodları yazılarak site işlevsel hale getirilir.

TEST. Sitedeki tüm bağlantıların çalıştığı, ödeme sisteminde hata olmadığı kontrol edilir.

KURULUM VE BAKIM. Site yayına alınır ve sonrasında kullanıcı geri bildirimlerine göre hatalar düzeltilir veya yeni özellikler eklenir.


26) Front-end nedir?
Bir web sitesinin kullanıcı ile doğrudan etkileşime giren kısmına front-end denir.

27) Back-end nedir?
Bir web sitesinin arka planda çalışan kısmına back-end denir.

1950-1960 yılları arasında geliştirilen yazılımların temel özellikleri nelerdir?
Bilgisayarların doğduğu bu yıllarda üretilen yazılımlar temel olarak, yığınsal kökenli biçimde geliştirilmişti. Ayrıca bugünün bilinen anlamında ürün tarzında değil bütünüyle kendisi için yapılan kuruluşa özel biçimde geliştirme yapılmaktaydı.

Yazılımın temel amaçları nelerdir?
Veriyi bilgiye dönüştürmek.
İnsan hatasına açık işleri makineye devretmek.
Fiziksel sistemleri kontrol etmek.
İnsan-insan ve sistem-sistem etkileşimi sağlamak.
Bilgiyi kalıcı, güvenli ve hızlı erişilebilir tutmak.
Seçenekler arasından en iyiyi seçmek.
Karmaşıklığı gizlemek.
Güvenlik-kritik sistemlerde riski azaltmak.
Süreçleri senkronize etmek.
Kullanıcıların hedefe hızlı ve hatasız ulaşmasını sağlamak.
İçerik üretmek.
Tasarım yapmak.

Yazılım üretimi, bir ... disiplini gerektirir. 
mühendislik 

Yazılımın insan bileşeninin boyutları nelerdir?
yazılım geliştirenler
yazılım kullananlar

Yazılımın ana çıktısı nedir?
Yazılımın ana çıktısı bilgisayar programıdır.

Hiç yorum yok:

Yorum Gönder