CSE 646 Internet Software Systems (Fall 2000)
Course Description
This is a special topic course,
not an introductory course on Internet software systems.
Students who plan to
take this course are expected to have the level of maturity in computer
networking as covered in CSE533, the network programming course, or
the first six chapters of the second edition
of Andrew Tanenbaum's "Computer Networks" book, as well as
UNIX socket programming.
If you don't have that background and
still want to take this course, please come and talk to me first.
An important thing to remember before you decide to take this course is
that you have to be committed to do a good job in the homeworks and class
projects to learn anything useful out of the course. That is, it is very
unlikely to get anything out of the course just by auditing the course.
The course will be heavily oriented towards classroom discussion and student presentation.
In fact, the lectures will mostly be in the form of case studies and design walk-throughs.
In this course, we plan to study the high-level software components that make up
post-WWW Internet applications. Our focus will be mostly on the ``middleware'' aspect
rather than the network and transport layers. Although this is an Internet software
course, we DO NOT plan to go into the details of the most recent
Internet programming tools
such as Java, XML and WAP. Instead, the emphasis will be their design principle and
system architecture.
We will study the three axes of the WWW software architecture, the browser,
the proxy, and the Web server. Instead of looking at their implementation details
such as HTML interpretation and rendering, we will focus on their extension mechanisms
and novel applications that can be built on these extension mechanisms.
In addition, we will also study various augmented components in this architetcure
that have been developed for reasons such as performance optimization and security.
There will be a mini-project, a transcription and presentation requirement, and a class project.
The mini-project is meant to be a warm-up exercise. The topic of the mini-project can
be chosen from the following:
- URL Filtering
- Advertisement Insertion
- Personalized Dictionary Assistance
- Automatic Form Filler
- Directory Tree Builder
Each student is required to be involved in a one-hour class presentation, i.e., part of a
team that is preparing for a presentation.
In each class, we will need two students to transcribe the classroom lecture and discussion,
and prepare them into an HTML file that is to be posted to the class Web site.
Each student is required to perform such a transcription task at least once.
The major component of this course is the class project.
Students are organized into one-person or two-person teams to
design and implement
an Internet software system or application. Each team needs
to make two 30-minute presentations for its project to the class, one on system design
before the Thanksgiving week, and one on final results
at the end of the semester.
In addition, every team is asked to turn in a
publication-quality
research paper documenting the experiments, results, and analysis.
The grade will be based on: 35% Homework, 15% Presentation, and 50% Project.
There is no textbook for this course. Pointers to relevant papers and notes
will be posted on the class web site.
The workload is estimated to be about 10 hours per week,
excluding the project effort.
The first class is on September 6 (Wednesday).
Administrative Matters
- Location: Room 2212 CS Building
- Time: 5-7 PM Wednesday
- Textbook: None
- Instructor: Professor Tzi-cker Chiueh
- Office: CS Building, Room 1419
- Phone: 516-632-8449
- mail: chiueh@cs.sunysb.edu
- Office Hours: 4-5 PM Wednesday
- Course Homepage: http://www.ecsl.cs.sunysb.edu/~chiueh/cse646
Special Needs
If you have a physical, psychological, medical or learning disability that may impact on your ability to carry out assigned course
work, I would urge that you contact the staff in the Disabled Student Services office (DSS), Room 133 Humanities,
632-6748/TDD. DSS will review your concerns and determine, with you, what accommodations are necessary and
appropriate. All information and documentation of disability is confidential.
Handouts
Final Project Reports
- Lap Chung Lam,
Tool for Supporting Distributed Software Engineering
- Guanghao Yan and Chuyu Ren,
Text/Speech-based Interactive Online Customer Service
- Kefei Lu and Xifeng Yan,
Cache for Dynamic Web Content from SQL Queries
- Feng Tang and Hong Jiang,
IP Address Geographic Mapping
- Chang Li and Jinshan Liu,
QoS Support for Web Server Clusters
- Gang Peng and Ningning Zhu,
Dynamic Thread Management for Internet Servers (pending)