1. Course Title | Distributed and Cloud Systems | |||||||
2. Code | 4ФЕИТ07Л003 | |||||||
3. Study program | КТИ | |||||||
4. Organizer of the study program (unit, institute, department) | Faculty of Electrical Engineering and Information Technologies | |||||||
5. Degree (first, second, third cycle) | First cycle | |||||||
6. Academic year/semester | IV/8 | 7. Number of ECTS credits | 6 | |||||
8. Lecturer | D-r Marija Kalendar | |||||||
9. Course Prerequisites | Passed: Operating Systems | |||||||
10. Course Goals (acquired competencies): Introduction to the concepts of distributed systems and communication between remote processes, distributed architectures and distributed file systems, as well as cloud-based systems. Upon completion of the course students will have competences to: know and use concepts of distributed systems; to know and use concepts of RPC and RMI in a distributed environment; know and use distributed file systems; to work with complete systems in a distributed environment; to know concepts and elements for cloud systems; to know and use the various services of cloud systems (SasS, PasS, IasS); to know and use cloud systems’ storage environment, cloud systems and virtual machines environment, cloud network environment and other services from cloud platforms; to practically use cloud platforms for design and implementation of computer systems. |
||||||||
11. Course Syllabus: Introduction. Features of distributed and cloud systems. DS models. Concepts of communication between remote processes. Sockets. TCP and UDP sockets. Concepts of remote invocation. Request-reply protocols. Publish and subscribe systems. Remote Procedure Calls (RPC). Remote Method Invocation (RMI). High availability clusters and systems. Modern distributed and cloud mechanisms and architectures (Google, Amazon, Azure and other cloud platforms). Services and applications in the cloud. Service quality metrics. Service oriented architectures. Cloud security. Hadoop architecture. Map Reduce. Distributed file systems. Practical examples of distributed file systems. NFS. Google GFS. Hadoop HDFS. | ||||||||
12. Learning methods: Lectures, Auditory and Laboratory exercises. Practical work and projects. | ||||||||
13. Total number of course hours | 2 + 2 + 1 + 0 | |||||||
14. Distribution of course hours | 180 | |||||||
15. Forms of teaching | 15.1. Lectures-theoretical teaching | 30 | ||||||
15.2. Exercises (laboratory, practice classes), seminars, teamwork | 45 | |||||||
16. Other course activities | 16.1. Projects, seminar papers | 50 | ||||||
16.2. Individual tasks | 10 | |||||||
16.3. Homework and self-learning | 45 | |||||||
17. Grading | 17.1. Exams | 0 | ||||||
17.2. Seminar work/project (presentation: written and oral) | 50 | |||||||
17.3. Activity and participation | 10 | |||||||
17.4. Final exam | 40 | |||||||
18. Grading criteria (points) | up to 50 points | 5 (five) (F) | ||||||
from 51to 60 points | 6 (six) (E) | |||||||
from 61to 70 points | 7 (seven) (D) | |||||||
from 71to 80 points | 8 (eight) (C) | |||||||
from 81to 90 points | 9 (nine) (B) | |||||||
from 91to 100 points | 10 (ten) (A) | |||||||
19. Conditions for acquiring teacher’s signature and for taking final exam | Laboratory exercises | |||||||
20. Forms of assessment | The exam consists of two parts (Can be completed as two partial exams): First partial exam – theoretical part: Test questions and problems (70 min) and Second partial exam – practical part: Finishing a practical team project. The use of books, scripts, manuscripts or notes is partially allowed during the exam, but the use of calculators, mobile phones, tablets or any other electronic devices is not allowed. |
|||||||
21. Language | Macedonian and English | |||||||
22. Method of monitoring of teaching quality | Internal evaluation and surveys | |||||||
23. Literature | ||||||||
23.1. Required Literature | ||||||||
No. | Author | Title | Publisher | Year | ||||
1 | G. Coulouris, J. Dollimore, T. Kindberg, G. Blair | Distributed Systems: Concepts and Design, 5th Ed. | Addison Wesley/Pearson | 2011 | ||||
2 | M. Van Steen, Tanenbaum A.S. | Distributed Systems: Principles and Paradigms, 3rd Ed. | CreateSpace Independent Publishing Platform | 2017 | ||||
3 | Kai Hwang, Jack Dongarra, Geoffrey C. Fox | Distributed and Cloud Computing: From Parallel Processing to the Internet of Things | Morgan Kaufmann | 2011 | ||||
23.2. Additional Literature | ||||||||
No. | Author | Title | Publisher | Year | ||||
1 | Sukumar Ghosh | Distributed Systems: An Algorithmic Approach, 2nd Ed. | Chapman and Hall/CRC | 2015 | ||||
2 | T. Erl, R. Puttini, Z. Mahmood, | Cloud Computing: Concepts, Technology & Architecture | Prentice-Hall, | 2013 | ||||
3 | Dan C. Marinescu | Cloud Computing: Theory and Practice 2nd Ed. | Morgan Kaufmann | 2017 |