|

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.
|