Ders Adı Kodu Yarıyıl T+U Saat Kredi AKTS
Machıne Learnıng For Software Engıneerıng SWE 531 0 3 + 0 3 6
Ön Koşul Dersleri

Basic machine learning / data analytics knowledge and familiarity with software development processes are required.

Önerilen Seçmeli Dersler
Dersin Dili İngilizce
Dersin Seviyesi YUKSEK_LISANS
Dersin Türü Seçmeli
Dersin Koordinatörü Dr.Öğr.Üyesi BEYZA EKEN
Dersi Verenler
Dersin Yardımcıları
Dersin Kategorisi Diğer
Dersin Amacı

Acquiring skills to analyze software engineering data such as source code, bug and issue reports, and software documentation. Being familiar with the state-of-the-art machine learning and large language model techniques for software engineering tasks such as development effort estimation, automatic code completion, code repair, bug detection, and test generation.

Dersin İçeriği

Analyzing software data using empirical methods and machine learning. Building machine learning based solutions for software engineering.

Kalkınma Amaçları
# Ders Öğrenme Çıktıları Öğretim Yöntemleri Ölçme Yöntemleri
1 Proje, Ödev / Evde-Çöz Sınavlar,
Hafta Ders Konuları Ön Hazırlık
1 Introduction to course
2 Overview of software engineering data such as source code, bug reports, issue reports
3 Measuring software using size and complexity metrics
4 Mining software repositories
5 Sofware effort estimation using machine learning
6 Analysis of software bugs with empirical methods
7 Software defect prediction with machine learning
8 Source code representation with large language models
9 Source code representation with large language models
10 Application of large language models on code completion
11 Application of large language models on code repeair
12 Application of large language models on test generation
13 Student presentations
14 Student presentations
Kaynaklar
Ders Notu
Ders Kaynakları

Lecture notes and research papers

Sıra Program Çıktıları Katkı Düzeyi
1 2 3 4 5
1 Yaşadığı toplumun bilgi toplumu olmasına katkıda bulunmak, toplumsal, bilimsel, kültürel ve etik sorunlara çözüm sunmak amaçlarıyla alanındaki bilimsel, teknolojik, sosyal veya kültürel ilerlemeleri ulusal ve uluslararası bilimsel ortamlarda (toplantılarda) tanıtır.
2 Alanında bilimsel araştırma yaparak bilgiye genişlemesine ve derinlemesine ulaşır, alanında güncel teknik ve yöntemler ile bunların kısıtları hakkında kapsamlı bilgiye sahip olup ve elde ettiği bilgiyi değerlendirir, yorumlar ve uygular. X
3 Alanı ile ilgili problemleri tanımlar ve formüle eder, yeni ve/veya özgün fikir ve yöntemler geliştirir; karmaşık sistem veya süreçleri tasarlar ve tasarımlarında yenilikçi/alternatif çözümler ile gelişmekte olan yenilikçi yöntemleri kullanır. X
4 Kuramsal, deneysel ve modelleme esaslı araştırmaları tasarlar ve uygular, belirsiz, sınırlı ya da eksik verileri bilimsel yöntemlerle tamamlar; verilerin toplanması, yorumlanması, duyurulması aşamalarında ve mesleki tüm etkinliklerde toplumsal, bilimsel ve etik değerleri gözetir. X
5 Alanındaki uygulamaların sosyal, çevresel, sağlık, güvenlik, hukuki boyutlarını ve iş hayatı uygulamalarını bilir ve bunların getirdiği kısıtların farkındadır. Disiplin içi ve çok disiplinli takımlarda etkin bir biçimde birlikte ve ya bağımsız çalışabilir ve sorumluluk alır.
6 Her ölçekte yazılım sistemi için proje planlaması; zaman, kaynak, bütçe ve risk yönetimi yapar, alternatif çözüm yolları belirler.
# Ders Öğrenme Çıktılarının Program Çıktılarına Katkısı PÇ 1 PÇ 2 PÇ 3 PÇ 4 PÇ 5 PÇ 6
1
Değerlendirme Sistemi
Yarıyıl Çalışmaları Katkı Oranı
1. Proje / Tasarım 50
Toplam 50
1. Final 50
Toplam 50
AKTS - İş Yükü Etkinlik Sayı Süre (Saat) Toplam İş Yükü (Saat)
Proje / Tasarım 1 20 20
Final 1 10 10
Toplam İş Yükü 30
Toplam İş Yükü / 25 (Saat) 1,2
Dersin AKTS Kredisi 6