Human-Computer Interaction

(INH.02021UF Human-Computer Interaction 3VU SS 2024)

Lecturer: Ao.Univ.-Prof. Dr. Keith Andrews
Course Web Site:
My Web Site:

Only send me personal email if you really have to. Ask general questions about the course in the course newsgroup (see below). If you do have to send me personal email, please always state your name, group number, and Matrikelnummer. That makes you much easier to find.

Office Hour: By appointment.
Room DH03052, Data House, Sandgasse 36, 3rd floor.

Lecture Theatre i13, ICK1120H, Inffeldgasse 16b, basement.

Face-to-face (in-person).

Should COVID reappear, requirements like FFP2 face masks may have to be introduced, or classes may have to be moved online with Webex.


Starting Tue 05 Mar 2024 at 13:30.
See the course schedule.


This course is an introduction to human-computer interaction for undergraduate students, concentrating on user interface design and the methods of usability engineering.

1. Human-Computer Interaction
2. The Psychology of Usable Things
3. Usability Engineering
4. User Research
5. Usability Benchmarking
6. Interaction Design
7. Prototyping
8. Usability Inspection Methods
9. Usability Testing Methods
10. Usability in Practice
11. Visual Design and Typography 
12. Icon Design
13. Early History of HCI

Sign up in groups of 4 on TUGRAZonline.
Starting Mon 26 Feb 2024 14:00.
Ending Sun 03 Mar 2024 23:59.
Registration has now closed.

Form your own groups. If you have friends and colleagues who you know you can work well with, coordinate in advance and all sign up for the same group at the same time. Depending on the exact number of participants, there may end up being a few groups of three rather than four.

If all the groups are full, I will create new groups as necessary. However, I will only do this once most of the existing groups are full, so that groups are spread evenly across the tutors. If you are a single student, please sign up for a group with one to three existing students, so as not to block an empty group for a group of four who want to sign up together. For internal accounting reasons, one or more of the tutors may sometimes have less groups than the other tutors.

If you do not know anybody else, sign up for any group with a free place and contact the other group members by email using the “E-Mail an Teilnehmende” function in TUGRAZonline. Do not post “I am looking for a group” or “Who else is in my group?” messages to the official course communication channel.

If you register for the course, but later decide not to participate, please have the courtesy to unregister from the course.

After the unregistration deadline, if you wish to unregister from the course, please contact me by email. Depending on how far the course has already progressed, I will either unregister you without penalty or grade your work up to that point.

If you do not respond to emails from your group colleagues, or do not actively participate, I reserve the right to remove you from the course (with grade 5).

It sometimes happens that one group member does not actively participate and most (or all) of the work is done by the other group members. If this happens in your group and you feel you are carrying an inactive group member, let me or your tutor know and only write the names of the active group members on the reports you hand in.


For the practical exercises, it is assumed that you have good knowledge of HTML5 and some knowledge of CSS3. You should also understand what plain text files and UTF-8 are.

If you do not have any prior experience of these, you may wish to refer to Section 2.2 (plain text and UTF-8) and Chapters 10 (Polyglot HTML5) and 11 (CSS3) of my INM 2014 course notes (or similar material elsewhere). and HTML Dog provide good tutorials into HTML and CSS.

Aims and Objectives of Course:

Students will gain an overview of the theory of human-computer interaction. They will have an appreciation of how to design usable interfaces and will gain the knowledge necessary to perform heuristic evaluations and thinking aloud tests of user interfaces.

Teaching Method:

Lectures with integrated practical work.

Attendance Policy:

I will assume that you are attending the lectures. If you miss something, it is your problem and your responsibility to catch up.

Participation in the exercises is compulsory. You are not allowed to skip one or more of the exercises.

Attendance at the Client Meetings (Abgabegespräche) is compulsory.

Attendance at the final written exam (MC Test) is compulsory.

[Unless you have a very good reason backed up by appropriate documentation, such as a doctor's letter.]

Assessment Method:

Your grade will be determined by a series of practical exercises. See practicals for more details.

Lecture Notes: [243 pages PDF]

The lecture notes will be updated periodically during the course.

If you teach and would like a zip file of the corresponding lecture slides (the same material but in HTML, SVG, PNG, and JPEG), please contact me by email.

Course Books:

I highly recommend the following books for the course:

Practical Exercises:
Communication Channel:

I set up a room called “Human-Computer Interaction (HCI)” on as the official communication channel for the course:

This is where I will post news and announcements and where you should ask any questions you might have. It is also the right place to look to see if your questions have already been answered.

I am not on Studo, and will never post to Studo.

When you first access the chat server, you will be asked to log in using your TU Graz credentials (SSO).

See my Guide to Using TU Graz Chat.

Breaches of Academic Integrity:

The work you submit must be your own. Write in your own words. Do not copy from elsewhere. Do not generate text using an AI-based tool.

Copying the work of others (from the web, another group, or elsewhere) and then submitting the work as (part of) your own work is known as plagiarism and is a serious breach of academic integrity. Any text passages written by others, or images created by others, must clearly be identified as such. By taking this course, you agree to have your work submitted to plagiarism detection services. Your work may also be cross-checked against other work submitted in the same and previous years.

Assembling a collage of stolen text fragments, possibly with some slight editing or rearrangement, and handing them in as your own words is not acceptable, even if you reference the original source. If you are not well-practiced in the ways of academic citation (i.e. how not to plagiarise), I strongly recommend that you read Chapter 5 of my INM 2014 course notes and some of the resources on Debora Weber-Wulff's Plagiarism Portal web site.

If you help a fellow student in another group, be careful that you do not disclose your exact solution or work. If the group you help submits substantially identical work to your group, both groups will be punished for plagiarism.

AI-based tools may be used solely for spell-checking, translation, and stylistic improvement of your own texts. Any other use of AI-based tools will be regarded as use of unauthorised aids. In particular, do not use AI-based tools to generate text. Although such generated text can appear well-written and authoritative, the content is often imprecise and inaccurate. Do your own research and write in your own words.

The university has specific guidelines regarding the use of AI tools.

Do not fake. Faking data (for example, inventing the list of problems for a heuristic evaluation) is a serious breach of academic integrity.

The university has guidelines, and regulations regarding academic integrity. Breaches of academic integrity are very serious and will be punished appropriately where discovered.