South East European University
bringing knowledge to life!


Software and Application Development (2012/2013)

Study Cycle: Second Cycle (Postgraduate)
Faculty: Contemporary Sciences and Technologies
Academic year: 2023 / 2024
Title: Master in Computer Sciences Field: Software and Application Development
ECTS: 60 (1 year) Accrediation

The objectives of the study programme are:

  • To respond to the global market needs for software and application development with particular emphasis on regional needs and specific perspectives of the Republic of Macedonia towards building a common European educational, employment and research space;
  • To prepare students for current and future technological challenges in ICT areas by developing the skills of critical thinking necessary for creativity, ethics and efficiency in a wide range of contexts;
  • To train students to approach the information needs of an organization to implement new technologies and discover innovative solutions to business and research programs;
  • To prepare students for further academic or research careers;

The programme will enable students with the necessary knowledge and skills to contribute in all aspects of the software development process, including planning, collaboration, specifications, design, development, delivery and maintenance of software products. In addition, students will also acquire general skills, such as analytical and critical thinking, team work and work in multicultural environments, planning and organizing.

After finishing this programme, the graduates will have career opportunities in a variety of industries, mainly fulfilling needs for computer systems design, such as software developer, software tester, manager of software projects and processes.

The last semester of studies includes master thesis writing, enabling program graduates to continue their studies towards a doctoral degree in computer sciences.

Knowledge and understanding

Advanced knowledge and understanding in the field of software and application development, including:

  • Software development, needs analysis, design, coding, testing;
  •  Programming languages​​, their analysis and use in the development of various software solutions, software system analysis, development of Internet applications and security, networking;
  • Knowledge of advanced concepts in computer science.
  • Managing large software projects.
Applying knowledge and understanding
  • Can apply, use, develop and deploy advanced software systems.
  • Can offer and apply different methods and methodologies of software development for delivery of major IT solutions.
  • Can use various tools for software development and program them using shell, scripts and compiled programs in standalone or web environments.
  • Can participate in the process of solving problems in new, unseen or unknown environments for software development in an original, critical and creative way.
  • Is able to organize software systems in order to solve various social, economic and/or technological issues.
  • Is able to participate in research projects as a base for further academic development.
  • Demonstrates expertise in addressing real problems in the field of software development and project management.
  • Can develop and apply original and creative ideas.
Making judgement
  • Can in an adequate way collect, analyze and evaluate data using modern tools and systems for certain social, economic and/or organizational issues.
  • Is able to adequately assess the required deadlines, resources and risks in the planning, development, deployment and maintenance of software, using appropriate tools.
  • Can argue and explain ideas, concepts.
  • Can test, assess and appropriately decide on various possible IT solutions.
Communication skills
  • -Can in a clear and unambiguous way communicate their knowledge, data and results of studies to team members, customers, managers and other stakeholders in software development.
  • Can adequately adjust the style and form of expression when addressing unskilled audience.
  • Can initiate, lead and take responsibility for the work of a group of people.
  • Is able to undertake preparations for research and contribute in the field of software development.
Learning skills
  • Can follow new developments in the field of software and application development, learn new technologies and implement them.
  • Can identify their needs and directions of personal and autonomous development.

Semester 1

  • [6 ECTS] Research Methodology
    The goal of this course is to enable students with knowledge and understanding of different scientific theories and methodologies that are applied in the field of software and application development. After completing the course, students will be able to: * Thoroughly explain and understand the importance of the basic scientific concepts; * Effectively search relevant information and literature; * Identify, describe and formulate scientific problems; * Make a careful choice of alternative research approaches; * Thoroughly describe, compare and explain the advantages and disadvantages of various scientific methods for collecting quantitative and qualitative data; * Apply basic scientific methods during analysis of quantitative and qualitative data; * Understand different frameworks for theory building; * Assess and review scientific publications.
  • [6 ECTS] Software Engineering
    The course goal is to provide students with a deep, critical and systematic understanding of management principles and techniques for designing effective software applications. To introduce students to the meaning of the methodology for management of software development solutions. The course covers various design and management aspects in the development of specialized software systems, including the critical path methods, Pertt method, network analysis methods, creating the project structure, Maruna technique for managing risks, and techniques for agile software development.
  • [6 ECTS] Advanced Data Structures and Algorithms
    This course is based on previous knowledge of algorithms and data structures. The course goal is to acknowledge students with advanced efficient algorithms and appropriate data structures used for data presentation, search and optimization. The course also reviews the theory of algorithm complexity and its practical determination in order to be able to compare different algorithms. During the course, students will become familiar with several known algorithms, especially for search and optimization in complex nonlinear structures, such as trees and graphs.
  • [6 ECTS] Elective course 1
    • Programming Techniques and Technologies
    • Human-Computer Interface
    • Artificial Intelligence
    • System Analysis and Design
    • Grid Computing
    • Computer Networks and Web Applications
  • [6 ECTS] Elective course 2
    • Programming Techniques and Technologies
    • Human-Computer Interface
    • Artificial Intelligence
    • System Analysis and Design
    • Grid Computing
    • Computer Networks and Web Applications

Semester 2

  • [24 ECTS] Master Thesis
    This module enables students to transfer their skills and knowledge to research and make more complex the task of the master thesis. The module is designed to be fully practical and students to acquire the necessary knowledge and skills to approach writing the thesis. The module has unique return result-to enable students to write the master thesis with minimal difficulties, and with maximum efficiency. The course aims to improve research techniques and style of writing paper, taking account to stop illegal means, such as plagiarism and infringement of copyright, which are prohibited by the Statute of SEEU.
  • [6 ECTS] Free elective course 1
    • Internet Architectures
    • Development of web and mobile applications
    • Selected Advanced Topics in IT Applications for Preparing a Scientific Paper
    • Applications for Statistical Data Processing
    • Methodology of Teaching