May 2008

Software Design Patterns

(CMPT 300-V)

<< Syllabus >> << Schedule >>

Instructor: Greg Gagne (832-2361 or ggagne <shift><2> westminstercollege <dot> edu)

Location: Nightengale 6

Dates & Times: M/W/F 1 - 3 pm.

Office Hours: I am  in my office from 12 - 1 pm on M/W/F and from 3 - 4:30 pm on M/W. If  these times are inconvenient, please contact me to arrange for an appointment.

Course Website: www.people.westminstercollege.edu/faculty/ggagne/may2008/index.html

Text
Head First Design Patterns, Eric Freeman and Elisabeth Freeman. O'Reilly, 2004. (isbn 978-0-596-00712-6)

Prerequisites: CMPT 202

Course Description: An introduction to object-oriented design patterns. Design patterns describe several common techniques for structuring object-oriented programs. Furthermore, they provide both a metaphor and a language with which we may describe - and communicate - architectural strategies for designing object-oriented programs.

Most of the patterns we will explore originate from the classic design patterns work - Design Patterns: Elements of Reusable Object-Oriented Software - by the Gang of Four, although we will also look at a few others that do not come from this work.

Grading: Your grade will consist entirely of lab-based work. There will be no exams, quizzes, or homework. Each class  will consist of a lab that must be completed by the following class period. Your grade will be determined by your performance in each lab. Late labs will be docked 10% for each class period and you cannot turn in a lab any later than the start of two following class periods. (i.e. if a lab is due on Monday, it will be docked 10% if it is not turned in by the start of class on Monday. It will be docked 20% if it is not turned in by the start of class on Wednesday. It will not be accepted any later than the start of class Friday.) This policy is intended to encourage you to finish all work prior to the start of the following class.

As your grade will be entirely determined by in-class work, attendance and timeliness are crucial for success in this class.

As we have eleven classes, each lab will be worth roughly 1/11th = 9% towards your final grade.

If your score is
Your grade is
>= 95
A
>= 92 && < 95
A-
>= 88 && < 92
B+
>= 85 && < 88
B
>= 82 && < 85
B-
>= 78 && < 82
C+
>= 75 && < 78
C-
< 75
F


Sumitting Assignments: You may turn in an assignment during lab by simply calling me over during lab period. If you do not finish the lab during the lab period, please email  all necessary source code files to me.

<< Any changes to this syllabus will be announced to the class >>