Programme: |
Computer Sciences (2026/2027) |
Double Degree (Between South East European University (SEEU), Republic of North Macedonia and Offenburg University of Applied Sciences (HSO), Germany) |
|
| Study Cycle: | Second Cycle (Postgraduate) |
| Faculty: | Contemporary Sciences and Technologies |
| Programme Code: | CS-90 |
| Academic year: | 2023 / 2024 |
| Title: | Master in Computer Sciences |
| ECTS: | 90 |
| Decision: |
The introduction of this study programme is based on the strategic academic cooperation between South EastEuropean University (SEEU), North Macedonia, and Offenburg University of Applied Sciences (HSO), Germany,formalised through a Double Degree Cooperation Agreement. The programme has been jointly developed tocombine the academic strengths, educational resources, research capacities, and international expertise of bothinstitutions, offering students the opportunity to pursue high-quality education in Computer Science within aninternational and interdisciplinary academic environment.The study programme responds to the growing demand for highly qualified professionals in Computer Science,Software Engineering, Artificial Intelligence, Machine Learning, Computer Vision, Distributed Systems, CloudComputing, and related fields of Information and Communication Technologies (ICT). Through a moderncurriculum aligned with European higher education standards and labour market needs, the programme aims toequip students with advanced theoretical knowledge, practical skills, research competencies, and professionalexpertise required for successful careers in industry, research, and academia.A key objective of the programme is to promote internationalisation and academic mobility in accordance with theprinciples of the Bologna Process and the European Credit Transfer and Accumulation System (ECTS). Within theDouble Degree framework, students have the opportunity to study at both partner institutions, gain internationalacademic experience, and benefit from the complementary expertise of academic staff at SEEU and OffenburgUniversity of Applied Sciences. This cooperation fosters intercultural understanding, academic exchange, and thedevelopment of competencies essential for professional engagement in an increasingly interconnected globalenvironment.In accordance with the Double Degree Cooperation Agreement, students enrolled in the programme may obtaindegrees awarded by both institutions, provided that they fulfil the academic requirements jointly established bythe partner universities. The award of the Double Degree is conditional upon the successful completion of theprescribed mobility period, fulfilment of the curriculum requirements of both institutions, and preparation anddefence of a Master’s Thesis under the joint supervision of academic staff appointed by the partner universities.The Master’s Thesis shall be written and defended in English before a joint evaluation committee comprisingrepresentatives of both institutions, in accordance with the applicable academic regulations and procedures of thepartner universities.The programme also contributes to strengthening scientific cooperation, joint research activities, academic staffmobility, and collaboration with industry partners in North Macedonia, Germany, and the wider European HigherEducation Area (EHEA). Furthermore, it supports the strategic objectives of both institutions in the areas ofinternationalisation, educational excellence, innovation, and the development of highly qualified ICT professionalscapable of addressing contemporary technological and societal challenges.The curriculum has been designed to ensure compatibility and comparability with similar master’s programmesoffered by leading European higher education institutions, while providing graduates with a solid foundation forfurther academic advancement through doctoral studies and participation in international research and innovationprojects. By educating competent, innovative, and professionally responsible graduates, the programmecontributes to the development of a knowledge-based economy, the digital transformation of society, and thesustainable growth of the ICT sector at national, regional, and international levels.
Upon completion of their studies, graduates may pursue careers as software engineers, systems developers,artificial intelligence specialists, data scientists, cybersecurity experts, or researchers in academic and researchinstitutions. They may find employment in information technology companies, public institutions, internationalorganisations, and various industrial sectors, as well as pursue doctoral studies.
Knowledge and understanding
Possession of knowledge and understanding of Computer Sciences areas and information architectures, networksocieties and internet cultures, Internet and web technologies proportionally expanded in comparison with secondcycle studies.Ability to develop and implement original and creative ideas in environments where overlapping or related fieldsof Information Technology occur.Ability to apply interdisciplinary knowledge and demonstration of specialist competencies in InformationTechnology.
Applying knowledge and understanding
Ability to critically, independently and creatively solve problems in new, previously not encountered orenvironments for which has no prior experience in a multidisciplinary context of real organizational environment.Planning, managing and evaluation of independent research in the field of Computer Sciences implementingappropriate Calculator tools, environments and technologies.Creativity and originality in the interpretation of the knowledge of e-technological processes and appropriate useof computer-based tools and environments based on defined techniques for research and investigation.
Making judgement
Ability for creative integration and synthesis of knowledge from many areas related to media processes and use ofcomputer tools and techniques.Ability to deal with complex situations related to process-specific technologies, the identification of appropriatespecialized domain instances in the internet and informatics and making sound judgments in situations lackingcomplete information or data based on personal, social and ethical principles and responsibilities related to theapplication of knowledge and understanding.
Communication skills
Ability to clearly and unambiguously communicate conclusions, results, studies and knowledge of ComputerSciences specialists’ areas with the ability to adapt to the style and form of expression for non-specialists.Competence for critical, independent and creative argumentative research, evaluation methodologies andproposing and defending new hypotheses.Ability to initiate, conduct, and taking responsibility for individuals and groups in cases where communication,organizational and informatics competencies are of essential importance.
Learning skills
Ability to identify personal needs and directions for individual and autonomous additional education and itsperformance independently and autonomously in the Computer Science areas.Ability to assume responsibility for continuous individual learning in specialized and new e- technologies.
Semester 1
-
[CM362]
[5 ECTS]
Project Management
The course aims to develop students’ knowledge and skills in applying contemporary project management principles, methodologies, and techniques. It prepares students to initiate, plan, execute, monitor, control, and close projects, covering key areas such as scope, schedule, cost, resource, quality, and risk management. Particular emphasis is placed on effective communication, leadership, stakeholder management, and the application of best practices to support successful project delivery.
-
[CM353]
[5 ECTS]
Software Architectures
The course covers the fundamental principles, styles, and patterns used in designing software system architectures, including quality attributes, architectural trade-offs, documentation, and architecture evaluation. Students explore domain-driven design, modularity, microservices, cloud-native architectures, and distributed systems, as well as mechanisms for integration, security, resilience, and production deployment. Through requirements analysis, prototype development, and practical projects, students develop the skills needed to design, document, and evaluate software architectures while considering stakeholder needs, technical constraints, risks, and the requirements of complex systems.
-
[CM351]
[5 ECTS]
Advanced Programming
The topics covered in this course include advanced functions, higher-order functions, lambda functions, modular programming, code organization, regular expressions, iterators, generators, decorators, context managers, exception handling, file processing, serialization, automated testing, debugging, logging, and code quality. The course also covers software design principles, selected design patterns, database connectivity, API development, multithreading, multiprocessing, coroutines, asynchronous programming, dependency management, version control, documentation, and project structuring. The course concludes with a practical project in which students apply advanced programming concepts to design, implement, test, and present a complete software solution.
-
[CM306]
[5 ECTS]
Model Driven Software Development
The course covers Model-Driven Software Development (MDSD), including the fundamental concepts of modeling, metamodels, Model-Driven Architecture, UML and OCL, as well as the design and implementation of Domain- Specific Languages (DSLs). Through the use of technologies and tools such as EMF/Ecore, Xtext, Sirius/GMF, ATL, QVT, Xtend and Acceleo, students develop theoretical knowledge and practical skills in model creation, transformation and validation, automatic code generation, and model evolution and migration. The course also explores contemporary topics, including low-code/no-code platforms and AI-assisted modeling and code generation. Teaching is delivered through practical workshops, collaborative activities, discussions, idea development and problem-solving in a safe and inclusive learning environment that promotes active participation, communication, joint research and equal involvement in decision-making.
-
[CM307]
[5 ECTS]
Parallel Computing
The course covers the fundamental and advanced principles of parallel computing, parallel computer architectures, performance analysis and scalability, as well as the design and optimization of parallel algorithms. Students are introduced to shared-memory programming using OpenMP, distributed-memory programming using MPI, and GPU computing with CUDA, developing practical skills in synchronization, inter-process communication, load balancing, and performance optimization. The course also explores the application of parallel computing in artificial intelligence and data science, along with emerging topics such as cloud-based high-performance computing, heterogeneous systems, Edge and Fog computing, exascale systems, and the fundamentals of quantum computing.
-
[5 ECTS]
Elective course
- [EM736] Embedded and Industrial Networks
- [EM737] Artificial Intelligence
- [EM738] Cloud Infrastructures and Technologies
- [EM739] Containerized Architectures
- [EM740] Human–Computer Interaction.
- [EM741] Web Services and Applications
- [EM742] Advanced Algorithms and Data Structures
- [EM743] Usability Testing
- [EM744] Requirements Engineering
- [EM745] Computer Security
- [EM746] Formal Methods in Computer Science
- [EM747] Software Testing and Quality Assurance
Semester 2
-
[CM354]
[5 ECTS]
Computer Vision
The course aims to provide students with theoretical and practical knowledge of methods and algorithms for analyzing and interpreting digital images. The course covers image feature detection and description, image transformations and matching, motion analysis and visual odometry, as well as the application of machine learning and deep learning techniques for object classification, detection, and segmentation. Students will also develop practical skills in using modern tools and technologies, including MATLAB, Python, Keras, and TensorFlow, to implement and test computer vision algorithms.
-
[CM355]
[5 ECTS]
Current Methods of Machine Learning and Applications
The course aims to provide students with knowledge of state-of-the-art (SOTA) machine learning algorithms and their applications across various fields of artificial intelligence. The course covers image generation methods, diffusion models, 3D scene reconstruction, multimodal learning, large language models (LLMs), and natural language processing (NLP). Students will also develop practical skills in implementing and evaluating models using PyTorch, critically analyzing scientific literature, conducting experiments, and presenting research findings.
-
[CM356]
[5 ECTS]
Compilers and Language Technologies
The course provides an introduction to the fundamental principles and techniques of compiler design and implementation. Students will explore how compilers and interpreters work, the differences between them, and the use of Ahead-of-Time (AOT) and Just-in-Time (JIT) compilation strategies. Topics include variables, arithmetic expressions, type systems, programming language semantics, lexical analysis, and parsing, helping students understand how programs are analyzed and transformed during compilation. The course also introduces low-level programming through MIPS assembly and WebAssembly, as well as control flow, memory organization, functions, calling conventions, and object-oriented programming concepts. Advanced topics cover code optimization, register allocation, liveness analysis, and memory management techniques such as garbage collection. Through practical exercises and the implementation of basic components of a compiler pipeline, students will develop the skills needed to analyze, transform, and optimize programs and gain a deeper understanding of how programming languages are translated into executable code.
-
[CM357]
[5 ECTS]
Team Project
The course aims to develop students’ skills in planning, designing, and implementing practical projects in software engineering and artificial intelligence. Students will engage in identifying real-world problems, analyzing requirements, designing system architectures, developing and integrating software components, and applying Agile methodologies and DevOps practices. The course also emphasizes teamwork, testing, system evaluation, technical documentation, and the professional presentation of project outcomes.
-
[5 ECTS]
Elective course
- [EM736] Embedded and Industrial Networks
- [EM737] Artificial Intelligence
- [EM738] Cloud Infrastructures and Technologies
- [EM739] Containerized Architectures
- [EM740] Human–Computer Interaction.
- [EM741] Web Services and Applications
- [EM742] Advanced Algorithms and Data Structures
- [EM743] Usability Testing
- [EM744] Requirements Engineering
- [EM745] Computer Security
- [EM746] Formal Methods in Computer Science
- [EM747] Software Testing and Quality Assurance
-
[5 ECTS]
Elective course
- [EM736] Embedded and Industrial Networks
- [EM737] Artificial Intelligence
- [EM738] Cloud Infrastructures and Technologies
- [EM739] Containerized Architectures
- [EM740] Human–Computer Interaction.
- [EM741] Web Services and Applications
- [EM742] Advanced Algorithms and Data Structures
- [EM743] Usability Testing
- [EM744] Requirements Engineering
- [EM745] Computer Security
- [EM746] Formal Methods in Computer Science
- [EM747] Software Testing and Quality Assurance
Semester 3
-
[CST-MA-THESIS]
[30 ECTS]
Master Thesis
Master’s thesis aims to: Develop research skills: It shows that the student can formulate a research problem, design a methodology, collect and analyze data, and interpret results. Contribute to knowledge: It should provide new insights, findings, or a deeper understanding of a topic within the chosen field. Apply theoretical knowledge: It connects academic theories and concepts learned during the study program with real or theoretical research problems. Demonstrate critical thinking: The student must critically evaluate literature, methods, and findings rather than only describing them. Prepare for professional or academic careers: It builds competencies useful for further research (PhD studies) or advanced professional practice. In short, a master’s thesis is both a learning process and a scientific output that proves the student’s readiness to work independently at an advanced academic level. Furthermore, the activity seeks to improve research techniques and the writing style of the master’s thesis, while strictly respecting the principles of academic integrity and avoiding the use of unauthorized means, such as plagiarism and copyright infringement, which are prohibited by the SEEU Statute.