Skip to main content
← Unit 1: Creative Development

Code Scholars Tutoring · AP Computer Science Principles

1.1 Purpose, Requirements, and Users

How it works

A program should have a clear purpose and requirements that describe what it must do for users.

State the user need first, then list only the features required to meet that need.

Common error

Do not confuse “uses a list” or “has buttons” with the actual purpose.

Worked example

A homework planner contains buttons and a list. State its user-facing purpose and measurable behavior.

Data / pseudocode

Users: students
Input: task and due date
Output: upcoming tasks in date order
User inputProgram logicUseful output
User input → Program logic → Useful output

The purpose is to help students identify upcoming work. Buttons and lists implement that purpose but are not the purpose itself. A requirement could state that adding a valid task makes it appear in the correct due-date position in the displayed list.

Exercises

1.1.1

For a cafeteria app that lists meals and allergens, state one purpose, one input, and one output.

Show solution

Purpose: help users choose a suitable meal. Input: a selected day or dietary filter. Output: matching meals and their allergen information.

1.1.2

Turn "make the app easy to use" into a testable requirement for adding a homework task.

Show solution

For example: a student can enter a task and due date, save it, and see it in the task list without re-entering information. Define how the usability test will observe successful completion.

Need help with this topic?

Work through questions with a tutor and get help with the steps you find difficult.

Get help with this topic