COURSE DESCRIPTION AND APPLICATION INFORMATION

Course Name Code Semester T+A+L (hour/week) Type (C / O) Local Credit ECTS
Distributed Systems CMPE 474 Spring 03+00+00 Elective 3 5
Academic Unit: Computer Engineering Department
Mode of Delivery: Face to face
Prerequisites: CMPE 241
Language of Instruction: English
Level of Course Unit: Undergraduate
Course Coordinator: - -
Course Objectives: Distributed systems are highy popular way of data processing and computing. Essantial property of such a system is possesing a single system image. Such a basic structure provides a base for application spanning from mobile systems to ubiqutious and pervasive systems. With in that co ntext, basic and detailed information on establishing distributed systems will be explained. From the perspective of application, students are expected to produce typical examples by utilising the information provided by both lecture and literature surveys.
Course Contents: This course covers operating system concepts that provide a single system image in a distributed environment. Characterization of distributed systems and system transparencies are given. Basic design issues such as resource management, interprocess communication, synchronization, process/processor management, consistency control, memory management and file management in distributed systems and cloud computing are discussed.
Learning Outcomes of the Course Unit (LO):
  • 1- Understand and apply the principles of distributed systems, including their architecture, algorithms, and design patterns.
  • 2- Develop skills in modeling, analyzing, and solving complex problems related to distributed computing environments
  • 3- Acquire practical experience in implementing and managing distributed systems through lab experiments and projects.
  • 4- Master interprocess communication techniques and synchronization mechanisms in distributed systems.
  • 5- Understand and implement consistency control and fault tolerance mechanisms in distributed systems.
  • 6- Explore and evaluate different resource management strategies and their impact on system performance in distributed environments.
Planned Learning Activities and Teaching Methods: Class room discussion and projects


WEEKLY SUBJECTS AND RELATED PREPARATIONS

WeekSubjectsRelated Preperation LO
1 Introduction to Distributed Systems Tanenbaum, Chapter 1 1
2 Architectures of Distributed Systems Tanenbaum, Chapter 2 1
3 Processes in Distributed Systems Tanenbaum, Chapter 3 2
4 Communication in Distributed Systems Tanenbaum, Chapter 4 2
5 Naming in Distributed Systems Tanenbaum, Chapter 5 3
6 Synchronization in Distributed Systems Tanenbaum, Chapter 6 4
7 Consistency and Replication Tanenbaum, Chapter 7 5
8 Fault Tolerance in Distributed Systems Tanenbaum, Chapter 8 5
9 Security in Distributed Systems Tanenbaum, Chapter 9 3
10 Distributed Object-Based Systems Tanenbaum, Chapter 10 6
11 Distributed File Systems Tanenbaum, Chapter 11 6
12 Distributed Web-Based Systems Tanenbaum, Chapter 12 6
13 Distributed Coordination-Based Systems Tanenbaum, Chapter 13 4
14 Course Review and Integration of Concepts Review of all chapters 1,2,3,4,5,


REQUIRED AND RECOMMENDED READING

Tanenbaum, A.S., Van Steen, M., 2007. Distributed Systems Principles and Paradigms, 2nd Ed., Prentice-Hall.


OTHER COURSE RESOURCES

Coulouris, G., Dollimore, J., Kindberg, T., and Blair, G., May 2011. Distributed Systems, Concepts and Design, 5th Ed., Addison Wesley.


ASSESSMENT METHODS AND CRITERIA

Semester RequirementsNumberPercentage of Grade (%)
Project 4 80
Quizes 2 20
Total: 6 100


WORKLOAD

EventsCountDuration (Hours)Total Workload (hour)
Course Hours14342
Project41560
Presentation of Project Reports4624
Total Workload (hour):126


THE RELATIONSHIP BETWEEN COURSE LEARNING OUTCOMES (LO) AND PROGRAM QUALIFICATIONS (PQ)

# PQ1 PQ2 PQ3 PQ4 PQ5 PQ6 PQ7 PQ8 PQ9 PQ10 PQ11
LO1                      
LO2                      
LO3                      
LO4                      
LO5                      
LO6