《Distributed System》Course Syllabus
Author:管理员 Time:2017-04-11 Hit:154

《Distributed System》Course Syllabus

Course Name

Distributed System


Prof. Zhenqiang Wu

Course Type

Elective Course

Prerequisite Courses

Computer Network,

Operating System, Object Oriented Programming


Software Engineering,

Computer Science

Learning Method

Mentoring, discussion and   programing


2nd semester






  1. Background and Objectives

A distributed system is one in which components located at networked computers communicate and coordinate their actions only by passing messages. A major motivation for developing distributed systems is to share resources, which may be managed by servers and accessed by clients. The design and implementations of distributed systems are challenging, because (1) components in a distributed system are in most cases heterogeneous, (2) components may be dynamically added or replaced, and (3) the systems must work well when the number of users increases.

In this course, we will address the issues of design of distributed systems. In particular, we will investigate successful approaches in the form of abstract models, algorithms, and cases studies of real-world systems. We presume that students who will take this class have a basic knowledge of operating systems, computer architecture, and object oriented programming.

Broad and up-to-date coverage of the principles and practice in the fast moving area of Distributed Systems. Distributed Systems provides students of computer science and engineering with the skills they will need to design and maintain software for distributed applications. It will also be invaluable to software engineers and systems designers wishing to understand new and future developments in the field. From mobile phones to the Internet, our lives depend increasingly on distributed systems linking computers and other devices together in a seamless and transparent way. The fifth edition of this best-selling text continues to provide a comprehensive source of material on the principles and practice of distributed computer systems and the exciting new developments based on them, using a wealth of modern case studies to illustrate their design and development. The depth of coverage will enable readers to evaluate existing distributed systems and design new ones.

Course Objectives: (1) To understand the characterization of distributed systems. (2)  To understand the well-established topics of data replication, distributed file systems, and the like. (3) To familiarize yourselves with new topics, including web services, the Grid, peer-to-peer and ubiquitous systems. (4) To design a scalable and heterogeneous distributed systems. (5) To improve technical writing and oral presentation skills.

  1. Topics to be covered

This course appears at a time when the Internet and the Web continue to grow and have an impact on every aspect of our society. For example, the introductory chapter of the book notes their impact on application areas as diverse as finance and commerce, arts and entertainment; and the emergence of the information society more generally. It also highlights the very demanding requirements of application domains such as web search and multiplayer online games. From a distributed systems perspective, these developments are placing substantial new demands on the underlying system infrastructure in terms of the range of applications and the workloads and system sizes supported by many modern systems. Important trends include the increasing diversity and ubiquity of networking technologies (including the increasing importance of wireless networks), the inherent integration of mobile and ubiquitous computing elements into the distributed systems infrastructure (leading to radically different physical architectures), the need to support multimedia services and the emergence of the cloud computing paradigm, which challenges our perspective of distributed systems services.

The main topics will be covered in Characterization of distributed systems, Distributed system models, Distributed algorithms, Distributed objects and RMI, Transactions and concurrency control, Distributed transactions, Replication, Distributed file systems, Peer-to-Peer systems, Mobile and ubiquitous computing.

  1. Textbook

  2. G.Coulouris, J.Dollimore, T.Kindberg, G. Blair, "Distributed Systems: Concepts and Design" , 5th edition, by Addison Wesley/Pearson Education, 2012, ISBN 10:0-13-214301-1, ISBN 13:978-0-13-214301-1.

  3. Reference

  4. Distributed systems Concepts and Design, 5th edition,http://www.cdk5.net/wp/

  5. Distributed systems Concepts and Design, 4th edition,  http://www.cdk4.net

  6. IETF: http://www.ietf.org

  7. Internet Architecture Board, http://www.isi.edu/iab

  8. Internet Society,http://www.isoc.org

  9. World Wide Web Consortium, http://www.w3.org/consortium

  10. Association for Computing Machinery, http://www.acm.org

  11. Institute of Electrical Electronics Engineers, http://www.ieee.org

  12. ACM Special Interest Group in Data Communications Society(SIGCOMM)  http://www.acm.org/sigcomm

  13. IEEE Computer Society  http://www.computer.org

  14. Data communications tutorials    http://www.data.com

  15. Media History Project   http://www.mediahistory.com

5. Course Evaluation (Tentative)

Assignments                           30%

Course Project                        30%

Midterm Exam (in-class)          40%