Object-Oriented Programming and Design
C Sc 335 Syllabus,University of Arizona, Fall 2012

Catalog Description C Sc 335 -- Object-Oriented Programming and Design (4 units) Fundamentals of object-oriented software development. Includes design principles, inheritance, polymorphism, Unified Modeling Language (UML), event-driven programming with graphical user interfaces, applications of design patterns, and use of existing frameworks. Weekly lab. Prerequisite: C Sc 127B or C Sc 227

When/Where Common lectures on Tuesday and Thursday 3:30-4:45 in 100 Bio East. You also have a section of about 22 students every Wednesday or every Friday:

Section

/

Time

/

Location

/

Section Leader

/
001A / 1:00 pm - 1:50 Wednesdays / 125 ILC / Rohit Umashankar - rohitu at email
001B / 4:00 pm - 4:50 Wednesdays / 701 GS / Craig Barber - craigb at email
001C / 8:00 am - 8:50 Fridays / 701 GS / Jorge Vergara - jbv at email
001E / 2:00 pm - 2:50 Fridays / 701 GS / Dylan Clavell – dclavell at email

Rick's Office Hours 727 Gould Simpson: Hours TBA or by appointment:

WebSite https://sites.google.com/site/csc335fall12

Textbook There is no textbook to purchase this semester. Readings will be from online resources and books from Safari Books Online, at no cost to you. To complete most 335 readings,your computer must be connected on campus. If off campus, you must make a Virtual Private Network (VPN) connection from your computer, which makes you appear to be on campus.If you don't have VPN software and you want to read on your computer instead of reading in a campus lab, install Cisco's AnyConnect VPN client fromhttps://vpn.arizona.edu

Here is the link to the searchable catalog (Rick will have direct links to the actual reading on our web page. http://proquest.safaribooksonline.com.ezproxy1.library.arizona.edu/

Grading Your letter grade will be determined based on the following weighted average and cutoffs

4% Section Participation
36% Programming Projects
18% Test 1
18% Test 2
24% Final Team Project / A >= 90%
B 80.0 to 89.9
C 70.0 to 79.9
D 60.0 to 70.9
E < 60.0

Section Participation Arrive on time, be involved, and leave only when done to receive full credit for section participation that day.

Reading Quizzes Almost every lecture will begin with a quiz from 3:31 to 3:34 pm (or very close to that). The questions will be based on readings assigned in the previous lecture. There are no makeups! If you are not in lecture at exactly 3:30, you have less time to finish. If you arrive after or about the time we collect the quizzes, you will NOT be allowed to take the reading quiz. Do not ask for makeups. We will be dropping the lowest four quiz grades.

Individual Programming Projects You will be completing some projects by yourself with help from section leaders and Rick only. The individual projects have the main goal to ensure you master the new areas such as event driven programming, GUIs, networking, concurrency, animations, and drawing.

Team Programming Projects You will be completing some projects collaboratively in a team of two in a pair-programming mode (at least Rick will ask you to always code together, and you should). Pair programming will be encouraged during the final team of four project also. Software development in larger teams provides valuable experience with the associated social, process, and technical issues.

Tests You will take two 75-minute tests during the scheduled lecture time.

Final Project The final project will be completed in a team of four. It will be relatively complex with many new types (classes) that you design. This final team projecthistorically requires 40-60 hours of your time during the final six weeks of class.

Final Project Report Because you will be completing a final project instead of a final exam during finals week, the university requires that you must complete a report on your final project. This will be provided at the end of the semester as a several page document requiring short answers. The time required to complete this is minimal.

Q&A with Piazza This semester we will be using Piazza for class discussion. The system is highly catered to getting you help fast and efficiently from classmates and section leaders and Rick. Rather than emailing questions to the teaching staff, we encourage you to post your questions on Piazza.

Late Policies When other 335 students were surveyed with the question "What advice would you give to future 335 students to be successful in 335?". The most common two responses were "Attend class" and "Start your projects on time". All projects and iterations should be turned in by the due date and time. Any homework project turned in past the deadline and within 24 hours is considered to be one day late. Each late day results in a 10% reduction of the maximum number of points for that project. Projects or Assignments not turned in within 3 days after the deadline will not be accepted. The resulting score will be 0 for all team members. This late policy does not apply to the final team project that will have a separate late policy.

Absence Policy Attend all lectures and recitation sections. Section attendance is worth 4% of your grade. Almost every day lecture will have a quiz. During the final project, we will have team meetings at the end of lecture. These will also count as part of your grade.

DRC Students If you have registered with the Disability Resource Center, please let Rick know if you will be taking a test in the testing center at least one week before the test.

Software at Home We will be using Java 7 (or 6 will do), Eclipse Juno (4.2), and EclEmma (a code coverage tool) in the lab and in lecture. All are free and available on Windows, Linux, and Mac OS X. You can set up your home computer with the same tools https://sites.google.com/site/csc335fall12/software

Classroom Behavior The University of Arizona has an explicit policy on disruptive behavior: http://web.arizona.edu/~policy/disruptive.pdf Included in disruptive behavior are cell phone, PDA, and pager use, laptop use, talking during lectures, sleeping, eating, arriving late or departing early (without prior notification), and newspaper reading. Such activities distract others and interfere with instructional activities. Again, students should use class time to further their learning, through active engagement with the material. Please treat each other with respect.

Academic Integrity and Penalties Programming projects in this course require individual attention and effort to be of any benefit. Unless otherwise specified in the published assignment, all work is expected to be that of each student or the team without collaboration or copying. Code snippets from other sources are allowed in team projects as long as the source is attributed. Any code from lecture or section code demos, the presentations, and the required readings is also allowed as long as the developer is credited.

Students are responsible for understanding and complying with the University's Code of Academic Integrity. The Code can be found at this link http://deanofstudents.arizona.edu/codeofacademicintegrity.

The full text is also available from the Office of the Dean of Students in Room 203 Old Main.

Among other provisions, the Code demands that the work you submit is your own, and that graded programs and exams will not subsequently be tampered with. Looking at another's test during the test period is also a violation of the Code.

Violations of Academic Integrity will result in a report filed to the Dean of Students. Sanctions include receiving an E for the course, even if it is a first violation. If other reports have been filed from any department, the Dean of Students may issue more severe sanctions including suspension or expulsion from the university. You are better off receiving 0 for one project rather than an E for the course and a report on your University record. Avoid Sanctions by beginning your projects as soon as possible. Do not wait until the due date! Do not look at another person's test while the test is in progress. Do not copy files. Do not give your code to anyone even if the other person promises not to turn it in as their own, in which case you who did all the work may suffer the same sanctions as the cheater.

Subject to Change Information contained in this course syllabus other than the grading and absence policy is subject to change with reasonable notice.