BİLGİSAYAR MÜHENDİSLİĞİ (YÜKSEK LİSANS) (TEZSİZ)
Yüksek Lisans TYYÇ: 7. Düzey QF-EHEA: 2. Düzey EQF-LLL: 7. Düzey

Ders Genel Tanıtım Bilgileri

Ders Kodu: BMB 529
Ders İsmi: Mikroservis Tasarımı ve Geliştirme
Ders Yarıyılı: Bahar
Ders Kredileri:
Teorik Pratik Kredi AKTS
3 0 3 9
Öğretim Dili: TR
Ders Koşulu:
Ders İş Deneyimini Gerektiriyor mu?: Hayır
Dersin Türü: Bölüm Seçmeli
Dersin Seviyesi:
Yüksek Lisans TYYÇ:7. Düzey QF-EHEA:2. Düzey EQF-LLL:7. Düzey
Dersin Veriliş Şekli: E-Öğrenme
Dersin Koordinatörü: Dr.Öğr.Üyesi CAN RAZBONYALI
Dersi Veren(ler):
Dersin Yardımcıları:

Dersin Amaç ve İçeriği

Dersin Amacı: Dersin amacı, günden güne gelişen yazılım geliştirme mimarisi olan mikroservis mimarilerini Spring Boot(JAVA) kullanarak matığını anlatmaktır.
Dersin İçeriği: Spring Boot ile mikroservis tasarlamak.

Öğrenme Kazanımları

Bu dersi başarıyla tamamlayabilen öğrenciler;
Öğrenme Kazanımları
1 - Bilgi
Kuramsal - Olgusal
2 - Beceriler
Bilişsel - Uygulamalı
3 - Yetkinlikler
İletişim ve Sosyal Yetkinlik
Öğrenme Yetkinliği
Alana Özgü Yetkinlik
1) Spring boot frameworkü kullanarak bir mikroservis inşa etmek ve bu servislerin Docker teknolojisi ile nasıl yayınlandığını öğrenmek.
Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği

Ders Akış Planı

Hafta Konu Ön Hazırlık
1) Java ve Spring Boot temelleri.
2) Java ve Spring Boot temelleri.
3) Java ve Spring Boot temelleri üzerine yapılacaklar listesi uygulaması geliştirmek.
4) Yapılacaklar listesi uygulamasında DTO tasarım şablonunun uygulanması.
5) Docker teknolojisi ve temel işlevi hakkında bilgi.
6) Ders anlatımında geliştirilmekte olan yapılacaklar listesi uygulamasına MVC tasarım şablonunun uygulanması.
7) Docker ile postgresql veri tabanı yönetim sistemini çalışır hale getirmek ve yapılacaklar listesinin veri tabanı yönetim sistmine bağlantısını sağlamak.
8) Veri tabanı yönetim sistemi ile uygulama arasında bulunan ORM aracı olan hibernate ile ilgili bilgi aktarımı.
9) Hibernate nesne ilişki türleri. * One - to - One * One - to - Many * Many - to - One * Many - to - Many
10) Yapılacaklar listesi uygulamasını çok kullanıcı hale gelemesi için kullanıcı servisinin geliştirilmesi.
11) Kullanıcı servisinin geliştirilmesine devam edilmesi.
12) Kullanıcı servisinin geliştirilmesine devam edilmesi ve Spring Güvenlik paketi ve JWT yapısının anlatımı.
13) Kullanıcı servisinin geliştirilmesine devam edilmesi.
14) Genel tekrar.

Kaynaklar

Ders Notları / Kitaplar: Öğretim üyesi tarafından paylaşılan kaynak notlar ve videolar.
Diğer Kaynaklar: Öğretim üyesinin özel sektör tecrübeleri.

Ders - Program Öğrenme Kazanım İlişkisi

Ders Öğrenme Kazanımları

1

Program Kazanımları
1) Planlama, analiz, tasarım ve yapılandırma aşamalarını içeren bilgi sistemleri geliştirilmesinde kapsamlı bilgi sahibi olma, ilgili geliştirme yöntemleri ve modelleme araçlarını tanıma.
2) Bilgisayar mühendisliği alanında ileri uygulamaları gerçekleştirecek düzeyde kapsamlı bilgi sahibi olma.
3) Bilgi ve İletişim Teknolojileri alanında uygulamalı araştırma yaparak bilgiye ulaşabilme, değerlendirme ve uygulama, farklı disiplinlerden bilgiyi entegre etme.
4) Farklı alanlarda bilimsel yöntemlerle bilgiyi keşfetme, sonuç çıkarma, paylaşma ve uygulama; farklı disiplinlere ait bilgileri ilişkilendirme.
5) Bilgi teknolojileri alanıyla ile ilgili uzmanlık gerektiren bir çalışmayı bağımsız olarak yürütebilme.
6) Bilgi ve İletişim Teknolojileri alanı ile ilgili uygulamalarda karşılaşılan ve öngörülemeyen karmaşık sorunların çözümü için yeni stratejik yaklaşımlar geliştirebilme ve sorumluluk alarak çözüm üretebilme.
7) Bilgi ve İletişim Teknolojileri alanı ile ilgili sorunların çözümlenmesini gerektiren ortamlarda liderlik yapabilme.
8) Bilgisayar Mühendisliği alanında edindiği uzmanlık düzeyindeki bilgi ve becerileri eleştirel bir yaklaşımla değerlendirebilme ve öğrenmesini yönlendirebilme.
9) Bilgisayar Mühendiliği alanındaki güncel çalışmalardan haberdar olma, gelişmeleri sürekli takip etme, gerektiğinde bunları inceleme ve adlandırma.
10) Türkçe ve İngilizce olarak sözlü ve yazılı etkin iletişim kurma.
11) Çalışmalarında toplumsal, bilimsel ve etik değerleri gözetme.
12) Bilgi Teknolojileri ile ilgili konularda strateji, politika ve uygulama planları geliştirebilme ve elde edilen sonuçları, kalite süreçleri çerçevesinde değerlendirebilme.
13) Bilgisayar Mühendiliği alanında özümsedikleri bilgiyi, problem çözme ve/veya uygulama becerilerini, disiplinlerarası çalışmalarda kullanabilme.

Ders - Öğrenme Kazanımı İlişkisi

Etkisi Yok 1 En Düşük 2 Düşük 3 Orta 4 Yüksek 5 En Yüksek
           
Dersin Program Kazanımlarına Etkisi Katkı Payı
1) Planlama, analiz, tasarım ve yapılandırma aşamalarını içeren bilgi sistemleri geliştirilmesinde kapsamlı bilgi sahibi olma, ilgili geliştirme yöntemleri ve modelleme araçlarını tanıma. 5
2) Bilgisayar mühendisliği alanında ileri uygulamaları gerçekleştirecek düzeyde kapsamlı bilgi sahibi olma. 4
3) Bilgi ve İletişim Teknolojileri alanında uygulamalı araştırma yaparak bilgiye ulaşabilme, değerlendirme ve uygulama, farklı disiplinlerden bilgiyi entegre etme. 4
4) Farklı alanlarda bilimsel yöntemlerle bilgiyi keşfetme, sonuç çıkarma, paylaşma ve uygulama; farklı disiplinlere ait bilgileri ilişkilendirme. 4
5) Bilgi teknolojileri alanıyla ile ilgili uzmanlık gerektiren bir çalışmayı bağımsız olarak yürütebilme. 3
6) Bilgi ve İletişim Teknolojileri alanı ile ilgili uygulamalarda karşılaşılan ve öngörülemeyen karmaşık sorunların çözümü için yeni stratejik yaklaşımlar geliştirebilme ve sorumluluk alarak çözüm üretebilme. 4
7) Bilgi ve İletişim Teknolojileri alanı ile ilgili sorunların çözümlenmesini gerektiren ortamlarda liderlik yapabilme. 2
8) Bilgisayar Mühendisliği alanında edindiği uzmanlık düzeyindeki bilgi ve becerileri eleştirel bir yaklaşımla değerlendirebilme ve öğrenmesini yönlendirebilme. 4
9) Bilgisayar Mühendiliği alanındaki güncel çalışmalardan haberdar olma, gelişmeleri sürekli takip etme, gerektiğinde bunları inceleme ve adlandırma. 4
10) Türkçe ve İngilizce olarak sözlü ve yazılı etkin iletişim kurma. 1
11) Çalışmalarında toplumsal, bilimsel ve etik değerleri gözetme. 1
12) Bilgi Teknolojileri ile ilgili konularda strateji, politika ve uygulama planları geliştirebilme ve elde edilen sonuçları, kalite süreçleri çerçevesinde değerlendirebilme. 3
13) Bilgisayar Mühendiliği alanında özümsedikleri bilgiyi, problem çözme ve/veya uygulama becerilerini, disiplinlerarası çalışmalarda kullanabilme. 4

Öğrenme Etkinliği ve Öğretme Yöntemleri

Anlatım
Beyin fırtınası /Altı şapka
Bireysel çalışma ve ödevi
Ders
Web Tabanlı Öğrenme

Ölçme ve Değerlendirme Yöntemleri ve Kriterleri

Yazılı Sınav (Açık uçlu sorular, çoktan seçmeli, doğru yanlış, eşleştirme, boşluk doldurma, sıralama)
Raporlama

Ölçme ve Değerlendirme

Yarıyıl İçi Çalışmaları Aktivite Sayısı Katkı Payı
Kurul-Committee 72 % 0
Devam 72 % 0
Laboratuar 72 % 0
Uygulama 72 % 0
Ödev 3 % 40
Final 1 % 60
Toplam % 100
YARIYIL İÇİ ÇALIŞMALARININ BAŞARI NOTU KATKISI % 40
YARIYIL SONU ÇALIŞMALARININ BAŞARI NOTUNA KATKISI % 60
Toplam % 100

İş Yükü ve AKTS Kredisi Hesaplaması

Aktiviteler Aktivite Sayısı İş Yükü
Ders Saati 14 42
Uygulama 13 13
Sınıf Dışı Ders Çalışması 14 28
Ödevler 13 78
Ara Sınavlar 14 42
Final 13 52
Toplam İş Yükü 255