Seminar in Software Engineering: Human/Computer Interaction

339.374 Seminar in Software Engineering: Human/Computer Interaction 2SE Blaschek Time: 10:15-11:45 Room: S3 218 Start: 12.3.2018


Mo, 12.3.2018; 10:15-11:45, S3 218
other dates: see KUSSS


  • Personal presence is required throughout the semester.
  • Please see the section on "Preparation" below.

Target audience

Students in Computer Science who have already attended the course "Human/Computer Interaction"


In-depth treatment of special topics in HCI.


The subject of the seminar changes from year to year.

In this semester, the focus is on user interface design patterns. Initially, design patterns were introduced to describe architectural styles, but they have been quickly adopted in other areas, such as in object-oriented design.

In user interface design, patterns describe suggested solutions to typical usability problems in interactive applications and websites. The description of a design pattern should contain the following information:

  • The problem that is addressed by the pattern.
  • The context where the problem occurs and the suggested solution applies (types of users, applications, platforms, devices, etc.).
  • The background that lead to the invention of the pattern.
  • The design principles used in the pattern.
  • The general solution, typically in abstract terms that are independent of concrete use cases.
  • The look and feel of a typical solution.
  • Positive and negative use cases: Where should the pattern be used, where should it be avoided and why?
  • Alternatives and related patterns: If this pattern cannot be applied, which other patterns might work instead?
  • Examples of applications.
  • Technical details: How can the pattern be implemented on various platforms?

Background information

You can find more information about user interface design patterns, including many examples, on the following web sites:

Expected Results

All participants in the seminar will present a user interface design pattern of their choice. For selecting a preferred pattern, they should already be familiar with user interface design patterns before the seminar starts. It is therefore highly recommended to check out the sources listed under "Background information" before the kick-off meeting.

Sample Implementation

Participants are expected to implement a typical example of the chosen design pattern. Such an implementation can be a small program or a web page that illustrates usage of the pattern.


The presentation should explain the most important aspects (see the bullet list under "Subject", above), including a live demo of the sample implementation.

Of course, the presentation should not just copy the findings from other sources. The presenters are encouraged to include personal opinions, explain their own experience with the chosen design pattern (e.g., from a user's or developer's perspective), find alternate usages, show negative examples that demonstrate problems that arise when the pattern is not used, etc.

The available time per presentation depends on the number of participants. A presentation should fit in a 20 minute time slot. This means that presentations must be concise and should concentrate on the most important aspects.


In addition to the presentation, participants are also expected to write a summary of their findings. The result should be a 5-10 page document in the typical style of a research paper. It should be written for user interface designers as the target audience. Readers should be enabled to use the described design pattern on their own in real-world projects. With this goal in mind, the documentation should also explain how the sample implementation was created.

The documentation must be submitted in PDF form and will be distributed among all participants at the end of the seminar.


In preparation for the kick-off meeting, participants are expected to bring suggestions for user interface design patterns they wish to present. To avoid conflicts or overlaps, it is recommended that each participant suggests three or more patterns. For discussing the suggestions during the kick-off meeting, it is sufficient to name them (such as "breadcrumbs", "hamburger menu", "tunneling", etc.).

It is recommended to look for patterns that are described in multiple sources (which makes it easier to find relevant information and examples). It is also a good idea to select "exotic" patterns (rather than simple and popular patterns), as this decreases the risk of conflicts. It is probably also more interesting to present a topic that is not yet well known by the other participants.


May 28th    Aleksandar DjurdjicAdaptable View
Kevin FeichtingerCarousel
Marvin HengsterPolls
Philipp SchörkhuberDashboards
June 4th Peter PointnerContinuous Data Representation
Christina RammerstorferTable Filter
Csilla Solyom-GecseCards
Elisabeth StockingerAdvanced Search
June 11th Norbert FarkasAutocomplete
Christian MayrhoferPassword Strength Meter
Michael Christoph Ratzenböck   Undo / Redo
Michaela StanoiuSetup Wizard
June 18th Simon EilmsteinerFAQ
Alexa ErdeiActivity Stream
Rudolf Heinrich HanlSocial Interaction (Followers)
Gersi VeshiCollectible Achievements
June 25thallFinal Discussion