Location: Towne 321
Location: 576 Levine Hall N (a.k.a. GRW building)
Office hours: Tuesdays, 4:30PM unless otherwise announced
Aneesh Kapur, aneeshk@seas.upenn.edu
Office hours: 10-11AM, Mondays, Levine/GRW 459
This course focuses on the issues encountered in building Internet and web systems: scalability, interoperability (of data and code), atomicity and consistency models, replication, and location of resources, services, and data.
We will examine how XML standards enable information exchange; how web services support cross-platform interoperability (and what their limitations are); how to do proxy caching, replication and Akamai-like content distribution; and how application servers provide transaction support in distributed environments. We will study techniques for locating machines, resources, and data (including directory systems, information retrieval indexing and ranking, web search, and publish/subscribe systems); we'll discuss collaborative filtering and mining the Web for patterns; we'll investigate how different architectures support scalability (and the issues they face). We'll also examine the ideas that have been proposed for tomorrow's Web, including the "Semantic Web," and see some of the challenges, research directions, and potential pitfalls.
An important goal of the course is not simply to discuss issues and solutions, but to provide hands-on experience with a substantial implementation project. This semester's project will be a peer-to-peer information-sharing and querying system based on a web services architecture.
3/14: Added details on project, midterm, and midterm answers
This course covers a number of different topics, so we will use a variety of materials:
CSE 380 (Operating Systems) or equivalent; CSE 330 (Database Management Systems) or equivalent; knowledge of Java programming. This course will require a significant amount of programming and will require the ability to work with your classmates in teams.
The format will be two one-and-a-half-hour lectures a week,
plus assigned readings from the course reader.
There will be regular homework assignments and a substantial implementation
project, plus a midterm and a final exam.
Three homework assignments, midterm, and final
exam. Breakdown: homework 21%, midterm 14%, final 20%, project 40%,
participation/intangibles 5%.
Other Resources
Last revised: