EPOKA UNIVERSITY
FACULTY OF ARCHITECTURE AND ENGINEERING
DEPARTMENT OF COMPUTER ENGINEERING
COURSE SYLLABUS
COURSE INFORMATIONCourse Title: DISTRIBUTED SYSTEMS |
Code | Course Type | Regular Semester | Theory | Practice | Lab | Credits | ECTS |
---|---|---|---|---|---|---|---|
CEN 370 | B | 5 | 3 | 0 | 0 | 3 | 6 |
Academic staff member responsible for the design of the course syllabus (name, surname, academic title/scientific degree, email address and signature) | NA |
Lecturer (name, surname, academic title/scientific degree, email address and signature) and Office Hours: | Dimitrios Karras , 13.00-18.00, Wednesday, Thursday 10.00-13.00 |
Second Lecturer(s) (name, surname, academic title/scientific degree, email address and signature) and Office Hours: | NA |
Teaching Assistant(s) and Office Hours: | NA |
Language: | English |
Compulsory/Elective: | Elective |
Classroom and Meeting Time: | 8.45-10.30, Tuesday and Wednesday |
Course Description: | - |
Course Objectives: | I) To Explore prevalent issues in designing and implementing distributed systems and learn how to deal with the shared state between separate system processes. Evaluate the challenges and solutions that come into play when an application consists of two or more processes that do not share a common address space. Also, elaboration on issues of security, distributed shared memory and more, synchronization and concurrency programming and model checking in depth. Design of multi-tier applications and multithreading. II) Topics include: Replication and consistency, Transactions,agreement and reconciliation, Structuring of distributed systems, Directories and naming, Accounts and authentication, Distributed storage systems, Concurrency programming and model checking in depth, messaging systems, Synchronization and deadlock avoidance issues, Design of multi-tier applications and Future directions and issues |
COURSE OUTLINE
|
Week | Topics |
1 | Introduction to distributed systems fundamentals |
2 | Architectures |
3 | Processes and Deadlocks, Scheduling algorithms |
4 | Communication and Messaging Systems, Multi-tier Applications |
5 | Naming and IP subnetting/supernetting |
6 | Coordination and Synchronization, multithreading applications |
7 | Consistency and replication |
8 | Fault tolerance |
9 | Security |
10 | DISTRIBUTED OBJECTS AND COMPONENTS, WEB SERVICES and Multimedia Distributed Systems |
11 | PEER-TO-PEER SYSTEMS |
12 | TRANSACTIONS AND CONCURRENCY CONTROL, Concurrency Programming |
13 | Model Checking for Concurrency Programming |
14 | Applications of the above in the design of multithreading and distributed storage applications |
Prerequisite(s): | Introduction to Computer Networking AND object-oriented programming techniques and issues |
Textbook: | I) Maarten van Steen Andrew S. Tanenbaum "Distributed Systems" Third edition Version 3.01 (2017) II) Coulouris, Dollimore, Kindberg and Blair "Distributed Systems: Concepts and Design," Edition 5, © Addison-Wesley 2012 |
Other References: | |
Laboratory Work: | Lab projects |
Computer Usage: | |
Others: | No |
COURSE LEARNING OUTCOMES
|
1 | to understand Transactions,agreement and reconciliation in distributed systems, the Structuring and architectures of distributed systems, the Directories and naming methodologies, the Accounts and authentication in distributed systems |
2 | To understand Distributed storage systems |
3 | To understand Concurrency programming and issues of model checking |
4 | To understand messaging systems and protocols |
5 | To learn about Synchronization and deadlock avoidance issues |
6 | To be able to Design multi-tier applications and multithreading applications |
7 | To be able to perform model checking in concurrency programming in an introductory level |
COURSE CONTRIBUTION TO... PROGRAM COMPETENCIES
(Blank : no contribution, 1: least contribution ... 5: highest contribution) |
No | Program Competencies | Cont. |
Bachelor in Computer Engineering (3 years) Program | ||
1 | Engineering graduates with sufficient theoretical and practical background for a successful profession and with application skills of fundamental scientific knowledge in the engineering practice. | 5 |
2 | Engineering graduates with skills and professional background in describing, formulating, modeling and analyzing the engineering problem, with a consideration for appropriate analytical solutions in all necessary situations | 5 |
3 | Engineering graduates with the necessary technical, academic and practical knowledge and application confidence in the design and assessment of machines or mechanical systems or industrial processes with considerations of productivity, feasibility and environmental and social aspects. | 5 |
4 | Engineering graduates with the practice of selecting and using appropriate technical and engineering tools in engineering problems, and ability of effective usage of information science technologies. | 5 |
5 | Ability of designing and conducting experiments, conduction data acquisition and analysis and making conclusions. | 5 |
6 | Ability of identifying the potential resources for information or knowledge regarding a given engineering issue. | 5 |
7 | The abilities and performance to participate multi-disciplinary groups together with the effective oral and official communication skills and personal confidence. | 5 |
8 | Ability for effective oral and official communication skills in foreign language. | 5 |
9 | Engineering graduates with motivation to life-long learning and having known significance of continuous education beyond undergraduate studies for science and technology. | 5 |
10 | Engineering graduates with well-structured responsibilities in profession and ethics. | 5 |
11 | Engineering graduates who are aware of the importance of safety and healthiness in the project management, workshop environment as well as related legal issues. | 5 |
12 | Consciousness for the results and effects of engineering solutions on the society and universe, awareness for the developmental considerations with contemporary problems of humanity. | 5 |
COURSE EVALUATION METHOD
|
Method | Quantity | Percentage |
Midterm Exam(s) |
1
|
30
|
Project |
1
|
20
|
Quiz |
1
|
10
|
Lab/Practical Exams(s) |
1
|
0
|
Final Exam |
1
|
40
|
Total Percent: | 100% |
ECTS (ALLOCATED BASED ON STUDENT WORKLOAD)
|
Activities | Quantity | Duration(Hours) | Total Workload(Hours) |
Course Duration (Including the exam week: 16x Total course hours) | 16 | 2 | 32 |
Hours for off-the-classroom study (Pre-study, practice) | 16 | 2 | 32 |
Mid-terms | 1 | 3 | 3 |
Assignments | 5 | 16 | 80 |
Final examination | 1 | 3 | 3 |
Other | 0 | ||
Total Work Load:
|
150 | ||
Total Work Load/25(h):
|
6 | ||
ECTS Credit of the Course:
|
6 |