CS553, Design Patterns --- Summer 2009
(Version, March 26, 2009)

Index Instructor
Sergio Antoy
office: FAB 120-02
e-mail: antoy@cs.pdx.edu (checked daily)
phone: 503-725-3009 (checked weekly)
homepage: http://www.cs.pdx.edu/~antoy/
office hours: after class and by appointment
class time and location: see the Schedule
Description
This course provides an in-depth view of Software Design Patterns. The course, which is programming intensive, uses Java for presentation and analysis of the patterns and for the assignments. The course is suitable to software architects and developers who are already well-versed in this language. Patterns are reusable solutions to recurring software problems. They capture successful experiences and convey expert insight and knowledge to less experienced developers. In addition to patterns, the course provides continuous opportunities for learning the most advanced features of the Java language and understanding the principles behind the design of its fundamental libraries.
Goal
At the end of this course, students are expected to: master the Java language to the degree required by the subject; become familiar with the situations and motivations that call for using patterns; and be able to employ patterns in their appropriate contexts.
Prerequisites
The expected background is a B.S. degree in Computer Science and versatility in Java. Both ability to recognize and appreciate an elegant solution to a problem and willingness to "learn" (as opposed to "live") an experience are highly desirable. CS558 Programming Languages is recommended.
Course materials
Mailing list
http://groups.yahoo.com/group/cs553pdx/

Post message: 	cs553pdx@yahoogroups.com
Subscribe: 	cs553pdx-subscribe@yahoogroups.com
Unsubscribe: 	cs553pdx-unsubscribe@yahoogroups.com
List owner: 	cs553pdx-owner@yahoogroups.com
Grading
The grade is based on weekly assignments and on midterm and final exams. The weekly assignments can be solved individually or in group, are generally self-graded and do not contribute directly to the grade. However, applying a pattern to a problem, as proposed in the homework, is the best way to learn the material. The exams are individual, close-book, partly multiple-choice tests, and contribute roughly equally to the grade.

Students will receive an A with more than 80% of the total points in both the midterm and the final, at least a B with more than 60%.

Sample Exams
The exams are intended to test both knowledge of the material presented in class and skills acquired working on the assignments. Consult the Winter 2000 final and its solution for an example. The format and content of the exam may differ from the example.
Schedule
During the lectures, the instructor will discuss about 30 patterns taken from the textbook.

A detailed schedule, including planned lectures and homework assignments is available on-line. Follow the link provided in Course materials.

The final exam will be held according to the PSU catalog unless explicitly noted in the schedule.

Homework
Typically, homework is not turned in, but may be spot-checked with a previous agreement with the instructor. The assignment about a pattern will be discussed in class on the week following the completion of the presentation.
Previous Evaluations
Course and instructor evaluations of previous offerings of this course are avaliable for the Winter 2000 and the Winter 2001 terms. See also other evaluations.

Contact antoy@cs.pdx.edu
Last updated Tue Jun 23 22:48:35 PDT 2009