Study Lines - MSc in Computer Science and Engineering - DTU

Highlights

Important

It is not mandatory to follow a study line on the program and there is no registration in advance but exactly one study line is stated on the diploma if the director of studies is notified before the thesis is handed in.

Please consult the study handbook for more information about deadlines and other rules and regulations.

With respect to the study lines only the course numbers are relevant for courses from 1 September 2006 (for example, the courses might count as general competences instead of technological specialization and the courses might have obsolete titles, but such things do not matter for the required study line points).

Study Lines: Overview Slides & Sample Study Plan Slide

Further Information: MSc in Computer Science and Engineering

Study Line: Computer Security

As society becomes increasingly dependent on computer systems, from controlling critical infrastructure to providing public services over the web, the importance of protecting against threats from vandals, criminals, industrial espionage and cyber-terrorism grows dramatically. This study line addresses the secure development, deployment and operation of computer systems that may interact with other computer systems across open networks.

The student must follow the requirements in the general curriculum for the program such that at least 30 ECTS points are obtained among the following courses:

02220 Distributed Systems (7.5 ECTS)
02232 Applied Cryptography (5 ECTS)
02233 Network Security (5 ECTS)
02234 Current Topics in System Security (5 ECTS)
02238 Biometric Systems (5 ECTS)
02239 Data Security (7.5 ECTS)
02242 Program Analysis (7.5 ECTS)
02244 Language-Based Security (7.5 ECTS)
02255 Practical Cryptology (5 ECTS)
02291 System Integration (5 ECTS)

The terminated courses 02221 Principles of Distributed Systems (5 ECTS) and 02222 Distributed Systems (10 ECTS) also count on the study line.

Study Line: Digital Systems

Electronic systems and devices typically contain complex digital hardware. This may be in the form of system-on-chip (SoC), embedded computer-based systems or heterogeneous multiprocessor platforms. Digital systems form the platforms in which hardware and software components are integrated. These systems span a vast range of applications from super-computers to ultra-low-power body-implantable medical devices. The design process of digital systems must therefore address a number of different aspects such as performance, power dissipation, reliability, and price.

The student must follow the requirements in the general curriculum for the program such that at least 30 ECTS points are obtained among the following courses:

02203 Design of Digital Systems (5 ECTS)
02204 Design of Asynchronous Circuits (5 ECTS)
02205 VLSI Design (5 ECTS)
02209 Test of Digital Systems (5 ECTS)
02211 Advanced Computer Architecture (5 ECTS)
02213 Digital Systems Laboratory (5 ECTS)
02217 Design of Arithmetic Processors (5 ECTS)
02220 Distributed Systems (7.5 ECTS)
02223 Fundamentals of Modern Embedded Systems (7.5 ECTS)
02291 System Integration (5 ECTS)

The terminated courses 02206 Design of Integrated Circuits (7.5 ECTS), 02207 Advanced Digital Design Techniques (5 ECTS), 02208 Test of Digital Systems (7.5 ECTS) and 02221 Principles of Distributed Systems (5 ECTS) also count on the study line.

The terminated course 02222 Distributed Systems (10 ECTS) counts as 02221 Principles of Distributed Systems (5 ECTS) with respect to the study line.

Study Line: Efficient and Intelligent Software

The naive algorithm often suffices for solving small scale problems, but in many real-life settings advanced algorithms and logic-based artificial intelligence are needed for robust, efficient and intelligent software. A simple search engine can easily index the contents of a drive on a personal computer but indexing the web is much more difficult. Similarly a robot can plan its actions optimally by an exhaustive state space search only if the number of possible actions and states is very limited. Software developers must be able to work with intrinsically hard problems and large, complicated data collections.

The student must follow the requirements in the general curriculum for the program such that at least 30 ECTS points are obtained among the following courses:

02220 Distributed Systems (7.5 ECTS)
02249 Computationally Hard Problems (7.5 ECTS)
02281 Data Logic (5 ECTS)
02282 Algorithms for Massive Data Sets (7.5 ECTS)
02284 Knowledge-Based Systems (5 ECTS)
02285 Artificial Intelligence and Multi-Agent Systems (7.5 ECTS)
02287 Logical Theories for Uncertainty and Learning (5 ECTS)
02291 System Integration (5 ECTS)

The terminated courses 02221 Principles of Distributed Systems (5 ECTS), 02283 Algorithms for Massive Data Sets (5 ECTS) and 02286 Logic in Computer Science, Artificial Intelligence and Multi-Agent Systems (7.5 ECTS) also count on the study line.

The terminated course 02222 Distributed Systems (10 ECTS) counts as 02221 Principles of Distributed Systems (5 ECTS) with respect to the study line.

Study Line: Embedded and Distributed Systems

Embedded systems are now everywhere: from medical devices to vehicles, from mobile phones to factory systems, almost all the devices we use today are controlled by networked embedded computers. Embedded systems often have to fulfill a wide range of competing constraints: low computational resources, high availability, adequate security, reliable communication. This requires the right balance between the hardware and software components. In this context, designing embedded systems becomes both increasingly important and increasingly difficult.

The student must follow the requirements in the general curriculum for the program such that at least 30 ECTS points are obtained among the following courses:

02211 Advanced Computer Architecture (5 ECTS)
02220 Distributed Systems (7.5 ECTS)
02223 Fundamentals of Modern Embedded Systems (7.5 ECTS)
02224 Modelling and Analysis of Real-Time Systems (5 ECTS)
02228 Fault-Tolerant Systems (7.5 ECTS)
02257 Applied Functional Programming (5 ECTS)
02291 System Integration (5 ECTS)

The terminated courses 02221 Principles of Distributed Systems (5 ECTS), 02222 Distributed Systems (10 ECTS), 02225 Real-Time Systems (7.5 ECTS) and 02231 Advanced Modelling and Analysis of Embedded Systems (5 ECTS) also count on the study line.

Study Line: Reliable Software Systems

The key international IT companies which dominate the marketplace provide highly reliable software-intensive systems and services by using very advanced modeling, analysis and realization techniques. This study line focuses on a number of the proactive methods and techniques used by internationally leading software and hardware companies for engineering safe and secure software-intensive systems. This study line covers the methods and techniques to achieve reliable systems, including program analysis, language-based security, compiler construction, and model checking.

The student must follow the requirements in the general curriculum for the program such that at least 30 ECTS points are obtained among the following courses:

02220 Distributed Systems (7.5 ECTS)
02223 Fundamentals of Modern Embedded Systems (7.5 ECTS)
02232 Applied Cryptography (5 ECTS)
02242 Program Analysis (7.5 ECTS)
02244 Language-Based Security (7.5 ECTS)
02246 Model Checking (7.5 ECTS)
02247 Compiler Construction (5 ECTS)
02291 System Integration (5 ECTS)

The terminated courses 02221 Principles of Distributed Systems (5 ECTS), 02241 Robust Software Systems (5 ECTS) and 02243 Access Control and Distributed Systems (5 ECTS) also count on the study line.

The terminated course 02222 Distributed Systems (10 ECTS) counts as 02221 Principles of Distributed Systems (5 ECTS) with respect to the study line.

Study Line: Software Engineering

Software plays a central role in almost all aspects of daily life, e.g. in finance, health care, government, and telecommunications. The use of software systems has grown dramatically as has their complexity. Enormous amounts of money are spent every day on software development yet the resulting software does not always meet the user's requirements and is not always reliable. This study line aims to give you the skills required to develop high-quality software products. It teaches well-founded methods, techniques, and tools for the modeling, construction, analysis and verification of software systems.

The student must follow the requirements in the general curriculum for the program such that at least 30 ECTS points are obtained among the following courses:

02220 Distributed Systems (7.5 ECTS)
02239 Data Security (7.5 ECTS)
02263 Formal Aspects of Software Engineering (5 ECTS)
02265 Advanced Topics in Software Engineering (5 ECTS)
02266 User Experience Engineering (5 ECTS)
02267 Software Development of Web Services (5 ECTS)
02291 System Integration (5 ECTS)

The terminated courses 02221 Principles of Distributed Systems (5 ECTS), 02222 Distributed Systems (10 ECTS), 02225 Real-Time Systems (7.5 ECTS) and 02264 Requirements Engineering (10 ECTS) also count on the study line.

Selected Electives

The following advanced courses can be taken as electives but preferably the relevant ones should be taken during the bachelor studies:

02110 Algorithms and Data Structures 2 (5 ECTS)
02162 Software Engineering 2 (10 ECTS)
02170 Database Systems (5 ECTS)
02180 Introduction to Artificial Intelligence (5 ECTS)
02393 Programming in C++ (5 ECTS)

It is recommended that students on the MSc in Computer Science and Engineering program who do not have a BSc in Software Technology degree from DTU obtain 15 ECTS points from the following list of courses as electives:

02141 Computer Science Modelling (10 ECTS)
02155 Computer Architecture and Engineering (5 ECTS)
02156 Logical Systems and Logic Programming (5 ECTS)
02157 Functional Programming (5 ECTS)
02158 Concurrent Programming (5 ECTS)
02159 Operating Systems (5 ECTS)

Contact the director of studies in advance in order to make use of this opportunity because normally you can take at most 10 ECTS points among the basic courses at DTU as electives (note that the opportunity of choosing basic courses will be written down to the extent that the possibility of getting a credit transfer for courses which fall outside the academic domain of the MSc program is used).

Of course general competences courses and technological specialization courses can also be taken as electives.

Director of Studies

Jørgen Villadsen
DTU Compute


cse.compute.dtu.dk/study_lines 2017-07-03