Learning outcomes

1. Analysis for large-scale informatics projects. Identifying tasks that qualify for automation, understanding underlying business processes, determining the corresponding consumer needs. This requires the necessary knowledge for fluent communication with people working in other disciplines.

2. Design of large-scale informatics systems. Abstraction and decomposition of the specific problem to arrive at a feasible solution. Identifying components that could contribute to a solution (e.g. software library, type of network, kind of database). Documenting the chosen solutions on different levels of abstraction.

3. Restructuring existing informatics systems. Identifying problematic components, selecting solution strategies, implementing the necessary adjustments without compromising the existing system’s functioning.

4. Quality control. Planning the necessary check-ups while carrying out informatics projects in order to attain the previously specified quality standards (as to reliability, practicality of maintenance, safety …). Drawing lessons from informatics projects that have been carried out, in order to optimize quality norms wherever necessary.

5. Selecting techniques, methods, languages, architectures, taking into account their inherent limitations and the fact that information on concrete solutions is usually commercially coloured. Making strategic decisions in this respect: e.g. how do we protect our network? What type of database? What role for formal specifications? Scientific motivation of the decisions that have been made.

6. Reporting the progress and status of computer science projects to clients (meaning non-information scientists) and experts from other fields, both orally and in writing.

7. Leading a team of information scientists, including (a) assessment of the necessary means (time, budget, instruments, manpower, competences), (b) division of tasks on the basis of technical competences, (c) time planning of the tasks, (d) following and adjusting the planning.

8. Society. Has a sense of responsibility. Makes connections between social trends and developments in computer science and considers the consequences of actions.

9. Profundity. Has theoretical and practical experiences with instruments, techniques and methods used in scientific research of a specific subfield of information sciences.

10. Research and development in a product-oriented environment. This means (a) being able to set up experiments to determine if certain techniques are usable for a company; (b) recognising opportunities to improve products and production processes; (c) estimate costs/benefits of new techniques and methods; (d) using new techniques to gain a strategic advantage over the competition.

11. Fundamental research. Have the necessary skills needed to independently start scientific research, for instance in order to obtain a PhD. This means (a) having insight in current research questions within a subfield of Information Sciences; (b) being able to see the implications of recent research results; (c) being able to independently apply publicised results or techniques in a new context.

12. Protocol design. Designs algorithms and protocols fo optimal use in contemporary systems (wireless networks, cloud computing, …). Analyzes and optimizes such algorithms ans protocols depending on the context in which they are to be used.

13. Modelling and simulation. Studies the behaviour of contemporary systems (performance, robustness, scalability, ...) using models and simulations.

14. Mathematical modelling. Assesses if a certain mathematical model is suitable in a given situation. Quickly makes (small) adjustments to, or a variant of an existent model. Abstracts and models simple problems and gains necessary insights from the obtained results.