This version of the course guide is provisional until the period for editing the new course guides ends.

Logo UAB

Distributed Systems

Code: 102740 ECTS Credits: 6
2024/2025
Degree Type Year
2502441 Computer Engineering OB 3
2502441 Computer Engineering OT 4

Contact

Name:
Antonio Miguel Espinosa Morales
Email:
antoniomiguel.espinosa@uab.cat

Teaching groups languages

You can view this information at the end of this document.


Prerequisites

There are no prerequisites. However, students should be familiar with Computer Fundamentals, Computer Structure, Operating Systems and Computer Networks. It is also recommended for students to have notions of Linux System.  


Objectives and Contextualisation

The main objective of the subject is to understand cloud computing systems, be able to manage them and develop applications that make use fo them. It will be necessary to know their main principles, base technologies, offered services and a broad view of their usage.

 


Competences

    Computer Engineering
  • Acquire personal work habits.
  • Capacity to design, develop, evaluate and ensure the accessibility, ergonomics, usability and security of computer systems, services and applications, as well as of the information that they manage.
  • Communication.
  • Conceive and develop centralised or distributed computer systems or architectures by integrating hardware, software and networks.
  • Have the capacity to analyse and evaluate computer architectures, including parallel and distributed platforms, and develop and optimise software for the same.
  • Have the capacity to analyse, evaluate, select and configure hardware platforms for the development and execution of computer applications and services.
  • Have the capacity to conceive network technology based systems, applications and services, including Internet, Web, e-commerce, multimedia, interactive services and mobile computers.
  • Have the capacity to design and implement system and of communications software.
  • Work in teams.

Learning Outcomes

  1. Analyse accessibility and security needs in accordance with the different types of users and different types of applications.
  2. Analyse and evaluate the programming models and paradigms for distributed systems.
  3. Analyse the characteristics of distributed systems.
  4. Apply the concepts of operating systems and networks to develop the necessary software components to manage a high performance computer system and the communications involved in these systems.
  5. Classify the different types of architecture for distributed systems, considering aspects relative to hardware and its interconnection, and to the software components of the system.
  6. Communicate efficiently, orally or in writing, knowledge, results and skills, both in the professional environment and before non-expert audiences.
  7. Conceive network technology based hardware systems, including Internet, web, e-commerce, multimedia, interactive services and mobile computation.
  8. Describe the basic performance parameters of distributed computing systems.
  9. Design computer solutions that integrate accessibility and security needs in a distributed system.
  10. Design efficient base software for distributed systems.
  11. Design network technology based systems, applications and services.
  12. Evaluate and select distributed systems depending on performance index.
  13. Evaluate the functionality and features of applications that run on distributed platforms.
  14. Identify the architectures of distributed systems.
  15. Identify the basic components that define the accessibility, ergonomics, usability and security of computer systems.
  16. Identify the characteristics of distributed systems considering the available network technologies.
  17. Identify the software levels that a distributed system should comprise.
  18. Prevent and solve problems.
  19. Propose IT solutions based on distributed systems that integrate in the architecture of the hardware components of the system, as well as the interconnection of the same, and the design of the necessary software.
  20. Work cooperatively.

Content

1. Introduction to Cloud Computing: benefits, challenges and risks.

2. Cloud Computing Models: Infrastructure / Platform / Software as a Service.

3-Virtual private cloud and node network configuration

4-Basic computation services

5-Basic storage services

6-Elasticity and scalability

7-Cost evaluation: Total Cost of Ownership


Activities and Methodology

Title Hours ECTS Learning Outcomes
Type: Supervised      
Exercises 10 0.4 2, 3, 1, 12, 13, 6, 11, 18, 19, 20
Laboratory practices 14.5 0.58 2, 3, 12, 13, 6, 7, 8, 9, 11, 10, 18, 19, 20
Theory 22 0.88 2, 3, 4, 12, 5, 7, 8, 11, 17, 14, 16, 18, 19
Type: Autonomous      
Personal work 93 3.72 2, 3, 1, 5, 7, 15, 17, 14, 16

Methodology

In the development of the subject, different types of teaching activities can be distinguished:

  • Theoretical classes: exposition of the theoretical contents of each topic of the program. The typical structure of an exhibition class of this type will be as follows: first, an introduction will be made where the objectives of the exhibition and the contents to be discussed will be briefly presented. Next, the contents under study will be broken down, including narrative expositions, formal developments that provide the theoretical foundations, and interspersing examples that illustrate the application of the exposed contents. Finally, the teacher will present the conclusions of the contents. Throughout the course there will be ongoing subject group assessments.
  • Classes in the laboratory. The practical part of the theoretical topics will be completed with sessions in the laboratory, where the student will develop a series of programs and applied tasks and must try to solve a specific problem that he will receive at the beginning of the syllabus. Some of these exercises must be delivered to the class onthe specified dates. The practices will be developed in groups. The classes include several sessions in the laboratory according to the timetable of the subject, where the student will carry out the development of the exercises.

This approach to work is aimed at promoting active learning and developing the skills of organization and planning, oral and written communication, teamwork and critical reasoning. The quality of the exercises carried out, their presentation and their operation will be especially valued.

The management of the teaching of the subject will be done through the Virtual Campus (https://cv.uab.cat/), which will serve to see the materials, manage the practice groups, make the corresponding deliveries, see the notes , communicate with teachers, etc.

Annotation: Within the schedule set by the centre or degree programme, 15 minutes of one class will be reserved for students to evaluate their lecturers and their courses or modules through questionnaires.


Assessment

Continous Assessment Activities

Title Weighting Hours ECTS Learning Outcomes
Exercises 20% 1.5 0.06 2, 3, 12, 13, 5, 6, 7, 9, 16, 18, 19, 20
Laboratory practices 30% 2 0.08 2, 4, 12, 13, 6, 11, 10, 18, 20
Parcial tests 50% 7 0.28 2, 3, 1, 4, 8, 15, 17, 14, 16, 19


The course management will be conducted through the Virtual Campus (https://cv.uab.cat/), which will be used to view materials, manage practical groups, submit assignments, view grades, communicate with professors, etc.

EVALUATION

The course consists of three parts: Theory, Problems, and Practical Work. The Theory part represents 50% of the final grade, Problems represent 20%, and Practical Work the remaining 30%. It is essential that the weighted average of the three parts is at least 5.0 to pass the course. Additionally, a minimum grade of 5.0 is required in each part to pass the course.

The dates for continuous evaluation and the submission of problems and practical work will be published on the virtual campus and may be subject to possible rescheduling due to unforeseen circumstances. These changes will always be communicated through the virtual campus as it is understood to be the usual mechanism of information exchange between professors and students.

Honors will be awarded based on calculating five percent or a fraction of the students enrolled in all teaching groups of the course. They will only be awarded to students who have obtained a final grade of 9 or higher.

The evaluation of each of the different parts of the course (Theory, Problems, and Practical Work) is detailed below:

Theory.
The evaluation of the theoretical part will be done with two intermediate tests. The date of each test and its content are indicated in the course planning sheets. The theory grade will be the average of the two theory tests, provided that the grade of each test is 5.0 or higher. The first test cannot be retaken on the day of the second test.

For each test, a place, date, and time for review will beindicated where the student can review the activity with the professor. If the student does not attend this review, the activity will not be reviewed later.

Problems.
The evaluation of the problems part will be carried out by submitting solutions to the problems published on the virtual campus.

Practical Work.
The evaluation of the practical work will be based on the work developed during the laboratory sessions and the reports written for each session.

The report for each session must detail:

Objective of the practical work
Description and approach of the practical work
Description of the procedures used at the functional level
Description of the problems encountered during the practical work and the solutions found
Conclusions drawn from the practical work
Configuration and testing details
Recovery Activities:
A final theory exam will be planned. This exam will have a part for each test, and it will be necessary to reevaluate the tests that were not passed (minimum grade of each test being 5.0 or higher).

In cases where one of the parts of the course is failed (<5.0), after the recovery process; and the final grade calculation according to the corresponding percentages is higher than 5.0, the final grade for the course will be 4.5.

Problems and practical work are not recoverable.

Plagiarism and copying.
Without prejudice to other disciplinary measures deemed appropriate, and in accordance with the current academic regulations, irregularities committed by a student that may lead to a variation of the grade in an evaluable activity will be graded with a zero (0). Evaluation activities graded in this way and by this procedure are not recoverable. If it is necessary to pass any of these evaluation activities to pass the course, this course will be failed directly, without the opportunity to recover it in the same academic year. These irregularities include, among others:

total or partial copying of a practical work, report, or any other evaluable activity;
allowing others to copy;
unauthorized use of AI (e.g., Copilot, ChatGPT, or equivalents), etc., in any evaluable activity will result in it being graded with a zero;
presenting group work not entirely done by the group members (applied to all members, not just those who did not work);
presenting as own materials prepared by a third party, even if they are translations or adaptations, and generally work with non-original and exclusive elements of the student;
having communication devices (such as mobile phones, smart watches, pens with cameras, etc.) accessible during individual theoretical-practical evaluation tests (exams);
talking to classmates during individual theoretical-practical evaluation tests (exams);
copying or attempting to copy other students during individual theoretical-practical evaluation tests (exams);
using or attempting to use written materials related to the subject during theoretical-practical evaluation tests (exams), when these have not been explicitly allowed.

If the course is not passed because one of the evaluation activities does not reach the required minimum grade, the numeric grade recorded in the transcript will be the lower value between 4.5 and the weighted average of the grades. Exceptions include that a grade of "Not Evaluated" will be given to students who do not participate in any evaluation activities, and the numeric grade recorded will be the lower value between 3.0 and the weighted average of the grades if the student has committed irregularities in an evaluation act (thus making it impossible to pass by compensation). In future editions of this course, a student who has committed irregularities in an evaluation act will not have any of the evaluation activities carried out validated. In summary: copying, allowing others to copy, or plagiarizing (or attempting to) in any of the evaluable activities results in a FAIL, not compensable and without validations of parts of the course in subsequent academic years.


Bibliography

- Dan C. Marinescu. “Cloud Computing. Theory and Practice”. Morgan-Kaufmann. 2018.

-AWS Certified Cloud Practitioner Study Guide; Ben Piper, David Clinton; Sybex (14 de junio de 2019); ISBN-10: 1119490707, ISBN-13: 978-1119490708

-The Practice of System and Network Administration: Volume 1: DevOps and other Best Practices for Enterprise IT; Thomas A. Limoncelli, Strata R. Chalup; Addison-Wesley Educational Publishers Inc; Edición: 01 (3 de septiembre de 2014); ISBN-10: 032194318X, ISBN-13: 978-0321943187

-Infrastructure as Code; Kief Morris; O'Reilly Media; 1 edition (June 17, 2016); ISBN-10: 1491924357, ISBN-13: 978-1491924358

-Cloud Computing for Science and Engineering; Ian Foster, Dennis B. Gannon; The MIT Press; Edición: 1 (27 de octubre de 2017); Colección: Scientific and Engineering Computation; ISBN-10: 9780262037242, ISBN-13: 978-0262037242

-Amazon Web Services in Action, 2E; Andreas Wittig, Michael Wittig; Manning Publications; Edición: 2nd edition (30 de septiembre de 2018); ISBN-10: 1617295116, ISBN-13: 978-1617295119

 -Microsoft Azure Essentials - Fundamentals of Azure, 2nd Ed; Michael Collier, Robin Shahan; 2016; https://download.microsoft.com/download/6/6/2/662DD05E-BAD7-46EF-9431-135F9BAE6332/9781509302963_Microsoft%20Azure%20Essentials%20Fundamentals%20of%20Azure%202nd%20ed%20pdf.pdf

-Mastering Cloud Computing : Foundations and Applications Programming. Buyya, Rajkumar;Vecchiola, Christian;y más  Elsevier Science & Technology  2013. ISBN: ISBN number:9780124114548, ISBN number:9780124095397

 -Cloud Computing : An Introduction. Chopra, Rajiv  Mercury Learning & Information  2017. ISBN: ISBN number:, ISBN number:9781683920939

 -Cloud Computing for Dummies. Hurwitz, Judith S.;Bloor, Robin;y más  John Wiley & Sons, Incorporated  2009. ISBN: ISBN number:9780470484708, ISBN number:9780470597408

 -Hybrid Cloud for Dummies. Hurwitz, Judith S.;Kaufman, Marcia;y más  John Wiley & Sons, Incorporated  2012. ISBN: ISBN number:9781118127193, ISBN number:9781118224878

 -Heroku Cloud Application Development. Hanjura, Anubhav  Packt Publishing, Limited  2014. ISBN: ISBN number:9781783550975, ISBN number:9781783550982

 -Cloud Enterprise Architecture. Raj, Pethuru  Auerbach Publishers, Incorporated  2012. ISBN: ISBN number:9781466502321, ISBN number:9781466502338

 -Moving to the Cloud. Sitaram, Dinkar ;Manjunath, Geetha  Elsevier Science & Technology Books  Elsevier Science & Technology Books   2011. ISBN: 9781597497251, 9781597497268

 -Huang, Dijiang, and Huijun Wu. Mobile Cloud Computing : Foundations and Service Models, Elsevier Science & Technology, 2017. ProQuest Ebook Central, https://ebookcentral.proquest.com/lib/uab/detail.action?docID=5043169.

-G. Coulouris, J. Dollimore and T. Kinderg, "Distributed Systems. Concepts and design ", Addison-Wesley, 5th edition, 2012


Software

Visual Studio Code

Python

Azure Cloud

AWS Cloud

Google Cloud


Language list

Name Group Language Semester Turn
(PAUL) Classroom practices 431 Catalan/Spanish first semester morning-mixed
(PAUL) Classroom practices 451 Catalan/Spanish first semester morning-mixed
(PAUL) Classroom practices 452 Catalan/Spanish first semester morning-mixed
(PLAB) Practical laboratories 431 Catalan/Spanish first semester morning-mixed
(PLAB) Practical laboratories 432 Catalan/Spanish first semester morning-mixed
(PLAB) Practical laboratories 451 Catalan/Spanish first semester morning-mixed
(PLAB) Practical laboratories 452 Catalan/Spanish first semester morning-mixed
(PLAB) Practical laboratories 453 Catalan/Spanish first semester morning-mixed
(PLAB) Practical laboratories 454 Catalan/Spanish first semester morning-mixed
(TE) Theory 430 Catalan/Spanish first semester morning-mixed
(TE) Theory 450 Catalan/Spanish first semester morning-mixed