study plan

The study currculum is compounded of the modules Foundations, Advanced Topics in Software Engineering, Transversal Skills, Free Choice, Internship and Thesis according to the below schema, which also illustrate the range of credits for each module and their temporal distribution. The study plan also includes a summer school at the end of the first year and two courses in local languages (one each year).

Each course is compulsory and has 8 ECTS as mimimum number of credits in all the possible learning paths. The courses under the module “Advanced Topic in Software Engineeringhave no less than 8 ECTS. The courses under the “Transversal Skills” module are distributed along three semsters. The Internship has at least 8 ECTS. The fourth semster is dedicated to the thesis work (30 ECTS).

study plan_final


EMSE -VV: Verification and Validation

The topic defines the principles and practices of verification and validation of software systems. Verification methods aims at checking that the elements of the system meet prescribed software specification. In other words, the system must be built right. The verification process also aims to define and apply any procedures and actions to restore compliance with the requirements. The validation aims at assessing whether the implemented system meets the requirements / needs of stakeholders. In other words, the system must be the right one.

EMSE – ESER: Empirical Software Engineering Research

This topic defines the paradigms, methods, and programming techniques of scientific investigation in software engineering. Students learn how to conduct experiments, surveys and studies in real environments as well as how to mine, measure, and analyse data and software artefacts with the use and development of programming techniques.

EMSE – SPPM: Software Process and Project Management

Building the capacity and ability to define, manage and improve software process and project are the main focus of this topic. The course includes techniques and methods for managing the process of development and coordinating project artefacts in all its stages. The students will also be introduced to techniques of decision-making for software processes.

EMSE – RDSS: Requirements and Design of Software Systems

Students will acquire skills and competencies resulting from the conception, negotiation, documentation and maintenance of software requirements in a specific domain and environment. Requirements analysis aims at reviewing, assessing, prioritizing, and balancing the software requirements by developing technical specifications for building a system that will meet the needs of the stakeholders. Design of software systems aims at identifying or building software components that define the characteristics and quality of a system. The students are exposed to problem-solving techniques that allow the synthesis of software solutions satisfying the requirements of the system.


The courses specialise students’ competences in a specific technical area of the software engineering discipline. Specialisations depend on the path chosen by the student. More details about the courses can be found in the “DETAILED DESCRIPTION PER UNIVERSITY” at the bottom of this page.

list of Advanced Topics in Software Engineering


These courses develop skills such as critically thinking, problem solving, and collaborative working as well as they provide competences in statistical, economic or engineering methods that complement the technical skills of a software engineer.


Students can choose 12 ECTS from the list of Free choice courses. Students can choose a course not included in the list by submitting a request to the EMSE Joint Board.

list of Free Choice Courses 


study plan at unibz: by module or by course
study plan at oy by module or by course
study plan at unikl by module or by course
study plan at upm by module or by course