Designing Interactive Systems 2 (2019)

  Class Information

Lecture Wed, 8:30 - 11:00
  2222, i10 Seminar room
Lab Mon, 14:30 - 16:00
  2222, i10 Seminar room
Language English
Credits 6


Midterm Fri, May 17th, 15:00
Final PT1 Thu, Jul 18th, 15:00
Final PT2 Fri, Aug 9th, 15:00

This course builds on the foundations of Designing Interactive Systems I, and provides an understanding of how interactive multimedia systems are built from a computer science point of view. It covers the principles of event-based operating systems, window system architectures, input and output device technology for multiple modalities, as well as User Interface Management Systems and UI development toolkits and their relative merits. In the labs, you will develop a minimalistic window system yourself, but also learn to work with various real-life development environments, including window systems such as Java Swing and multimedia development environments, to develop user interfaces.

After this class, you will know how the technology behind interactive systems works. You can analyze, design, and implement graphical and other user interfaces for existing and emerging technologies, both for the desktop and beyond, and including interfaces for multimedia contents. Group-based, project-centered assignments and lab activities convey hands-on experience building user interfaces and foster project management and teamwork skills.

The class consists of weekly lectures, labs, reading assignments, project-based group assignments, and graded written midterm and final examinations.

This course has limited seating. You need to register to obtain a seat in this course.


Prof. Dr. Jan



For any questions about the class, please contact Sebastian Hueber, M.Sc..


The following schedule is tentative and subject to change.

  • Introduction

    • Lecture: Introduction, Card's Design Space

      Wed, Apr. 3rd

    • Lab: Card's Design Space

      Mon, Apr. 8th

    • Assignment 1: Hello, GUI!

      Due Mon, Apr. 15th

  • Window System Architecture

    • Lecture: Graphics & Event Library, Base Window System

      Wed, Apr. 10th

    • Lab: GEL & BWS

      Mon, Apr. 15th

    • Assignment 2: Window System (Part 1)

      Due Mon, Apr. 22nd

    • Lecture: Window Manager, User Interface Toolkit

      Wed, Apr. 17th

    • Assignment 3: Window System (Part 2)

      Due Mon, Apr. 29th

  • X, Wayland & Smalltalk

    • Lecture: From X to Wayland, Smalltalk and Squeak

      Wed, Apr. 24th

    • Lab: Squeak

      Mon, Apr. 29th

    • Assignment 4: Window System (Part 3) & Squeak

      Due Mon, Apr. 13th

    • Lab: Midterm Preparation

      Mon, May 13th

  • macOS

    • Lecture

      Wed, May 15th

    • Midterm Exam

      Fri, May 17th

    • Lab: macOS Apps

      Mon, May 20th

    • Assignment 5: macOS App

      Due Mon, Jun 3rd

    • Lecture

      Wed, May 22nd

    • Midterm Exam Review

      Mon, May 27th

  • Windows

    • Lecture: Windows

      Wed, May 29th

    • Lab: Windows Apps

      Mon, Jun. 3rd

    • Assignment 6: Windows App

      Due Mon, Jun. 17th

  • Cross-Platform Apps

    • Lecture: Cross-Platform

      Wed, Jun. 5th

    • Lab: Cross-Platform Toolkits

      Mon, Jun. 17th

  • Post-Desktop Systems

    • Lecture

      Wed, Jun. 19th

    • Assignment 7: iOS Apps

      Due Mon, Jul. 8th

    • Lab: Strengthening Learned Contents

      Mon, Jun. 24th

  • Multimedia & Multimodal Interfaces

    • Lecture

      Wed, Jun. 26th

    • Lab: Strenghtening Learned Contents

      Mon, Jul. 1st

    • Assignment 8: Multimodality & Software Protoyping

      Due Wed, Jul. 10th

  • Prototyping

    • Lecture: Software Prototyping

      Wed, Jul. 3rd

    • Last Lab: Assignments, Exam Preparation

      Mon, Jul. 8th

    • Lecture: Hardware Prototyping

      Wed, Jul. 10th

  • Final Exams

    • Final Exam PT1


    • Final Exam PT2



Your grade will be calculated as follows:

Assignments 40%
Midterm 25%
Final Exam 35%


Assignments will be assigned weekly. You can find the assignments in the L2P course room. Late assignments will not be accepted. The assignments are designed to be completed in the RBI Mac Lab in 4U15. You can work there according to the reservation plan. Of course, you can also use your own computer to work on the assignments. However, it will be your responsibility to ensure your program(s) run on the machines in the lab. Programs that do not run correctly on the lab machines will be graded as incomplete. Exceptions will be granted only for valid (i.e., medical) reasons.

Fields of Study

  • Informatik (M.Sc.)/Angewandte Informatik
  • Informatik (GYM+GS,SII)/Hauptstudium/B. Praktische Informatik
  • Technik-Kommunikation (M.A.)/2. Hauptfach (Technisches Fach)/Grundlagen der Informatik/isierung Informatik
  • TK 2. Fach-Grundlagen der Informatik (M.Sc.)/Wahlpflicht Informatik/Angewandte Informatik
  • Media Informatics (M.Sc.)/Multimedia Technologie
  • Media Informatics (M.Sc.)/Multimedia Technologie/in Aachen
  • Software Systems Engineering (M.Sc.)/Applied Computer Science
  • Software Systems Engineering (M.Sc.)/Practical Computer Science
  • Software Systems Engineering (M.Sc.)/Areas of Specialization/Media Informatics

Course Allocation and Registration Guide

Only 40 seats are available for this course. Priorirty to Master students of Computer Science, Media Informatics, Software Systems Engineering, and Technical Communication. Erasmus students can register during the first lab.

To get a seat in this course, follow these steps before April, 8th:

  • Register for the course in RWTHonline.
  • Sign the Declaration of Compliance and hand it in during the first lab.
  • Make sure that you have access to Moodle.

Registration results announcement on April, 9th.

Previous Offerings

SS18 - SS17 - SS16 - SS15 - SS14 - SS13 - SS12 - SS11 - SS10 - SS09 - SS08 - SS07 - SS06 - SS05 - SS04

FileDescriptionFile sizeDownloadsLast modified
Download this file (Declaration of Compliance.pdf)Declaration of Compliance.pdf 60 kB1832019-04-02 16:45
Cookies make it easier for us to provide you with our services. With the usage of our services you permit us to use cookies.
More information Ok