Data Science

Course content

This course covers the components that go into a full data science pipeline, from the collection, processing and cleaning of data, to storing it efficiently in a database, to the implementation of efficient and modular models, to the exploration of data through interactive visualizations. Emphasis will be placed on dealing with data from multiple sources, and on the design of a modular work flow. Finally, the course will touch upon some of the fundamental challenges in data science, such as the presence of bias, and its potential impact on decision-making.



BSc Programme in Computer Science

Learning outcome

Knowledge about:

  • Reading of structured text:

     - Regular expressions and finite automata

     - Grammars and parsing

  • Databases:

     - Central database concepts such as the relational model, data independence, and transactions

     - Entity-relation-modelling (ER modelling) and relational data modelling, including transformations from ER modelling to ER-relational data modelling

     - Queries in database query-languages, including relational algebra and SQL

     - Theory on database normalization, including functional dependencies, keys, and relational decomposition

     - ACID (atomicity, consistency, isolation, durability) properties and use of transactions

  • Fundamentals of data integration:

     - Strategies for dealing with data heterogeneity

     - Data cleaning, error handling, and missing data

     - Unstructured to structured data

  • Model design and implementation:

     - Basic modelling concepts

     - Structured model design

     - Model testing and deployment

  • Data exploration and visualization:

     - Key principles of visualization

     - Dimensionality reduction techniques

     - Fundamental visualization and interaction techniques for different data types

     - Techniques for building and deploying visualizations on the web


  • The student is familiar with writing scripts for data collection and preprocessing.
  • The student can use a parser generator to read structured text.
  • The student can set up database systems supporting heterogeneous sources of data.
  • The student has gained experience with designing a modular pipeline for the analysis of a concrete problem.
  • The student can create interactive visualization on the web.



The student understands the key challenges in designing an effective data science workflow supporting multiple data sources and multiple types of analysis. In particular, the student:

  • has a detailed knowledge of database fundamentals, including the SQL query language
  • is familiar with core concepts in data integration
  • has a clear understanding of modular software design for data science applications
  • has detailed knowledge of the fundamentals of data visualization
  • can produce cross-platform, shareable, interactive visualizations for the web

Lectures, exercise classes and project.

The student should have basic knowledge of programming, algorithms linear algebra, calculus and statistics, as obtainable through the courses PoP, DMA, LinAlgDat, MASD and MAD.

Continuous feedback during the course of the semester
Peer feedback (Students give each other feedback)
Type of assessment
Written assignment
Written examination, 2 hours under invigilation
The exam consists of two parts: a project developed during course in groups generating a report with individual contributions (60%) and a final written two-hour test (40%).

For the final written exam only written aids are allowed. 

Marking scale
7-point grading scale
Censorship form
No external censorship
Several internal examiners
Criteria for exam assessment

See learning goals.

Single subject courses (day)

  • Category
  • Hours
  • Lectures
  • 72
  • Theory exercises
  • 72
  • Project work
  • 100
  • Preparation
  • 166
  • Exam
  • 2
  • English
  • 412