Software Technology is the right specialization for you if your goal is to become any of the following:
- Software Practitioner: A practitioner has theoretical knowledge and practical skills in a broad range of software engineering phases, from architecture, design and construction to validation techniques and tools. As a software practitioner you are also competent in addressing specific software engineering challenges in different application areas, such as sensor networks, information systems and security.
- Researcher: A researcher is equipped to carry out theoretical and experimental research in the realm of software engineering technologies, programming or design paradigms, or software engineering methods. As a researcher you can find ways to improve the reliability of software and systems.
- Tool Builder: A tool builder is proficient in the state-of-the-art software engineering techniques needed to create or contribute to fit-for-purpose, maintainable software tools.
As a Software Technology graduate you will have a thorough knowledge and understanding of the different phases of the scientific and design discipline of the entire software lifecycle (ranging from requirements engineering, architectural and detailed design to construction and quality assurance). You will also have practical experience in applying software engineering methods and tools in the development of large-scale systems. You will know the trade-offs between alternative software engineering techniques, and be able to make educated decisions throughout the software lifecycle.
Your knowledge will cover the different key aspects of software engineering. This means you will have a solid background in mathematics, software management, quality assurance, requirements engineering, architectural design, detailed design, software construction and programming languages. On top of that, you will have specialist knowledge of one or more sub-fields, or aspects of the software engineering discipline, such as programming languages, software composition, service-oriented architectures, model-driven engineering or model checking. The software requirements for one or more application areas, such as pervasive systems and network protocols, information systems and security will also be familiar to you.
Finally, you will have practical experience in conducting scientific research in software engineering technologies, programming or design paradigms and software engineering methods. As a result, you will be a valuable contributor to this area of research, adept at following trends and applying results.
There are a lot of good reasons for coming to the UT to get your Master’s degree in Computer Science but these are the three main reasons:
- Our Computer Science programme combines highly specialized areas of computer science. The two main pillars are: Dependable Networked Systems and Human Centered Computing. Software Technology plays a major role in enabling dependable networked systems. We will give you the tools you need to make a valuable and lasting contribution to this fascinating and challenging field.
- Your lecturers are renowned researchers eager to share their latest insights with you. We have world-leading competencies in the ability to do multi-disciplinary research. The quality of our research is excellent, with a large impact on society.
- One of the reasons for our success is that we combine computer science and engineering with social sciences. This is typical of the UT’s High Tech Human Touch approach.