MSc in Computing (with Major Options)
Course Information
Course Code: | DC836 |
NFQ Level: | 9 |
Duration: |
FT-1 Year, PT-2 Years (Please Note: Part time lectures are scheduled between 4-7pm two evenings a week) |
Contact: | Programme Chair - renaat.verbruggen@dcu.ie |
Overview
Computing is the future of technology and innovation, offering limitless possibilities for advancing various industries and improving everyday life. In today's digital age, the demand for skilled computing professionals is greater than ever, making a master's degree in computing a valuable asset for anyone looking to pursue a rewarding career in this dynamic field. The MSc in Computing offers a variety of Majors aimed at providing graduates with the latest skills necessary to create high-quality software and systems that address business and economic needs.
The program's emphasis on practical application is reflected in the project practicum, typically undertaken during the summer months. Students usually work on developing a prototype software system within their Major area to solve real-world problems or may opt for analysing processes, proposing alternatives, and evaluating them. While most projects are individual endeavours, there are opportunities for team collaboration, as well as potential sponsorship from external clients or pursuing self-generated ideas. Typically, projects begin with a feasibility study followed by creating a project plan and then either developing a software application or conducting rigorous theoretical analysis.
Course Structure
Major 1 - Natural Language Processing (This Major is available Full Time Only)
Natural Language Processing combines computer science, linguistics and artificial intelligence. The aim of NLP is to develop computer programs with the ability to understand and produce text, as demonstrated in recent chatbots like ChatGPT, LaMDA, and BARD. NLP has the potential to transform the way we interact with machines and each other by making our lives more efficient. Large language models at the heart of systems such as ChatGPT are even beginning to be used for general AI system development.
NLP specialists are in high demand because they are needed to develop technologies such as text classifiers, chatbots, virtual assistants¸ and language translation systems across various industries including e-commerce, healthcare¸ and finance. Due to increasing data generation, understanding human language has become crucial for businesses making informed decisions. The MSc in Computing is Ireland's first Natural Language Processing master’s degree, developed by world-leading academics working in NLP and is taught by a team of experts from a diverse range of computer science backgrounds including natural language processing, data science, artificial intelligence, and machine learning.
Major 2 - Data Analytics (This Major is available both Full Time and Part Time)
This exciting new Major, delivered in conjunction with leading industry players, builds on the School of Computing's expertise and its involvement with Insight, Science Foundation Ireland's Centre for Data Analytics and ADAPT, the centre for new Human Centric AI techniques. Technologies such as the internet, sensor nets, social media and cloud computing are generating vast amounts of data. To say we are drowning in information is an understatement. Yet in this vast amount of raw data, there are gems of knowledge that can be used to improve processes and generate value. This Major provides students with a deep understanding of the issues, techniques and tools to examine large amounts of raw data in order to extract meaningful conclusions from the information these contain.
Major 3 - Artificial Intelligence (This Major is available Full Time Only)
There is a strong demand for graduates with the highly specialised multi-disciplinary skills that are required in AI, both as practitioners in the development of AI applications and as researchers into the advanced capabilities required for the creation of next-generation AI systems. This Major is designed to meet this educational need, by providing a balanced programme of instruction across a range of relevant areas.
Major 4 - Secure Software Engineering (This Major is available both Full Time and Part Time)
In this modern age of increased data usage and ubiquitous computing the security of software is more important than ever. This updated and revised MSc. Major in Secure Software Engineering builds a firm base of advanced software engineering skills and emphasises security from start to finish. It will be appropriate for all those tasked with building and researching secure software systems.
Major 5 - FinTech & Technology Innovation (This Major is available Part Time only)
The innovation enhanced by the emergence of Financial Technologies (FinTech) holds the prospect of a shift of power over everyday financial transactions away from those who have hitherto held it (in large Financial Organizations) and towards the general population, leading to a potential ‘democratisation’ of finance in areas such as Aggregation, Micro Investing and Crowd-funding. Other key application areas of FinTech Innovation have been towards empowering companies in the Financial Services sector, predominantly in Payment Services and Regulatory Compliance by simplifying and automating their processes.
In this major we draw a distinction between those who actually develop the products which have the potential to empower and those who would use them in a business context. It has been developed to deliver the requisite FinTech background knowledge in key underpinning areas such as Data Governance and Financial Time Series as well as technologies necessary in developing Innovative FinTech technologies e.g. AI and Blockchain.
Modules for Major Options
Foundations of Natural Language Processing | |
Introduction to Machine Learning | This course will explore fundamental concepts and standard algorithms essential for grasping the realm of Machine Learning. It aims to equip students with the ability to differentiate between primary categories of techniques utilized in Machine Learning, such as supervised and unsupervised learning, along with their respective applications. Essential subjects covered will encompass Regression, Decision Trees, Naïve Bayes, Neural Networks, Clustering and Principal Component Analysis. |
Professional & Research Practice | The module will introduce topics and issues in professional and research practice for computing professionals in an industrial and academic context. Research Methods: This will encompass the philosophy of research, qualitative and quantitative research, accessing and evaluating research materials, assessing outcomes and dissemination. This vital characteristic of the module will provide the skills and understanding to plan and manage the practical aspects of the Practicum for the course. Professional: There will be an introduction to the legal aspects of information technology and relevant topics in ethics for computing professionals. |
Human Factors in NLP | |
Deep Learning for Natural Language Processing | This module will introduce students to the neural network architectures that power modern NLP including LLMs like GPT. Students will learn how such networks function and will be given the opportunity to train NLP systems using popular open-source neural NLP toolkits and libraries. Students will delve into many different areas, such as neural network architectures, mathematical foundations and algorithms related to machine learning, and LLMs. |
Advanced Machine Learning | This module offers students a comprehensive understanding of modern machine learning, covering both theoretical concepts and practical applications. It incorporates classical methods to provide historical context, conceptual development, interpretability and specific solution applicability. However, the main focus lies on deep learning and contemporary techniques such as reinforcement learning, explored in both supervised and unsupervised contexts. Students will gain hands-on experience using research-grade datasets, international challenges and practical tutorial sessions. |
Data Analytics & Data Mining | This module aims to review and complement foundation statistical knowledge and to establish the context for a range of methods, used in the analysis of simple and complex systems. The focus is on cultivating an intuitive grasp of principles and the capacity to practically apply them to data samples from various systems, rather than emphasising mathematical complexity. |
Machine Translation (Elective) | This course teaches the fundamentals of machine translation, including its definition, practical applications, and limitations. It also provides a brief overview of its history, covering rule-based, statistical, and neural approaches. Students will gain an understanding of evaluating both human and automatic translations. By the end of the course, students will have a solid grasp of statistical and neural network methods for MT. |
Mathematical Methods/Computational Science (Elective) | This elective module aims to provide students with an extensive knowledge on Time Series Analysis, including trend, seasonality and residual components. Discrete Models of Growth and Decay are also studied, which looks at revision of underpinning linear algebra and non-linear growth models. Introduction to continuous models, as well as linear and non-linear models of interaction, will be delved into in both lectures and tutorials. |
NLP Practicum | In the last semester, between May and August, students participate in a practicum involving a significant Natural Language Processing research project with practical applications. This involves working individually or in small teams to create prototype systems addressing real-world issues. The projects may be sponsored by external clients or involve ideas from students or staff members. Typically, they require feasibility studies, project planning, and the development of rigorously validated NLP research experiments. Students also produce scientific reports as part of this process and have opportunities to work on projects for external organizations or funding bodies. |
Professional & Research Practice | The module will cover various topics and concerns related to professional and research practices for computing professionals within both industrial and academic settings. It will include discussions on research methods such as the underlying philosophy, qualitative and quantitative approaches, sourcing and evaluating research materials, as well as assessing results and sharing findings. This part of the module aims to equip students with the skills needed to effectively plan and oversee the practical elements of the course's Practicum. Additionally, there will be an overview of legal considerations in information technology along with ethical matters relevant to computing professionals. |
Statistical Data Analysis | This module is geared towards refreshing and enhancing your basic understanding of statistics, while also setting the scene for exploring various methods of analysing both straightforward and intricate systems. Reasonable proficiency in algebra and the ability to grasp concepts of probability and its importance are predominantly required. |
Cloud Technologies | Big Data Cloud Computing (BDCC) is dedicated to the effective execution of extensive computations on vast datasets. It necessitates the storage, management, and processing of data on a scale and with an efficiency that surpasses traditional information technologies. The BDCC framework holds the promise of revolutionizing how we leverage data and produce breakthroughs in various fields such as science, engineering, healthcare, and security. |
Data Management and Visualisation | The objective of this module is to foster an understanding of the management and organisation of extensive datasets. It will cultivate an appreciation for the pivotal role played by exploratory data analytics, data quality, and data governance within the framework of a data analytics pipeline. Methods for visualising data, especially when dealing with large datasets, will be explored and put into practice. |
Mathematical Methods/Computational Science | This module aims to provide students with an extensive knowledge on Time Series Analysis, including trend, seasonality and residual components. Discrete Models of Growth and Decay are also studied, which looks at revision of underpinning linear algebra and non-linear growth models. Introduction to continuous models, as well as linear and non-linear models of interaction, will be delved into in both lectures and tutorials. |
Artificial Intelligence, Information and Information Seeking | This module comprises five key themes: Human Cognition and Information Seeking, Sensing People and Context, Search Mechanics and Artificial Intelligence, Media Analysis and Machine Learning, and Semantic Web/Linked Data. Its goal is to acquaint students with various information-seeking activities we engage in daily and illustrate how AI techniques play a role in these endeavours. |
Data Analytics and Data Mining | This module aims to review and complement foundation statistical knowledge and to establish the context for a range of methods, used in the analysis of simple and complex systems. The focus is on cultivating an intuitive grasp of principles and the capacity to practically apply them to data samples from various systems, rather than emphasising mathematical complexity. |
Machine Learning | This module aims to familiarize students with a series of intelligent algorithms utilised in modern computing. It will delve into the theoretical and mathematical foundations of these algorithms, demonstrate their practical applications in problem-solving scenarios, explore their characteristics and limitations, and provide hands-on experience in working with them. |
Data Analytics Practicum | During the last semester, spanning from May to August, students engage in a practicum or significant project focused on practical application. Here, they collaborate individually or in small groups to devise prototype systems aimed at addressing real-world challenges. These projects, which might be sponsored by external clients or stem from the students' or faculty's initiatives, usually involve conducting feasibility studies, crafting project plans, and either developing software applications or conducting thorough theoretical analyses. This provides students with opportunities to contribute to projects for external or funding organizations. |
Professional & Research Practice | The module will introduce topics and issues in professional and research practice for computing professionals in an industrial and academic context. Research Methods: This will encompass the philosophy of research, qualitative and quantitative research, accessing and evaluating research materials, assessing outcomes and dissemination. This vital characteristic of the module will provide the skills and understanding to plan and manage the practical aspects of the Practicum for the course. Professional: There will be an introduction to the legal aspects of information technology and relevant topics in ethics for computing professionals. |
Foundations of Artificial Intelligence | This module aims to equip students with both theoretical insights and hands-on experience in fundamental Artificial Intelligence (AI) concepts. Topics covered include AI's role in search algorithms, problem-solving techniques, machine learning principles, machine evolution, and perceiving and acting |
Statistical Data Analytics | This module is geared towards refreshing and enhancing your basic understanding of statistics, while also setting the scene for exploring various methods of analysing both straightforward and intricate systems. Reasonable proficiency in algebra and the ability to grasp concepts of probability and its importance are predominantly required. |
Data Analytics and Data Mining | This module aims to review and complement foundation statistical knowledge and to establish the context for a range of methods, used in the analysis of simple and complex systems. The focus is on cultivating an intuitive grasp of principles and the capacity to practically apply them to data samples from various systems, rather than emphasising mathematical complexity. |
Machine Learning | This module aims to familiarize students with a series of intelligent algorithms utilised in modern computing. It will delve into the theoretical and mathematical foundations of these algorithms, demonstrate their practical applications in problem-solving scenarios, explore their characteristics and limitations, and provide hands-on experience in working with them. |
Artificial Intelligence, Information and Information Seeking | This module comprises five key themes: Human Cognition and Information Seeking, Sensing People and Context, Search Mechanics and Artificial Intelligence, Media Analysis and Machine Learning, and Semantic Web/Linked Data. Its goal is to acquaint students with various information-seeking activities we engage in daily and illustrate how AI techniques play a role in these endeavours. |
Data Management and Visualisation | The objective of this module is to foster an understanding of the management and organisation of extensive datasets. It will cultivate an appreciation for the pivotal role played by exploratory data analytics, data quality, and data governance within the framework of a data analytics pipeline. Methods for visualising data, especially when dealing with large datasets, will be explored and put into practice. |
Statistical Machine Translation (Elective) | |
Mechanics of Search (Elective) | This module explores key technical concepts and technologies enabling search functionalities. Topics include the history and basics of Information Retrieval (IR), text and web retrieval techniques, classical retrieval models including Boolean, Vector Space, and Probabilistic models, evaluation methods, ranking algorithms such as PageRank, and multimedia content retrieval principles. Application scenarios and user interaction aspects are also covered, along with assignments and a semester-long project to apply acquired knowledge. The module provides foundational understanding of information retrieval components crucial for handling large datasets and highlights future advancements. |
AI Practicum | During the final semester, spanning from May to August, students engage in a practicum or significant research project in Artificial Intelligence with practical applications. Here, students, either individually or in small teams, design prototype systems to address real-world challenges. These projects, which may receive sponsorship from external clients or stem from student or faculty initiatives, typically entail feasibility studies, project planning, and the development of a thoroughly validated AI research experiment. This opportunity enables students to contribute to projects for external organisations or funding bodies. |
Professional & Research Practice | The module will introduce topics and issues in professional and research practice for computing professionals in an industrial and academic context. Research Methods: This will encompass the philosophy of research, qualitative and quantitative research, accessing and evaluating research materials, assessing outcomes and dissemination. This vital characteristic of the module will provide the skills and understanding to plan and manage the practical aspects of the Practicum for the course. Professional: There will be an introduction to the legal aspects of information technology and relevant topics in ethics for computing professionals. |
System Software | |
Secure Programming | This module aims to familiarise students with secure software development practices. It begins by examining prevalent coding errors, vulnerabilities, and exploits to understand potential threats. Subsequently, it delves into the roles of security policies, models, and assurance methodologies in ensuring the creation of secure software. |
Cryptography and Number Theory | This module introduces elementary number theory for understanding cryptographic protocols and basics of modern symmetric cryptography. Topics include block ciphers, hash functions, and advanced cryptanalysis methods. Students grasp the importance of cryptography in information security, exploring innovative protocols. They attend lectures, complete assignments, and engage in independent study. |
Formal Programming | This module aims to empower students with mathematical notations and techniques to greatly improve the quality of their code. They will gain theoretical understanding of using mathematics to specify, verify, and construct programs. |
Concurrent Programming | This module strives to provide students with a profound comprehension of the principles behind concurrent programming and executing concurrency on contemporary hardware. It also aims to impart practical abilities in designing, implementing, and testing multi-threaded programs in both traditional and object-oriented languages, focusing on correctness and performance. |
Software Process Quality | This module aims to offer a methodical exploration of the software quality process. Students will be introduced to the new principles of high-quality software development, focusing on advanced software test design. It illustrates the evolving integration of research and practice in enhancing software quality and presents a cohesive approach to viewing software testing through structural coverage. |
Network Security | The course aims to familiarize students with the complexities surrounding computer network security, exploring both defensive ("white-hat") and offensive ("black-hat") perspectives. |
SSE Practicum | During the last semester, from May to August, students engage in a practicum or significant research project with practical applications. Here, students, either individually or in small teams, develop prototype software systems to address real-world challenges or analyse software engineering approaches in security with proposed enhancements. These projects, potentially sponsored by external clients or stemming from student/faculty initiatives, typically involve feasibility studies, project planning, and either software application development or rigorous theoretical analysis. This opportunity also enables students to contribute to projects for external organisations or funding bodies. |
Professional & Research Practice | The module will introduce topics and issues in professional and research practice for computing professionals in an industrial and academic context. Research Methods: This will encompass the philosophy of research, qualitative and quantitative research, accessing and evaluating research materials, assessing outcomes and dissemination. This vital characteristic of the module will provide the skills and understanding to plan and manage the practical aspects of the Practicum for the course. Professional: There will be an introduction to the legal aspects of information technology and relevant topics in ethics for computing professionals. |
FinTech - Financial Innovation | |
Data Governance | |
Blockchain: Basics and Applications | This module will introduce the students to Blockchain technology and how it can be used in applications, as well as looking at how transactions and exchanges are implemented using Blockchain technology. Students will also delve into the field of various crypto-currencies, such as Bitcoin, and how they are built using Blockchain technologies. |
Statistical Data Analytics | This module is geared towards refreshing and enhancing your basic understanding of statistics, while also setting the scene for exploring various methods of analysing both straightforward and intricate systems. Reasonable proficiency in algebra and the ability to grasp concepts of probability and its importance are predominantly required. |
High Tech Innovation & Entrepreneurship for FinTech | |
Machine Learning | This module aims to familiarize students with a series of intelligent algorithms utilised in modern computing. It will delve into the theoretical and mathematical foundations of these algorithms, demonstrate their practical applications in problem-solving scenarios, explore their characteristics and limitations, and provide hands-on experience in working with them. |
Data Analytics and Data Mining | This module aims to review and complement foundation statistical knowledge and to establish the context for a range of methods, used in the analysis of simple and complex systems. The focus is on cultivating an intuitive grasp of principles and the capacity to practically apply them to data samples from various systems, rather than emphasising mathematical complexity. |
FinTech Practicum |
FAQs
The majors on this course are the following; Data Analytics, Artificial Intelligence, Secure Software Engineering, and Natural Language Processing.
Majors can be chosen during the application process. It is also possible to change your mind later on as during registration, you have the opportunity to select your new major.
Applications for the MSc in Computing are normally open in October until early August for EU citizens. Applications for non-EU citizens tend to close in February.
The practicum is a research project that must be completed for one third of the course credits, after
you complete your semester 2 examinations. This is normally completed in pairs and relates
to your major. The process involves: a proposal, obtaining a supervisor, getting approval and
then working on the practicum. The process begins in semester 1 and is completed by mid-
August with a viva voce, an oral defence of your work.
Internships are not taking on as the course is full-time, and therefore, there isn't enough time.
You can seek practicums via companies, and we have many links. However, it is research not
application development.
To prepare for the MSc, it would be a good idea to brush up on your python skills, especially if on Data Analytics and Artificial Intelligence. For Secure Software Engineering, you should revise your Unix and C.
All fees information is available online in the link below. We provide merit scholarships based on your marks when applying, which is an automatic process.
https://www.dcu.ie/fees/postgraduate-fees-2024-25-fees-are-subject-annual-increase