TR    EN

Yazılım Mühendisliği Doktora Programı Ders Listesi

Zorunlu Bölüm Dersleri

Yazılım Mühendisliği Seçmeli Dersleri

Bilgisayar Mühendisliği Seçmeli Dersleri

Bilişim Sistemleri Mühendisliği Seçmeli Dersleri



Zorunlu Bölüm Dersleri

SE 600 - Yazılım Mühendisliğinde Araştırma Yöntemleri
Titiz, bilimsel araştırma, özellikle tez veya doktora tezleri; literatür taraması; anketler; meta-analizler; deneysel araştırma tasarımı; araştırma sorularının hazırlanması; teori tasarlanması; nitel ve nicel verilerin toplanması ve analiz metotları; geçerlilik; güvenilirlilik; nirengi; bulguların tasarımı; araştırma önerisinin yazılması ve yayınlanması

SE 650 - Yazılım Mühendisliğinde İleri Konular
Yazılım mühendisliğine ve ilgili konulara giriş. Yazılım süreç ve proje metrikleri. Proje planlama, zamanlama ve takip etme. Konfigürasyon yönetimi. Yazılım kalite güvence. Gereksinim analizi, veri akış diyagramları ve ilgili konular. Tasarım kavramları ve yöntemleri, geliştirme, test yöntemleri ve stratejileri. Nesneye yönelik kavramlar ve prensipler.

SE 654 - Yazılım Kalite Yönetiminde İleri Konular
Yazılımın kalitesi ve kalite güvenceye giriş; yazılım kalite güvencesi bileşenleri; konfigürasyon yönetimi; yazılım gözden geçirme, inceleme ve denetimler; yazılım test stratejileri ve teknikleri; yazılım kalite standartları; sertifikasyon ve değerlendirme; yazılım süreç iyileştirme ve kalite ölçümleri ile ilgili çalışmaların tanıtılması; çevik ve küresel yazılım geliştirme yöntemlerinde kalite konuları

SE 658 - İleri Yazılım Mimarisi
Yazılım mimarisine giriş ve genel bakış; mimari modeller; yazılım ürün hatları ve konfigüre edilebilir yazılım; kendinden uyarlamalı (öz-adaptif) yazılım; mimari tanımlama dilleri; özellik modelleme; mimari ve model tabanlı test

SE 660 - Yeterlilik Sınavı
Doktora programında alınan zorunlu derslerin içerikleri

SE 670 - Tez Önerisi
Yazılım Mühendisliği alanındaki araştırma konuları

SE 680-I - Tez I
Tez protokolündeki konular

SE 680-II - Tez II
Tez protokolündeki konular

SE 680-III - Tez III
Tez protokolündeki konular

SE 690 - Tez Savunma Jürisi
Tez protokolündeki konular

Yazılım Mühendisliği Seçmeli Dersleri

SE 503 - Bilgi Sistemleri Tasarımı
Modern notasyon ve çizimler kullanarak yazılım mimarisine giriş; tasarım desenleri; nesneye yönelik modelleme ve mimari tasarım; tasarımda deney yürütmek; prototip tasarımı; tasarım ekibiyle çalışma ve nesneye yöneli projelerde yönetim; detaylı tasarım ve gerçekleştirim; tasarımın gözden geçirilmesi; programlamak için tasarım belgesinin kullanılması

SE 546 - Sağlık Bilişiminde Karar Destek
Sağlık bilişimi alanındaki farklı kararlar için doğru bilginin nasıl seçileceği ve bunun kullanıcı için anlamının ne olacağı; istatistiksel ve diğer analiz metotları ve araçlarının değerlendirilmesi; nicel sağlık hizmetleri verilerinin etkin bir şekilde analizi amacıyla farklı araştırma veritabanlarının ve operasyonel veritabanlarının kullanımı ve gösterimi; doğru ortamların seçilmesi için gerekli metotların derinlemesine incelenmesi

SE 552 - İleri Yazılım Proje Yönetimi
Proje yönetimine giriş; algoritmik maliyet tahmin modelleri; gelişmiş maliyet tahmin modelleri; fonksiyon noktaları tahmini; risk değerlendirmesi; yaşam döngüsü modelleri; ön ürün geliştirme; yazılımların yeniden kullanımının yönetimi; yazılım yönetimi; yazılım olgunluk çerçeveleri; durum çalışmaları

SE 555 - Model Güdümlü Yazılım Geliştirme
Model güdümlü geliştirmeye giriş; modelleme dilleri; yazılımın yeniden kullanılabilirliği; alana özgü modelleme; metamodelleme; model dönüşümleri; metamodelleme araçları; kod oluşturma; MOF (meta object facility); yazılım bileşenleri

SE 556 - Yazılım İnşası ve Evrimi
Yazılım inşası temelleri; yazılım karmaşıklığı; yazılım inşası yönetimi; yazılım inşası modelleri; yazılım inşası dilleri; kodlama; yazılım inşası testi; tekrar kullanma; doğrulama ve standart inşa; yazılım inşası kalitesi; entegrasyon

SE 560 - Gereksinim Mühendisliği
Alan araştırması ve gereksinim temini; gereksinim değerlendirmesi; gereksinim spesifikasyonu ve dökümantasyonu; yazılım kalite güvencesi; gereksinim evrimi; hedef diyagramları ile sistem objektiflerinin modellenmesi; hedef modellerinde risk analizi; sistem aracılarının ve görevlerinin modellenmesi; sistem davranışlarının modellenmesi; değişik sistem görüşlerinin entegrasyonu; hedefe yönelik model kurma methodu aksiyonu; sistem modellerinin formal spesifikasyonu

SE 562 - Yazılım Mühendisliğinde Biçimsel Yöntemler
Biçimsel yöntemlere giriş; kurallı belirtimin temel yönleri; matematiksel anlambilim ile yazılım şartnamesi ve gelişimi; yazılım tabanlı sistemler için biçimsel şartnamenin inşa edilmesi; biçimsel şartname dilleri, Z, Nesne Z ve OCL; şartnamaler ile gerçekleştirmenin ilişkilendirilmesi; sistemin yaşam çevriminde kurallı belirtimin rolü; biçimsel yöntemlerin sınıflandırılması; biçimsel doğrulama ve geçerleme

SE 564 - Servis Yönelimli Mimari ve İş Süreç Yönetimi
SOA temelleri; SOA tasarım prensipleri; SOA standartları, temeller, BPEL, SOAP, WSDL ve UDDI; yönetişim; iş süreç modelleri; iş ve içerik yönetiminden işbirliği ve analitiğe iş süreç modelleri yönetimi; SOA etkin iş süreç yönetimi

SE 570 - Mobil Yazılım Mühendisliği
Mobil platformlara genel bakış. Android ile uygulama geliştirme. Uygulama temelleri. Kullanıcı Arayüzüne genel bakış, Etkinlikler, Uygulama süreçleri. Intents, Intent Filtreleri, Broadcasts, BroadcastReceivers. Shared Preferences, Dosyalar, SQLite DB, Content Provider. Otomatik test, Test tabanlı geliştirme. Google Haritalar, MapView, MapActivity. Threadler, Servisler, Durum çubuğu bildirimleri.

SE 571 - Çevik Yazılım Geliştirme Yaklaşımları
Çevik yöntemlere giriş; extreme programlama (XP); Lean; Scrum; Crystal; feature-driven development (FDD); Kanban; dinamik sistemler geliştime yöntemi (DSDM); çevik yazılım yöntemlerinde mimari ve tasarım konuları

SE 577 - Yazılım Ölçümü
Ölçüm teorisi; ölçü tasarımı ve geçerlemesi; ölçüm gereksinimleri; ölçüm süreci; yazılım ölçüm teknikleri ve araçları; ölçüm çerçeveleri; ölçüm yönetimi; proje, ürün, hizmet, süreç ve kalite ölçümü; ISO ölçüm standartları; yazılım kestirimi; yazılım ölçüm verikümeleri

SE 601 - Özel Konular
Bu dersin her dönem verilen içeriklerinin enstitü kurulu ve üniversite senatosundan onay zorunluluğu bulunmamaktadır. Bu nedenle dönem başlamadan önce o döneme ait ve o dönemle sınırlı kalmak üzere ders içeriği hazırlanır ve bölüm kuruluna onay için sunulur. Onaylanan ders içeriği dönem içinde uygulanır.

Bilgisayar Mühendisliği Seçmeli Dersleri

COMPE 501 - Nesneye Yönelik Tasarım ve Programlama
Nesne Yönelimli düşünme. Soyutlama. Nesneye Yönelik Analiz ve tasarım kavramları ve tasarım kalıpları. Tümleşik Modelleme Dili (TMD): giriş, modellemin rolü, modeller ve görünümler, temel diyagramlar, temel elementler (yapısal elementler, Java'dan bağımsız olgular, Java'ya bağımlı olgular). Sıralama, sınıf ve paket diyagramlarına giriş. Geliştirme Yaşamdöngüsü ve TMD (Gereksinim Analizi ve Tasarım, Yapılanma, Test, Uygulama). Yaşamdöngüsi. Java ve TMD : Sorumluluk Güdümlü Tasarım metodu ve CRC kart kullanımı. Sınıflar ve Metodlar. Mesjlaşma, nesne yaratma ve ön değer tanımlama. Kalıtım, alt sınıf ve alt tür. Static and dynamic behavior. Statik ve dinamik davranış. Yerine geçme. Çoklu Kalıtım ve Çokbiçimlilik.

COMPE 502 - İleri Veritabanları
Veritabanı Sistemleri kavramları. Hareket İşleme, Eşzamanlılık Kontrolü ve Veritabanı Kurtarma, Nesneye Yönelik ve Nesne-İlişkisel Veritabanları, Yarı Yapısal Veri ve XML, Paralel ve Dağıtık Veritabanları, İleri Dağıtık Veritabanları Kavramları, Büyük Veri’ye Giriş, Geçici Veritabanları

COMPE 504 -

COMPE 511 - Internet Programlama
Internet Programlama ortamları. HTML ve DTHML ile Ana Sayfa tasarımı. JavaScript Betik dili, istemci-sunumcu modeli, istemci tarafı betikler, sunucu tarafı betikler. Web Sunucuları. CGI, SSI, SSL, sertifika, çerez ve oturumlar. Veritabanı entegrasyonu. Web güvenliği. XML. Etkileşimli uygulama tasarımı.

COMPE 512 - e-Ticaret - Bir Yönetimsel Perspektif
E-iş ve e- ticarete Giriş. Elektronik pazar yerleri. E-ticaretin teknik bakış açıları ve altyapısı. E-ticaret iş modelleri. Şuanki teknolojik durum. Çevrimiçi pazarlama, e-ticarette yasal çevre, e-ticarette mali çevre. Fırsat veren teknoloji ve standartlara giriş. E-ticaret için iş-akış sitemleri. Şuanki B2B e-ticaret çatıları: Açık İnternetten alım (Open buying on the Internet: OBI), Yaygın iş kütüphanesi (Common business library: CBL), CommerceNet's eCo çatısı ve ağ servisleri. İnternette bireyselleştirme. İnternette tedarik zinciri bütünleştirmesi. Örnek olay çalımaları ve sunumları

COMPE 513 - Bilgisayar ve Ağ Güvenliği
Kripto teknikleri ve algoritmaları. Açık anahtar kriptolaması. Özet fonksiyonları. Sayısal imzalar. Yetkilendirme. Ağ güvenliği. işletim sistemleri güvenliği(Unix ve Windows). Bell-LaPadulla modeli. Yazılım ve veri tabanı güvenliği. Anahtar oluşturma. Web güvenliği

COMPE 515 - İleri Java Programlama
JDK belgeleme. Java hata ayıklama. Java belgeleme stili. IDE aracı ile Java geliştirme. Java 2D uygulama geliştirme arayüzü. İleri Java SWING bileşenleri. Java izlek sınıfı. İzlek yaşam döngüsü. Soket programlama. Web sunucu ile Java entegrasyonu. Servlet’ler. Veritabanı uygulamları. Java yansıtırlık uygulama geliştirme arayüzü. Java Özgül Arayürü (JNI). Java Server & Enterprise Java Beans. Nesne ilişki haritalama.

COMPE 516 - Internetwork Teknolojilerindeki Güncel Eğilimler
Internet Teknolojileri ve Standartları konusunda çalışma yapan kuruluşların ve organizanyonların tarihçelerine bakış. Açık ve tescilli standartlar. Yaygın kullanımda olan ve kabul görmüş teknolojiler ve teknikler. Geliştirilmekte olan son teknolojiler. Geliştirilmekte olan son teknikler, bunların durumları, üzerinde çalışma yapan guruplarla iligili irdelemeler.

COMPE 517 - Web Performansı
Web performansı kavramına giriş. Kapasite planlaması. Performans izleme. Performans Analizi. Ön belleğe alma.

COMPE 518 - Web Tasarımı ve Geliştirme
Web sitesi tasarım ve geliştirme süreci. İhtiyaç analizi. Arayüz tasarımı. Site tasarımı. Sayfa tasarımı. Grafikler ve çoklu ortam. Üretim. İdame ettirme ve değerlendirme.

COMPE 519 -

COMPE 521 - Çoklu Ortam Sistemleri
Çoklu ortam sistemlerinin yazılım ve donanım gereksinimleri. Çoklu ortam veri türleri (sayısal ses, video, resim). Resim ve video sıkıştırma teknikleri. Çoklu ortam haberleşme sistemleri. İçerik tabanlı çoklu ortam erişimi. Mobil çoklu ortam uygulamaları.

COMPE 523 - Ağ ve Sistem Yönetimi
OSI sistem yönetimi. Sistem yönetim terimleri. Sistem yönetim destek fonksiyonları. Yönetim bilgisi mimarisi. Internet ağ yönetimi: SNMPv2. IEEE LAN ve WAN ağ yönetimi. SNA sistem yönetimi ve sistem bakış açısı. Konfigürasyon yönetimi. Hata yönetimi. Ağ yönetimi konuları, son eğilimler.

COMPE 531 - İleri İşletim Sistemleri
İşlem zamanlamada gelişmiş konular. Çok işlemcili ve gerçek zamanlı zamanlama. Eş-zamanlı programlama temelleri. İşlem içi iletişimine genel bakış, semaforlar ve monitörler. Senkronizasyon ve iletişim. Hata toleransı. İşletim sistemleri konusunda güncel gelişmeler.

COMPE 532 - İleri Bilgisayar Mimarileri
Bilgisayar Tasarımının Temel Prensipleri, Komut Kümelerinin Prensipleri ve Örnekler, İleri Seviyede ardışık hesaplamalar ve paralelleştirme, Hafıza Hiyerarşisi Yapısı, Depolama Sistemleri

COMPE 541 -

COMPE 562 - Çok Erkinli Sistemler
Erkin paradigması, Soyut erkin mimarileri, Akıllı erkinlerin tasarımı, Erkin işbirliği, İhale sistemleri, Müzakere, Tartışma, Etkileşim dilleri ve protokolleri, Dağıtık problem Çözme, Koordinasyon, Çok Erkinli sistem uygulamaları.

COMPE 568 - İleri Yapay Zeka
Zeki erkinler. Arama yolu ile problem çözme. Yönlendirilmiş/yönlendirilmemiş arama metodları. Keşifetme. Kural doyumu. Bilgi ve çıkarım. Birinci seviye mantık ve çıkarım. Makina öğrenmesi. Seçimli konular: sinir ağları, doğal hesaplama.

COMPE 572 - Hesaplama Teorisi
Hesaplama modelleri, Church-Turing Tezi, Kararverilebilirlik ve kararverilemezlik, Özyineli numaralandırılabilirlik, Zaman karmaşıklığı, P ve NP sınıfları, Uzay karmaşıklığı, LOGSPACE, PSPACE-Tamlık

COMPE 573 - Biçimsel Diller ve Özdevinirler
Diller ve gösterimleri. Sonlu özdevinirler ve düzenli gramerler. Bağlamdanbağımsız gramerler. Soyut makine kavramı ve dil kabulu. Belirlenimci ve belirlenimci olmayan sonlu durumlu makinalar. Son giren ilk çıkar özdeviniri. Turing makinaları ve hesaplama kuramına giriş.

COMPE 574 - İleri Algoritma
Algoritma Dizaynı ve Analizi. O – Notasyonu. Parçala – Çöz Algoritması. Olasılık Analiz ve Rastgele Algoritmalar. Dinamik Programlama. Fırsatçı Algoritmalar. Alt Sınır Teoremi. Sıralama ve Arama Algoritmalarının Karmaşıklıkları. Grafik Algoritmaları. NP-Zor ve NP-Tamam (NPC) Problemler. Başlıca NPC Problemleri. NPC ye Problem Sağlama. Bazı Dizgi İşleme Algoritmalarının Analizi.

COMPE 575 - Paralel ve Öbek Hesaplama
Paralel hesaplama modelleri – mimariye bağımlılık, hesaplama ve iletişim maliyetleri arasındaki denge. Paralel hesaplamalrda başarım kriterleri – hesaplama karmaşıklığı. Paralel hesaplama teknikleri – böl ve keşfet, parçalama ve boru hatlama. Sıralama, arama ve matris hesaplamaları için paralel algoritmalar. Paralel progrmlama için MPI ve OpenMP ortamları.

COMPE 576 - Programlama Dilleri Kavramları
Programlama dilleri kavramları:, Tip kavramı, değerler, deyimler ve cümleler. Sözdizim ve anlamdizim. Sözlüksel ve Sözdizimsel analiz. Program yapısı. Prosedürler ve fonksiyonlar. Yapılandırılımış veri. Soyutlama ve sarma. Kalıt. Dinamik bağlama. Koşutzamanlılık.

Bilişim Sistemleri Mühendisliği Seçmeli Dersleri

ISE 502 - Kurumsal Yönetim ve Değişim
Kurumsal davranış ve yönetim. Kişilik ve Öğrenme. Algılama, Atıf ve Diğerlerinin kararı. İş motivasyonu teorileri. Uygulamada Motivasyon. Gruplar ve takım çalışması. Liderlik. İletişim. Karar Verme. Anlaşmazlık ve Stres. Kurumsal Yapı. Değişim Yönetimi İlkeleri: sponsorluk, planlama, ölçme, sözleşme (yükümlülük), destek yapıları. Değişim Yönetimi Süreci

ISE 514 - Bulut Bilişim
Bulut bilişimin temelleri, Bulut bilişimin iş dünyası için önemi, Bulut bilişimin avantajları, bulut bilişimin unsurları, bulut bilişimin teknik temeli, Bulutta veri yönetimi, standartlar, bulut servislerinin yönetimi ve güvenliği, sanallaştırma, hizmet tabanlı mimari, bulut ortamının yönetimi.