All material on this site is under revision and subject to change.

 

Click the link below to

Report the flu

Use your Computer Science Department undergraduate login ID and password to access the form.

Contact Information

Policies

Project Code

Resources

CS 416 title logo

CPSC 416 - Distributed Systems

Instructor:

A distributed system is a collection of network-connected computers cooperating to provide a service. Distributed systems come in a wide range of sizes --- from local-area PC networks to collections of machines on the Internet --- and provide a wide range of services --- from air traffic control systems to multi-user games.

In this class you will learn the techniques and strategies that can be applied to build distributed application and system software that is simple, efficient, reliable, safe, and secure. The course will focus on the following topics:

  • Models of distributed computing
  • Communication protocols
  • Remote procedure calls and objects
  • Naming, time, and coordination
  • Distributed objects

Pre-requisites
The required pre-requisites for this course are all of CPSC 313 and CPSC 317.

Project
The course will have a single project, of your choosing, due the last week of classes. There will be no other assignments. The project will require you to develop a working distributed application, prepare a short (4-5 page) paper describing your project, and produce a poster outlining your project. As part of the project evalutation you will meet regularly with a TA to discuss your group's progress on the project. The project will done in groups of 2 or 3 and there will be a peer evaluation component to the project grade. You will not be allowed to work on a project by yourself and you must receive a passing mark on the project to pass this course. More details on the project, along with some suggestions on where to look for a project will be discussed in the first class.

Text
There is no required text for this course. Readings will be assigned from publically available sources on the Internet, or from online materials available directly from the UBC library site. If you really want to buy or consult a book, check the Resources section of the course web site.