Study-Unit Description

Study-Unit Description


CODE CIS5217

 
TITLE Distributed Computing and Decentralised Systems

 
UM LEVEL 05 - Postgraduate Modular Diploma or Degree Course

 
MQF LEVEL 7

 
ECTS CREDITS 5

 
DEPARTMENT Computer Information Systems

 
DESCRIPTION This study-unit consists of two parts.

Part I focuses on the software development of Client-Server distributed applications whose subsystems execute on separate servers so as to distribute computational load. Part II, on the other hand focuses on decentralised computing models and distributed algorithms based on message passing.

Part I
This part deals with development of Client and Server applications using current technologies supporting distributed N-tier architecture systems and applying object oriented approach.
Topics covered include: N-Tier architecture, database connectivity with distributed business logic tier, design, development and deployment of Server applications and development of different types of Client applications (GUI, Web based).

Part II
The topics covered include: message passing models (channels, mailboxes, pub-sub, actors etc.) and formalisms (process calculus) for distributed systems, event ordering and logical clocks (Lamport, vector clocks), impossibility results (FLP, CAP), consensus algorithms (PAXOS), and consistency models (strong, weak, eventual).

Study-unit Aims:

At both theoretical and practical level the study unit aims to:
- build–up knowledge on current technologies to improve selection and adoption for use in different application development scenarios.
- expose students to the software development of distributed applications using current technologies.
- highlight features of current technologies used in distributed N-Tier architecture applications.
- expose students to the intricacies of synchronisation and coordination in distributed systems.
- provide an overview of techniques for communication and coordination in distributed systems.
- provide an overview of formalisms used to specify distributed systems.
- outline the limits of what is possible in a distributed system.

Learning Outcomes:

1. Knowledge & Understanding:

By the end of the study-unit the student will be able to:
- compare and contrast different technologies for development of distributed Client-Server applications.
- know and understand concept of database connectivity with the distributed applications.
- set-up and test database connectivity with a distributed business logic layer.
- choose the right technology for the development of a particular distributed application.
- appreciate the challenges and limitations in distributed computing.
- understand a selection of fundamental distributed algorithms.

2. Skills:

By the end of the study-unit the student will be able to:
- design, implement and deploy application software using the current technologies for distributed systems.
- set-up and test a database connectivity with business logic layer of distributed system.
- apply the correct testing approach for distributed applications.

Main Text/s and any supplementary readings:

Goncalves, A. Beginning Java EE 6 Platform with GlassFish 3,2010, Apress. (ISBN 978-1-4302-1954-5)

Richardson L. & Ruby S. RESTful Web Services, 2008, O'Reilly Media. (ISBN 978-0596529260)

w3schools.com

Orfali R. & Harkey D. Client/Server Programming with Java and CORBA, 1998, Wiley. (ISBN: 047124578X)

IEEE Transactions on Software Engineering.

IEEE Transactions on Services Computing.

A number of academic and most cited papers are to be followed by students.

Raynal M. Distributed Algorithms for Message-Passing Systems. 2013 Springer-Verlag.

 
RULES/CONDITIONS Before TAKING THIS UNIT YOU ARE ADVISED TO TAKE CIS2101 OR ( TAKE CPS1012 AND TAKE CPS2008 )

 
ADDITIONAL NOTES Pre-requisite Qualification: Object Oriented Programming Java/C# and databases, Operating System and System Programing

 
STUDY-UNIT TYPE Lectures, Practicum & Project

 
METHOD OF ASSESSMENT
Assessment Component/s Sept. Asst Session Weighting
Assignment Yes 25%
Examination (2 Hours) Yes 75%

 
LECTURER/S

 

 
The University makes every effort to ensure that the published Courses Plans, Programmes of Study and Study-Unit information are complete and up-to-date at the time of publication. The University reserves the right to make changes in case errors are detected after publication.
The availability of optional units may be subject to timetabling constraints.
Units not attracting a sufficient number of registrations may be withdrawn without notice.
It should be noted that all the information in the description above applies to study-units available during the academic year 2025/6. It may be subject to change in subsequent years.

https://www.um.edu.mt/course/studyunit