COMPUTER ENGINEERING (ENGLISH, PHD) | |||||
PhD | TR-NQF-HE: Level 8 | QF-EHEA: Third Cycle | EQF-LLL: Level 8 |
Course Code | Course Name | Semester | Theoretical | Practical | Credit | ECTS |
CMP5151 | Software Design Patterns | Fall | 3 | 0 | 3 | 12 |
This catalog is for information purposes. Course status is determined by the relevant department at the beginning of semester. |
Language of instruction: | English |
Type of course: | Departmental Elective |
Course Level: | |
Mode of Delivery: | Face to face |
Course Coordinator : | Assist. Prof. BETÜL ERDOĞDU ŞAKAR |
Recommended Optional Program Components: | None |
Course Objectives: | This course introduces the use of design patterns in the context of software engineering. After successful completion of the class, the student will know classical design patterns, including creational, structural, behavioral patterns and also some popular patterns from distributed programming, user interface and enterprise development. Anti-patterns will also be introduced. |
The students who have succeeded in this course; I. Apply classical creational, behavioral and structural patterns in real world problems II. Apply enterprise development patterns in real world problems III. Apply user interface and multithreaded patterns in real world problems IV. Avoid anti-patterns V. Analyze problems in terms of patterns VI. Categorize patterns accordingly |
Creational, structural and behavioral patterns, concurrency and user interface patterns, enterprise architecture patterns, anti-patterns, agile principles and processes. |
Week | Subject | Related Preparation |
1) | Introduction-object oriented programming and UML | |
2) | Creational patterns 1 | |
3) | Creational patterns 2 | |
4) | Structural patterns 1 | |
5) | Structural patterns 2 | |
6) | Behavioral patterns 1 | |
7) | Behavioral patterns 2 | |
8) | midterm | |
9) | Concurrency and User Interface Patterns | |
10) | Enterprise Architecture Design Patterns 1 | |
11) | Enterprise Architecture Design Patterns 2 | |
12) | Software anti-patterns | |
13) | Term project presentations | |
14) | Term project presentations |
Course Notes / Textbooks: | 1- Gamma, E. Design Patterns : Elements of Reusable Object-Oriented Software. Pearson Education India, 1995 2- Head First Design Patterns: A Brain-Friendly Guide, Eric Freeman, Elisabeth Robson, Bert Bates, and Kathy Sierra. 2004 |
References: |
Semester Requirements | Number of Activities | Level of Contribution |
Project | 1 | % 35 |
Midterms | 1 | % 25 |
Final | 1 | % 40 |
Total | % 100 | |
PERCENTAGE OF SEMESTER WORK | % 25 | |
PERCENTAGE OF FINAL WORK | % 75 | |
Total | % 100 |
Activities | Number of Activities | Duration (Hours) | Workload |
Course Hours | 14 | 3 | 42 |
Project | 1 | 80 | 80 |
Midterms | 1 | 40 | 40 |
Final | 1 | 40 | 40 |
Total Workload | 202 |
No Effect | 1 Lowest | 2 Low | 3 Average | 4 High | 5 Highest |
Program Outcomes | Level of Contribution | |
1) | To be able to follow scientific literature, analyze it critically and use it effectively in solving engineering problems. | |
2) | To be able to ask the right questions, plan, implement, manage and document innovative work for scientific innovative designs in the field of Computer Engineering. | |
3) | To be able to independently carry out studies in the field of Computer Engineering, examine them in depth, take responsibility and evaluate the results obtained from a critical point of view. | |
4) | To be able to present the results of his/her research and projects effectively in written, oral and visual form in accordance with academic standards. | |
5) | To be able to conduct independent research on topics related to Computer Engineering that require deep specialization, to develop original ideas and to transfer this knowledge to practice. | |
6) | Uses advanced theoretical and practical knowledge specific to Computer Engineering effectively. | |
7) | Acts in accordance with professional, scientific and ethical values; takes responsibility by considering the social, environmental and ethical impacts of engineering practices. |