Distributed Systems
Keywords |
Classification |
Keyword |
OFICIAL |
Informatics |
Instance: 2009/2010 - 1S
Cycles of Study/Courses
Acronym |
No. of Students |
Study Plan |
Curricular Years |
Credits UCN |
Credits ECTS |
Contact hours |
Total Time |
MIEEC |
3 |
Syllabus since 2007/2008 |
5 |
- |
6 |
63 |
160 |
Teaching language
Suitable for English-speaking students
Objectives
1- Background
Computer applications are increasingly distributed. Most recently, we have witnessed the trend to migrate most applications from the computer to the "cloud", and the performance and reliability of modern computer networks make it likely that distributed computing will become ubiquitous in the not so distant future. However, distribution raises a number of problems that do not exist in centralized applications and systems.
2- Specific Aims
Because this is the only required course of the area of distributed computing in the curriculum, it is of paramount importance that the students become familiar with the principles underlying distributed computing, and with the paradigms that are used in their design. Furthermore, they should develop the necessary skills to apply that knowledge in the analysis, design and implementation relatively simple distributed applications.
3- Previous Knowledge
It is expected that students have basic knowledge of operating systems and computer networks. Furthermore, they should be proficient in programming in imperative and object-oriented languages, such as C, C++ and Java.
4- Percent Distribution
Scientific component: 65%
Technological component: 35%
5- Learning Outcomes
Upon completing this course, the students should be able:
1) to understand the foundations of distributed applications and systems;
2) to design and implement relatively simple distributed applications, possibly with security requirements;
3) to analyze distributed solutions to somewhat large problems and assess whether they are suitable to the problem at hand.
Program
Introductory concepts on distributed systems and network computing. Communication paradigms: message passing, remote invocation. Distributed objects. Naming: identification and addressing. Security concepts. Synchronization. Replication and consistency. Fault tolerance.
Mandatory literature
Andrew S. Tanenbaum, Maarten van Steen;
Distributed systems. ISBN: 0-13-613553-6
Complementary Bibliography
George Coulouris, Jean Dollimore, Tim Kindberg;
Distributed systems. ISBN: 0-201-61918-0
Andrew S. Tanenbaum, Maarten van Steen;
Distributed systems. ISBN: 0-13-088893-1
Teaching methods and learning activities
The main issues of each topic are presented in class, usually with the help of transparencies. Whenever appropriate examples are used. The contents follows closely Tanenbaum and van Steen’s book. However, for topics that are not covered by that book at the desired level, we will provide notes and/or articles.
The programming assignments proposed are discussed in lab classes.
Software
JDK 1.4 ou mais recente
Unix
Evaluation Type
Distributed evaluation with final exam
Assessment Components
Description |
Type |
Time (hours) |
Weight (%) |
End date |
Attendance (estimated) |
Participação presencial |
50,00 |
|
|
Programming test |
Exame |
9,00 |
|
2009-12-18 |
Final exam |
Exame |
2,00 |
|
2010-01-27 |
Programming assignments |
Teste |
36,00 |
|
2009-12-18 |
|
Total: |
- |
0,00 |
|
Amount of time allocated to each course unit
Description |
Type |
Time (hours) |
End date |
Study |
Estudo autónomo |
39 |
2010-01-09 |
Study for final exam |
Estudo autónomo |
24 |
2010-01-27 |
|
Total: |
63,00 |
|
Eligibility for exams
Do not exceed the absence limit and obtain a minimum of 45% in the programming tests.
Calculation formula of final grade
0.3 P + 0.1C + 0.6 F
where,
P – Programming tests (weighted average of 3 tests, such that the worst score is worth half of the other two scores)
C - Class participation
F – Final exam
In order to pass the course, the students must have a minimum score of 45% in both P and F.
Examinations or Special Assignments
Three programming tests, each with a duration of 3 hours, consisting in the development of programs similar to those of the programming assignments discussed in class.
Final Exam
- duration of 2h
- closed books
Special assessment (TE, DA, ...)
Similar to the one of the regular students, except for the class participation term. Thus the final grade is computed as follows:
0.4 PP + 0.6 ET
where PP and ET have the same meaning as above.
On special evaluation periods, the examination is identical to the one used in the classification improvement.
Classification improvement
Done, in the specific periods, by submission to:
- either a final exam similar to the one done in the regular evaluation period (and with the same weight).
- or a programming exam, which may cover the object of the three programming tests.
The improvement of grades larger or equal to 18 marks is done by submission to an oral exam, which will cover both theoretical and practical aspects.
Observations
The students are asked to have an honest academic behavior. The cases of violation of academic integrity shall be reported to the Course Director.