This Master’s programme will allow you to become an engineer in the field of software technology, a highly desired skill-set at prestigious universities and companies across the world. TU Delft has great pride in producing graduate computer scientists with a profound understanding of software technologies and the engineering skills to apply them. The Software Technology programme is open to students with a sufficient background in computer science. The programme uses innovative educational methods, focusses on project work, and requires a strong commitment from you. You’ll be challenged to deal with a workload of more than 40 hours per week.
A few example subjects
- Designing Health-Related Systems
Is about the development of all types of medical and/or health support systems such as diagnostic support systems, long-term buddies to help people in establishing and maintaining healthy behaviours, eHealth Systems, Electronic Patient Record system etc. Common factors in these systems are e.g., security, privacy, distributed systems, and various role players . In the Master Track Software Technology you will learn to design software systems that allow access to data on a need to know basis only, that are secure, that can help trace the patients history, that reliably and distributedly store data, that provide the users with information that suits their role, their way of information processing, their personality, and their agenda. These systems are inherently distributed, need to be properly embedded, might have to work as web-based systems, and have to understand human motives, affective states and information processing capabilities and need to continuously improve their behaviour. You will learn about cognitive and software designing, distributed architectures and algorithms, agent technology, cybersecurity, cloud computing techniques, data visualization, machine learning, web data management, affective computing, and information processing techniques.
- Designing Smart Grids
Is about creating coupled systems that optimally control the power systems in relation to physical infrastructures , environment and the interests of the consumers and producers of energy, in real-time. Smart Grids are systems of intelligent systems in which smart meters, solar cells, wind mills, electric cars, intelligent houses, power plants, and so on form essential elements. They refer to the whole infrastructure connecting all systems that consume and produce energy. The challenge is that these systems have to meet overall robustness criteria and that they have to be able to reconfigure themselves if necessary. Efficient use has to be made of all appliances, e.g., electric cars in terms of when to consume energy, when to use them to store energy, and when to release energy into the grid. Optimiszation has to be balanced for the individual, but also system-wide. As all components are distributed over land and have their own controllers, you will have to study distributed artificial intelligence, distributed architectures, software engineering, agent technology, cybersecurity, distributed data management, and optimisation and collaboration techniques. Furthermore, all appliances have to be programmable in an easy way and such a way that the appliances can adapt and learn. This implies that also machine learning, adaptation, and programming languages are important study goals.
- Designing Infrastructure Control Systems
Is about the design and deployment of computer and information systems that support and control the various infrastructures. Infrastructures that are vital for today’s society and economy like transportation infrastructures, infrastructures for utilities, and infrastructures that are inherently computer systems in themselves (telecommunications systems, the internet). Computer systems control these infrastructures at global level by air traffic control and routing internet traffic, but also on individual components such as cars and smart phones. As a consequence, these infrastructures have global control points, but may also allow the individual components to communicate among each other and show collective behavior, such as cars on highways trying to avoid congestion. The challenge of designing these systems is to make the individual components behave correctly and predictably, and to guarantee the optimal and secure operation of the global infrastructure. To meet this challenge you will learn to design distributed and cloud-based systems, algorithms for logistic planning, agent technologies, distributed and embedded software and data engineering methods, and security-enhancing technologies, e.g., for preventing a malicious user from causing traffic jams or hacking the brakes of cars.
- Designing Environment-related Systems
Is about the design and deployment of computer and information systems that support and control human interaction with their living environment in a sustainable way. To ensure sustainability, software and information systems need to register and observe relevant properties of the living environment and of the way humans interact with it. This includes for example gathering information about the way people live, work and move in given geographic areas, about rainfall and temperature measurement across specific locations, or about the water levels in urban infrastructures. These Systems will employ physical sensors embedded in devices and infrastructures or techniques for social sensing through direct interaction with humans and techniques of data fusion and enrichment to make information actionable. Through interfaces with infrastructural systems the Environment-related systems contribute to the control of the global environment, and by supporting people to exhibit a behaviour that promotes sustainability the systems also contributes to a personal environment. In the master track of software technology, you will be challenged to design software systems that produce meaningful and actionable knowledge about the environment and that exhibit properties that ensure the system operates at scale, in real-time, and securely. To meet this challenge, you will learn to design distributed and cloud-based systems, agent technology, distributed and embedded software and data designing methods, and security-enhancing technologies.
In the second year, you will join one of the research groups for your thesis project, in which you will demonstrate your capacity to successfully carry out a research project. At the end, you wrap up the project with a public presentation of the results in your thesis.
Some examples of graduation projects in the past
- KOALA-C: A Scheduler for Integrated Multi-Cluster and Multi-Cloud Environments, by Lipu Fei, 2013
- Analyzing and Applying Agent Oriented Programming Methods for Engineering Agent Players for Serious Gaming
- Effective GPU-based synthesis and editing of realistic heightfields, by Giliam J.P. de Carpentier, 2008
- Domain-aware Ontology Matching on the Semantic Web, by Kristian Slabbekoorn, 2012
- Design of a Network Stack for Directional Visible Light Communication", by Lennart Klaver, 2014
- Classification of Partial 3D Shapes: A Case Study on the Conveyability of Baggage, by Frank Teunisse, computer vision student, 2012.
Extra Curricular Activities
Although students of the master programme Data Science and Technology are already heading to great careers, you can make an extra mile by taking up the challenge of the Honours Programme. This programme is especially for you if you are an excelling student and you want to enrich and deepen your knowledge even further. The course doesn’t only improve your skills, but also contributes to career opportunities in the future as it is a proof of excelling at the university. Due to the interdisciplinary character of this programme you’ll collaborate with students from other faculties.