C Sc 335 Syllabus:Object-Oriented Programming and Design
University of Arizona,Spring2013
Catalog DescriptionC 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.Weeklylab.Prerequisite: C Sc 127B or C Sc 227
When/Where Common lectures on Tuesday and Thursday 3:30-4:45 in McClelland Park105. You also have a recitation section with ~24 studentsevery Wednesday or Thursday.
Section
/Time
/Location
/at email dot arizona dot edu
001B / 2:00 - 2:50 Wednesdays / 813 GS / RohitUmashankar - rohitu001C / 3:00 - 3:50 Wednesdays / Modern Language 401 / Dylan Clavell – dclavell
001D / 4:00- 4:50 Wednesdays / Modern Language 401 / Jorge Vergara - jbv
001E / 11:00- 11:50 Thursdays / Shantz 242E / Seungwoo Sun - suns
Rick's Office Hours 727 Gould Simpson:Hours TBA or byappointment:
Course WebSite (or Google mercer cs to find this link)
Required Textbooks
Code Compete 2nd Edition
Steve McConnell
Microsoft Press
ISBN:0735-61967-0 ISBN 13:978-0735-61967-8
Head First Design Patterns1stEdition
Elisabeth Freeman,Eric Freeman,Bert Bates,Kathy Sierra,Elisabeth Robson
O'Reilly Media
ISBN-10: 0596007124 ISBN-13: 9780596007126
These bookshave not been ordered through the bookstore. Both are free online through a Safari Books agreement. The problem is that only 10 people from the UofA can be reading at the same time (10 logins max). If you are the 11th, you are simply not allowed in. There is no explanation. You may think Safari Books has a bug. It is highly recommended that you purchase these books ASAP. Rick leaves you to your own resources as an online shopper. Note: Steve has links to several shopping comparisons from
If you do not purchase the required books, yourcomputer must be one connected fromcampus. If off campus, you must make a Virtual Private Network (VPN) connection from your computer, which makes you computer to be on campus.If you don't have VPN software and you want to read on your computerinstead of reading in a campus lab, install Cisco's AnyConnect VPN client After making a VPN, you can gain access to thousands of free technical booksincluding trying to read Code Complete or Design Patterns.
GradingYour letter grade will be determined based on the following weighted average and cutoffs. Yes, the total is 102% because the Reading Quizzes are Bonus. It is possible to get 102% in this class, or an 88% for all other grades and still earn an A.
4% Section Participation18% Test 1
18% Test 2
36% Programming Projects
24% Final Team Project
2% Bonus Reading Quizzes / A >= 90%
B80.0 to 89.9
C70.0 to 79.9
D60.0 to 70.9
E60.0
Section ParticipationArrive on time, be involved, and leave only when done to receive full credit for section participation that day. Current plans are to use the final 5 sections as time to work on you final project.
Bonus Reading Quizzes Most lectures will begin with a quiz from 3:30to 3:33pm (or close to that). The questions will be based on readings linked from our course web page. There are no makeups! If you are not in lecture at 3:30, you have less time to finish.If you arrive at 3:32,you may NOT be allowed to take the reading quiz. Do not ask for makeups.
Programming ProjectsYou will be completing allprojectscollaboratively in a team of two in a pair-programming mode.Two of the projects will have a team size will be 4. Software development in larger teams provides valuable experience with social, process, and technical issues.
Tests You will take two 75-minute tests during the scheduled lecture time. There is no final exam.
Final ProjectThe final project will be completed in a teamoffour. Itwill be relatively complex with many new types (classes) that you design. This final team projecthistorically requires about 50 hours of your time during the final five 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. It will be due during the final exam period. Attendance required.
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 PoliciesWhen 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 PolicyAttend 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.
DRCStudents 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 computer with the same tools
Classroom BehaviorThe University of Arizona has an explicit policy on disruptive behavior: 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 PenaltiesProgramming 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 teamwithout 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
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 ChangeInformation contained in this course syllabus other than the grading and absence policy is subject to change with reasonable notice.