Software Engineering (SE)

Course content

Software engineering represents the principles, methods, tools, and techniques involved in the design, development, implementation, and maintenance of software systems. The purpose of this course is to provide an overview of the different aspects and stages involved in the engineering of software with a special focus on large systems. Assuming that course participants are acquainted with basic software development principles, this course will provide knowledge on and experience with the wider aspects and stages in the lifecycle of a (large) software system. During this course the students will be introduced to the general principles of software engineering, methods for addressing software engineering problems, and common tools and techniques applied in the different aspects of the field.

The course will include lectures and exercises in the following subjects:

• Project Management

• Requirements Elicitation

• Software Design and Development

• Software Implementation

• Quality Assurance

• Maintenance and Evolution

• Software Business


MSc Programme in Computer Science.

Learning outcome

Knowledge of

  • How software systems are designed, developed, implemented, and maintained
  • The necessary principles in the engineering of software systems
  • Methods, tools, and techniques to design, develop, implement, and maintain software


Skills to

  • Manage the processes of designing, developing, implementing, and maintaining software systems
  • Communicate the design and architecture of a system
  • Control the quality of the produced software 
  • Plan the maintenance of (large) software systems
  • Predict evolution of (large) software systems


Competences to

  • Document and communicate their engineering process
  • Critically read and apply existing methods, tools, and techniques

(Video) lectures, workshops, and projects.

See Absalon for a list of course literature.

Good programming skills are required.

Academic qualifications equivalent to a BSc degree is recommended.

Students should be aware that this is not a programming course. While they are expected to hand in a software product as a part of their project, the focus of the report and exam will be on the process of developing the product (e.g. requirements elicitation, design, quality assurance, etc).

Continuous feedback during the course of the semester
Peer feedback (Students give each other feedback)

There will be continuous supervision of student projects during exercise classes and it will be possible to hand in and receive feedback on a draft of the final report.
In all cases, it is the student's own responsibility to make use of these opportunities.


7,5 ECTS
Type of assessment
Oral examination, 25 minutes
The students as a group will first present their project. The presentation will take approximately 15-20 minutes, depending on the number of students in the group.
This is followed by an individual oral exam of 20 minutes (including grading) per student without preparation.
The examination will be based on the student report and course curriculum.
Only certain aids allowed

Only the following materials are allowed at the exam:

• The project report

• The presentation slides

• Source code for the group project



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

See Learning Outcome.

Single subject courses (day)

  • Category
  • Hours
  • Lectures
  • 24
  • Theory exercises
  • 32
  • Project work
  • 80
  • Preparation
  • 56
  • Exam
  • 1
  • Exam Preparation
  • 13
  • English
  • 206