IN5020 – Distributed Systems
Course description
Schedule, syllabus and examination date
Course content
The course is an introduction to principles and practice of the design of distributed systems. The course covers fundamental models for distributed systems, distributed middleware with the focus on object-based middleware and component-based architectures, distributed algorithms for consensus and other underlying problems, and modern-day challenges of distributed processing technology such as cloud, multimedia and IoT. The course includes mandatory programming exercises.
Learning outcome
After having completed the course you will
- understand the basic principles and concepts of distributed systems
- understand the workings of the most important types of distributed systems
- be able to program with selected software platforms for distributed processing
- have knowledge about and be able to apply important distributed algorithms
- have knowledge about standards for distributed processing
- have knowledge about key requirements and challenges for the construction of modern distributed systems
Admission to the course
Students admitted at UiO must?apply for courses?in Studentweb. Students enrolled in other Master's Degree Programmes can, on application, be admitted to the course if this is cleared by their own study programme.
If you are not already enrolled as a student at UiO, please see our information about?admission requirements and procedures for international applicants.
Recommended previous knowledge
The course is based on IN1010 – Object-oriented Programming, IN2140 – Introduction to operating systems and data communication and IN3000 – Operating Systems. It would also be advantageous to have IN2010 – Algorithms and Data Structures.
Overlapping courses
- 10 credits overlap with IN9020 – Distributed Systems.
- 10 credits overlap with INF5040 – Open distributed processing (continued).
- 10 credits overlap with INF9040 – Open distributed processing (continued).
Teaching
2 hours of lectures and 2 hours of group meetings per week. There exist mandatory programming assignments in the course. Read more about mandatory assignments and hand-ins here.
Examination
Oral exam. Mandatory assignments must be approved prior to the exam.
It will also be counted as one of?your three?attempts to sit the exam for this course, if you sit the exam for one of the following courses:?INF5040 – Open distributed processing (continued), IN9020 – Distributed Systems, INF9040 – Open distributed processing (continued)
Examination support material
No examination support material is allowed.
Language of examination
You may write your examination paper in Norwegian, Swedish, Danish or English.
Grading scale
Grades are awarded on a scale from A to F, where A is the best grade and F is a fail. Read more about the grading system.
Resit an examination
Students who can document a valid reason for absence from the regular examination are offered a postponed examination at the beginning of the next semester. Re-scheduled examinations are not offered to students who withdraw during, or did not pass the original examination.
More about examinations at UiO
- Use of sources and citations
- Special exam arrangements due to individual needs
- Withdrawal from an exam
- Illness at exams / postponed exams
- Explanation of grades and appeals
- Resitting an exam
- Cheating/attempted cheating
You will find further guides and resources at the web page on examinations at UiO.