COMPSCI 455: Distributed Systems Course Coordinator: Amit Jain

advertisement
COMPSCI 455: Distributed Systems
3-credit course with 3 lecture hours per week
Course Coordinator: Amit Jain
Textbook(s) and Supplemental Material
Distributed Systems, Tanenbaum and Van Steen, 2007.
Catalog Description
Principles and paradigms of distributed systems. Communication, processes, naming,
synchronization, consistency and replication, fault tolerance and security. In-depth coverage of
Remote Procedure Call (RPC), Remote Method Invocation (RMI) and socket programming.
Survey of major distributed systems. Several software projects.
PREREQ: COMPSCI 453.
Elective
Goals for the Course
Successful students will be expected to:
• explain the structure of distributed systems
• program using remote procedure calls and remote methods
• design client server systems that incorporate replication, synchronization, fault
tolerance and security
• explain distributed naming techniques
• have an understanding of commonly used distributed object, file, document
based system
Outcomes Addressed
a. an ability to apply knowledge of computing and mathematics appropriate to the
discipline
b. an ability to analyze a problem, and identify and define the computing requirements
appropriate to its solution
c. an ability to design, implement, and evaluate a computer-based system, process,
component, or program to meet desired needs
d. an ability to function effectively on teams to accomplish a common goal
i. an ability to use current techniques, skills, and tools necessary for computing
practice
k. an ability to apply design and development principles in the construction of
software systems of varying complexity
Outcomes Assessed: None
Topics Covered
Network Programming
Architecture
Communication
Remote Processes
Naming
Synchronization
Consistency and Replication
Fault Tolerance
Security
Distrubuted File, Object and Web servers
Cloud Computing
Grading
Letter grades are assigned to students based on numerical scores for the following activities:
Activity
Weight
Projects
70%
Presentation
10%
Midterm
10%
Final
10%
Curriculum Category Content (Credits)
Area
Core Advanced
Algorithms
1
Software Design
1
Computer Architecture
Data Structures
1
Programming Languages
Download