Skip to content

Mathematics for Software Engineering - 2025

Course page for MSE1 at VIA

Course Information

This course provides a basic introduction to the areas of mathematics most relevant to software engineers.

  • Course Responsible: Richard Brooks, rib@via.dk
  • Credits: 5 ECTS (European Credit Transfer System), equivalent to 130 working hours
  • Level: Bachelor
  • Assessment: 4-hour written exam with physical attendance, graded according to the 7-point scale (see exam description in the menu)

Prerequisites

Mathematics equivalent to high school A-level is assumed. If it has been several years since you last worked with mathematics, we recommend participating in our screening program. Typically, the basic topics cause the most problems, so you should ensure you have a solid understanding of these.

Teaching and Course Structure

The course starts in week 36 and ends 13 weeks later, with no classes in week 42. A session is defined as consisting of two activities:

  1. Lecture: A 2 x 45 minute lecture held by the instructor.
  2. Tutorial 4 x 45 minutes working on and going through exercises with the teaching assistant (TA).

There are no mandatory submissions, though there will be other mandatory course activities.

About Us

  • Richard Brooks

    Richard Brooks
    Associate Professor

    Teaches: DK
    Contact:

  • Navn

    Markéta Tranberg
    Part-Time Lecturer

    Teaches: X, Y, and DK Contact:

  • Navn

    Eduard Fekete
    TA

    Teaches: X
    Contact:

  • Navn

    Carolina Zavidei
    TA

    Teaches: Y
    Contact:

Course Content and Learning Objectives

The course focuses on the application of mathematical concepts and methods in software development and computer science:

  • Arithmetic: Basic arithmetic operations and their applications.
  • Functions: Understanding functions, including domain, range, and graphical representation.
  • Set Theory: Introduction to sets, including union, intersection, complement, and De Morgan's laws.
  • Combinatorics: Basic principles of counting, including permutations and combinations.
  • Probability: Basic probability theory, including conditional probability and independence.
  • Statistics: Introduction to statistical concepts, including mean, median, variance, and standard deviation.
  • Linear Algebra: Basic concepts in linear algebra, including vectors, matrices, and determinant calculation.
  • Differential Calculus: Basic concepts in differential calculus, including limits, continuity, differentiability, gradient, and slope.

Materials

Textbook: The course is based on the book "Mathematics for Software Engineering" by Richard Brooks. The book is available as an e-book and can be found in the Resources tab above.

Exercises: Available for each session and can be found under "Sessions" above.

Other Online Resources: We have linked to several online materials, which can be found in the Resources tab above. These are not mandatory.

Course Software: Ensure you have a working version of Jupyter Notebook and Python version 3.7 or newer installed. You are free to choose which IDE to work in, as long as it supports Jupyter Notebooks. Installing VS Code with the Jupyter Notebook extension is a popular choice. You may also find it helpful to have a calculator for the exam.


The Wiseflow code for all flows used during the course is always 0000. However, this is not the code for the exam in January.


Historical Notes

Mathematics for Software Engineering was first offered in 2017 and is taught once a year. The course responsible is Richard Brooks (RIB).

Grade Distribution 2024 (only regular exam)

Grade Count
1210
1013
725
415
0212
0018
-31