YAZILIM LABORATUVARI-I |
YZM315 |
5 |
0 |
3 |
5,0 |
Önkoşul(lar)-var ise |
|
Dersin Dili |
|
Dersin Türü |
Lisans |
Dersin sorumlusu(ları) |
|
Dersin Amacı |
Yüksek düzeyde kaliteli ve ekonomik bir yazılım geliştirme süreçleri ve yöntemleririnin öğretilmesi |
Dersin Verilme Şekli |
Örgün |
Sıra No |
Dersin Öğrenme Çıktıları |
Öğretim Yöntemleri |
Değerlendirme Yöntemleri |
Program Yeterliliklerini Karşılama Düzeyi(1)(2)(3)(4)(5) |
1 |
Students learn classical and contemporary software development processes, including their comparative advantages, disadvantages, and applicable scenarios. |
|
|
|
1 |
Öğrenciler klasik ve güncel yazılım geliştirme süreçlerini, her birinin karşılaştırmalı avantajları, dezavantajları ve uygulanabilecekleri durumları içerecek şekilde öğrenirler. |
Anlatım |
Sınav |
1, 7, 8 |
2 |
Öğrenciler yazılım geliştirme projeleri ile ilgili riskleri öğrenerek risk yönetimi yapabilme yeteneği kazanır. |
Anlatım |
Sınav |
1, 3, 4 |
2 |
Students gain the ability to perform risk management by learning about the risks associated with software development projects. |
|
|
|
3 |
Students acquire the necessary knowledge to work as a member or manager of a software development team. |
|
|
|
3 |
Öğrenciler bir yazılım geliştirme ekibinin üyesi veya yöneticisi olarak görev yapabilmelerini sağlayacak ön bilgiyi kazanır. |
Problem Çözme |
Sınav |
7, 8, 9 |
4 |
Öğrenciler bir yazılım geliştirme projesinin tüm aşamalarında görev alabilme yeteneği kazanır. |
Anlatım, Problem Çözme |
Performans Ödevi |
1, 3, 4, 9 |
4 |
Students develop the ability to participate in all stages of a software development project. |
|
|
|
5 |
Students gain the ability to document technical specifications for a software development project. |
|
|
|
5 |
Öğrenciler bir yazılım geliştirme projesinin teknik belgelendirmesini yapabilme yeteneği kazanır. |
Anlatım, Örnek Olay |
Performans Ödevi |
1, 4, 8, 14 |
6 |
|
|
|
|
6 |
|
|
|
|
7 |
|
|
|
|
7 |
|
|
|
|
8 |
|
|
|
|
8 |
|
|
|
|
9 |
|
|
|
|
9 |
|
|
|
|
10 |
|
|
|
|
10 |
|
|
|
|
11 |
|
|
|
|
11 |
|
|
|
|
12 |
|
|
|
|
12 |
|
|
|
|
13 |
|
|
|
|
13 |
|
|
|
|
14 |
|
|
|
|
14 |
|
|
|
|
15 |
|
|
|
|
15 |
|
|
|
|
|
Dersin İçeriği |
Geleneksel Yazılım Geliştirme Süreç Modelleri; Çevik Yazılım Geliştirme Süreç Modelleri; Gereksinim Mühendisliği; Kullanım Senaryoları; UML Use-Case ve Etkinlik Şemaları; Yazılım Mimarisi; Yazılım Test Teknikleri; Yazılım Kalite Yönetimi; Yazılım Bakımı, Yazılımın Yeniden Kullanımı; Yazılım Konfigürasyon Yönetimi; Yazılım Proje Yönetimi; Yazılım Ölçümü; Yazılım Proje Maliyet Tahmin Yöntemleri; Yazılım Risk Yönetimi; Yazılım Süreci İyileştirme ve Yeterlilik Modelleri (CMMI) |
Kaynaklar |
1. Pressman, R. (2014). Software Engineering, 8th ed. Mc Graw Hill.
2. Sommerville, I. (2015). Software Engineering, 10th ed. Pearson.
3. Larman, C. (2002). Applying UML and Patterns, 2nd ed. Prentice Hall.
4. Kalıpsız, O. (1993). Yazılım Mühendisliği. İ.Ü. Yayını.
|
Haftalara Göre İşlenecek Konular |
Haftalar |
Konular |
Dokümanlar |
1 . Hafta |
Yazılım Mühendisliğine Giriş, Yazılım Geliştirme Süreç Modelleri (Geleneksel ve Çevik Süreçler) |
|
1 . Hafta |
Introduction to Software Engineering, Software Development Process Models (Traditional and Agile Processes) |
|
2 . Hafta |
Software Requirements Engineering, Use Cases, UML Use Case Diagrams |
|
2 . Hafta |
Yazılım Gereksinim Mühendisliği. Kullanım Senaryoları. UML Use-Case Şemaları |
|
3 . Hafta |
Yazılım Mimarilerine Giriş |
|
3 . Hafta |
Introduction to Software Architectures |
|
4 . Hafta |
Object-Oriented Analysis and Design, UML Activity Diagrams |
|
4 . Hafta |
Nesneye Yönelik Analiz ve Tasarım. UML Etkinlik Şemaları |
|
5 . Hafta |
UML Modelleme ve Yazılım Geliştirme Araçları |
|
5 . Hafta |
UML Modeling and Software Development Tools |
|
6 . Hafta |
Laboratory Work: Analysis-focused UML Modeling Tools |
|
6 . Hafta |
Laboratuar Çalışması: Analiz odaklı UML Modelleme Araçları |
|
7 . Hafta |
Yazılım Test Teknikleri |
|
7 . Hafta |
Software Testing Techniques |
|
8 . Hafta |
Midterm Exam |
|
8 . Hafta |
Ara Sınav 1 |
|
9 . Hafta |
Yazılım Bakımı - Yeniden Kullanımı ve Konfigürasyon Yönetimi |
|
9 . Hafta |
Software Maintenance - Reuse and Configuration Management |
|
10 . Hafta |
Software Maintenance, Configuration Management, Software Process Improvement, Capability Model (CMM) |
|
10 . Hafta |
Yazılım Bakımı, Konfigürasyon Yönetimi, Yazılım Süreci İyileştirme, Yeterlilik Modeli (CMM) |
|
11 . Hafta |
Laboratuar Çalışması: Tasarım odaklı UML Modelleme Araçları |
|
11 . Hafta |
Laboratory Work: Design-focused UML Modeling Tools |
|
12 . Hafta |
Software Project Management (Software Measurement and Software Project Cost Estimation, Agile Project Management) |
|
12 . Hafta |
Yazılım Proje Yönetimi (Yazılım Ölçümü ve Yazılım Proje Maliyet Tahmin Yöntemleri, Çevik Proje Yönetimi) |
|
13 . Hafta |
Dönem Projesi Sunumları |
|
13 . Hafta |
Final Project Presentations |
|
14 . Hafta |
Final Project Presentations |
|
14 . Hafta |
Dönem Projesi Sunumları |
|
15 . Hafta |
Dönem Projesi Sunumları |
|
15 . Hafta |
Final Project Presentations |
|
16 . Hafta |
Yarıyıl sonu sınavı |
|
|
Değerlendirme Sistemi |
Yarıyıl içi çalışmaları |
Sayısı |
Katkı Payı (%) |
Sınav |
1 |
40 |
Performans Ödevi |
0 |
0 |
Yarıyı içi çalışmalar |
0 |
0 |
Dönem sonu sınavı |
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
1 |
60 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
Toplam |
100 |
Yarıyıl İçi Çalışmalarının Başarı Notuna Katkısı |
3 |
40 |
Yarıyıl Sonu Çalışmalarının Başarı Notuna Katkısı |
1 |
0 |
Toplam |
100 |
|
AKTS (Öğrenci İş Yükü) Tablosu |
Etkinlikler |
Sayısı |
Süresi |
Toplam İş Yükü |
Ders süresi (sınav haftası dahil: 16xders saati) |
0 |
3 |
0 |
Sınıf Dışı Ders Calışma Süresi (Ön çalışma, pekiştirme) |
0 |
2 |
0 |
Ara Sınav |
0 |
10 |
0 |
Dönem sonu sınavı |
1 |
2 |
2 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
1 |
2 |
2 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
7 |
3 |
21 |
|
7 |
3 |
21 |
|
14 |
2 |
28 |
|
14 |
3 |
42 |
Toplam İş Yükü |
116 |
|
Dersin Öğrenme Çıktılarının Program Yeterlilikleri İle İlişkilendirilmesi |
Sıra No |
Program Yeterlilikleri |
Katkı Düzeyi* |
1 |
2 |
3 |
4 |
5 |
15 |
As an aware individual of current and historical events, critically interprets events and makes rational deductions. |
X |
|
|
|
|
1 |
Possesses a fundamental understanding of applied and conceptual knowledge in the field of software engineering. |
|
|
|
X |
|
2 |
Utilizes the theoretical and applied knowledge from mathematics, natural sciences, and software engineering in solving engineering problems. |
X |
|
|
|
|
3 |
Identifies current engineering problems in various application domains and provides feasible recommendations for solving these problems using software systems. |
|
X |
|
|
|
4 |
Performs analyses of software-based systems, components, and processes required for problem-solving, and creates the best designs that can meet the identified requirements and constraints. |
|
|
X |
|
|
5 |
Selects and applies modern methods and tools necessary for engineering applications. |
X |
|
|
|
|
6 |
Collects and processes the necessary data for problem-solving, designs experiments, conducts experiments, and interprets the results. |
X |
|
|
|
|
7 |
Is familiar with the management processes of engineering projects, selects and applies the most suitable project management tools and project life cycle for the project. |
|
X |
|
|
|
8 |
Codes, tests, operates, and maintains computer-based systems. |
|
|
X |
|
|
9 |
Actively collaborates within disciplinary or interdisciplinary research and software development teams, either individually or as part of a team. |
|
X |
|
|
|
10 |
Keeps track of current developments in software engineering and other relevant fields, with a conscious awareness of the necessity for continuous professional development. |
X |
|
|
|
|
11 |
Proficiently and effectively utilizes both Turkish and English languages for the purpose of tracking scientific and technical resources, presenting projects, and writing academic publications. |
X |
|
|
|
|
12 |
Is aware of the legal consequences of information technology applications and the individual, corporate, societal, and global impacts in both ethical and universal dimensions. |
X |
|
|
|
|
13 |
Acts with professional and ethical responsibility in the development of software and systems. |
X |
|
|
|
|
14 |
Designs and develops software systems using analytical thinking skills, aiming to facilitate human life or enhance comfort. |
X |
|
|
|
|
|