CSI1102, Winter 2005
Fundamentals of software design (3 hours of lecture per week, 3 hours of lab per week, 4 credits)
This course introduces students to the fundamentals of software design. We will introduce the concepts of software design and pseudo-code; object-oriented programming; and abstraction principles including virtual machines, information hiding and encapsulation. Also, the course introduces simple data structures, including linked lists, stacks, and queues, and their applications. Students will also be introduced to the iterative and recursive processing of data structures.
Lab work will be done in the Java programming language. Prerequisite: GNG1101 or CSI1100
Lab webpage maintained by the head TA (info about the marking schedule; it also includes marks for Lab1, 2, 3 Quiz 1, 2 and Midterm).
Professorís Details (Section C)
Dr. Diana Inkpen
Room A611 CBY
Class webpage: http://www.site.uottawa.ca/~diana/csi1102
Email:email@example.com Phone: 562 5800 x 6711
Lectures: Wed 14:30-16:00, Fri 13:00-14:30, Room SITE A0150
Office hours: Mon 13:15-14:30 and Wed 13:15-14:30 (in CBY A611), or by e-mail appointment.
Java Software Solutions, Third Edition, J. Lewis and W. Loftus, Addison Wesley, 2003, ISBN 0-201-78129-8
This is a required text, available at the bookstore. We will follow the prescribed book quite closely. It is therefore essential that you do purchase a copy. Older editions can be used too. The fourth edition it not recommended since the programming examples might be slighly different.
The final mark will be calculated as follows.
4 Labs 4 x 5 points = 20 points
4 Quizzes (in class) 4 x 0.5 points = 2 points
1 Midterm 20 points
Examination 58 points
The final mark will be computed as max(20% labs + 2% quizzes + 20% midterm + 58% exam, 20%labs + 2% quizzes + 78% exam). In this way, a bad midterm day can be compensated by a good final exam.
You are, however, required to obtain at least 50% for the final examination in order to pass this course.
There will be bonus points for class participation.