Ders Adı | Kodu | Yarıyıl | T+U Saat | Kredi | AKTS |
---|---|---|---|---|---|
Formal Methods In Software Engıneerıng | SWE 302 | 6 | 3 + 0 | 3 | 5 |
Ön Koşul Dersleri | |
Önerilen Seçmeli Dersler | |
Dersin Dili | İngilizce |
Dersin Seviyesi | Lisans |
Dersin Türü | Zorunlu |
Dersin Koordinatörü | Prof.Dr. DEVRİM AKGÜN |
Dersi Verenler | |
Dersin Yardımcıları | |
Dersin Kategorisi | Alanına Uygun Öğretim |
Dersin Amacı | To introduce advanced techniques and technology that reflects software engineering and current technology. To gain knowledge of formal and informal software development. To focus on the early phase of the software development cycle. |
Dersin İçeriği | Software specification. Formal method. Formal specification. Formal software development. Refinement and verification. Tools and case studies. Selected topics in current software engineering issues. |
# | Ders Öğrenme Çıktıları | Öğretim Yöntemleri | Ölçme Yöntemleri |
---|---|---|---|
1 | describe the characteristics and tradeoffs between different formal and informal methods of software development | Lecture, Question-Answer, Drilland Practice, | Testing, Homework, Project / Design, |
2 | specify software using a formal specification language | Lecture, Question-Answer, Drilland Practice, | Testing, Homework, Project / Design, |
3 | develop high quality software requirement specifications using informal or semi-formal notation | Lecture, Question-Answer, Drilland Practice, | Testing, Homework, Project / Design, |
4 | appreciate the use of formal and rigorous techniques in program refinement and verification | Lecture, Question-Answer, Drilland Practice, | Testing, Homework, Project / Design, |
Hafta | Ders Konuları | Ön Hazırlık |
---|---|---|
1 | Software specification | Weekly presentations |
2 | Formal method. Formal specification | Weekly presentations |
3 | The Z notation. Schema calculus. | Weekly presentations |
4 | Generic constructions | Weekly presentations |
5 | Formal software development. | Weekly presentations |
6 | Refinement and verification | Weekly presentations |
7 | Tools and case studies. | Weekly presentations |
8 | Rigorous software development. | Weekly presentations |
9 | Semi-formal specification languages | Weekly presentations |
10 | Cleanroom software engineering | Weekly presentations |
11 | Test generation from specification | Weekly presentations |
12 | Test generation from specification | Weekly presentations |
13 | Selected topics in current software engineering issues. | Weekly presentations |
14 | Selected topics in current software engineering issues. | Weekly presentations |
Kaynaklar | |
---|---|
Ders Notu | Weekly presentations |
Ders Kaynakları | Leino, K. Rustan M. Program Proofs. MIT Press, 2023. Daniel Jackson, Software Abstractions, MIT Press, 2006 https://dafny.org/dafny/ |
Sıra | Program Çıktıları | Katkı Düzeyi | |||||
---|---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | |||
1 | To have sufficient foundations on engineering subjects such as science and discrete mathematics, probability/statistics; an ability to use theoretical and applied knowledge of these subjects together for engineering solutions. | X | |||||
2 | An ability to determine, describe, formulate and solve engineering problems; for this purpose, an ability to select and apply proper analytic and modeling methods,al background in describing, formulating, modeling and analyzing the engineering problem, with a consideration for appropriate analytical solutions in all necessary situations. | X | |||||
3 | An ability to select and use modern techniques and tools for engineering applications; an ability to use information technologies efficiently. | X | |||||
4 | An ability to analyze a system, a component or a process and design a system under real limits to meet desired needs; in this direction, an ability to apply modern design methods. | X | |||||
5 | An ability to design, conduct experiment, collect data, analyze and comment on the results and consciousness of becoming a volunteer on research. | X | |||||
6 | Understanding, awareness of administration, control, development and security/reliability issues about information technologies. | ||||||
7 | An ability to work efficiently in multidisciplinary teams, self confidence to take responsibility. | ||||||
8 | An ability to present himself/herself or a problem with oral/written techniques and have efficient communication skills; know at least one extra language. | ||||||
9 | An awareness about importance of lifelong learning; an ability to update his/her knowledge continuously by means of following advances in science and technology. | ||||||
10 | Understanding, practicing of professional and ethical responsibilities, an ability to disseminate this responsibility on society. | ||||||
11 | An understanding of project management, workplace applications, health issues of laborers, environment and job safety; an awareness about legal consequences of engineering applications. | ||||||
12 | An understanding universal and local effects of engineering solutions; awareness of entrepreneurial and innovation and to have knowledge about contemporary problems. |
Değerlendirme Sistemi | |
---|---|
Yarıyıl Çalışmaları | Katkı Oranı |
1. Ara Sınav | 70 |
1. Kısa Sınav | 10 |
1. Ödev | 10 |
1. Proje / Tasarım | 10 |
Toplam | 100 |
1. Final | 50 |
1. Yıl İçinin Başarıya | 50 |
Toplam | 100 |
AKTS - İş Yükü Etkinlik | Sayı | Süre (Saat) | Toplam İş Yükü (Saat) |
---|---|---|---|
Course Duration (Including the exam week: 16x Total course hours) | 16 | 3 | 48 |
Hours for off-the-classroom study (Pre-study, practice) | 16 | 2 | 32 |
Mid-terms | 1 | 10 | 10 |
Quiz | 1 | 5 | 5 |
Assignment | 1 | 5 | 5 |
Project / Design | 1 | 10 | 10 |
Final examination | 1 | 15 | 15 |
Toplam İş Yükü | 125 | ||
Toplam İş Yükü / 25 (Saat) | 5 | ||
Dersin AKTS Kredisi | 5 |