Skip to main content

Apply now! Spring priority deadline is October 1.

ICS 662 Distributed System Design

This course covers fundamental principles and theories on distributed and network operating systems, communication models, Client/Server architecture, and Peer-to-Peer paradigms. Group communication, synchronization, threads, processor allocations, fault tolerance, distributed shared memory, and case studies are also introduced.

Special information

First day attendance is mandatory.
Prerequisites: Graduate standing. Note: Students are responsible to both be aware of and abide by prerequisites for ICS courses for which they enroll, and will be administratively dropped from a course if they have not met prerequisites.
4 Graduate credits

Effective May 4, 2010 to present

Learning outcomes

General

  • Explain the central issues involved in the design of distributed systems.
  • Implement distributed algorithms using an appropriate programming language.
  • Apply distributed system concepts to the design of distributed systems.
  • Describe current techniques and tools associated with distributed and network operating systems.
  • Describe the role of central concepts such as load balancing and synchronization in different types of distributed systems such as database systems and operating systems.
  • Demonstrate expertise in reading, presenting, and criticizing peer-reviewed papers in distributed systems.