BSc in Data Science
Course Information
CAO Code: |
DC123 |
Minimum Points: |
501 |
NFQ Level: |
8 |
Duration: |
4 Years |
Contact: |
Programme Chair - alessandra.mileo@dcu.ie |
Overview
The course, which is the first of its kind in Ireland, is aimed at the study of information, where it comes from, what it tells us and how to turn it into a resource for business, government and social strategies. Decision making based on data collection, processing, analysis and communication has become a huge part of daily life involving crucial choices such as financial investments to government strategy to leisurely decisions like recommending a movie or choosing the best sports person to join your team. DCU is the perfect place to study this course due to our strong reputation in computing, engineering, business and mathematics. Our focus on innovation and applied problem solving means that we are always looking for ways to make a difference in the world. By studying with us, you will gain the skills needed to fill the ICT skills gap and meet employer demands both at home and abroad.
Course Structure
BSc in Data Science combines the 3 key skill sets of computing, mathematics and enterprise to provide the core knowledge needed to succeed in this growing area. The course will introduce you to the major concepts in data analytics, management, processing, modelling, visualisation and enterprise. You will learn to program, to study mathematics and learn to apply these skills to data from the real world, communicating the results to different audiences.
The degree has been developed in close collaboration between the University, global centres of research excellence (Insight, ADAPT), and major industry players such as Accenture, Intel and Fidelity.
In Year 1, you will learn programming from first principles using Python and R. You will also study foundational mathematics for data science which includes calculus, probability, and linear maths. Furthermore, you will gain knowledge of databases and computer structures.
As you progress to Year 2, you will build on your programming skills in both Python and Java. Additionally, you will delve deeper into advanced mathematical concepts such as statistics and calculus. Furthermore, this year's curriculum will introduce topics related to data warehousing.
In Year 3, you will focus on data science specific topics in machine learning operations, ethics and research skills, information retrieval, graph databases and a practical project. You then have the opportunity to acquire invaluable experience by undertaking a 9 month paid work placement (INTRA) in Year 3 this is usually with a business in Ireland but there are also opportunities to work abroad.
Year 4 focuses on the latest technologies and cutting-edge advancements in areas such as machine learning, natural language processing, scalable systems, computational modelling, fintech, sports science, multimedia, etc. Additionally, students have the freedom to explore their own concepts throughout a year-long project. This year-long project will be showcased in an annual event known as the Final Year Projects Expo. This event is a chance to present your skills acquired during your studies to industry professionals who are interested in employing DCU graduates.
INTRA
In Year 3, you will have the opportunity to spend 9 months paid work placement (INTRA). The INTRA programme integrates academic study with closely related jobs. It will give you an understanding of the professional and practical business world and will help you to stand out in the graduate employment market.
Core Modules
Computer Systems | Gain a basic knowledge of computers and their peripherals. You will develop this understanding by focusing on the architecture of a particular microprocessor. |
Data Science and Databases | This module provides an overview to data management aspects of Data Science. It provides students with an introduction to Databases. Students should learn how to design and create a database using the entity-relationship model, express queries in SQL, understand relational database theory and validation concepts such as normalisation and functional dependencies. |
Programming for Mathematics | This module aims to give the students a foundation in programmatic problem solving and procedural programming in Python. While introductory, the focus is on thorough understanding of the basic concepts. Students have weekly, automatically low stakes assessed programming exercises which provide immediate formative feedback, to develop competence and practical skills in the concepts being covered. These will culminate in a Python programming portfolio. This enables the students to bring themselves up to date, before moving on. Summative assessment includes two laboratory exams. A final summative exam at the end of the Semester which will assess concepts, constructs and practice of programming in Python. |
Computing Programming 1 | This module introduces students to basic computer programming. Students will learn the fundamentals of computer programming, and how to write, run and debug their own programs. Students will also learn the fundamentals of computational problem solving. This module involves lectures and a significant amount of supervised laboratory work. |
Computing Programming 2 | This module introduces the student to more advanced programming concepts including object-oriented programming through designing and employing classes; it enhances familiarity with built-in libraries and data structures; it equips students with techniques for designing and analyzing elementary algorithms. It further develops students’ programming and problem-solving abilities and fosters good programming practices. Students are expected to attend lectures, participate in tutorials, carry out practical exercises in a programming laboratory, and engage in extensive self-study and hands-on programming practice. |
Introduction to R | This course introduces the use of the R environment for the implementation of data management, data exploration, basic data analysis and automation of procedures. |
Linear Mathematics 1 | The purpose of this module is to introduce students to matrix algebra and linearity. In this module students will gain a sound grasp of elementary linear algebra, and fundamental computational skills; it lays the foundations for further courses in linear algebra, calculus, probability and statistics. The module is aimed at students who have recently completed Leaving Certificate Honours Mathematics. The course is delivered through a combination of lectures, and tutorials facilitated by a tutor. |
Linear Mathematics 2 | The purpose of this module is to introduce to students who have successfully completed Linear Mathematics 1 further foundational topics in Linear Algebra. The emphasis is on students gaining a sound knowledge of basics and fundamental computational skills. Eigenvalues and eigenvectors are important in calculus of several variables, probability and statistics. The course is delivered through a combination of lectures, and tutorials facilitated by a tutor. |
Probability 1 |
This module aims to introduce the basic concepts of probability theory through a mixture of lectures, demonstrations and assignments in R and problem solving based tutorials. The module will give students a working knowledge of the main techniques of elementary probability and build a solid foundation for learning more advanced topics in probability and statistics. Students must pass both the continuous assessment and end of semester exam for this module in order to pass the module. |
Calculus and its Applications | This module reviews some foundation mathematics (including functions, equations & inequalities, trigonometric identitiies) and develops the students' algebraic skills. It also develops skills in techniques of differentiation and integration and explores and enhances the application of these techniques to solving various problems (including max/min, area, mean value, differential equations). Students are also introduced some ideas about the processes involved in learning mathematics. |
Developing Internet Applications | This module covers the process of designing, creating and deploying an internet application. Students will look at the various components necessary to develop an internet application including, but not limited to: 1. The hardware/software on which the application runs; 2. The software stack necessary to build and execute the application; 3. Issues of performance and security which must be considered in the case of internet applications. |
Computer Programming 3 | This module provides an overview to data management aspects of Data Science. It provides students with an introduction to Databases. Students should learn how to design and create a database using the entity-relationship model, express queries in SQL, understand relational database theory and validation concepts such as normalisation and functional dependencies. |
Computer Programming 4 | This module introduces students to a classic object-oriented programming language and provides an in-depth coverage of object-oriented programming concepts and design techniques. |
Data Warehousing | A Data Warehouse is the model or structure that supports data mining and decision support through Online Analytical Processing (OLAP). This module teaches students how to construct Data Warehouses by understanding their structures and the concept of multi-dimensional modelling. |
Introduction to Machine Learning | This course will cover introductory topics and conventional algorithms needed to understand the field of Machine Learning. The course will prepare students to understand and distinguish between main groups of methods used in Machine Learning, supervised and unsupervised, and how and when they are applicable. Key topics will include Regression, Decision Trees, Naive Bayes, Neural Networks, Clustering and Principal Component Analysis. |
Data Processing and Visualisation | This module will equip students with knowledge of methods for processing, ingesting, cleaning and reformatting data sets using a variety of tools. It will introduce exploratory data analysis through interactive visualisation and develop student skills in creating effective data visualisations. The module will enable students to develop skills in communication, visualisation design and the ability to critique the effectiveness of data visualisations. |
Programming for Data Analysis | This module aims to give the student a background in using a programming language such as R to deliver a competent analysis of both structured and unstructured data. |
Calculus of Several Variables | This module introduces students to the theory, practice and application of calculus of several variables. The module builds on the first-year modules on calculus of one variable. Students will learn how to differentiate and integrate functions of several variables, and how the interplay of differentiation and integration leads to the integral theorems. The module teaches essential know-how and skills to understand more advanced methods in analysis in general and in probability in particular. |
Statistics 1 |
This module aims to provide students with an introduction to the basics of statistics, including the use of common discrete and continuous distributions, central limit theorem, sampling techniques as well as estimation and hypothesis testing techniques. Practical examples will be provided throughout using R. |
Statistics 2 | This module aims to provide a strong foundation in the fundamental statistical method of regression modelling. Simple and multiple linear regression models will be presented. The fitting and interpretation of regression models will be explained and practical examples given. The linear model will be extended to model non normal data using generalised linear models (GLMs). The regression models will be applied to practical datasets using R. Students will also be introduced to Bayesian statistical methods and their use in credibility theory. |
Year 3 | Year 4 |
|
|
Interviews with Current Students and Graduates
Careers and Further Options
Career Areas | Career Prospects |
Finance Healthcare Telecommunications Non-Profit Media Retail Manufacturing Sport |
Data Scientist Business Intelligence Analyst | Customer Insight Lead Team Leader Chief Data Scientist Director of Analytics Risk Analyst Knowledge Engineer Data Programmer |