Course Level
CS1
Knowledge Unit
Fundamental Programming Concepts
Collection Item Type
Assignment
Synopsis

Iteration is a central to HCI design. The learning objectives of this introductory HCI class activity is to experience and recognize the importance of iteration in the HCI design process, and to practice how small iterative design changes and consistent implementation and evaluation can have on the overall design.

In this class activity, HCI students practice the iterative design process in a rapid and engaging activity. The activity includes three iterations of playing a simple game (tic-tac-toe) in small groups of 2-3 students and changing the rules of the game from one iteration to the next. In the first iteration (baseline), students play the original tic-tac-toe game. Thereafter, in each iteration, students choose and make one change to one rule of the game in its current iteration, play the modified game, and evaluate the impact of the change on the game experience. By the end of the activity, the new game that underwent 3 changes may be substantially different from the original tic-tac-toe game.

After students complete the class activity, it is recommended to hold a class discussion in which students present the changes they made to the tic-tac-toe game throughout the iterations and reflect on the effects these iterative changes had on the game experience. The instructor facilitates this discussion, emphasizing the power of iteration in the HCI design process.

ACM Digital Library Entry

Recommendations

Scope

The activity is designed for students in an introductory HCI course, where they learn the steps of HCI design, from user research, through scoping the design problem, generating design ideas, implementing the design as a prototype, and evaluating the design. Students learn through this activity that following the HCI design steps iteratively can help them improve the design toward a desirable user experience. It is therefore recommended to introduce this class activity early in the semester, when the HCD process is presented as a whole, and before deep diving into each specific stage.

Advanced students may also benefit from understanding the role of iteration to identify and redirect failure toward more creative outcomes. Students who have software development skills may come with an idea for a solution and may be less open to changing it in response to feedback, or they might engage in confirmation bias. We hope to get students to see their first design idea as a starting point (a design idea, not the design idea) and iteratively apply changes based on feedback, instead of sticking to their original solution. In other words, this activity may help students shift from the mindset of “getting the design right” to “getting the right design”.

This activity is appropriate for class size from 15 students to more than 200 students. Upon submitting the worksheet, students can receive attendance or in-class participation credit.

Logistics

Students work in groups of 2-3 students, all sharing a single worksheet that is distributed in the classroom. Students are given 15-20 minutes to complete the activity. The instructor and teaching assistants, if available, walk around the classroom to engage students in conversations about the current section of the activity on which they are working (each section corresponds to a single design iteration).

Engagement Highlights

This class activity applies the principle Make it Matter from the NCWIT Engagement Practices Framework by applying the engagement practices of incorporating student choice. Starting from a simple game, students decide what changes to apply in each iteration, and observe first-hand the effects of these changes. Allowing students to apply their creativity in changing the game makes the activity open-ended and fun and serves as an ice breaker in the learning process.

The activity also applies the principle Grow an Inclusive Student Community by applying the engagement practices of a well-structured collaborative learning activity and encouraging student interaction. It is likely that all students are familiar with tic-tac-toe (and otherwise the game is easy to learn: the rules are provided in the lecture and on the worksheet), and this allows students of all backgrounds to engage in the activity. At the class discussion that follows the activity, the instructor emphasizes the variety of games that were created in the different groups and the variety of different paths each group took toward their final game. This demonstrates the contribution of a diversity of mindsets to achieving a wide range of acceptable processes and outcomes.

Computer Science Details

Programming Language
Python

Material Format and Licensing Information

Creative Commons License
CC BY