Component-Based Programming Programme Profile

This study programme is no longer available. An up-to-date list of the available study programmes offered by the Faculty of Mathematics and Computer Science is available here.

Educational Programme Component-Based Programming
Degree Awarded Master in Computer Science
Standard Length of Studies
(Number of ECTS Credits)
2 years – 4 semesters – 120 ECTS
Type of Study Full-time
Higher Education Institution Babeş-Bolyai University
Faculty / Department Faculty of Mathematics and Computer Science
Contact Person Associate Professor Florin Crăciun
Phone +40 264 405327
Fax +40 264 591906
Profile of the Degree Programme Component-Based Programming degree program
Target Group / Addressees Graduates in Computer Science, Mathematics, Economics, Electrical/Computer Engineering, Physics, Chemistry, Biology, etc.
Entrance Conditions Graduate student recruitment is achieved by competition. The overall three/four-year undergraduate average grade and a personal portfolio, for candidates with a Bachelor Degree in Computer Science, Computer Mathematics or Economical Computer Science and respectively the grade of a written test (see the curricula here) and a personal portfolio, for candidates outside the above mentioned areas.
Further Education Possibilities The master’s program aims at providing students with the appropriate tools for further doctoral studies and professional activity.
Description of Study Component-based programming (CBP) is considered the programming paradigm of the new millennium. Software development companies need professionals able to build component-based software systems, incorporating complex interactions and sophisticated mathematical models. The Component-based programming master’s program offers theoretical and practical knowledge in this domain.

Core courses:

  • Component-based programming;
  • Formal methods in programming;
  • Behavioral modelling of software systems;
  • Mathematical foundations of decision-making process;
  • Formal methods in programming languages;
  • Formal methods in parallel programming;
  • Web services and middleware technology;
  • Optimization models;
  • Rule-based programming;
  • Decision support systems;
  • Methodology of scientific research in Computer Science;
  • Workflow systems;
  • Data mining;
  • Software architecture;
  • Petri nets in software modelling and verification;
  • Research project in CBP;
  • Framework design;
  • Visualization and validation in simulation.
Purposes of the Programme In recent years, there is a growing demand of specialized professionals in software engineering, more precisely in component-based development. The program was created to respond to that demand, offering theoretical knowledge in modern programming paradigms, and mathematical foundations of decision theory, optimization and modeling, as well as their application in component-based development, building decision support systems and business process engineering.
Specialization / Area of Expertise Component-based development, software modeling, decision support systems, business process engineering,
Extra Peculiarities Optional: Practice of Education.
Practical Training In the 2nd year (4th semester) of the program the students participate in a research project in the field of Component-Based Programming.
Final Examinations Research thesis
Gained Abilities and Skills
  • Solid knowledge in component-based software engineering;
  • Advanced knowledge of mathematical theories and applications related to decision theory and optimization;
  • Advanced knowledge of theoretical, methodological, and practical developments in computer science and software engineering;
  • Abilities of using software tools for all software development activities;
  • Practical skills referring to
    • Modelling and solving real-world problems;
    • use of computer science’s conceptual and methodological apparatus to provide solutions for incompletely defined situations, to solve new theoretical and practical problems;
    • advanced knowledge of component-based technologies and languages;
    • work in teams, assuming different execution and leading roles, performing professional tasks with autonomy and responsibility.
Job Placement, Potential Field of Professional Activity Senior developers; Team leaders and project managers;
Software designers; Members of interdisciplinary research teams; Scientific programmers