Class Meets: Tuesday and Thursday - 4:35-6:20pm
Class Location: HR 235
Web Page: http://sites.google.com/site/usfcs685
Mailing List: https://groups.google.com/a/cs.usfca.edu/group/cs685
Instructor: Sami Rollins
Office: HR 544
Email: srollins@cs.usfca.edu
Office Hours: Tuesday, Wednesday, Thursday 10:30am-11:30am, and by appointment.
There is no required text for this course. There will be a significant amount of reading, but most reading assignments will be research papers available on the web. Students who have little familiarity with computer networking concepts may wish to consult the following:
Grades will be distributed as follows:
Exams: 30%
Projects (5): 40%
Bug Tracking and Documentation: 5%
Program Maintenance and Robustness: 10%
Paper Reviews: 5%
Class Participation (discussion and quizzes): 10%
Note: The distribution is subject to change in the event that assignments need to be removed or added.
Final grades will be assigned as follows:
100 - 93.0 - A
92.9 - 90.0 - A-
89.9 - 87.0 - B+
86.9 - 83.0 - B
82.9 - 80.0 - B-
79.9 - 77.0 - C+
76.9 - 73.0 - C
72.9 - 70.0 - C-
69.9 - 67.0 - D+
66.9 - 63.0 - D
62.9 - 60.0 - D-
59.9 - 0 - F
The exam portion of your grade will be based on two exams. You are responsible for being in class on the day of the exam (including the final exam). Make-up exams will be given only in the case of a medical emergency verified by a doctor's note.
The project portion of your grade will be based on substantial programming assignments given throughout the semester. In most cases, your grade will be based on the code you submit as well an oral explanation and demonstration of the program on the day the project is due. Late submissions will not be accepted. Extensions will be granted only in the case of a medical emergency verified by a doctor's note.
Most of the code you will write this semester will build on your first project. Your first project will be a long-running application that is expected to gather and upload data for the entire duration of the course. As a result, you will be using the Pivotal bug tracking system to keep track of bugs, milestones, and other todo items related to your project. At the end of the semester, 5% of your final grade will be based on how consistently and thoroughly you have documented your work on the project.
For the entire duration of the semester, I will be programmatically monitoring the robustness of your code. You are expected to maintain your application and ensure that it continues to run and upload data. At the end of the semester, 10% of your final grade will be based upon how robust you have made your application. If there are significant periods of time during which your application fails to upload data, your grade will be lowered.
This class will be run primarily in a seminar style. Reading will be assigned for many classes and you will be required to complete a review of the reading the day before the reading is discussed in class. Reviews must be made available on a website or blog and 5% of your grade will be based on completion of these reviews.
The participation score will be based primarily on participation in class discussion of papers, but will also include performance on quizzes and class attendance. This will constitue 10% of your final grade.
In general, I do not mind if you use laptops to take notes during the class period. If you use your laptop to check email, surf the web, IM, or perform any activity that is not completely relevant to the course and the topic being covered, your laptop privileges will be revoked. You will likely have lab periods during which you will be expected to work on your assignments. You may use your laptop for this purpose during the lab times. You may not use the lab time to read the news, update your facebook page, or anything beyond working on the current assignment.
Your project assignments will consist of writing programs to run on phones or laptops. It is expected that most students will use a personal phone or laptop for this purpose. There will be a small number of Android Nexus One phones available for students who are unable to use their own hardware. Students will be responsible for returning these phones in the condition in which they were borrowed. Failure to do so will result in an incomplete for the course.
ALL assignments are to be completed individually unless specified, in writing, on the assignment. Academic dishonesty will NOT be tolerated. This is your warning! Students are encouraged to meet with me if they have questions regarding assignments or this policy. Students caught cheating will face severe penalty.
Students may:
Students may NOT:
Requirements
Penalties