CSE-509: Object Oriented Programming - Syllabus

Instructor: Harry Porter

Home Phone: 503-224-0014
Email: harry@cs.pdx.edu
Office space at OGI: Room 146, CSE Central
Office hours: directly after class meetings and by arrangement

Teaching Assistant: ?????

Email: ???@cse.ogi.edu
Office: Room ???, CSE Central
Office hours: ???

Course Description:

This course provides a rigorous introduction to the concepts behind object-oriented programming. It is for students who are already famailiar with the concepts of object-oriented analysis and design techniques. One way to learn this background material is by taking CSE 504 Object-Oriented Analysis and Design. In CSE 509, students gain a thorough understanding of incremental programming, type-safety, polymorphism, encapsulation, and set-based abstraction, and apply these concepts through a variety of programming projects. We studey several programming languages, including Java and Smalltalk, so students are exposed to different realizations of these concepts and gain an appreciation for the programming language design space. We also look at published object-oriented design patterns and see how they can be implemented in different object-oriented programming languages. Students are required to read appropriate research papers, complete several short programming assignments, complete a substantial programming project, and write some short essays. Prerequisite: CSE 504 or equivalent. 3 credits.

When and Where:

Monday & Wednesday, 4:00PM - 5:20PM

1600 Building, Room 110-A (#17 on the map), Map of OGI Campus

First Class: Monday, January 7, 2002
No class on: January 21 (MLK), February 18 (President's)
OGI Weather / Closure Hotline: 503-748-1551

Required Textbooks:

Squeak; Object-Oriented Design with Multimedia Applications, by Mark Guzdial. Published by Prentice Hall. ISBN 0-13-028028-3.

Recommended Textbooks:

Squeak: Open Personal Computing and Multimedia, by Mark Guzdial and Kim Rose. Published by Prentice Hall. ISBN 0-13-028091-7.

The Java Programming Language (Third edition), by Ken Arnold, James Gosling, David Holmes. Published by Addison-Wesley. ISBN 0-201-70433-1.

For more info, see OGI Textbook Ordering Info


Midterm Exam: Monday, February 25, 4:00PM - 5:20PM

Final Exam: Monday, March 18, 4:00PM - 5:20PM
The final will be comprehensive. The exams will be closed book and closed notes.


CSE-504: Object-Oriented Analysis and Design

Programming Projects:

HW 1: Introducing Smalltalk (1 week)
HW 2: Smalltalk Programming Assignment (1 week)
HW 3: Smalltalk Programming Assignment (1 week)
HW 4: Smalltalk Programming Assignment (2 week)
HW 5: Java Programming Assignment (1 or 2 weeks, concurrent with project)
Project: Student-Selected Project (in Smalltalk, 4 weeks)

Students are encouraged to discuss the programming projects among themselves. However, the actual coding must be done solely by each student. In other words, you are encouraged to share ideas, to talk specifics, and even to look directly at code when discussing code specifics with another student, but you are forbidden from sharing or copying code.


Attendance in class is mandatory.


The final exam may test on material covered only in class and on material covered only in the reading assignments. Your grade will be based approximately, as follows. These percentages are tentative; I may change them.

Programming 30%
Project 30%
Midterm 15%
Final 25%

Card Keys:

Students may obtain an OGI Student ID / Card Key, available to registered students at no charge. OGI Facilities will be taking photos for IDs on January 7 through January 11 (Mon thru Fri.), between 11:00 a.m. and noon, and also on January 9 and 10 from 3:00 to 7:00 p.m. Card keys are produced in Jefferson (See #10 on the Campus Map) If students are not available to get an ID during these times, please call Donna Reed (503) 748-1178, or e-mail reeddo@ohsu.edu for an appointment.

Computer Accounts:

Students may use their own computers for this class, or they may obtain an account on OGI's UNIX machines. Students may obtain computer accounts by typing the word "apply" at any console in the terminal room of the CSE Central computer science building and following the prompts. See the CFST web page at http://www.cse.ogi.edu/CFST/ or contact the CFST account administrator in Room 139 of CSE Central for instructions. Students who have registered and run the "apply" program by Monday, December 17 will have active accounts by the first day of class.

Mailing List:

There is an email mailing list called ???, which you should subscribe to. To add yourself to the list, send an email to majordomo@cse.ogi.edu with no subject and a single line in the message body:

subscribe ???

You may submit short messages to this mailing list by emailing to ???.

Harry H. Porter III
Harry's Home Page www.cs.pdx.edu/~harry
Email to: harry@cs.pdx.edu
Last Updated: January 4, 2002.