Official course description, subject to change:

Basic info last published 15/03-24
Course info
Language:
English
ECTS points:
7.5
Course code:
KSTEIND1KU
Participants max:
50
Offered to guest students:
yes
Offered to exchange students:
yes
Offered as a single subject:
yes
Price for EU/EEA citizens (Single Subject):
10625 DKK
Programme
Level:
MSc. Master
Programme:
MSc in Software Design
Staff
Course manager
Associate Professor
Teacher
Part-time Lecturer
Course semester
Semester
Efterår 2024
Start
26 August 2024
End
24 January 2025
Exam
Abstract
This course teaches the foundation of constructing user interfaces for computer systems. This problem is likely harder than you might think: computer programs very often perform complex tasks, yet users demand and need simple interfaces. Producing such interfaces requires an understanding of both the user—e.g., what are they trying to accomplish? what do they know already?—and the technology—e.g., how can we  implement a in a given UI framework the interactions that we want to present the user with, how do we interact with a backend API? In this course, students will develop both their design knowledge, but also their technical skills.
Description
This course provides a high-level overview of the essential concepts related to interaction design and the fundamental programming patterns commonly used in programming user interfaces. By the end of the course, the students will have discussed in theory but also have followed in practice all the steps from a high-level description of a desired system to its implementation in a minimum viable product and its evaluation. Some of the topics that we are going to discuss in the course are:

• Usability and Usefulness
• Understanding Users and Requirements
• Modelling the Problem Domain
• Aesthetics and Visual Design
• Web Application Development
• Evaluating User Interfaces
• Software Design for User Interfaces
• Interacting with the Back-end
• Source Code Usability
Formal prerequisites

The students are required to have basic programming experience in general and strongly recommended to have basic web programming experience - JavaScript in particular.

Intended learning outcomes

After the course, the student should be able to:

  • Explain and compare interaction design processes and principles.
  • Understand and apply usability principles to user interface design.
  • Create, evaluate, and critique the design and of an interactive web application.
  • Design a domain model and create an implementation using a low-code backend platform.
  • Compose a technical implementation of a design using a frontend framework.
  • Reflect on and apply source code usability principles in order to support maintainability.
Ordinary exam
Exam type:
D: Submission of written work with following oral, External (7-point scale)
Exam variation:
D2G: Submission for groups with following oral exam supplemented by the submission. Shared responsibility for the report.