Lisans Programı
1. Dönem | 2. Dönem | 3. Dönem | 4. Dönem | 5. Dönem | 6. Dönem | 7. Dönem | 8. Dönem| Lab. Teknik Seçmeli Dersler| Diğer Teknik Seçmeli Dersler| Seçmeli Dersler

1. Dönem

Dersin Kodu Dersin Adı Teorik - Pratik - Kredi AKTS Dersin Dili
BBM 101 Programlamaya Giriş I 3 0 3 6 Türkçe
BBM 103 Programlamaya Giriş Lab. I 0 2 1 4 İngilizce
MAT 123 Matematik I 4 2 5 6 İngilizce
FİZ 137 Fizik I 4 0 4 5 İngilizce
FİZ 103 Fizik Lab. I 0 3 1 2 İngilizce
İNG 111 Dil Becerileri I 3 0 3 3 İngilizce
TKD 103 Türk Dili I 2 0 2 2 Türkçe
BEB 650 Temel Bilgi ve İletişim Teknolojileri Kullanımı 0 2 1 2 Türkçe

2. Dönem

Dersin Kodu Dersin Adı Teorik - Pratik - Kredi AKTS Dersin Dili
BBM 102 Programlamaya Giriş II 3 0 3 8 Türkçe
BBM 104 Programlamaya Giriş Lab. II 0 2 1 4 İngilizce
MAT 124 Matematik II 4 2 5 6 İngilizce
FİZ 138 Fizik II 4 0 4 5 İngilizce
FİZ 104 Fizik Lab. II 0 3 1 2 İngilizce
İNG 112 Dil Becerileri II 3 0 3 3 İngilizce
TKD 104 Türk Dili II 2 0 2 2 Türkçe

3. Dönem

Dersin Kodu Dersin Adı Teorik - Pratik - Kredi AKTS Dersin Dili
BBM 201 Veri Yapıları 3 0 3 5 Türkçe
BBM 203 Yazılım Lab. I 0 2 1 2 İngilizce
BBM 205 Kesikli Matematiksel Yapılar 3 0 3 5 Türkçe
BBM 231 Mantıksal Tasarım 3 0 3 5 Türkçe
BBM 233 Mantıksal Tasarım Lab. 0 2 1 2 İngilizce
İST 285 Olasılık 3 0 3 5 Türkçe
AİT 203 Atatürk İlkeleri ve İnk. Tarihi I 2 0 2 2 Türkçe
Alan Dışı Seçmeli 3 0 3 4

4. Dönem

Dersin Kodu Dersin Adı Teorik - Pratik - Kredi AKTS Dersin Dili
BBM 202 Algoritmalar 3 0 3 4 Türkçe
BBM 204 Yazılım Lab. II 0 2 1 2 İngilizce
BBM 234 Bilgisayar Yapısı 3 0 3 4 Türkçe
MAT 254 Temel Doğrusal Cebir 3 0 3 4 İngilizce
ELE 296 Temel Elektrik Devreleri ve Elektronik 3 0 3 5 İngilizce
İST 286 İstatistik 3 0 3 5 Türkçe
AİT 204 Atatürk İlk. ve İnk. Tar. II 2 0 2 2 Türkçe
Alan Dışı Seçmeli 3 0 3 4

5. Dönem

Dersin Kodu Dersin Adı Teorik - Pratik - Kredi AKTS Dersin Dili
BBM 301 Programlama Dilleri 3 0 3 4 İngilizce
BBM 341 Sistem Programlama 3 0 3 4 Türkçe
BBM 371 Veri Yönetimi 3 0 3 4 Türkçe
BBM 325 Staj I 0 3 2 5 Türkçe
BBM Teknik Seçmeli 3 0 3 6 Türkçe
BBM Teknik Seçmeli Lab. 0 2 1 4 İngilizce
Alan Dışı Seçmeli 3 0 3 3

6. Dönem

Dersin Kodu Dersin Adı Teorik - Pratik - Kredi AKTS Dersin Dili
BBM 342 İşletim Sistemleri 3 0 3 5 Türkçe
BBM 382 Yazılım Mühendisliği 3 0 3 5 Türkçe
BBM Teknik Seçmeli 3 0 3 6 Türkçe
BBM Teknik Seçmeli 3 0 3 6 Türkçe
BBM Teknik Seçmeli Lab. 0 2 1 4 İngilizce
Alan Dışı Seçmeli 3 0 3 4

7. Dönem

Dersin Kodu Dersin Adı Teorik - Pratik - Kredi AKTS Dersin Dili
BBM Teknik Seçmeli 3 0 3 6 Türkçe
BBM Teknik Seçmeli Lab. 0 2 1 4 İngilizce
BBM Teknik Seçmeli 3 0 3 6 Türkçe
BBM Teknik Seçmeli Lab. 0 2 1 4 İngilizce
BBM 427 Teknoloji Seminerleri I 0 2 1 1 Türkçe
BBM 425 Staj II 0 3 2 5 Türkçe
Alan Dışı Seçmeli 3 0 3 4

8. Dönem

Dersin Kodu Dersin Adı Teorik - Pratik - Kredi AKTS Dersin Dili
BBM Teknik Seçmeli 3 0 3 6 Türkçe
BBM Teknik Seçmeli 3 0 3 6 Türkçe
BBM Teknik Seçmeli Lab. 0 2 1 4 İngilizce
BBM Teknik Seçmeli 3 0 3 6 Türkçe
BBM Teknik Seçmeli Lab. 0 2 1 4 İngilizce
BBM 428 Teknoloji Seminerleri II 0 2 1 1 Türkçe
Alan Dışı Seçmeli 3 0 3 3

Laborutuvarı ile Birlikte Seçilecek Teknik Seçmeli Dersler

Dersin Kodu Dersin Adı Teorik - Pratik - Kredi AKTS Dersin Dili
BBM413Görüntü İşlemenin Temelleri3 0 36İngilizce
BBM415Görüntü İşleme Lab.0 2 14İngilizce
BBM421Oyun Teknolojileri3 0 36İngilizce
BBM423Oyun Teknolojileri Lab.0 2 14İngilizce
BBM451Bilgisayar Ağları3 0 36Türkçe
BBM453Bilgisayar Ağları Lab.0 2 14İngilizce
BBM463Bilgi Güvenliği3 0 36Türkçe
BBM465Bilgi Güvenliği Lab.0 2 14İngilizce
BBM467Veri Yoğunluklu Uygulamalar3 0 36İngilizce
BBM469Veri Yoğunluklu Uygulamalar Lab.0 2 14İngilizce
BBM471Veri Tabanı Yönetim Sistemleri3 0 36İngilizce
BBM481Yazılım Geliştirme3 0 36Türkçe
BBM491Bireysel Yazılım Süreci3 0 36İngilizce
BBM493Bireysel Yazılım Süreci Lab.0 2 14İngilizce
BBM412Bilgisayar Grafiği3 0 36Türkçe
BBM414Bilgisayar Grafiği Lab.0 2 14İngilizce
BBM416Bilgisayarlı Görünün Temelleri3 0 36İngilizce
BBM418Bilgisayarlı Görü Lab.0 2 14İngilizce
BBM422Hareketli Hesaplama3 0 36Türkçe
BBM424Hareketli Hesaplama Lab.0 2 14İngilizce
BBM432Gömülü Sistemler3 0 36Türkçe
BBM434Gömülü Sistemler Lab.0 2 14İngilizce
BBM452Veri İletişimi3 0 36Türkçe
BBM472Mekansal Bilgi Sistemleri3 0 36İngilizce
BBM474Mekansal Bilgi Sistemleri Lab.0 2 14İngilizce
BBM482Yazılım Kalite Güvence3 0 36İngilizce
BBM484Yazılım Kalite Güvence Lab.0 2 14İngilizce
BBM492Takım Yazılım Süreci3 0 36İngilizce
BBM494Takım Yazılım Süreci Lab.0 2 14İngilizce

Diğer Teknik Seçmeli Dersler

Dersin Kodu Dersin Adı Teorik - Pratik - Kredi AKTS Dersin Dili
BBM401Özdevinirler Kuramı ve Biçimsel Diller3 0 36İngilizce
BBM402Hesaplama Kuramı3 0 36İngilizce
BBM403Kombinatorik ve Çizge Kuramı3 0 36Türkçe
BBM404Derleyici Gerçekleştiriminin Temelleri3 0 36İngilizce
BBM405Yapay Anlayışın Temelleri3 0 36İngilizce
BBM406Makine Öğrenmesinin Temelleri3 0 36İngilizce
BBM407Bulanık Mantık3 0 36Türkçe
BBM408Algoritma Analizi3 0 36Türkçe
BBM410Dinamik Sistemler3 0 36İngilizce
BBM429Proje I (Güz)0 6 36Türkçe
BBM430Proje II (Bahar)0 6 36Türkçe
BBM431Gelişmiş Bilgisayar Mimarileri3 0 36Türkçe
BBM433Mikroişleyiciler3 0 36Türkçe
BBM436Mikroişleyiciler Lab.0 2 14İngilizce
BBM442Koşut İşlem3 0 36Türkçe
BBM444Hesaplamalı Fotografinin Temelleri3 0 36Türkçe
BBM446Hesaplamalı Fotografi Laboratuvarı0 2 14İngilizce
BBM456Bilgisayar ve Ağ Güvenliği3 0 36Türkçe
BBM461Güvenli Programlama3 0 36Türkçe
BBM473Veri Tabanı Lab.0 2 14İngilizce
BBM475Yönetim Bilişim Sistemleri3 0 36Türkçe
BBM483Yazılım Geliştirme Lab.0 2 14İngilizce
BBM485Yazılım Mimarileri3 0 36İngilizce
BBM486Tasarım Örüntüleri3 0 36Türkçe
BBM487Yazılım Mühendisliği Lab.0 2 14İngilizce
BBM488Web Servisleri Lab.0 2 14İngilizce
BBM490Web Mimarisinin Temelleri3 0 36İngilizce

Seçmeli Dersler

Dersin Kodu Dersin Adı Teorik - Pratik - Kredi AKTS Dersin Dili
EKO 115 Genel İktisat 3 0 3 4 Türkçe
MAN 321 Girişimcilik ve Küçük İş Yönetimi 3 0 3 4 Türkçe
PSİ 101 Psikolojiye Giriş 3 0 3 6 Türkçe
SOS 101 Sosyolojiye Giriş 3 0 3 6 Türkçe
SOS261 İletişim Sosyolojisi 3 0 3 5 Türkçe
FEL 123 Mantığa Giriş 3 0 3 4 Türkçe
MTK 203 Diferensiyel Denklemler 4 0 4 4 Türkçe
MTK 403 Oyun Teorisine Giriş 3 0 3 5 Türkçe
KAY 465 Kamu Yönetiminde Enformasyon Teknolojileri 3 0 3 4 Türkçe
IYB 332 Genel İşletme 3 0 3 5 Türkçe
ANT 202 Sosyal Antropolojiye Giriş 3 0 3 5 Türkçe
FEL 110 Felsefeye Giriş 3 0 3 4 Türkçe
FEL 122 Mantık-I 3 0 3 5 Türkçe
MTK 404 Sayılar Teorisi ve Kriptografik Uygul. 3 0 3 6 Türkçe
KAY 124 Sosyal Psikoloji 3 0 3 5 Türkçe
KAY 246 İş Hukuku ve Sosyal Güvenlik 3 0 3 4 Türkçe
KAY 486 Ticaret Hukuku 3 0 3 5 Türkçe
HUK xxx İş Hukuku 3 0 3 Türkçe


Ders İçerikleri

BBM101 Programlamaya Giriş I(3 0 3 )

Bilgisayar programlamada temel kavramlar. Problem biçimselleştirme ve adımsal geliştirme yöntemiyle algoritma ve akış şemalarını geliştirme. Yapısal programlamayla ilgili temel kavramlar. Veri türleri ve değişken tanımlamaları. Temel kontrol yapıları. Şartlı dallanma ve döngüsel yapılar. İşlev kavramı ve işlevleri çağırma. Programlama dillerinde tek ve çok boyutlu diziler. Kütük işlemleri. Göstericiler.

BBM103 Programlamaya Giriş Laboratuvarı I(0 2 1 )

Laboratuvar dersi üç ya da daha fazla sayıda deneysel ödev içermektedir. Öğrencilerden ödevleriyle birlikte iyi tasarlanmış raporlar sunmaları beklenmektedir. Derleyici kullanımı, paket programlar ve güncel yazılım geliştirme ortamlarının kullanımı bu dersin birer parçası durumundadır.

BBM102 Programlamaya Giriş II(3 0 3 )

Nesneye yönelik programlamanın temel kavramları. Nesneye yönelik programlama dillerini öğrenmeye giriş. Sınıf, nesne, sarmalama, kalıtım, çok-biçimlilik, soyut sınıf ve arayüz. Erişim denetleyiciler ve iletiler. Hata yönetme kavramları.

BBM104 Programlamaya Giriş Laboratuvarı II(0 2 1 )

Laboratuvar dersi üç ya da daha fazla sayıda deneysel ödev içermektedir. Öğrencilerden ödevleriyle birlikte iyi tasarlanmış raporlar sunmaları beklenmektedir. Derleyici kullanımı, paket programlar ve güncel yazılım geliştirme ortamlarının kullanımı bu dersin birer parçası durumundadır.

BBM201 Veri Yapıları(3 0 3 )

Veri yapılarının temelleri. Veri temsilleri arasındaki ilişkiler, algoritma tasarımı ve program verimliliği. Listeler, yığıtlar, kuyruklar, ağaçlar, öncelik kuyrukları, anahtarlama, çizgeler. Çok boyutlu/üçgensel/bant/matris gösterimleri. Tekil ve ikili dairesel bağlı listeler. Önde/arada/sonda deyimler.

BBM205 Kesikli Matematiksel Yapılar(3 0 3 )

Kesikli matematik üzerine temel kavramlar: Matematiksel mantık, küme teorisi, ilişkiler ve işlevler. Önermeler mantığı, birinci düzey mantık ve matematiksel tümevarım. Kesikli yapılar: modüler aritmetik, durum makineleri, çizge teorisi, ağaçlar, sayma, özyineleme ve özyineli ilişkiler. Kesikli olasılık teorisi.

BBM233 Mantıksal Tasarım Laboratuvarı(0 2 1)

Laboratuvar dersi aşağıda listesi verilen konular üzerinde uygulamalı ödevler içermektedir: Mantıksal kapılar, tümleşik devreler, Bool cebirinin özellikleri ve kuralları, birleşimli devreler, Bool işlevlerinin enküçüklemesi. Kod çeviriciler, çoklayıcılar, büyüklük karşılaştırıcı ve koşut toplayıcı devreler. İki durumlular ve sıralı devreler. Sayaçlar, yazmaçlar, seri toplayıcı devreler ve bellek elemanları.

BBM231 Mantıksal Tasarım(3 0 3 )

Sayısal sistemler, sayı sistemleri, ikili kodlar, hata tespit ve hata düzeltme kodları, Bool cebiri, anahtarlamalı cebir, ikili operasyonlar ve Bool işlevleri. Bool işlevlerinin minimizasyonu. Toplamsal mantık, mantık kapıları, toplamsal devrelerin minimizasyonu, mantık kapılarıyla devre tasarımı. Tümleşim devreler, MSO çipsetleriyle tasarım, ROM, PLA. Eşzamanlı sıralı devreler, bellek elemanları, analiz ve tasarım prosedürleri. Yazmaçlar, sayaçlar, RAM. Zaman uyumsuz sıralı devreler.

BBM203 Yazılım Laboratuvarı I(0 2 1 )

Laboratuvar dersi üç ya da daha fazla sayıda deneysel ödev içermektedir. Öğrencilerden ödevleriyle birlikte iyi tasarlanmış raporlar sunmaları beklenmektedir. Derleyici kullanımı, paket programlar ve güncel yazılım geliştirme ortamlarının kullanımı bu dersin birer parçası durumundadır.

BBM202 Algoritmalar(3 0 3)

Algoritmalarla ilgili temel kavramlar. Asimtotik gösterim, başarım ölçütleri, alan/zaman karmaşıklığı. Özyinelemeli algoritmalar, özyineli ilişkiler, algoritma çözümleme kavramına giriş. İkili arama ağacı, tekrarlı ve özyineli ikili ağaç tarama. Çizgeler, önce derinlik, önce genişlik tabanlı arama, yayılım ağaçları, en kısa yol problem, kenar/ayrıt ağları üzerinde işlemler. Seçimli, eklemeleri, kabarcık, sayma tabanlı, hızlı, toplamsal, yığın ve radiks sıralama algoritmaları ve çözümlemeleri.

BBM234 Bilgisayar Yapısı(3 0 3 )

Bilgisayar mimarisine ilişkin temel matematiksel ve mantıksal kavramlar. Veri temsili. Temel bilgisayar yapısı. Merkezi işlemci yapılanması: Akümülator-tabanlı, genel yazmaç tabanlı işlemciler ve yığıt makinesi mimarileri. Makine kod komut kavramları, mikro programlama kavramı, adresleme biçimleri. Bellek yapısı. Büyük depolama aygıtları. Giriş/çıkış birimleri. Sembolik programlamaya giriş.

BBM204 Yazılım Laboratuvarı II(0 2 1 )

Laboratuvar dersi üç ya da daha fazla sayıda deneysel ödev içermektedir. Öğrencilerden ödevleriyle birlikte iyi tasarlanmış raporlar sunmaları beklenmektedir. Derleyici kullanımı, paket programlar ve güncel yazılım geliştirme ortamlarının kullanımı bu dersin birer parçası durumundadır.

BBM371 Veri Yönetimi(3 0 3 )

Temel kütük kavramları. İkincil depolama araçları ve fiziksel kütük organizasyonu. Kütük yönetim dizgeleri ve türleri. Temel kütük işleme operasyonları. Dizinler ve türleri. Anahtarlı dizinleme ve türleri. Ağaç yapısındaki dizinler. Sıralama. Uzamsal ve çok boyutlu dizinleme yapıları. Katlanmış dizinler.

BBM301 Programlama Dilleri(3 0 3 )

Programlama dillerindeki temel prensipler ve paradigmalar. Tüm ana konular ve dil paradigmaları kapsanmaktadır. Sözdizim, anlam, adlar, atamalar, tür kontrolü, alt programlar, anlamsal ve sözdizimsel çözümleyiciler, soyut veri türleri, tutarlılık, hata yönetimi. Buyurgan ve işlevsel diller için farklı tasarım seçenekleri ile anlamsal ve sözdizimsel çözümleyicilerin tasarımı.

BBM341 Sistem Programlama(3 0 3 )

Sembolik dilin genel kavramları. Kaynak ve hedef program. Re-entrant ve tekrar çalıştırılabilir programlar. Adresleme teknikleri. Yordam tanımlamaları, yordam iletişim teknikleri, macro olanakları, İşletim sistemi- sembolik dil bağlantısı: Sistem çağrıları. Sistem çağrı mekanizması, giriş/çıkış arayüzleri. Yükleyiciler, bağlayıcılar. Mikro programlama. Tek ve çift geçişli birleştiriciler. Kesme mekanizması, kesme yönetimi. Temel I/O programlama teknikleri. Zamanlanmış ve kesmeye dayalı I/O programlama. Doğrudan bellek erişimi. Gömülü sistem I/O programlama örnekleri. Aygıt sürücüleri: Aygıt türleri, karakter aygıt sürücüleri ve örnekler, blok aygıt sürücüleri.

BBM342 İşletim Sistemleri(3 0 3 )

İşletim sisteminin tanımı. Görev, süreç, toplu ve etkileşimli işleme, çoklu-görev ve gerçek-zamanlı işleme kavramları. Süreçler, bağlam ve görev değişimi, UNIX süreç durumu ve kuyruk çizenekleri, süreçlerin yönetim algoritmaları. İzlekler. Eş zamanlı süreçler. Süreçler arası iletişim, zaman-uyumlama, karşılıklı kaynak paylaşımı. Alt düzeyde zaman-uyumlama operasyonları ve semaforlar. Üst düzey zaman-uyumlama işlevleri. UNIX iletişim kanalları ve FIFOs. Kilitlenmeler. Bellek yönetimi: Tekil ve sürekli durağan bölümlemeli bellekler, değişim, sayfalama, bölütleme, sanal bellek. Kütük yönetimi: Dizin yapıları. FAT, i-node yapıları, kütük yerleşimi yöntemleri, güvenlik ve koruma. Dağıtık işleme, TCP/IP, istemci sunucu paradigması, soket programlama.

BBM382 Yazılım Mühendisliği(3 0 3 )

Yazılım mühendisliğinin temel kavramları. Bilgisayar sistemlerinin türleri ve bir parçası olarak yazılım. Yazılım mühendisliğinden sistem mühendisliğine uzanan ilişki. Yazılım mühendisliğinin kapsamı: Yazılım geliştirme (çözümleme, tasarım, kodlama ve sınama), yazılım mühendisliği yönetimi, yazılım yapılandırma yönetimi, yazılım mühendisliği süreçleri, araçları, yöntemleri ve kalite güvencesi. Yazılım ölçütleri ve maliyet kestirimi. Yazılım kalite maliyeti. Yazılım geliştirme süreç modelleri ve süreç referans modelleri.

BBM427 Teknoloji Seminerleri I(0 1 0)

Öğrenci, bölüm sorumluları tarafından düzenlenecek bir dizi teknoloji seminerine katılmak zorundadır. Seminerlerin konusu mevcut teknoloji gündemine göre belirlenir. Seminerleri sunanlar bölümün içinden ya da dışından olacaktır.

BBM428 Teknoloji Seminerleri II(0 1 0)

Öğrenci, bölüm sorumluları tarafından düzenlenecek bir dizi teknoloji seminerine katılmak zorundadır. Seminerlerin konusu mevcut teknoloji gündemine göre belirlenir. Seminerleri sunanlar bölümün içinden ya da dışından olabilir.

BBM471 Veritabanı Yönetim Sistemleri(3 0 3 )

Veritabanı, veritabanı yönetim sistemleri, veritabanı yapısı, şemalar ve veri bağımsızlığı. Veri modelleri: Varlık-bağıntı modeli ve ilişkisel model. Bütünlük kısıtları ve ilişkisel tasarım: Alan kısıtları, referans kısıtları, nitelikler arası bağımlılıklar, normal biçimler, tasarım kriterleri. İlişkisel diller: İlişkisel cebir. SQL standard ilişkisel dili: veri tanımı, veri değişimi, veritabanı yönetim yöntemleri ve temel komutlar.Hareketler. Eşzamanlılık kontrolü ve serileştirme. Gerikazanım mekanizmaları.

BBM472 Mekansal Bilgi Sistemleri(3 0 3 )

Mekansal bilgi sistemlerininin bilimsel alanlarda ve karar vermede kullanımı. Mekansal bilgiye dayalı uygulamalar, mekansal gerçekçiliği modelleme, uzamsal veri derlemleri, mekansal veritabanları, mekansal çözümleme, kesinlik ve belirsizlik. Mekansal bilgi sistemlerinin yasal, ekonomik ve etik konular ile ilişkilendirilmesi, uydu tabanlı uzaktan algılama, akıllı taşıma sistemleri ve diğer mekansal bilgi sistemleri.

BBM473 Veritabanı Laboratuvarı(0 2 1 )

Gelişmiş veritabanı yönetim sistemleri, veri tabanı tanımı, veritabanlarında sorgu ve uygulama geliştirme. Veritabanı teknolojileri üzerine araştırma ve sunum, yedekleme ve onarım, popüler veritabanı sistemleri

BBM474 Coğrafik Bilgi Dizgeleri Laboratuvarı(0 2 1)

Coğrafik bilgi dizgelerinin kavramları, CBD uygulamalarının girdileri, CBD uyumu, popüler coğrafik bilgi dizge araçlarının kullanımı, probleme özgü CBD veri yapıları, yeni jeo-uzamsal veri türlerinin oluşturulması, ayrıt tabanlı uzaklık işlevlerinin çözümlenmesi, jeo-uzamsal veritabanlarının tasarımı ve gerçekleştirimi, iyi bilinen CBD çözümleri

BBM475 Yönetim Bilişim Dizgeleri(3 0 3 )

Bilişim dizgelerinin temel kavramları, dizge teorisi, yönetimsel bilişim, bilişimin organizasyonlarda kavramsal modelleri, karar destek dizgeleri, kurumsal kaynak planlama dizgeleri, bilişim dizgesi projeleri için bilişim dizgeleri planlaması, bilişim sistemleri hayat döngüsü modelleri, bakım ilkeleri, yönetim ve denetim, bilişim dizgelerinim geliştirim, gerçekleştirim ve yönetimi.

BBM481 Yazılım Geliştirme(3 0 3 )

Yazılım geliştirmenin temel aşamaları. Nesneye yönelik analiz, tasarım kavramları ve Birleşik Modelleme Dili (UML). UML görünümleri ve diyagramları. Kullanım durumu, etkinlik, durum, bileşen ve yerleşim diyagramları. Nesneye yönelik geliştirme süreçleri ve önerilen UML diyagramlarının kullanımı. Yazılım sistemlerinin örnek çözümlemeleri.

BBM482 Yazılım Kalite Güvence(3 0 3 )

Yazılım geliştirme yaşam döngüsü ile yazılım kalite güvencenin temel kavramlarını sunar. Yazılım doğrulama ve geçerleme kavramları. Hata tanımı ve türleri. Yazılım doğrulama, geçerleme yöntemleri ve standartları. Yazılım gözden geçirme ve denetleme. Yazılım kalitesini ölçme için kullanılan metrikler. Yazılım test seviyeleri ve yöntemleri. İşlevsel ve yapısal test. Tümleştirme ve sistem testleri. Nesneye yönelik test.

BBM483 Yazılım Geliştirme Laboratuvarı(0 2 1)

Yazılım geliştirmenin temel adımlarına yönelik örnek çalışma üzerinde, UML kullanılan ödevlerden oluşur. Öğrencilerden ilk olarak kullanım durumu (use-case) analizini gerçekleştirmeleri beklenir. Ardından öğrenciler analiz ve tasarım çıktılarına dayanarak nesneye yönelik programlama uygulamaları ile sistemi gerçekleştirir.

BBM484 Yazılım Kalite Güvence Laboratuvarı(0 2 1)

Orta ölçekli yazılım sistemlerinde yazılım kalite güvencenin temel yöntemleri için uygulama yapmayı sağlar. Öğrencilere çalışan yazılım sistemleri atanır ve öğrencilerden genelde kabul görmüş yazılım test yöntemlerini kullanarak test tasarlama ve çalıştırmaları beklenir. Kod gözden geçirmesi kalite güvencenin bir parçası olarak uygulanır. Öğrenciler tasarım ve yazılım kalite güvence etkinliklerinin çıktılarını raporlar ve bu etkinlikleri gerçekleştirmenin maliyet ve faydalarını değerlendirerek rapora ekler.

BBM485 Yazılım Mimarileri(3 0 3 )

Yazılım mimarilerin temel kavramlarından bahseder. Yazılım mimari kavramları ve paydaşlar, yazılım mimarisi geliştirme süreci, mimari gereksinim analizi, yazılım mimari tasarımının modellenmesi başlıca konularıdır. Mimari görünümler ve perspektifler. İşlevsel, Bilgi, Geliştirme, Eş-zamanlı, Yayılıma ve İşletim görünümleri. Evrim, güvenilirlik, performans ve ölçeklenebilirlik, erişilebilirlik ve esneklik perspektifleri. Mimari stiller ve örüntüler. Mimari tasarım yöntemlerinin karşılaştırılması ve değerlendirilmesi. Yazılım ürün hattı mimarileri, alan modelleme ve alan mühendisliği.

BBM486 Tasarım Örüntüleri(3 0 3 )

Nesneye yönelik yazılım geliştirme sınırları içinde tasarım örüntülerini kapsar. Ders içeriği tasarım örüntülerinin faydaları, amaçları, ilkeleri; nesneye yönelik tasarımın ilkeleri; örüntü sınıflamalarını; tüm tasarım örüntülerinin, anti-örüntülerin, mimari örüntülerin incelenmesi ve önerkler içinde uygulanmasını kapsar.

BBM487 Yazılım Mühendisliği Laboratuvarı(0 2 1)

Orta ölçekli bir yazılım uygulamasının yönetim ve geliştirme pratiklerini içeren mühendisliği. Yazılım projelerinin başlangıç gereksinimlerinin anlaşılması ve geliştirmelerin planlanması. Önceden tanımlanmış (Open Unified Process’i temel alan) yazılım geliştirme yaşam döngüsü içinde projelerin gereksinim analizi, mimari tasarımı ve detaylı tasarımı ve bu etkinliklerin çıktılarının (IEEE tarafından önerilen) belirli biçimlerde belgelendirilmesi. Laboratuvarın sonunda öğrenciler, bazı kritik gereksinimleri kodlanmış yazılım mimarisinin çalışan bir prototipini sunmalıdır. Yazılım tasarımı ve gerçekleştirimi boyunca J2EE teknolojilerinin kullanımı beklenmektedir.

BBM488 Web Servisleri Laboratuvarı(0 2 1)

Genişletilmiş İşaret Dili (XML), web servisleri, Servise Yönelik Mimari (SOA) ve İş Süreçleri Yönetimi (BPM) gibi web teknolojileri üzerine deneyler. SOA ve BPM kavramlarına temel olarak XML ve web servisleri. SOA and BPM kavramlarının niçin ve ne zaman kullanılacağının ödevler ve dönem projeleri ile öğretimi.

BBM490 Web Mimarisinin Temelleri(3 0 3)

İnternet ve istemci/sunucu tabanlı teknolojiler. Ölçeklenebilir, güvenli ve sürdürülebilir Web uygulamaları tasarlama ve geliştirme. İnternet tabanlı bilgi sistemleri, web tarayıcıları ve sunucuları, istemci ve sunucu tabanlı betik dilleri, JEE Web teknolojileri, servletler, JSPs, populer çatılar, JDBC, Hibernate, JTA, GWT, JSF, mimari ağırlıklı tasarım örüntüleri, bağımlılık enjeksyonu, spring, uygulama sunucuları.

BBM491 Kişisel Yazılım Süreci(3 0 3 )

Bireysel yazılım geliştirmeye yol gösteren disiplini getiren Kişisel Yazılım Sürecinin (“Personal Software Porcess – PSP”) temel prensipleri. Öğrenciler güncel programlama uygulamalarını kullandıkları PSP0 süreci ile başlar. PSP süreci öğrencilerin her PSP versiyonunda 1 ya da 2 program yazdıkları 4 süreç versiyonu ile geliştirilmiştir. Öğrenciler geliştirdikleri her program için, ilgili süreç versiyonuna ek olarak önceki versiyonlarda öğrenilen yöntemleri de kullanırlar. Tüm PSP materyalleri daha önceden tanımlanmıştır ve Yazılım Mühendisliği Enstitüsünün resmi web sitesinden erişilebilir. (Ayrıntılı içerik)

BBM492 Takım Yazılım Süreci(3 0 3 )

Ekip halinde bir yazılım projesini yürütmeye kılavuzluk eden Takım Yazılım Süreci (“Team Software Process – TSPi”)’nin temel prensipleri. Küçük bir yazılım ekibi projesinin ihtiyaç duyduğu tüm formlar, betikler ve standartlar. Bir, iki ya da 3 geliştirme döngüsü. İlk döngüde sürecin uygulaması, ikinci döngüde takvim baskısı altında sürecin kullanımı, üçüncü döngüde ise ilk iki döngüde öğrenilenlerin içselleştirilmesi. Tüm TSPi materyalleri önceden tanımlanmıştır ve Yazılım Mühendisliği Enstitüsünün resmi web sitesinde yer almaktadır.

BBM493 Kişisel Yazılım Süreci Laboratuvarı(0 2 1)

PSP0 ve PSP1 süreçlerini temel alan deneylerin yürütüldüğü Kişisel Yazılım Süreci (Personal Software Process – PSP) dersinin tamamlayıcısı. Önceden tanımlanmış süreç versiyonlarını takip eden ve önceden tanımlanmış çıktıları üreten 6 deneyin gerçekleştirilmesi. Öğrenciler deneyleri gerçekleştirmek için iyi bildikleri herhangi bir programlama dilini kullanabilirler. Laboratuvarın sonunda, önceden tanımlanmış metrikleri kullanarak deneyleri gerçekleştirirken kendi performanslarını değerlendirdikleri bir final raporu hazırlarlar. Tüm laboratuvar materyalleri önceden tanımlanmıştır ve Yazılım Mühendisliği Enstitüsü resmi web sitesinden ulaşılabilir.
(Ayrıntılı içerik)

BBM494 Takım Yazılım Süreci Laboratuvarı(0 2 1)

TSPi (Team Softwar Process)’ye uygun olan deneylerin yürütüldüğü Takım Yazılım Süreci dersinin tamamlayıcısıdır. Öğrencilere önceden tanımlanmış roller atanır. Öğrenciler bir yazılım geliştirme projesini önceden tanımlanmış süreci takip ederek ve önceden tanımlanmış çıktıları üreterek bir takım olarak tamamlamak zorundadır. Tüm laboratuvara ait materyallere Yazılım Mühendisliği Enstitüsü resmi web sitesinden erişilebilir.

BBM413 Görüntü İşlemenin Temelleri(3 0 3 )

Görüntü oluşumu, Noktasal İşlemler ve histogram işleme, Uzlamsal filtreleme teknikleri,Frekans alanuı teknikleri, Görüntü düzleştirme, Kenar bulma, Görüntü bölütleme

BBM415 Görüntü İşleme Laboratuvarı(0 2 1 )

Görüntü oluşumu, Noktasal İşlemler ve histogram işleme, Uzlamsal filtreleme teknikleri, Frekans alanı teknikleri, Görüntü düzleştirme, Kenar bulma, Görüntü bölütleme

BBM421 Oyun Teknolojileri (3 0 3 )

Oyun teknolojilerine genel bakış ve oyun üretme sürecinin öğrenilmesi.

BBM423 Oyun Teknolojileri Laboratuvarı(0 2 1 )

Oyun teknolojilerine genel bakış ve oyun üretme sürecinin öğrenilmesi.

BBM451 Bilgisayar Ağları (3 0 3 )

Yerel ağlar, Telli ve Telsiz Yerel Ağlar; Yineleyeci, Köprü ve Anahtar, Yönlendiriciler, Sanal Ağlar; Geniş Ağ Teknolojileri; TCP/IP Protokolu; IP Adresi Planlama; Yerel ve Geniş Ağ Tasarımı; TCP, UDP ve IP Katmanlarının İncelenmesi; DHCP; Yayın ve Küme İletişimi.

BBM453 Bilgisayar Ağları Laboratuvarı (0 2 1 )

Ağ gereçlerini, ağ topolojilerini ve ağ uygulama yazılımlarını deney ortamında kullanma ve ağ kavramlarını pekiştirme.

BBM463 Bilgi Güvenliği (3 0 3 )

Temel güvenlik ilkeleri, güvenlik tehditleri, güvenlik politikaları, temel şifreleme bilgisi, kullanıcı tanıma/yetkilendirme, program güvenliği, işletim sistemi güvenliği, ağ güvenliğine giriş

BBM463 Bilgi Güvenliği Laboratuvarı (3 0 3 )

Temel şifreleme işlevleri, disk incelemesi, kod analiz araçları, çok karşılaşılan programlama hataları, web uygulama güvenliği, IPSEC /SSL protokolleri, güvenlik duvarı ayarlama, ağ tarama

BBM467 Veri Yoğunluklu Uygulamalar (3 0 3 )

Dağıtık hesaplama yaklaşımları, Koşut işlem ve yüksek başarımlı hesaplama mimarileri, Peer-to-peer sistemler, Hesaplama ızgaraları, Sanal makineler ve Internet Bulutları

BBM469 Veri Yoğunluklu Uygulamalar Laboratuvarı (0 2 1 )

İş parçaları kullanma, koşut programlama, peer-to-peer ağlarda hesaplama, hesaplama ızgaraları, bulut hesaplama

BBM412 Bilgisayar Grafiği (3 0 3 )

Bilgisayar grafiğine giriş. Grafik göstericilerin ve donanımlarının çalışma ilkeleri. Nokta-çizim teknikleri, Doğru-çizim teknikleri, iki boyutlu dönüşümler. Pencere teknikleri. Üç boyutlu grafiğe giriş ve dönüşüm teknikleri. Gölgeleme. Etkileşimli grafik donanımı ve yazılımları.

BBM414 Bilgisayar Grafiği Laboratuvarı (0 2 1 )

Bilgisayar grafiğine giriş. Grafik göstericilerin ve donanımlarının çalışma ilkeleri. Nokta-çizim teknikleri, Doğru-çizim teknikleri, iki boyutlu dönüşümler. Pencere teknikleri. Üç boyutlu grafiğe giriş ve dönüşüm teknikleri. Gölgeleme. Etkileşimli grafik donanımı ve yazılımları.

BBM416 Bilgisayarlı Görünün Temelleri (3 0 3 )

Görüntü oluşum fiziği, görüntü temsili, geometrik dönüşümler, ikili görüntü analizi, nokta ve nokta bulutu işleme, filtreler, konvolüsyon, kenar algılama, doku analizi ve sentezi, renk uzayları ve renk modelleri, değişimsiz görüntü özellikleri, optik akış, temel eşleştirme teknikleri.

BBM418 Bilgisayarlı Görünün Temelleri Laboratuvarı (0 2 1 )

Görüntü oluşum fiziği, görüntü temsili, geometrik dönüşümler, ikili görüntü analizi, nokta ve nokta bulutu işleme, filtreler, konvolüsyon, kenar algılama, doku analizi ve sentezi, renk uzayları ve renk modelleri, değişimsiz görüntü özellikleri, optik akış, temel eşleştirme teknikleri.

BBM422 Hareketli Hesaplama (3 0 3 )

Hareketli ve kablosuz teknolojilere giriş, Modern dağıtık sistemlerin tasarımı, Hareketli uygulama geliştirme teknolojiler, Üst seviye katmanları hizmet veren modern ağlardaki yöntem ve mimariler, Planlama, hareketlim sistemlerde yönetim ve güvenlik, Hareketli sistemler için oyun tasarımı.

BBM424 Hareketli Hesaplama Laboratuvarı (0 2 1 )

Hareketli ve kablosuz teknolojilere giriş, Modern dağıtık sistemlerin tasarımı, Hareketli uygulama geliştirme teknolojiler, Üst seviye katmanları hizmet veren modern ağlardaki yöntem ve mimariler, Planlama, hareketlim sistemlerde yönetim ve güvenlik, Hareketli sistemler için oyun tasarımı.

BBM432 Gömülü Sistemler (3 0 3 )

Mikroişleyiciler, bellek birimleri, giriş/çıkış arabirimleri, yardımcı işleyiciler, giriş/çıkış sürücüleri olarak algılayıcılar, elektromekanik güdüm araçları, mikrodenetleyiciler, gerçek-zamanlı işletim sistemleri, gerçek-zamanlı ve gömülü sistemler için yazılım geliştirme araçları.

BBM434 Gömülü Sistemler Laboratuvarı (0 2 1 )

Gömülü sistemlerin tasarımına ilişkin prensip ve algoritmalar. Örnek gömülü sistemler, haftalık deneyler.

BBM452 Veri İletişimi (3 0 3 )

Veri iletişimi temel tanım ve kavramlar; Veri türleri; Katmanlı ağ mimarisinde fiziksel katmana giriş; Örneksel ve sayısal imler ve özellikleri; Modülasyon; Modülasyon teknikleri; Sayısal kodlama; Çoklama; Geri-bildirim denetim allgoritmaları (Idle/Continuous IQ); Veri Bağlantı katmanı protokolları (HDLC, PPP, etc); Telli ve Telsiz Yerel ağlar; Geniş ağ teknolojileri: Frame Relay ve ATM

BBM401 - Özdevinirler Kuramı Ve Biçimsel Diller (3 0 3 )

Özdevinirler teorisine giriş.Deterministik ve deterministik olmayan sonlu özdevinirler.Düzenli diller ve düzenli deyimler.Düzenli dillerin özellikleri ve düzenli diller için pumping lemma.Bağlamdan-bağımsız diller ve gramerler.Söz-dizim ağaçları.Yığıtlı özdevinirler.Yığıtlı özdevinirler ile bağlamdan-bağımsız gramerler arasındaki ilişki.Bağlamdan-bağımsız dillerin özellikleri ve bağlamdan-bağımsız diller için pumping lemma.Turing makineleri ve hesaplama teorisi.

BBM402 - Hesaplama Kuramı (3 0 3 )

Özdevinirler teorisi ve biçimsel diller.Biçimsel dillerin özellikleri ve biçimsel diller için pumping lemma.Church-Turing kuramı, Turing makineleri ve hesaplama kuramının modellenmesi.Çözülebilir ve çözülemeyen problemler.Karar verilebilirlik kavramı ve halting problemi.İndirgenebilirlik kavramı ve biçimsel diller teorisinde çözülemeyen problemler.Zaman karmaşıklığının ölçülmesi.P, NP, NP-Completeness kavramları ve Cook-Levin teorimi.

BBM403 - Kombinatorik Ve Çizge Kuramı (3 0 3 )

Temel kavramlar,Binom katsayıları, kapsama-dışlama kavramı.Çizge kuramında temel kavramlar, Çizge gösterimleri,Erişilebilirlilik, alt çizgeler, Eşbiçimlilik, bitişiklilik, Düzlemlilik, Boyama değeri, Eular çizgesi,Hamilton çizgesi, Çizge uygulamaları

BBM404 - Derleyici Gerçekleştiriminin Temelleri (3 0 3 )

Derleyicilerin yapıları.Sözcük çözümleme.Sözdizimsel çözümleme.Veri türü denetimi ve sözdizimsel güdümlü çeviri.Ara-kod üretimi, kod üretimi ve kod iyileştirme.Hata yönetimi.

BBM405 - Yapay Anlayışın Temelleri (3 0 3 )

Problem çözüm teknikleri: Durum uzayı yaklaşımı, problem-indirgeme yaklaşımı, tam kapsamlı arama algoritmaları, sezgisel arama algoritmaları, oyun tabanlı algoritmalar ve oyun ağaçları, mantık programlama ,bilgi temsili ve işleme, yapay zeka sistemlerinde öğrenme, yapay sinir ağları, önermeler mantığında ispat teorisi, birinci-derece yüklem mantığı, Bayes ağları, anlamsal ağlar, bulanık mantık, algılama, robot bilim.

BBM406 - Makine Öğrenmesinin Temelleri (3 0 3 )

Makine öğrenmesinin temel kavramları ve basit kavram öğrenme algoritmaları.Karar-ağaçları, neron ağları, bayes öğrenmesi, regresyon, destek vektör makineleri ve genetik algoritmalar gibi makine öğrenme algoritmaları.Yönetmeli ve yönetmesiz öğrenme yöntemleri.Özellik seçimi, boyut azaltması ve model seçimi.

BBM407 - Bulanık Mantık (3 0 3 )

Bulanık mantık sisteminin genel yaklaşımı, bulanık kümeler, ilişkiler ve aritmetik. Olabilirlik ve olasılık kuramları ile bulanık mantık arası ilişkiler. Bulanık çıkarsama sistemleri ve türleri. Bulanık çıkarsamada karma yöntemler. Bulanık kümeleme. Genel uygulama alanlarının incelenmesi: Karar verme, örüntü tanıma, veri tabanı sistemleri, veri madenciliği.

BBM408 - Algoritma Analizi (3 0 3 )

Asimtotik gösterimler, özyineli ilişkiler, algoritma tasarımda genel teknikler, sıralama ve sıra istatistikleri, greedy/matris algoritmaları, dinamik programlama.

BBM410 - Dinamik Sistemler (3 0 3 )

Sistemler hakkında temel kavramlar.Durum-uzay gösterimleri.Kesikli ve sürekli zamanlı doğrusal dinamik sistemler.Doğrusal durum denklemleri.Doğrusal ve zamandan bağımsız sistemler.Denge noktaları. Kararlılık.Geri bildirim. Kontrol edilebilirlik. Gözlemlenebilirlik.

BBM429 - Proje I (3 0 3 )

Bu uygulamalı ders kapsamında, her öğrenciden danışmanlarının gözetiminde bir yazılım veya donanım geliştirmesi beklenmektedir. Donanım projelerinde CAD ve diğer donanım araçları kullanılır. Yazılım projelerinde ise kullanıcı dostu olunması ve yazılım mühendisliği tekniklerinin kullanılması gerekmektedir.

BBM430 - Proje II (3 0 3 )

Bu uygulamalı ders kapsamında, her öğrenciden danışmanlarının gözetiminde bir yazılım veya donanım geliştirmesi beklenmektedir. Donanım projelerinde CAD ve diğer donanım araçları kullanılır. Yazılım projelerinde ise kullanıcı dostu olunması ve yazılım mühendisliği tekniklerinin kullanılması gerekmektedir.

BBM431 - Gelişmiş Bilgisayar Mimarileri (3 0 3 )

Bilgisayar mimarilerinde temel konular ve son gelişmeler. Sanal bellek yapıları, bellek mimarileri, önbellekler, komut seti tasarımı, RISC mimarisi, işlemci mikro-mimarisi, üst ölçek mimariler, VLIW makineleri, vector bilgisayarlar, parallel bilgisayarlar.

BBM433 - Mikroişleyiciler (3 0 3 )

Mikroişleyicili sistemlerde program geliştirmenin irdelenmesi. Mikroişleyicilerde arayüz birimlerinin denetim algoritmalarının geliştirilmesi. Bilgisayar sistemlerinde klavye, görüntü birimi gibi diğer birimler için denetim yazılımı geliştirme. Mikroişleyicilerde bellek ve giriş/çıkış birimleri arabirimleri bağlantıları. Donanım arabirimleri ve uygulamalar için bunların yazılımlarının geliştirilmesi.

BBM436 - Mikroişleyiciler Laboratuvari (3 0 3 )

Mikroişleyicili sistemlerde program geliştirme. Mikroişleyicilerde arayüz birimlerinin denetim algoritmalarının geliştirilmesi. Bilgisayar sistemlerinde klavye, görüntü birimi gibi diğer birimler için denetim yazılımı geliştirme. Mikroişleyicilerde bellek ve giriş/çıkış birimleri arabirimleri bağlantıları. Donanım arabirimleri ve uygulamalar için bunların yazılımlarının geliştirilmesi.

BBM442 - Koşut İşlem (3 0 3 )

Koşut mantığa ve koşut programlamaya giriş, koşut bilgisayarlar için ağ topolojileri, GPU?lar, koşut bilgisayar mimarileri (SIMD, Shared Memory MIMD and Distributed Memory MIMD), zaman uyumlama mekanizmaları, koşut programlama modelleri, koşut algoritmaların çözümlenmesi ve tasarımı, farklı mimariler için koşut algoritma geliştirimi, koşut algoritmaların başarım ve karmaşıklığı ve seçilen bazı koşut algoritmarın vaka çalışmaları.

BBM444 - Hesaplamalı Fotografinin Temelleri (3 0 3 )

Kameralar ve görüntü oluşumu. Renk algısı.Görüntü işleme konu tekrarı.Veriye dayalı görüntü sentezleme.Görüntü düzenleme (bozma, dönüştürme, matlama, harmanlama, birleştirme) .Panoramalar, mozaikler ve kolajlar.Gürültü temizleme.Görüntü tamamlama.Yüksek dinamik aralıklı görüntüleme and ton eşleme.Derinlik and odağı bozma.Görüntü tabanlı ışıklandırma ve görsel gerçekleme.Foto gerçekçi olmayan görsel gerçekleme.

BBM446 - Hesaplamalı Fotografi Laboratuvarı (3 0 3 )

Kameralar ve görüntü oluşumu .Renk algısı .Görüntü işleme konu tekrarı .Veriye dayalı görüntü sentezleme .Görüntü düzenleme (bozma, dönüştürme, matlama, harmanlama, birleştirme) .Panoramalar, mozaikler ve kolajlar .Gürültü temizleme .Görüntü tamamlama .Yüksek dinamik aralıklı görüntüleme and ton eşleme .Derinlik and odağı bozma .Görüntü tabanlı ışıklandırma ve görsel gerçekleme .Goto gerçekçi olmayan görsel gerçekleme.

BBM456 - Bilgisayar Ve Ağ Güvenliği (3 0 3 )

Şifreleme, sistem güvenliği, program güvenliği, ağ güvenliği.

BBM461 - Güvenli Programlama (3 0 3 )

Temel program güvenliği ilkeleri, Kabuk ve işletim sistemi kaynaklı açıklar, Taşırma saldırıları, Girdi hataları, Web güvenliği, Güvenlik çatıları, Kod analizi ve yazılım güvenlik testleri

20.06.2014
Hacettepe Üniversitesi Bilgisayar Mühendisliği Bölümü
06800 Beytepe Ankara