IOOP SYLLABUS

Course

Introduction to Object-Oriented Programming, Fall 2006

Instructor

Stephen J. Hartley, office 3rd floor Robinson, phone 256-4500 ext. 3895
E-mail: hartley@elvis.rowan.edu
Home page: http://elvis.rowan.edu/~hartley/index.html

Meeting Time and Place

CS 04.113 1 Introduction to Object-Oriented Programming, Section 1, RS:

Office Hours

During the fall 2006 semester, my office hours are

If you need to make an appointment, or if you have a question, you can always reach me by the telephone number above or electronic mail at the above address. My AOL Instant Messenger name is PrfHartley and you are welcome to try contacting me that way with questions instead of through e-mail or telephone. If you cannot connect, send e-mail to remind me to start the AIM program (I use Knoppix gaim).

Textbooks and Other Materials

Required

You will need all of these for the first lab!

  1. David J. Barnes and Michael Kölling, Objects First with Java: A Practical Introduction using BlueJ, third edition, Prentice Hall, 2006, ISBN 0-13-197629-X.
  2. One package of ``3 by 5'' index cards.
  3. Two USB (flash or jump) drives.
  4. One (at least) Knoppix CD-R burned from one of the sites listed at http://www.knopper.net/knoppix-mirrors/index-en.html, for example http://ftp.freenet.de/pub/ftp.uni-kl.de/pub/linux/knoppix/. CD-Rs will be handed out during our first Lab meeting. We will be using the Knoppix version of a Linux ``Live CD'' all semester in lab.

Optional but Recommended

Marcel Gagné, Moving to Linux: Kiss the Blue Screen of Death Goodbye!, second edition, Addison Wesley, 2006, ISBN 0-321-35640-3.

Online Resources

Class Web pages start here:
http://elvis.rowan.edu/~hartley/Courses/IOOP/2006/Fall/index.html

Class Announcements Web page:
http://elvis.rowan.edu/~hartley/Courses/IOOP/2006/Fall/announcements.html You need to check this page regularly! Announcements, corrections to assignments, adjustments to the syllabus, etc., will be made there.

Prerequisites

Formal and declared status as a Computer Science major or minor or permission of instructor, MATH 01.121 Intermediate Algebra or the high-school equivalent.

Rowan Seminar Course

This course is a ``Rowan Seminar.'' Rowan Seminars are special sections of courses available only to first year students and are designed to introduce students to the classroom skills and expectations needed to succeed academically at Rowan. Rowan Seminar is required for all new students because college is not high school. Extensive research on the first-year experience of thousands of students provides compelling evidence that the high school learning environment is poor preparation for what new college students experience. Research at Rowan suggests that although entering first-year students think they already know what will be expected of them academically, for the most part they do not actually know.

You will be introduced to the following skills, values, and expectations at the college level:

More information for students is at www.rowan.edu/biology/faculty/tahamont/sfaq.htm.

General Course Description

From the Rowan Undergraduate Catalog: (CS 04.113, 4 s.h.) Introduces the fundamental concepts of programming from an object-oriented perspective. Topics include simple data types, control structures, an introduction to array and string data structures and algorithms, as well as debugging techniques and the social implications of computing. The course emphasizes modern software engineering principles and developing fundamental programming skills in the context of a language that supports the object-oriented paradigm. Includes basic UNIX commands and editing.

Goals and Objectives

By reading the text, participating in class, practicing in Lab, taking quizzes, and solving problems, students will develop object-oriented programming skill and gain familiarity with its fundamental principles, techniques, and terminology.

Your progress in attaining these goals will be measured by a 20 minute written closed-book closed-notes quiz every Wednesday, one mandatory office visit, weekly Lab learning exercises every Thursday, weekly index cards handed in Mondays and Thursdays (explained below), a Lab midterm exam, a Lab final exam, a written ``last'' assignment (URL below), and a written closed-book closed-notes ``quiz redo'' (comprehensive final exam).

Note that this is a hard course. Most Rowan students have a preferred learning method/style that is visual and hands-on. Most of you will therefore need to use your unpreferred learning method/style of reading, listening, analysis, and abstraction (in addition to your preferred style) in order to succeed in this course.

Mandatory Office Visit

The mandatory office visit must occur during the first three (3) weeks of the semester in order for you to avoid the substantial penalty of not doing it, that is, it must be completed by 3:15 pm, Wednesday, September 27, 2006, in my office on the 3rd floor of Robinson building. Schedule an appointment if formal office hours are not convenient. You must also fill out and hand in the questionnaire (found in the class Web pages) at the time of your mandatory visit. You may answer the questions on a separate sheet of paper and turn that in at the time of your visit, or you may print out the questionnaire and answer the questions on it, using the back if needed.

Failing to make the mandatory office visit and/or turn in the questionnaire in the specified time frame will result in a penalty of a full letter grade at the end of the semester (A- becomes B-, B+ becomes C+, B becomes C, etc.).

Evaluation and Grading

The course grade will be determined as follows:

Quiz every week 18%
Lab learning exercises 18%
Lab midterm (towards middle of semester) 18%
Lab exam (towards end of semester) 18%
Index cards for Mondays and Labs 5%
Written ``last'' assignment 5%
Quiz ``redo'' (final exam) 18%

You must pass (60 or more) each major component individually in order to pass the course: quiz average 60 or more, lab exercises average 60 or more, lab midterm 60 or more, lab exam 60 or more, and quiz redo (final exam) 60 or more, Failure to obtain a 60 or more in a component will result in an F final letter grade for the course regardless of the other components.

Final letter grades for the semester will be based on the usual 10-point scale where avg is your semester average calculated using the above weights:

93 1/3 ≤ avg < 100 A
90 ≤ avg < 93 1/3 A-
86 2/3 ≤ avg < 90 B+
83 1/3 ≤ avg < 86 2/3 B
80 ≤ avg < 83 1/3 B-
76 2/3 ≤ avg < 80 C+
73 1/3 ≤ avg < 76 2/3 C
70 ≤ avg < 73 1/3 C-
66 2/3 ≤ avg < 70 D+
63 1/3 ≤ avg < 66 2/3 D
60 ≤ avg < 63 1/3 D-
avg < 60 F

An ``incomplete'' grade will be assigned only under extremely unusual exceptional circumstances, as determined by the instructor.

See http://elvis.rowan.edu/~hartley/Courses/lastHW.html for more information on the written ``last'' assignment.

Index Cards

Starting with Lab on Thursday, September 7, 2006, you will hand in at the end of Lab every Thursday a ``3 by 5'' index card with your name and date on it that includes on one side who your partner was that lab and how far the two of you got during lab. On the other side list any and all difficulties and/or problems you encountered and how you solved them.

Starting Monday, September 18, 2006, you will hand in at the end of class every Monday a ``3 by 5'' index card with your name and date on it that includes on one side a summary of what you learned in class that day and on the other side any questions you have. You will have the last few minutes of class on Mondays to fill out your index card.

Lab Exercises

Most labs will be ``learning labs'' that you will do in pairs. Nothing will be turned in and you will receive full credit for each learning lab that you attend, participate in, and turn in an index card. The lab midterm and lab final are assessment labs that you will do individually. They will consist of writing a fully documented and tested program in the allotted time. You will turn in your work on your primary USB drive at the end of those labs to be graded.

Exercises from the book will be done in learning Labs. During the last ten or so minutes of each learning lab, each pair that has worked together will use their secondary USB drives to make sure each member of the pair has an up-to-date copy of their joint effort. I will show you how to do this.

You will receive 10 points for each of the 12 learning labs performed, with a maximum total of 110. Thus, you are allowed to miss one learning lab without penalty.

Attendance

Regular attendance in class and Lab is required. If you miss a class and there was a quiz that day, you will receive a zero on that quiz. If you miss Lab, you will receive a zero for that Lab.

Please inform the instructor in advance, preferably by e-mail, if you must be absent from a lab or class.

Students who are absent continuously for two weeks will be reported to the Dean of Students. Also a continuous two-week absence without contacting me (before the end of the continuous two-week absence) will result in an automatic F for the semester final letter grade.

Quizzes and Final Exam

We will have a written closed-book, closed-notes quiz at the beginning of class every Wednesday, starting September 20, 2006, covering the previous week's material through Thursday's lab. No makeups will be given. Quizzes are handed back the following Monday and are graded on the basis of 100 points total. There will be 13 quizzes. Your quiz scores will be added together, with a maximum total of 1200. Thus, you are allowed to miss one quiz without penalty.

Quiz question types will be definition, short answer, what does this code snippet do, and write a code snippet to do something.

The final exam is really a ``quiz redo'' because it will consist of quiz questions that I want to give you an opportunity to redo. It will be closed-book and closed-notes like the quizzes.

Withdrawal From Class

Drop/add ends Monday, September 11, 2006. Until then, you can easily drop and add courses (assuming there is room) to adjust your course schedule. A dropped course will not show up on your transcript.

During the first half of the semester (through October 23, 2006), a student may withdraw from a class by filling out the appropriate form and obtaining the instructor's signature. A grade of ``W'' is received on your transcript.

The Department of Computer Science policy on withdrawing after that date is that it will be approved only in extenuating circumstances beyond the control of the student, such as serious illness. In addition, after October 23, 2006, the department chair must also sign the withdrawal form. A grade of ``WP'' or ``WF,'' as determined by the instructor, is received on your transcript.

No withdrawal forms will be signed after November 22, 2006, except for extremely unusual exceptional circumstances, as determined by the instructor. In addition, after November 22, 2006, the department chair and dean must also both sign the withdrawal form. A grade of ``WP'' or ``WF'' is received, as determined by the instructor.

Acceptable Use Policies

Rowan has two policies about acceptable use of its computers and networks, one for everybody and another specifically for students. By registering for and taking this course, you are agreeing explicitly to abide by them.

Students Accommodation Statement

Your academic success is important. If you have a documented disability that may have an impact upon your work in this class, please contact me. Students must provide documentation of their disability to the Academic Success Center in order to receive official University services and accommodations. The Academic Success Center can be reached at 856-256-4234. The Center is located on the 3rd floor of Savitz Hall. The staff is available to answer questions regarding accommodations or assist you in your pursuit of accommodations. We look forward to working with you to meet your learning goals.

Academic Integrity

Anything you turn in with your name on it must be your own work, that is, written or coded by you and not copied from anyone or anywhere else. You must do anything you turn in with your name on it individually. You may consult with other students and the course instructor to clarify points of confusion and share ideas. However, everything you turn in with your name on it must be your own work. Copying from others is expressly forbidden. Allowing others to copy from you is expressly forbidden.

Penalties for violation of this will range from a grade of zero on the assignment to a grade of F for the course, effective immediately, and a letter to the Office of the Dean. By registering in this course, each one of you is explicitly agreeing to abide by and adhere to the above statements on academic integrity.

It is natural and desirable, in fact encouraged, that students help each other in the Learning Labs, such as discussing their approaches to the problem and checking each other's code. You will be working in pairs in Learning Lab to facilitate this.

But each student must be certain that the assignment handed in represents his or her own effort in the Lab Midterm and Lab Final.

If you use materials that you've obtained on the Internet, from a book, etc., for example, as part of a programming assignment, you must include an appropriate reference. To use such materials without proper attribution is a form of plagiarism.

Classroom Decorum

Be on time. Do not eat in class. Do your best to remain in the room during class. Laptops would be okay for note taking, but not for music, instant messaging, game playing, or surfing the Web. Since ``it has come to my attention'' that computer science majors use laptops in class for the latter instead of the former, laptops will not be allowed to be on in this class. Turn off or put into vibrate mode cell phones, PDAs, and pagers. You will receive a warning the first time your cell phone, PDA, or pager goes off in class or lab. If it happens again, you will be asked to leave for the rest of that class or lab meeting. If there is a quiz that day or if it is lab, you will receive a zero.

Course Schedule

This schedule is approximate only. Please see the announcements page for what each quiz will cover and the lab page for what will be done in each lab. ``BJ'' means the BlueJ book.
Material to Read    Week #  Week of     Topic
1 Sep 6 Administrative Matters and Introduction
1 Sep 7 Lab 1 on Chapter 1
BJ Chapter 1 2 Sep 11 Objects and Classes
2 Sep 13
2 Sep 14 Lab 2 on Chapter 2, part 1
BJ Chapter 2 3 Sep 18 Understanding Class Definitions
3 Sep 20 Quiz 1
3 Sep 21 Lab 3 on Chapter 2, part 2
BJ Chapter 3 4 Sep 25 Object Interaction
4 Sep 27 Quiz 2
4 Sep 28 Lab 4 on Chapter 3, part 1
BJ Chapter 4 5 Oct 2 Grouping Objects
5 Oct 4 Quiz 3
5 Oct 5 Lab 5 on Chapter 3, part 2
6 Oct 9
6 Oct 11 Quiz 4
6 Oct 12 Lab 6 on Chapter 4, part 1
BJ Chapter 5 7 Oct 16 More Sophisticated Behavior
7 Oct 18 Quiz 5
7 Oct 19 Lab 7 on Chapter 4, part 2
8 Oct 23
8 Oct 25 Quiz 6
8 Oct 26 Lab 8 will be the Lab Midterm
BJ Chapter 6 9 Oct 30 Well-Behaved Objects
9 Nov 1 Quiz 7
9 Nov 2 Lab 9
10 Nov 6
10 Nov 8 Quiz 8
10 Nov 9 Lab 10
BJ Chapter 7 11 Nov 13 Designing Classes
11 Nov 15 Quiz 9
11 Nov 16 Lab 11
BJ Chapter 8 12 Nov 20 Improving Structure with Inheritance
12 Nov 22 Quiz 10
Thanksgiving holiday12 Nov 23 No lab today!
13 Nov 27
13 Nov 29 Quiz 11
13 Nov 30 Lab 12
BJ Chapter 9 14 Dec 4 More about Inheritance
14 Dec 6 Quiz 12
14 Dec 7 Lab 13
15 Dec 11 wrap-up
15 Dec 13 Quiz 13
15 Dec 14 Lab 14 Lab Exam: Thursday, December 14, 2006
16 Dec 18 Quiz Redo (final exam): Friday, December 22, 2006, 12:30--2:30 pm


home page: http://elvis.rowan.edu/~hartley/index.html
e-mail: hartley@elvis.rowan.edu