Go to:
Logótipo
You are in:: Start > CC4003

Distributed Systems

Code: CC4003     Acronym: CC4003     Level: 400

Keywords
Classification Keyword
OFICIAL Computer Science

Instance: 2020/2021 - 1S Ícone do Moodle

Active? Yes
Responsible unit: Department of Computer Science
Course/CS Responsible: Master in Computer Science

Cycles of Study/Courses

Acronym No. of Students Study Plan Curricular Years Credits UCN Credits ECTS Contact hours Total Time
M:CC 12 Study plan since 2014/2015 1 - 6 42 162
MI:ERS 27 Plano Oficial desde ano letivo 2014 4 - 6 42 162

Teaching language

Portuguese

Objectives

We aim to provide students with an introduction to the fundamental problems in the design and implementation of distributed systems. On completing this course, students must be able to:

(a) Explain what is a distributed system, why should an application be built as a distributed system, and what are the desirable properties of such systems;
(b) Describe the principles guiding the construction of distributed systems, the main problems and associated challenges, and perceive the efficiency and limitations of proposed solutions;
(c) Build systems that use basic OS mechanisms such as UNIX sockets, as well as higher level middleware RMI/RPC and Web Services.

Learning outcomes and competences

- knowledge of the architecture of a distributed system
- understanding the functioning of a distributed system
- capability to implement parts of a distributed system
- understanding of the capabilities and limitations of a distributed system

 

Working method

Presencial

Pre-requirements (prior knowledge) and co-requirements (common knowledge)

- core programming skills
- algorithms and data structures
- design and analysis of algorithms
- operating systems

Program

Introduction to Distributed Systems.
Software and System Architectures.
Processes, Threads and Virtual Machines.
Communication Models.
Names and Name Resolution.
Clocks and Synchronization.
Consistency Models.
Replication.

Mandatory literature

Andrew S. Tanenbaum, Maarten van Steen; Distributed Systems: Principles and Paradigms, Prentice-Hall, 2nd ed., 2007
G. Coulouris, J. Dollimore, T. Kindberg; Distributed Systems: Concepts and Design, Addison-Wesley 4ed., 2005

Teaching methods and learning activities

Theory and Practice classes: exposition and discussion of concepts about distributed and mobile systems; support to students in the design and implementation of distributed systems and applications.

Evaluation Type

Evaluation with final exam

Assessment Components

designation Weight (%)
Exame 60,00
Participação presencial 0,00
Trabalho laboratorial 40,00
Total: 100,00

Amount of time allocated to each course unit

designation Time (hours)
Elaboração de projeto 90,00
Frequência das aulas 42,00
Trabalho laboratorial 30,00
Total: 162,00

Eligibility for exams

Students are required to obtain a mark of at least 50% in the practical assignments to be eligible to qualify in this course.

Calculation formula of final grade

Final exam weighing 60% in the final grade.


Practical assignments weighing 40% in the final grade.
Minimum grade of 50%.


Final grade = (12 * exam + 8 * assignments) / 20

Classification improvement

Please contact the lecturer.

Recommend this page Top
Copyright 1996-2025 © Faculdade de Ciências da Universidade do Porto  I Terms and Conditions  I Acessibility  I Index A-Z  I Guest Book
Page created on: 2025-06-16 at 02:38:09 | Acceptable Use Policy | Data Protection Policy | Complaint Portal