Course Outline Distributed Systems Course Outline Dstributed Systems
This document provides information about an Introduction to Distributed Systems course offered at Infolink University College. The course aims to provide students with an understanding of distributed systems principles, techniques, and practices. Over 14 weeks, students will learn about topics like architectures, processes, communication, naming, synchronization, consistency, replication, and fault tolerance. Assessment will include assignments, quizzes, presentations, a midterm exam, and a final exam. The goal is for students to understand how distributed systems work and be able to design one to meet requirements.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
53 views2 pages
Course Outline Distributed Systems Course Outline Dstributed Systems
This document provides information about an Introduction to Distributed Systems course offered at Infolink University College. The course aims to provide students with an understanding of distributed systems principles, techniques, and practices. Over 14 weeks, students will learn about topics like architectures, processes, communication, naming, synchronization, consistency, replication, and fault tolerance. Assessment will include assignments, quizzes, presentations, a midterm exam, and a final exam. The goal is for students to understand how distributed systems work and be able to design one to meet requirements.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2
Infolink University College – Hawassa Campus
Department of Computer Science
Year IV, Semester II - 2016 EC Department: Computer Science Course Tile: Introduction to Distributed System Course Code: CoSc 412 Cr. Hrs: 3 Prerequisite: Data Communication and Computer Networks, Operating Systems Instructor Name: Anteneh W. email: [email protected] Course Description: A distributed system is a computer system consisting of several independent computers, connected by a network, that can work together to perform a task or provide a service. Typical examples include: the World Wide Web, networked file systems, DNS, and massive multiprocessor supercomputers.
In this course we aim to provide students with a deeper understanding of distributed
systems. In particular we focus on the principles, techniques, and practices relevant to the design and implementation of such systems. The course takes a systems-oriented view of distributed systems, concentrating on infrastructure software and providing hands-on experience implementing distributed systems.
Objectives of the Course:
By the end of this course, students will be able to:
Explain what a distributed system is, why they would design a system as a distributed system, and what the desired properties of such systems are; List the principles underlying the functioning of distributed systems describe the problems and challenges associated with distributed systems, and evaluate the effectiveness and shortcomings of their solutions; Recognize how the principles are applied in contemporary distributed systems, explain how they affect the software design Design a distributed system that fulfills requirements with regards to key distributed systems properties (such as scalability, transparency, etc.) Understand and exercise on distributed system software development using basic OS mechanisms as well as higher-level middleware and languages.
Schedule Chapters and Topics
Week 1-2 Chapter One: Introduction Introduction Definition 1.3 Goals of a Distributed System 1.4 Types of Distributed Systems Week 3-4 Chapter Two: Architectures 2.1 Architectural Styles 2.2 System Architectures Week 5-6 Chapter Three: Processes 3.1 Introduction to Threads 3.2 Threads in Distributed Systems 3.3 Clients 3.4 Servers 3.5 Code Migration Week 7 Quiz Week 8-9 Chapter Four: Communication 4.1 Layer protocols 4.2 Types of Communication 4.3 Remote Procedure Call Week 10-11 Chapter Five: Naming 5.1 Flat Naming 5.2 Structured Naming Week 12 Chapter 6: Synchronization 6.1 Clock Synchronization 6.2 Logical Clocks Week 13 Chapter 7: Consistency and Replication 7.1 Reasons for Replication 7.2 Replication as Scaling Technique Week 14 Chapter 8: Fault Tolerance 8.1 Basic Concepts 8.2 Failure Models Reference Text book: S. Tanenbaum and Maarten van Steen, Distributed Systems, Principles and Paradigms, 2nd edition, Prentice Hall, 2007 Reference books: B. A. Forouzan, Data Communications and Networking, McGraw Hill, 3rd edition, 2003 S. Mullender, Distributed Systems, 2nd edition, Addison-Wesley, 1993 K. Birman, Building Secure and Reliable Network Applications, Manning Publications Co., 1996 Assessment: Assignment, Quizzes, Presentation – 30% Mid Exam – 20% Final Exam – 50% Total – 100%