22C:22 Object-Oriented Software Development

Spring 2006
MWF 1:30, 210 MacLean Hall

Professors:
Jim Cremer, 14D MLH, cremer@cs.uiowa.edu, office hours: W 8:30-9:30, Th 9-10 and by appt
Ted Herman, 201M MLH, herman@cs.uiowa.edu, office hours: by appt

Teaching Assitsant:
Zhihong Wang, 311 MLH, zhihwang@cs.uiowa.edu, office hours: T 9:30-10:30 and by appt


WHAT'S NEW (Last updated Saturday, 5/12/07)


Contents:


Course overview

The intended outcomes of this course are:


Required Textbook

Object-oriented Software Development Using Java, Second Edition. Xiaoping Jia, Addison Wesley, 2003
ISBN: 0201737337

Author's web page for the textbook, and a page with the source code for all examples in the book (download the jar file - it has all of the examples, while some are missing if you simply follow the individual chapter links on the same page).

A page of errata for the book (though I don't think this was done by the author, so it's possible he might not agree with everything.)


Requirements and grading

Course grades will be based on homework assignments, exams (one midterm and a final), and a group project. I expect each component represent approximately one third of your grade (but reserve the right to change this significantly up through Spring Break): A more detailed expected breakdown will be available on 1/19.


Tentative topic schedule and homeowrk assignments


Homework Assignments


Team Project Information Homework Assignments


Scores and grades

COURSE GRADES:
 >  214   A+   
195-214   A    
186-194   A-   
166-185   B+   
151-165   B    
145-150   B-   
135-144   C+   
123-134   C    
115-122   C-   
 90-114   D    
 <  90    F    
Note: both of these lists use the class-specific ID I generated for and gave to each of you.

Note: HW 13 scores are final project scores. The distribution of the scores is significantly higher than on earlier phases of the project. Adequate, but perhaps minimal, overall project performances received scores of 12 to 15. Thus, a project could meet all basic requirements but receive a score in that 12 to 15 range.

Note: HWs 8, 10, and 12 are scribe reports 1, 2, and 3. Each student will only have a score for one of the three.

Lecture notes and supplementary lecture material (incl. code examples)


Computers available

For implementing homework assignments, there are Linux PCs in 301 MLH and B5 MLH.

You can access departmental Linux machines from off-site using a secure shell program (e.g. you can download good ones from the ITS software download site. Rather than trying to remember the names of particular departmental Linux machines, you should simply use "linux.divms.uiowa.edu" as the host name when you connect; our system will then automatically connect you to one of the Linux machines (not always the same one).


IDEs, Java documentation, and other related potentially useful resources


Documenting and submitting programs

For assignments that contain programming components, you must submit via the 'submit' command:

and also turn in hardcopy of:

Important Notes

Your 'submit'ed source code must compile without any modification. If it does not, or if the instructions you give for compilation are incorrect, you may receive a 0 for the assignment.

It is very important that programs be well-written and clear. Clarity, style, organization will be considered in grading programs. Your code should include precise comments where appropriate. On the other hand, avoid the approach of ritualistically filling your code with comments, especially those that are pointless (e.g. "this is a variable declaration") or imprecise (e.g. "this loop goes around and around until it figures out the answer"). Ambiguous or inaccurate comments can be worse than none at all.

Using the 'submit' command

You will use the 'submit' command to submit program code and documentation. The files that you want to turn in should be included in one folder/directory, e.g. 'hw1files'. To submit the directory, execute 'submit hw1files' on one of the CS department's Linux machines. The program will then ask you the course you are submitting for. Respond with 'c022'. Then it will request a "Location:". To this, you should respond with the name associated with a particular assignment. The name will be included in the homework assignment (and will typically be something like 'hw1').

Late assignment policy

All assignments are due at the beginning of class. Submission of any code and programs via 'submit' must also be executed by the beginning of class. Late assignments turned in within 24 hours will receive a 25% penalty, and those turned more than 24 late will receive a 50% or greater penalty. Assignments will not be accepted more than 48 hours late unless approval is obtained from Prof. Cremer before the normal due date. You must communicate with me about late assignments. Regrade requests must be made within one week of when the assignments are returned in class.


Academic integrity

Homework and programming assignments, except when explicitly specified otherwise, must be done alone. It is reasonable to discuss general approaches to problem solutions or algorithm design with other students but the bulk of the work must be done alone. (For instance, in general, you should not write anything down when discussing things with others. If you can't remember it, it's probably too detailed to count as reasonable discussion of approaches.) bulk of the work must be done alone. Working out details or sharing in the write-up will be treated as a violation of the academic integrity rules, and will be handled in accordance with CLAS policy on Academic Fraud, Plagiarism, Cheating, Forgery. Most cases will result in a failing grade for the course.

Accommodations for students with disabilities

We would like to hear from anyone who has a disability which may require seating modifications or testing accommodations or accomodations of other class requirements, so that appropriate arrangements may be made. Please contact one of us during office hours.

For more information about University support for students with disabilities please see this section of the CLAS Classroom Procedures guide.


Procedures for student complaints

If you have complaints, please consult the CLAS policy on Student Complaints Concerning Faculty Actions for procedural information. For this particular class, if you reach the step of needing to contact the DEO, please contact CS Associate Chair Prof. Alberto Segre instead (since Prof. Cremer is DEO).