Designing Interactive Systems 2 (2020)
|Lecture||Wed, 9:30 - 12:00|
|Lab||Mon, 14:30 - 16:00|
|Midterm||Tue, Jun 9th, 8:15|
|Final PT1||Fri, Jul 31st, 12:00|
|Final PT2||Thu, Aug 20th, 12:00|
Due to the Coronavirus outbreak the course will launch with lectures and labs accessible via Zoom videoconferencing. We recommend that students install the Zoom client beforehand.
Update (Mar, 31st): The first lecture takes place April, 8th at 9:30 am. On Monday we will send an email with information how to join the video conference to everybody who has registered for the course in RWTHonline until Sunday evening.
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 platforms, including Windows, macOS, Qt, 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.
For any questions about the class, please contact Sebastian Hueber, M.Sc. (in English or German).
Lecture 1: Introduction, Card's Design Space
Wed, Apr 8th
Window System Architecture
Lecture 2: Graphics Event Library, Base Window System
Wed, Apr 15th
Lab 1: Organization, Window System Architecture
Mon, Apr 20th
Lecture 3: Window Manager, User Interface Toolkit
Wed, Apr 22nd
Lab 2: Window Manager, UITK Event Handling
Mon, Apr 27th
X, Wayland & Smalltalk
Lecture 4: From X to Wayland, from Smalltalk to Squeak
Wed, Apr 29th
Lab 3: Working with Smalltalk
Mon, May 4th
Lecture 5: History of Macintosh Software, macOS Architecture
Wed, May 6th
Mon, May 11th
Lecture 6: Developing macOS Apps with Cocoa
Wed, May 13th
Lab 5: Developing macOS Widgets
Mon, May 18th
Lecture 7: Windows Architecture and UITKs
Wed, May 20th
Lab 6: Developing UWP Apps
Mon, May 25th
Lecture 8: Design Cross-Platform Toolkits: Java & Qt
Wed, May 27th
Lab 7: Cross-Platform Application Challenges
Mon, Jun 8th
Tue, Jun 9th
Lecture 9: Window Systems for Smartphones, TVs and Beyond
Wed, Jun 10th
Lab 8: Understanding Focus Navigation, AutoLayout in iOS Apps
Mon, Jun 15th
Lecture 10: Window Systems for Smartphones, TVs and Beyond
Wed, Jun 17th
Multimedia & Multimodal Interfaces
Lab 9: Decomposing User Interfaces
Mon, Jun 22nd
Lecture 11: Multimedia and Multimodality
Wed, Jun 24th
Lab 10: Exam Preparation
Mon, Jun 29th
Lecture 12: Multimedia and Multimodality
Wed, Jul 1st
Lecture 13: Software Prototyping
Wed, Jul 8th
Lecture 14: Hardware Prototyping
Wed, Jul 15th
Final Exam PT1
Wed, Jul 31st
Final Exam PT2
Sat, Aug 20th
Your grade will be calculated as follows:
Assignments will be assigned weekly. You can find the assignments in the Moodle 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. The registration in RWTHonline opens March, 15th.
To get a seat in this course, follow these steps before April, 8th:
- Register for the course in RWTHonline.
- Make sure that you have access to Moodle.
Registration results announcement on the morning after the first Lab (April, 21st).
SS19 - SS18 - SS17 - SS16 - SS15 - SS14 - SS13 - SS12 - SS11 - SS10 - SS09 - SS08 - SS07 - SS06 - SS05 - SS04