Training based on research
The UCL is a place for teaching and research. The research conducted in the field of Computer Science within the ICTEAM Institute is internationally recognized. Through the options of the Master's program, students benefit from this cutting-edge knowledge in the fields of
- Artificial Intelligence,
- Networking and Security,
- Software Engineering and Systems Programming,
- or cryptographie and information security.
Beyond the mere acquisition of knowledge, training is based on a deep understanding of concepts, reflection and abstraction. These skills enable graduates to adapt quickly to the demands of employers. Furthermore, these studies can be extended to research activities and lead to a PhD.
Concepts to their application
The adaptability of graduates is further enhanced by the importance attributed to the application of concepts in the curriculum. It is inconceivable to master concepts at a theoretical level and not to be able to apply them while facing a practical problem. Therefore, the program contains many projects, assignments, a master’s thesis and the possibility to perform an internship.
Openness to other engineering disciplines
Through various options, the program takes advantage of the diversity of engineering programs of the faculty. The student can select options related to telecommunication networks, applied mathematics or biomedical engineering. In addition, as the University of Louvain (UCL) is a comprehensive university, it is possible to steer his training to management or entrepreneurship.
International perspective
English is the language most widely used in business and in particular in the technical field. The Master's program is taught in English. It enables non English native students to acquire good skills both oral and written in this language. Furthermore, teaching in English enables to welcome and host foreign students in good conditions, while allowing them to be immersed in a French environment. It also expands the possibilities for exchange programs and joint degrees with well-known universities.
Offering a master's program in English is definitely a position with an international outlook.
Regarding learning outcomes ...
On successful completion of this programme, each student is able to :
demonstrate mastery of a solid body of knowledge in computer science, enabling him to solve problems within its discipline
- Facing a problem related to computer science, he identifies the concepts, algorithms and data structures applicable to solve it; and he uses them to decompose the problem into sub-problems and to develop computer based solutions.
- Confronted with a problem within its discipline, he chooses the tools (eg development environment, programming language, libraries and software repositories) best suited to achieve a correct and proper software solution.
- Confronted with the results of the reasoning and implementation of tools and concepts he mobilized, he takes the perspective necessary to verify the relevance, regarding the functionality and quality of the solution sought. In this context, he will develop relevant tests and checks which can guarantee the quality of the solution developed.
organize and carry out every step of the software development process, meeting the generally complex needs of a customer
- Before working on the solution, he explores and analyzes the dimensions of the problem by using the documentation provided and discussing with the stakeholders and future users of the computer system to be developed. He reformulates the specifications, including not only the requirements for system functionalities, but also other constraints retaled to time or ease of operation for future users.
- In the design phase, he models and imagines the architecture of the computer system to develop in terms of functional components (subsystems) so as to facilitate and optimize the development. He takes advantage of available verification technologies and methods to ensure, from the design phase, the quality of the system or software to be implemented.
- In the analysis phase of the system (server, OS, software, ...), he lists, evaluates and compares different technologies (hardware, languages, algorithms, routing) in order to favor those that best meet the various performance and quality criteria explained in the specifications.
- In the implementation phase of the solution, he demonstrates his mastery of the principles, techniques and development tools at its disposal. It creates a prototype of software designed to check that the software matches the customer's expectations. It creates an environment and a battery of tests to ensure that the solution developed meets specifications. Applying the techniques of program validation and verification, he identifies, locates bugs and corrects them.
- Based on a development achieved at the level of a prototype, he manages the evolution of the system quality : monitoring, optimization, maintenance, fault detection, communication in case of failure, etc. He uses metrics and tools to evaluate / validate the structural quality of a software system in terms of safety and maintainability.
organize and carry out research to understand a new problem within its discipline
- Facing a problem related to computer science whose subject and background are new to him, he plans actions to explore this area and to obtain the information to perform an inventory of the state of the art in this new domain using multiple channels (library, Internet, researchers, industry, ...).
- In the master's thesis (possibly coupled with an internship) centered on the study of a new problem, he models the underlying phenomenon keeping in mind to solve the problem using a computer system. Based on this model, he develops and experimentally tests various computer systems likely to address the problem (eg computer processing of images generated by a scanner to facilitate a medical diagnosis).
- Once the experimental results are available, he synthesizes the findings in a research report, highlighting the key parameters and their influence on the behavior of the phenomenon. He extracts useful recommendations to develop and implement innovative technical solutions in concrete problems of the industrial environment considered.
contribute in a team, to plan and bring a project to completion, taking into account the objectives, resources and other constraints
- As a member of the team in charge of the project, he helps to explore the issues and the context in which the project is located in order to inventory the various stakeholders, issues and constraints involved. At the end of this inventory work, he helps to write with colleagues specifications incorporating the key elements of project scope: issues and stakeholders, objectives and performance indicators, risks, constraints of time and resources available ...
- Once the scope of the project is defined, he contributes to plan the related tasks. The team must agree and engage collectively on a plan of work, milestones, allocation of tasks, deliverables to be provided, and a schedule to meet the objectives of the project.
- He takes advantage on the strengths and expertises within the team to collectively solve problems that inevitably arise during the project: either technical problems or interpersonal difficulties. It takes the perspective needed to overcome the difficulties encountered or conflicts within the team.
- To respect the project scheduling, he warns his teammates on decisions to take in case of drift or blockage. During the steering meetings, he contributes to decision making , organizes (or reorganizes) the project in order to meet its objectives.
communicate both orally and in writing to carry out the projects entrusted to him in his work environment, and improve its foreign language skills (e.g. French and English)
- Involved in a project of development of a computer system, it identifies and the stakeholders involved in the implementation and the operation of the system to be developed. Discussing with the stakeholders, he perceives the scope of the environment and the challenges of the project, he makes them clarify their needs and expectations, as well as constraints to be included in the specifications of the project, both system functionalities on operating conditions (interfaces with other applications, maintenance, evolution ...).
- In its communication, he takes into account the fact that his interlocutors do not necessarily master the computer science concepts and terminology and do not share his point of view on the issues and performance of the proposed solution.
- Critical phases of the project imply that critical choices are made collectively. To facilitate decision making, the graduate must be able to provide his partners synthetic view of the current issues. In this perspective, he is able to organize and communicate the required information using diagrams or graphs suited to the representation of the architecture of a computer system.
- He uses efficiently reference books or tutorials about computer language or software, both in English and French. He understand technical presentations in English.
- During the development of a computer system, he ensures traceability and he documents the system in a concise and precise language : specification, software and data structure, user's guide. He does be the same when he writes a summary report describing and arguing choices (design and technology) made during the project.
will demonstrate both autonomy, rigor, openness, critical thinking and ethics in his work.
- In his discipline, he masters the vocabulary and technical standards; this allows him to easily decode a scientific or technical document or communicate with specialists in the discipline.
- Being concerned with the industrial reality of the applications he develops, he naturally takes into account the socio-economic context for the user and his environment - as soon as writing specifications - including for compatibility with the evolution of technology and ethics of the profession. Especially for the development of critical systems (eg ambulance management), he ensures robustness and reliability of the computer system testing hazards of the user work environment.
- Confronted with a new problem, he demonstrates his autonomy to acquire and integrate information and tools he will need, even if these topics have not been explicitly addressed in the curriculum.
|