Distributed Systems and Web Technologies (DSWT)
DSWT Courses

Distributed Systems and Web Technologies (DSWT) Courses

The “Distributed Systems and Web Technologies” Master’s program encompasses a wide range of courses that cover both foundational and advanced topics.

1st Year

Mandatory (DI)

Cloud computing

Course organizer:

Alexandrescu Adrian, Butincu Cristian-Nicolae

This course provides in-depth knowledge of Cloud Computing, covering key topics such as Cloud architecture, service models, and architectural aspects. Participants will learn about Cloud storage systems and gain practical skills in Cloud application development. Topics also include Cloud infrastructure, resource management, and serverless applications. Additionally, the course covers notification services, virtualization, and open-source solutions like OpenStack and OpenShift with Docker and Kubernetes. Students will explore storage systems, databases, and Cloud security, providing a comprehensive understanding of the Cloud computing landscape.

L (lecture) - 1 H

L (lecture) - 1 H

LB (laboratory works) - 2 H

Cyber-security

Course organizer:

Zaharia Mihai-Horia

The "Cyber Security" course focuses on aligning objectives with curricula to cultivate practical skills in the realm of cybersecurity, emphasizing cryptographic foundations and the implementation of security measures at the system level. Students will gain advanced knowledge of computer science and information technology, enabling them to work effectively with these concepts. The curriculum includes the application of advanced methods for analysing, modelling, and simulating distributed systems, as well as designing, implementing, and testing distributed and high-performance service-oriented web applications. Students will learn to ensure contextual integration and integrity in distributed software systems while adhering to legislation and professional ethics codes. The course also covers intellectual property rights and offers strategies for continuous learning and self-development. Topics encompass Feistel class ciphers, stream ciphers, digital signatures, cryptosystems, organizational security auditing, e-commerce, communication network security, and the implementation and testing of security-based design patterns and cryptography.

L (lecture) - 2 H

L (lecture) - 2 H

LB (laboratory works) - 1 H

Ethics and integrity

Course organizer:

Dosoftei Constantin-Catalin

The "Ethics and Integrity" course is a comprehensive exploration of ethical principles within academic and professional contexts. It equips master's students with a deep understanding of ethics, focusing on personal, social, and professional development. Students learn specific IT-related ethical concepts, skills for interpreting and adhering to ethical codes, and techniques for research article and thesis writing. The course also enhances analytical and critical thinking abilities. Ultimately, it prepares students for ethical challenges in their careers, promoting competence, fairness, and a commitment to integrity in their professional journey.

L (lecture) - 1 H

L (lecture) - 1 H

LB (laboratory works) - 0 H

Fundamentals of distributed processing

Course organizer:

Butincu Cristian-Nicolae

This course provides an overview of Distributed Processing fundamentals in the field of computer science. Participants will gain a holistic understanding of distributed computing systems, including taxonomy and models. They will explore topics such as clusters, grids, and cloud systems, delving into communication within distributed systems, leader selection, mutual exclusion, clock synchronization, global state, transaction atomicity, fault tolerance, routing, and load balancing. Additionally, students will become familiar with distributed programming techniques and develop the capability to design, implement, and test distributed algorithms.

L (lecture) - 2 H

L (lecture) - 2 H

LB (laboratory works) - 1 H

Performance and reliability in complex systems

Course organizer:

Hulea Mircea

The "Performance and Reliability in Complex Systems" course explores reliability and security concepts, focusing on performance evaluation methods and techniques for enhancing operational safety in distributed systems characterized by gradual performance degradation. Students will grasp the methods for evaluating the reliability and security of complex systems, whether fixed or reconfigurable, and the strategies to bolster operational safety. The course introduces analytical tools like Markov models for assessing redundant system reliability and utilizes Petri net modelling for distributed system interactions. It also delves into RAID-type structures for data safety. Students will study the reliability and availability of communication networks with performance degradation and learn Monte Carlo simulation for large-scale distributed systems, enabling them to evaluate the reliability of complex programs in diverse contexts.

L (lecture) - 2 H

L (lecture) - 2 H

LB (laboratory works) - 2 H

Scientific research and practice (sem.1)

Course organizer:

-

*

L (lecture) - 0 H

L (lecture) - 0 H

LB (laboratory works) - 0 H

Scientific research and practice (sem.2)

Course organizer:

-

*

L (lecture) - 0 H

L (lecture) - 0 H

LB (laboratory works) - 0 H

Web technologies and languages

Course organizer:

Aflori Cristian

The “Web Technologies and Languages” course provides a comprehensive exploration of the web technologies and frameworks essential for building distributed and responsive web applications. Students will acquire practical proficiency in the Java EE framework, gaining insights into various web patterns and architectures. The curriculum covers both server-side and client-side technologies, emphasizing the development of well-rounded skills. Topics include web application architectures, Java Enterprise Edition components like Servlets and JSP, web patterns like MVC (Model-View-Controller), and web-responsive languages and technologies such as HTML5, JavaScript, and Ajax. Students will also study real-world examples of web applications built using various technologies, preparing them for the dynamic field of web development.

L (lecture) - 2 H

L (lecture) - 2 H

LB (laboratory works) - 2 H

1st Year

Elective (DO)

Big data techniques

Course organizer:

Gavrilescu Marius, Archip Alexandru

The “Big Data Techniques” course is designed to provide students with the skills and knowledge needed to develop applications and techniques for the processing of large-scale data sets. The course covers a wide array of topics, including MapReduce techniques, data acquisition and retrieval, algorithm design for big data processing, pattern identification, statistical data processing and data analytics. Additional related areas of interest covered by the course are data compression, clustering and classification methods, stream processing, and big data visualization.

L (lecture) - 2 H

L (lecture) - 2 H

LB (laboratory works) - 2 H

Computer vision

Course organizer:

Manta Vasile

*

L (lecture) - 2 H

L (lecture) - 2 H

LB (laboratory works) - 1 H

Design of human-computer interaction system

Course organizer:

Lupu Robert

*

L (lecture) - 1 H

L (lecture) - 1 H

LB (laboratory works) - 2 H

Internet of things

Course organizer:

Botezatu Nicolae, Archip Alexandru

*

L (lecture) - 2 H

L (lecture) - 2 H

LB (laboratory works) - 2 H

Network service management

Course organizer:

Amarandei Cristian-Mihai

The "Network Service Management" course is designed to equip participants with the knowledge and practical skills required for configuring, monitoring, and managing network services. This course provides a comprehensive introduction to Linux operating system internals, including its organization, functionality, and application installation procedures. It covers essential techniques for configuring, monitoring, and administering both basic and network services on Linux systems. Additionally, the course introduces key concepts related to network and system security, as well as backup policies. Participants will gain expertise in Linux system installation and configuration, file systems, system services, Linux kernel, and Linux system security.

L (lecture) - 1 H

L (lecture) - 1 H

LB (laboratory works) - 2 H

Service-oriented programming for embedded systems

Course organizer:

-

*

L (lecture) - 2 H

L (lecture) - 2 H

LB (laboratory works) - 1 H

2nd Year

Mandatory (DI)

Development of the dissertation thesis

Course organizer:

-

*

L (lecture) - 0 H

L (lecture) - 0 H

LB (laboratory works) - 0 H

General purpose GPU programing

Course organizer:

Caraiman Simona

*

L (lecture) - 1 H

L (lecture) - 1 H

LB (laboratory works) - 1 H

High performance computing

Course organizer:

Butincu Cristian-Nicolae

The “High Performance Computing” course offers an in-depth exploration of the field, beginning with an introduction to the fundamentals of high-performance computing (HPC). Students will become familiar with specialized programming techniques unique to HPC and develop the ability to design, implement, and rigorously test high-performance computing algorithms. The course focuses on parallel and distributed programming, enabling students to acquire essential skills in these areas. Topics include advanced MPI programming techniques, advanced OpenMP programming techniques, multi-CPU and cluster computing, as well as the application of graph optimization algorithms (e.g., minimum spanning trees, optimal paths) and nature-inspired optimization algorithms (such as ACO-TSP and parallel genetic algorithms).

L (lecture) - 1 H

L (lecture) - 1 H

LB (laboratory works) - 1 H

Multiagent systems

Course organizer:

Leon Florin

The “Multiagent Systems” course offers a broad exploration of knowledge and practical applications specific to multiagent systems. This course delves into the fundamental concepts of multiagent systems, focusing on how agents interact, cooperate, and coordinate to solve problems in distributed environments. Students will gain insights into various agent architectures, including logic-based, reactive, belief-desire-intentions (BDI), and layered architectures. Topics cover modelling agent rationality with game theory, inter-agent communication, search algorithms tailored for multiagent systems, and mechanisms such as auctions, voting, bargaining, and contract net protocols. The course also addresses coordination methods, learning within multiagent systems, and introduces students to multiagent development frameworks.

L (lecture) - 2 H

L (lecture) - 2 H

LB (laboratory works) - 1 H

Multidisciplinary project

Course organizer:

-

*

L (lecture) - 0 H

L (lecture) - 0 H

LB (laboratory works) - 0 H

Scientific research and practice (sem. 3)

Course organizer:

-

*

L (lecture) - 0 H

L (lecture) - 0 H

LB (laboratory works) - 0 H

Scientific research and practice (sem.4)

Course organizer:

-

*

L (lecture) - 0 H

L (lecture) - 0 H

LB (laboratory works) - 0 H

2nd Year

Elective (DO)

Cloud computing 2

Course organizer:

-

*

L (lecture) - 1 H

L (lecture) - 1 H

LB (laboratory works) - 1 H

Design paradigms for distributed applications

Course organizer:

Butincu Cristian-Nicolae

The “Design Paradigms for Distributed Applications” course acquaints students with distributed application design models and the use of design patterns to develop high-performance, scalable, and maintainable software components. Students will gain knowledge of distributed application design patterns, architectural aspects of enterprise distributed platforms, and mechanisms for load balancing, fail-over, and resource replication within distributed applications. The course covers layered architectures in enterprise distributed applications, identifies common anti-patterns, and explores recent research in distributed application design. Students will develop the capability to modularize and independently design components of distributed applications, as well as design, implement, and test distributed applications.

L (lecture) - 2 H

L (lecture) - 2 H

LB (laboratory works) - 2 H

Introduction to quantum computing

Course organizer:

Caraiman Simona

*

L (lecture) - 1 H

L (lecture) - 1 H

LB (laboratory works) - 1 H

Web security

Course organizer:

Alexandrescu Adrian

*

L (lecture) - 2 H

L (lecture) - 2 H

LB (laboratory works) - 2 H

Structure of the Academic Year 2023– 2024

Bachelor and Master Studies, Full Time Studies

DATE

PERIOD

ACTIVITY

25.09.2023–01.10.2023

7 days

Accommodation of students

02.10.2023

The Official Opening of the Academic Year

1st SEMESTER

02.10.2023-22.12.2023

12 Weeks

Didactic Activity

23.12.2023-07.01.2024

2 Weeks

Christmas Holiday

08.01.2024- 21.01.2024

2 Weeks

Didactic Activity

22.01.2024-11.02.2024

3 Weeks

Examination Period

12.02.2024-18.02.2024

1 Week

Winter Holiday

2nd SEMESTER

19.02.2024-02.05.2024

11 Weeks

Didactic Activity

03.05.2024-12.05.2024

1 Week

Easter Holiday

07.05.2024

Free Day For Students (to be recovered on Saturday 25.05.2024)

13.05.2024-02.06.2024

3 Weeks

Didactic Activity

03.06.2024-23.06.2024

3 Weeks

Examination Period

02.09.2024-15.09.2024

2 Weeks

Reexamination Period

17 and 18.09.2024

2 Days

Re examinations

2nd SEMESTER for the final year of study (bachelor + master)

19.02.2024-02.06.2024

14 + 1 Weeks

Re Didactic Activity and Easter Holiday According To The Previous Calendar

03.06.2024-16.06.2024

2 Weeks

Examination period

17.06.2024-20.06.2024

4 days

Reexamination period

27.06.2024-07.07.2024

11 days

Period for preparing the final thesis

Legal and Religious Holidays:
30.11.2023, 01.12.2023, 25.12.2023 , 26.12.2023, 01.01.2024. 02.01.2024, 24.01.2024 01.05.2024, 03.05.2024, 06.05.2024, 01.06.2024, 24.06.2024, 15.08 2024.


Practical Activities (3 -6 Weeks)
will be scheduled either during the entire academic Year