CNG353 SOFTWARE DESIGN PATTERNS

Course Code:3550353
METU Credit (Theoretical-Laboratory hours/week):3 (3.00 - 0.00)
ECTS Credit:6.0
Department:Computer Engineering
Language of Instruction:English
Level of Study:Undergraduate
Course Coordinator:Assoc.Prof.Dr. ISLAM ELGEDAWY
Offered Semester:Fall Semesters.

Course Objectives

Course objective is to enable students to adopt OO design patterns in their software designs. This is achieved by discussing and demonstrating different types of design patterns; including:

  1) Basic OO Design Patterns.

 2) Creational OO Design Patterns.

 3)  Collectional OO Design Patterns.

 4) Structural OO Design Patterns.

 5)  Behavioral OO Design Patterns.

  6) Concurrency OO Design Patterns.

 


Course Content

For course details, see https://catalog2.metu.edu.tr.

Course Learning Outcomes

After finishing the course, student should demonstrate the following skills:

1) Ability to differentiate between different OO design patterns and recognize the contexts of their usage.

2) Ability to provide high quality reusable OO system designs using different OO design patterns.


Program Outcomes Matrix

Level of Contribution
#Program Outcomes0123
1Employ knowledge of mathematics, science and engineering to formulate solution to real life computing problems
2Design and conduct experiments, as well as analyze, evaluate and interpret data
3Design systems, components, and/or processes by specifying the requirements and determining the realistic constraints such as ethical and environmental
4Judge professional and ethical principles and integrate them in the working environment
5Have the ability to communicate effectively
6Recognize the need for, and an ability to engage in life-long learning

0: No Contribution 1: Little Contribution 2: Partial Contribution 3: Full Contribution