Υποχρεωτικό Μάθημα
Course title |
Advanced Topics in Software Engineering |
||||||||||||||
Course code |
CSE 521 |
||||||||||||||
Course type |
Compulsory |
||||||||||||||
Level |
Master |
||||||||||||||
Year / Semester |
First Year / A Semester |
||||||||||||||
Teacher’s name |
Andreas Andreou |
||||||||||||||
ECTS |
7 |
Lectures / week |
3 |
Laboratories / week |
- |
||||||||||
Course purpose and objectives |
This course delves into specific areas and advanced topics of Software Engineering with emphasis on three axes:
|
||||||||||||||
Learning outcomes |
(a) summarize the key principles, problems and challenges in software development for distributed systems and cloud computing; (b) consider the DevOps approach and evaluate the benefits of using it; (c) familiarize, develop and use service software (online and offline); (d) introduce and explain distributed transaction processing and software systems that use the Blockchain (e) introduce the main concepts and principles of process mining with real-world examples; (f) identify software development through reuse, and in particular scalable systems with software components |
||||||||||||||
Prerequisites |
Undergraduate subjects in the field of Software Engineering |
Required |
- |
||||||||||||
Course content |
The course syllabus includes the following. Part A’ – Software Engineering for Distributed Systems and the Cloud Chapter 1 - Distributed Software Engineering Chapter 2 – Introduction to DevOps Chapter 3 - Software Engineering and Cloud Computing Chapter 4 - Service-oriented Software Engineering Chapter 5 - Introduction to Blockchain Part Β’ – Process Mining Chapter 6: Introduction to Process Mining Chapter 7: Process Modelling and Analysis Chapter 8: Getting the Data Part C’ – Software Reusability Chapter 9 - Software Reuse Chapter 10 - Component Based Software Engineering |
||||||||||||||
Teaching methodology |
Weekly lectures using related material slides that are prepared and made available by the instructor. Research articles for study and presentation to the class audience. |
||||||||||||||
Bibliography |
Basic:
Complementary:
Research Articles. |
||||||||||||||
Assessment |
*Provided that the project(s) is(are) successfully concluded |
Υποχρεωτικό Μάθημα
Course title |
Machine Learning Systems at Scale |
|||||||||||||
Course code |
CSE 522 |
|||||||||||||
Course type |
Compulsory |
|||||||||||||
Level |
Master |
|||||||||||||
Year / Semester |
First Year / A Semester |
|||||||||||||
Teacher’s name |
Michael Sirivianos |
|||||||||||||
ECTS |
8 |
Lectures / week |
4 |
Laboratories / week |
- |
|||||||||
Course purpose and objectives |
The course delves into the principles of designing and implementing distributed and networked operating systems for Machine Learning (ML). It emphasizes classical operating system design principles and describes the implementation of modern systems that form the backbone of big data processing and storage infrastructure in cloud computing. The course content includes the following topics: Virtual Memory, Process Management, and Inter-process Communication. The Unix operating system. Log-structured file systems. Distributed file systems. Virtual Machines. Topics covering the lifecycle of data analysis for ML, including data sourcing and preparation for ML, ML programming models, scalable model creation systems, and emerging topics such as ML system governance, explainability, and ethics (fairness, transparency, etc.). |
|||||||||||||
Learning outcomes |
By the end of the course, students will be able to:
|
|||||||||||||
Prerequisites |
Undergraduate subjects in the fields of Operating Systems, Computer Networks and Machine Learning. |
Required |
- |
|||||||||||
Course content |
Week 1: Process Management. The Unix Time Sharing System Week 2: Memory Management Week 3: File Systems. Virtual Machines: LFS, Xen Week 4: Infrastructures for Big Data (Google): Google Filesystem, Google BigTable, Google Borg Week 5: ML Lifecycle Overview Week 6: Classical ML Training at Scale: Parameter Server, XGBoost Weeks 7-8: Deep Learning Systems: TensorFlow, TVM Weeks 9-10: System-assisted Feature Engineering and Model Selection: Cerebro, MSMS Week 11: Data Sourcing and Preparation: TFDV, Snorkel Weeks 12-13: ML Deployment; Clipper Online Prediction Serving System, Federated Learning |
|||||||||||||
Teaching methodology |
Weekly lectures with presentations of research articles with slides and notes distributed by the lecturer. Oral questions on the articles and student responses in the classroom. Discussions that promote reflection and critical thought, by assigning students to write two-page summary papers. |
|||||||||||||
Bibliography |
Book slides at http://codex.cs.yale.edu/avi/os-book/OS9/slide-dir/
|
|||||||||||||
Assessment |
Note: Graduate students who have already taken the undergraduate version in a previous year must present two research articles in groups of two. Each presentation will account for 20% of the total grade. Additionally, they must submit and present, using 10 slides, a semester project involving the use, modification, and evaluation of a large-scale computational framework covered in the course. The semester project will constitute 60% of the total grade. |
Υποχρεωτικό Μάθημα
Course title |
Deep Learning I |
||||||||||||
Course code |
CSE 523 |
||||||||||||
Course type |
Compulsory |
||||||||||||
Level |
Master |
||||||||||||
Year / Semester |
First Year / A Semester |
||||||||||||
Teacher’s name |
Sotirios Chatzis |
||||||||||||
ECTS |
8 |
Lectures / week |
4 |
Laboratories / week |
- |
||||||||
Course purpose and objectives |
Deep Learning 1 is the first part of a two-course sequence on deep learning, focusing on core concepts and techniques. This module covers the foundations of Deep Learning, enabling students to understand how to build and train neural networks effectively. Students will learn about fundamental neural network architectures, the principle of representation learning, training and optimization methods, and introductory knowledge of Convolutional and Recurrent Neural Networks. By the end of the course, students will be prepared with a solid base for more advanced deep learning topics in the subsequent module (Deep Learning 2) and for leading successful machine learning projects. |
||||||||||||
Learning outcomes |
By the end of the course, students will be able to:
|
||||||||||||
Prerequisites |
Undergraduate-level knowledge in linear algebra and statistics (basic familiarity with calculus and probability is also expected). |
Required |
Yes |
||||||||||
Course content |
|
||||||||||||
Teaching methodology |
Teaching is conducted through weekly lectures and interactive discussions. During the first seven weeks, the instructor delivers lectures covering the foundational topics of deep learning as outlined above. In the remaining six weeks of the semester, students actively participate by presenting selected research papers related to these topics. Throughout the course, the instructor provides lecture slides and notes and engages students with oral questions about the material and the assigned articles. Students are expected to prepare brief summaries of the research articles before each class and to contribute to discussions. This blend of lectures, student presentations, Q&A sessions, and written summaries is designed to promote reflection, deepen understanding, and cultivate critical thinking skills in applying deep learning methods. |
||||||||||||
Bibliography |
|
||||||||||||
Assessment |
|
Υποχρεωτικό Μάθημα
Course title |
Network Science |
||||||||||||||
Course code |
CSE 524 |
||||||||||||||
Course type |
Compulsory |
||||||||||||||
Level |
Master |
||||||||||||||
Year / Semester |
First Year / A Semester |
||||||||||||||
Teacher’s name |
Fragkiskos Papadopoulos |
||||||||||||||
ECTS |
7 |
Lectures / week |
3 |
Laboratories / week |
- |
||||||||||
Course purpose and objectives |
This course focuses on the emerging science of complex networks and their applications. The aim of the course is to teach students the mathematical theory of complex networks so that the students can apply this theory to solve relevant practical problems in the fields of technology, sociology, and biology, as well as in solving complex network research problems (Internet, Online Social networks, Transportation networks, Brain networks, metabolic reaction network problems, etc.). |
||||||||||||||
Learning outcomes |
Graduate students will gain knowledge of the properties of real-world complex networks and network analysis techniques, as well as knowledge of ongoing network science research. Specifically, students are expected to gain knowledge in topics such as graph theory, random networks, small-world and scale-free networks, the Barabási-Albert model, network geometry, spreading phenomena and their analysis, statistical inference techniques for predicting network behavior, the Gephi tool for network visualization, etc. Students will be able to apply this knowledge to the analysis and design of real-world networked systems. |
||||||||||||||
Prerequisites |
Probabilities and statistics, algebra. |
Required |
- |
||||||||||||
Course content |
Graph theory, random networks, small world networks, scale-free networks, Barabási-Albert model, network geometry, network embeddings, hyperbolic geometric graphs, network navigation, statistical inference, prediction, multiplex networks, temporal networks, spreading phenomena. |
||||||||||||||
Teaching methodology |
Weekly Lectures. Each week the course instructor will present the topic in the form of a lecture presentation and group discussions will follow. The course will be a blend of presentations, problem solving activities, and group discussions. |
||||||||||||||
Bibliography |
Network Science, A.-L. Barabási, Cambridge University Press; 1 edition (August 5, 2016). |
||||||||||||||
Assessment |
|
Υποχρεωτικό Μάθημα
Course title |
Data Science |
||||||||||||
Course code |
CSE 525 |
||||||||||||
Course type |
Compulsory |
||||||||||||
Level |
Master |
||||||||||||
Year / Semester |
First Year / B Semester |
||||||||||||
Teacher’s name |
Simos Gerasimou |
||||||||||||
ECTS |
8 |
Lectures / week |
4 |
Laboratories / week |
- |
||||||||
Course purpose and objectives |
This course focuses on the key concepts and practices involved in the rigorous execution of a data science project. Students will be introduced to the data science process and lifecycles typically undertaken for the realization of a data science project. Students will also become familiar with the processes for collecting, manipulating and cleaning data, while gaining experience in assessing the quality of data. Relational databases, SQL, and other database paradigms, such as NoSQL, are covered as a way of storing and accessing data. Students will be introduced to data distributions and statistical analysis in data science, including correlation, confidence intervals and inferential statistics, and how to use them in a programming environment. Finally, students will gain experience with different machine learning problem domains (e.g., supervised, unsupervised, and reinforcement learning) and develop an appreciation of machine learning models available, in addition to ‘hands-on’ experience for designing, developing, and deploying appropriate data pipelines that integrate these models. Best approaches and ethics in data science will also be addressed. On completing this course, students will have developed a strong foundation of applications-focused knowledge and practical skills stretching across the entire data science pipeline; they will be able to design, develop, deploy, and evaluate their own data science solutions. |
||||||||||||
Learning outcomes |
By the end of the course, students will be able to:
|
||||||||||||
Prerequisites |
Undergraduate-level knowledge in Python programming (basic familiarity with statistics and probability is also expected). |
Required |
|
||||||||||
Course content |
Week 1: Introduction to data science, data science lifecycles and paradigms Week 2: Data collection, exploratory data analysis, data visualisation Week 3: Structured and unstructured data, relational databases Week 4: Database normalisation, Structured Query Lanrguage, Database APIs, NoSQL Week 5: Data processing and data integrity Week 6: Probabilities, central limit theorem, confidence intervals, covariance, correlation Week 7: Inferential statistics (parametrics and non-parametric) Week 8: Machine Learning introduction and supervised learning (regression) Week 9: Supervised learning (classification) Week 10: Unsupervised learning (clustering, dimensionality reduction) Week 11: Data science ethics, standards/laws/guidelines on data Week 12: Data science models deployment and evolution Week 13: Project presentations |
||||||||||||
Teaching methodology |
Teaching is carried out via weekly lectures, using slides, notes and references, distributed by the lecturer. The lectures will be complemented by interactive discussions that encourage reflection and critical thought and a practical component that helps students to become familiar with and develop a deeper understanding of the subject matter. |
||||||||||||
Bibliography |
|
||||||||||||
Assessment |
|
Υποχρεωτικό Μάθημα
Course title |
Scalable Data Processing Systems |
||||||||||||||||
Course code |
CSE 526 |
||||||||||||||||
Course type |
Compulsory |
||||||||||||||||
Level |
Master |
||||||||||||||||
Year / Semester |
First Year / B Semester |
||||||||||||||||
Teacher’s name |
Herodotos Herodotou |
||||||||||||||||
ECTS |
7 |
Lectures / week |
3 |
Laboratories / week |
- |
||||||||||||
Course purpose and objectives |
Learning and understanding concepts, techniques, and systems related to scalable data processing using parallel relational database systems, NoSQL systems, and dataflow systems such as MapReduce and Spark. |
||||||||||||||||
Learning outcomes |
Students will learn about the functionality of modern systems and techniques for large-scale data management processing. Students will be able to select and utilize the appropriate tools depending on the type of analysis they want to perform and the structure of the data they want to process. |
||||||||||||||||
Prerequisites |
CSE 325 - Database Systems |
Required |
- |
||||||||||||||
Course content |
The need to store and process massive amounts of data has led to the evolution of existing database systems while a new breed of data processing systems has emerged. This course covers a spectrum of topics from core techniques in relational data management to highly-scalable data processing using parallel database systems and distributed processing systems such as MapReduce and Spark. First, the course covers the basic principles in database query processing and optimization, including index structures, sort and join processing, query rewrites, and physical plan selection. Next, the course covers topics from parallel and distributed databases, including data partitioning and distributed join algorithms. Finally, the course covers scalable data processing systems and NoSQL databases (column, document, and key-value stores). The course material will be drawn from textbooks as well as recent research literature. |
||||||||||||||||
Teaching methodology |
Lectures, group discussions, lab exercises, and semester project. |
||||||||||||||||
Bibliography |
|
||||||||||||||||
Assessment |
|
Υποχρεωτικό Μάθημα
CSE 527 Research Methods in Computer and Informatics Engineering (7 ECTS)
Course title |
Research Methods in Computer Science and Engineering |
||||||||||||||
Course code |
CSE 527 |
||||||||||||||
Course type |
Compulsory |
||||||||||||||
Level |
Master |
||||||||||||||
Year / Semester |
First Year / B Semester |
||||||||||||||
Teacher’s name |
* Will be taught by Special Scientist |
||||||||||||||
ECTS |
7 |
Lectures / week |
3 |
Laboratories / week |
- |
||||||||||
Course purpose and objectives |
The purpose of the course is to equip students with the knowledge and skills necessary to conduct research in a structured and methodologically sound way. Students will explore the nature and role of research in technological development, innovation, education, and the UN Sustainable Development Goals (SDGs), and how research can be effectively applied in these contexts. They will learn to search for and critically assess scientific information using digital tools and online databases, while observing principles of academic integrity and intellectual property. The course will also familiarize students with the evaluation of scientific publications and the use of research impact metrics. It aims to prepare students to conduct research at an internationally competitive level, with attention to risk and project management, financial oversight, and effective communication of results through reports and scientific publications. Students will also gain experience in preparing research proposals and writing scientific articles for conferences, journals, and workshops, as well as in the development of high-quality master’s or doctoral theses. Other key topics include intellectual property rights (IPR), data protection (GDPR), and research diplomacy (Science/Cultural Diplomacy). Emphasis will be placed on understanding how science and cultural heritage can support international collaboration and policy development. Students will be introduced to the concept of scientific and cultural diplomacy as a tool for advancing research agendas, institutional objectives, and national or international interests. Where possible, students may attend guest lectures or seminars delivered by academic staff or invited experts. |
||||||||||||||
Learning outcomes |
By the end of the course, students will be able to demonstrate the following:
Skills and Competencies
|
||||||||||||||
Prerequisites |
- |
Required |
- |
||||||||||||
Course content |
The course is structured around five modules, each addressing key aspects of research practice and methodology in computer and informatics engineering. The modules are organized to guide students progressively from foundational concepts to the effective communication of research work. ·Module 1: Research Basics
·Module 2: Library Tools and Literature Search
·Module 3: Literature Review
·Module 4: Data
·Module 5: Writing Up Your Work
|
||||||||||||||
Teaching methodology |
The course will be delivered through a combination of lectures and supervision sessions with academic advisors. Lectures will cover the core topics defined in the course modules, providing both theoretical foundations and practical guidance on research methodology, scientific writing, data handling, and time management. In addition to these sessions, students will attend presentations by library personel, who will demonstrate the use of digital bibliographic tools and academic databases for conducting literature searches and accessing scientific information. This will help students develop effective information retrieval skills using modern research infrastructure and technologies. Where feasible, students will also have the opportunity to attend seminars given by invited speakers or academic personnel from other units of the university. These sessions aim to broaden students’ understanding of research practices and highlight interdisciplinary perspectives. |
||||||||||||||
Bibliography |
|
||||||||||||||
Assessment |
|
Υποχρεωτικό Μάθημα
Course title |
Deep Learning II |
||||||||||||
Course code |
CSE 528 |
||||||||||||
Course type |
Compulsory |
||||||||||||
Level |
Master |
||||||||||||
Year / Semester |
First Year / B Semester |
||||||||||||
Teacher’s name |
Sotirios Chatzis |
||||||||||||
ECTS |
8 |
Lectures / week |
4 |
Laboratories / week |
- |
||||||||
Course purpose and objectives |
Deep Learning 2 is the second part of the deep learning series, concentrating on advanced topics and state-of-the-art techniques in the field. Building on the foundation from Deep Learning 1, this module introduces students to cutting-edge neural network architectures and methodologies. Students will explore modern developments such as transformer models and self-attention mechanisms, diffusion-based generative models, and other advanced generative architectures. The course also covers sophisticated regularization and optimization strategies, approaches for training large-scale models, and examines current state-of-the-art applications of deep learning in industry and research. The objective is to enable students to understand and apply these advanced techniques, preparing them to tackle contemporary research problems and to design innovative deep learning solutions. |
||||||||||||
Learning outcomes |
By the end of the course, students will be able to:
|
||||||||||||
Prerequisites |
Deep Learning I (or equivalent foundational course in deep neural networks), or a solid understanding of neural network basics, training methods, and CNN/RNN architectures. |
Required |
Yes |
||||||||||
Course content |
|
||||||||||||
Teaching methodology |
As with Deep Learning 1, this course is delivered through weekly lectures and interactive sessions. In approximately the first seven weeks, the instructor presents advanced deep learning topics through lectures. In the final six weeks, students take the lead by presenting selected recent research papers that correspond to the advanced topics covered. The instructor provides detailed slides, notes, and references for each lecture, and regularly poses oral questions about both the lecture content and the research articles to ensure active student engagement. Students are expected to write and submit short summaries of the assigned research papers before classes and to actively participate in discussions during class. This format, combining instructor-led lectures with student presentations and Q&A discussions, encourages deeper inquiry into the material and helps students develop critical analysis skills and confidence in discussing current research in deep learning. |
||||||||||||
Bibliography |
|
||||||||||||
Assessment |
|
Υποχρεωτικό Μάθημα
Course title |
Security and Privacy in AI & Data Systems |
||||||||||||||||
Course code |
CSE 529 |
||||||||||||||||
Course type |
Compulsory |
||||||||||||||||
Level |
Master |
||||||||||||||||
Year / Semester |
First Year / B Semester |
||||||||||||||||
Teacher’s name |
Panagiotis Ilia |
||||||||||||||||
ECTS |
7 |
Lectures / week |
3 |
Laboratories / week |
- |
||||||||||||
Course purpose and objectives |
This course focuses on the security and privacy aspects encountered during the design, implementation, and deployment of intelligent and data systems. It aims to provide students with a clear understanding of how security and privacy risks arise within AI/ML and data-driven environments, and how these risks can be addressed through appropriate architectural and design strategies. Students will develop the ability to identify and assess vulnerabilities, model potential threats, and reason critically about privacy-conscious and security-informed design decisions, with particular emphasis on risks such as data leakage, model inversion, and adversarial manipulation. The course builds on foundational concepts such as data integrity, authentication, access control, and threat modeling, applying them to the analysis and design of trustworthy data and AI systems. It examines privacy-enhancing methods including anonymisation, differential privacy, and federated learning, with attention to their assumptions, limitations, and design trade-offs. Security and privacy concerns are addressed across multiple layers of modern infrastructures, including data pipelines, web-based platforms, and AI/ML workflows. Topics such as tracking, fingerprinting, data poisoning, membership inference, and client-side vulnerabilities are discussed, alongside system-level principles like defense-in-depth and input sanitization. The course also introduces secure multiparty computation as a conceptual extension of privacy-by-design, and considers how architectural decisions impact system resilience, transparency, and alignment with privacy expectations and regulatory frameworks such as the GDPR. |
||||||||||||||||
Learning outcomes |
By the end of the course, students will be able to:
|
||||||||||||||||
Prerequisites |
CSE 423 - Introduction to Cryptography and Computer Security |
Required |
- |
||||||||||||||
Course content |
The course content is organized into five core modules, each covering a distinct set of technical areas and concepts.
|
||||||||||||||||
Teaching methodology |
The course will be delivered through weekly lectures given by the instructor, using material specifically prepared for this course along with selected complementary resources. Lectures will cover the topics outlined in the five course modules, introducing students to relevant concepts, techniques, and design considerations. Each lecture will also include guided discussions and questions designed to encourage active participation and deepen students’ understanding of the presented concepts. After each lecture, students will be expected to prepare a short written summary of the material covered. A short discussion based on these summaries will take place at the beginning of the following lecture, to reinforce understanding and provide an opportunity for clarification and reflection. In the final two weeks of the course, students will select and critically review a research paper from a curated list of papers related to the course topics. Each student will present their chosen paper and lead a short discussion session, with emphasis on identifying key contributions, limitations, and connections to the topics covered throughout the course. This activity will introduce students to current research work and help them build skills in analysis, critical reflection, and technical communication, while also encouraging them to draw connections across topics, assess the relevance of academic work to real-world challenges, and articulate informed perspectives on emerging issues in the field. |
||||||||||||||||
Bibliography |
No single textbook covers all topics addressed in this course. Students are expected to consult selected chapters from the following recommended books, as relevant to each module:
|
||||||||||||||||
Assessment |
|
30 Arch. Kyprianos Str.
3036 Limassol
2500 2750
Copyright © 2025 CYPRUS UNIVERSITY OF TECHNOLOGY
Required cookies
Analytics cookies
Required cookies
Analytics cookies