CMPT 470/882


Spring 2001

Instructor: Qiang Yang; Teaching Assistant: Ian Tianyi Li.

Class Time: MWF 13:30-14:20. Class Location: MW: AQ3150; F: AQ 3153

Instructor Office Hours: Wed 2:30-4:30pm, ASB 10834
TA Office Hours:  Friday 10 am-12 pm.  ASB 10855

More Help:  Please use the Online Discussion Group to voice your questions as much as you can.


This course will cover the latest techniques for building scalable Internet systems such as search engines and electronic commerce systems. Lectures cover material drawn from various books and research papers in the field of client-server programming, Internet-database connectivity, data mining and information retrieval. Students will complete projects that build functional web sites with advanced functions. Most projects are done using Java servlet enterprise computing platforms.

The course is cross-listed with the graduate course CMPT882. Up to five graduate students are permitted to take the course on a first-come-first-serve basis. CMPT882 is under graduate course areas II and III in the graduate program. Graduate students are expected to carry a higher workload, by completing an extra research project, class presentation and term paper.


  • Distributed Computing on the Internet: Client/Server Side Computing using Java Servlets, HTML, Dynamic HTML, CSS, and XML, Internet Servers, HTTP, Application Development using Java Servlets, Web and Databases
  • Web-based Applications and the Underlying Theories: Web Data Mining, Recommendation Systems for e-commerce, Search Engine Systems, Information Retrieval and Machine Learning
  • New applications (if time allows): wireless access to the Web, web proxy caching and prefetching, query and server log analyses, user profiles


  • Programming Assignments: 20%
  • Final Programming Project: 40%
  • Exams: 40%


Because this is a new course, there is no single complete textbook yet. We are going to use portions of material from the texts listed below.


This course is project heavy. There will be a series of projects to be completed by single persons. In addition, there will be a final group project due near the end of the term. The final project scope will be in the area of adaptive web sites, recommendation systems or search engines. Students will form groups of three people each.


CMPT 354 & CMPT 371, and familiarity with JAVA.

Academic Honesty plays a key role in our efforts to maintain a high standard of academic excellence and integrity. Students are advised that ALL acts of intellectual dishonesty are subject to disciplinary action by the School; serious infractions are dealt with in accordance with the Code of Academic Honesty (T10.02) ( Students are encouraged to read the School's Statement on Intellectual Honesty (