Skip to content

Basic Input/Output and User InteractionActivities & Teaching Strategies

Active learning works for this topic because input/output design is inherently interactive—students must experience the gap between what a program says and what a user understands. Direct practice with prompts, testing, and output formatting makes abstract concepts concrete, helping students see why clarity matters in real interactions.

9th GradeComputer Science3 activities15 min40 min

Learning Objectives

  1. 1Design a program that prompts a user for their name and age, then prints a personalized greeting.
  2. 2Evaluate the clarity of prompts in a peer's program by identifying ambiguous wording or missing instructions.
  3. 3Create a program that displays a formatted output, such as a simple receipt or a weather report, with clear labels.
  4. 4Explain the importance of providing user-friendly instructions and feedback in a program.

Want a complete lesson plan with these objectives? Generate a Mission

15 min·Pairs

Think-Pair-Share: Prompt Quality Critique

Show three versions of the same input prompt, ranging from vague to specific. Students individually rank them from best to worst and write one sentence explaining their top choice. Partners compare rankings, then the class discusses which prompt characteristics produce the fewest user errors.

Prepare & details

Design a program that prompts a user for input and provides a relevant output.

Facilitation Tip: During Think-Pair-Share, assign specific roles (e.g., prompt critic, user advocate) to ensure all students engage with the quality of the prompt, not just the activity structure.

Setup: Standard classroom seating; students turn to a neighbor

Materials: Discussion prompt (projected or printed), Optional: recording sheet for pairs

UnderstandApplyAnalyzeSelf-AwarenessRelationship Skills
35 min·Pairs

User Testing Swap: Blind Program Run

Students write a simple input/output program without showing it to a partner. Partners then use each other's programs without seeing the source code, noting any moments of confusion. They return the feedback and the original author revises the prompts and output labels accordingly.

Prepare & details

Evaluate different methods for presenting information clearly to a user.

Facilitation Tip: For User Testing Swap, have students physically cover their screens with paper so they cannot see the code during testing, forcing reliance on the prompt and output alone.

Setup: Flexible workspace with access to materials and technology

Materials: Project brief with driving question, Planning template and timeline, Rubric with milestones, Presentation materials

ApplyAnalyzeEvaluateCreateSelf-ManagementRelationship SkillsDecision-Making
40 min·Small Groups

Design Sprint: Mad Libs Generator

Small groups design and build a Mad Libs-style program that collects user inputs, labels them clearly (noun, verb, adjective), and produces a formatted story. The group must agree on prompts before coding, then test with students outside their group.

Prepare & details

Explain the importance of clear instructions for user interaction.

Facilitation Tip: In the Design Sprint, require students to submit a draft Mad Libs template before coding to ensure they focus on prompt design first, not just the fun of the output.

Setup: Flexible workspace with access to materials and technology

Materials: Project brief with driving question, Planning template and timeline, Rubric with milestones, Presentation materials

ApplyAnalyzeEvaluateCreateSelf-ManagementRelationship SkillsDecision-Making

Teaching This Topic

Teachers should treat prompt design as a communication skill, not just a coding task. Model how to write prompts by thinking aloud about what a user might misunderstand, and avoid assuming students will intuitively grasp the difference between program logic and user experience. Research shows that students improve faster when they see the consequences of unclear design through user testing, so prioritize real-time feedback over isolated coding exercises.

What to Expect

Successful learning looks like students writing prompts that anticipate user needs, testing programs with real users to spot ambiguities, and designing output that is immediately interpretable without explanation. By the end, students should confidently explain why vague prompts or unlabeled output create user frustration.

These activities are a starting point. A full mission is the experience.

  • Complete facilitation script with teacher dialogue
  • Printable student materials, ready for class
  • Differentiation strategies for every learner
Generate a Mission

Watch Out for These Misconceptions

Common MisconceptionDuring Think-Pair-Share: Prompt Quality Critique, students may believe a program can infer user intent even with unclear prompts.

What to Teach Instead

Use the activity’s prompt critique worksheet to have students rewrite vague prompts like 'Enter value:' and then compare how many correct inputs different users provide. The data from user trials will clearly show the cost of ambiguity.

Common MisconceptionDuring User Testing Swap: Blind Program Run, students may assume output formatting doesn’t affect usability as long as the numbers are correct.

What to Teach Instead

During the blind run, have students attempt to use their partner’s program without seeing the code. Collect their notes on which outputs required guesswork (e.g., '42' vs. 'Your BMI is 21.3'), then debrief as a class to identify which formatting choices resolved the confusion.

Assessment Ideas

Quick Check

After the Think-Pair-Share activity, provide students with a short uncommented code snippet that includes a vague prompt and unlabeled output. Ask them to identify the prompt and output statements, predict the output for a given input, and rewrite the prompt and output to be user-friendly.

Peer Assessment

During the User Testing Swap activity, have students exchange programs and act as users. Each student must record confusing prompts or output and provide specific, actionable feedback to their partner. Collect these notes to assess whether students can identify and articulate clarity gaps in both prompts and output.

Exit Ticket

After the Design Sprint activity, ask students to write one sentence explaining why a clear prompt reduces user errors, and one sentence describing how labeled output helps users interpret results. Collect these to check for understanding of the core principles.

Extensions & Scaffolding

  • Challenge: Have students redesign a program with vague prompts to include multiple input types (e.g., numbers, text) and ensure the output adapts dynamically.
  • Scaffolding: Provide sentence starters for high-quality prompts (e.g., "Enter your [data type] in [units], for example: [example].") and templates for labeled output (e.g., "Your result is [value] [units].").
  • Deeper exploration: Introduce conditional output formatting (e.g., rounding numbers based on precision, using emojis or colors for emphasis) to explore how visual design affects usability.

Key Vocabulary

InputInformation provided by a user to a program. This is how programs receive data to process.
OutputInformation displayed or presented by a program to a user. This is how programs communicate results or messages.
PromptA message displayed to a user that asks for specific input. Clear prompts guide the user on what to enter.
VariableA named storage location in a program that holds a value, such as user input, which can change during program execution.
Data TypeA classification that specifies the kind of value a variable can hold, such as text (string) or numbers (integer, float).

Ready to teach Basic Input/Output and User Interaction?

Generate a full mission with everything you need

Generate a Mission