CS 580 Client-Server Programming
Spring Semester, 2007
Syllabus
© 2005, All Rights Reserved, SDSU & Roger Whitney
San Diego State University -- This page last updated 1/17/07
CS 580 Syllabus
Instructor |
|
Name Office Phone Office Hours |
Course WWW Site : http://www.eli.sdsu.edu/courses/spring07/cs580/index.html
All course handouts will be delivered via WWW at the above URL.
Texts : Java Network Programming 3 nd , Harold O'Reilly
VisualWorks Internet Client Developer’s Guide, NetClientDevGuide.pdf in the VisualWorks distribution.
Course mailing list : A list server is used to email important messages to students in the course. Instructions for subscribing are on-line at the course web site.
Prerequisites : CS570, Java, Smalltalk, Ruby or C#. Note CS576 is recommended but not required . While students may chose to use C# it is an unsupported language. That means C# will not be used in lectures, students have to provide their own machines with C# compilers and little if any technical support on the language will be provided.
CS580 is an advanced undergraduate course. We will be covering topics from a number of other 500 level courses: CS514 Database Theory & Implementation, CS 532 Software Engineering, CS535 Object Oriented Programming, CS551 User Interface Environments, CS570 Operating Systems, CS574 Computer Security and CS576 Computer Networks & Distributed Systems. You will be required to understand a lot of diverse material and apply it in programs. While CS580 does not require a lot of prerequisites, it does require a high level of programming skills. In the past students without strong programming skills have found the course overwhelming and this was reflected in their grades.
In the recent past a number of students have claimed to know Java but had little working knowledge of the language. This has had a negative impact on their grades. February 7 is the last day to drop the course. After that date it is nearly impossible to drop the course. Grades in this course are based only on performance of the student. Problems with languages (English and/or Java) are not considered in assigning grades.
Late Policy : Late homework will be accepted, but with a penalty. An assignment turned in 1-7 days late, will lose 3% of the total value of the assignment per day late. The eight day late the penalty will be 40% of the assignment, the ninth day late the penalty will be 60%, after the ninth day late the penalty will be 90%. Once a solution to an assignment has been posted or discussed in class, the assignment will no longer be accepted. Late penalties are always rounded up to the next integer value.
Grading : Your grade in this class will be based on homework and programs and one exam. There will be between 4 and 8 programming assignments. Missing a programming assignment may drop your course grade by at least two full letter grades. Some assignments in this class may seem easy at first glance. This causes some students to delay starting the assignment. Often they find out too late that the assignment is harder than they think, which hurts their grade.
Item |
Percent of Grade |
Homework & Programs |
75% |
Exam |
25% |
Note that CS 580 is an undergraduate course. In an undergraduate course a C is a passing grade. A students ranking, undergraduate or graduate student, is not considered when determining grades.
Course Outline :
Source Version Control
Testing
Network Basics
GUI
Client Development Issues
Concurrency
Server Types & Structure
Client-Server Protocols
Logging
Databases
Security
Web based Applications
CGI, Fast-CGI, Servlets
Web Services
Advanced topics
No Extra Credit : There will not be any extra credit assignments. There will not be any extra credit problems in the assignments.
Cheating : Any one caught cheating will receive an F in the course and they will be reported to the SDSU Judicial Procedures Office.
Recycling : Paper makes up 40% of the garbage in this country. Please recycle all the paper you no longer need. The city of San Marcos thanks you for recycling.