Skip to main content
AP CSP course

C03 · Topic 1.2 · 40 minutes · CRD-2.A, CRD-2.B, CRD-2.C, CRD-2.D

Purpose and users

By the end you can:

  • State a purpose using a user and outcome.
  • Distinguish purpose from a feature.
  • Explain how functionality supports a purpose.

Before this lesson: topics 1.1.

Purpose
The goal a computing innovation or programme is intended to serve.
Input/output
Data or events supplied to a system, and information or effects it communicates externally.

Understand

A purpose explains why a programme exists for someone. A feature describes something it does. “Uses a blue button” is not a complete purpose; “helps students find a room with space before walking there” names a user and an outcome that functionality can support.

The same feature can support different purposes, and a programme can have unintended effects beyond its intended goal. Explain the connection from a concrete interaction to a useful result, rather than assuming that using an app or collecting data is a benefit by itself.

Worked example

A fictional club app takes a chosen day, filters clubs with space and displays matches.

  1. User: a student choosing a club on a day they are free.
  2. Purpose: find a suitable club with available places.
  3. The day filter and capacity check support that purpose; their colour and screen position are interface choices.

Explore each concept

Choose a concept, change its inputs and follow the explanation. Each example models the stated rule or scenario; completing it is practice rather than evidence of mastery.

  • Purpose versus feature
  • Event-driven execution
  • Input, processing, state and output
Open this example on its own

Change it · step through · explain

Change an input, predict what will happen, then advance one step. Read why the state changes, reset and experiment. This fixed teaching model does not save progress or award XP.

Ready · Make a prediction

Ready to explore: Purpose, events and observable output
  1. Program purposefind-a-roomWaiting
  2. Input eventclickWaiting
  3. Initial internal count (0–10)2Waiting

Ready to explore: Purpose, events and observable output

Why: Change an input, predict the first effect, then advance one step.

Try this: Change one input or choose another listed case. Predict the effect, reset and compare the states and governing rule.

Step through and experiment

Change it · step through · explain

Change an input, predict what will happen, then advance one step. Read why the state changes, reset and experiment. This fixed teaching model does not save progress or award XP.

Ready · Make a prediction

Ready to experiment
  1. Input 1ArtWaiting
  2. Input 25Waiting

Ready to experiment

Why: Predict the first change, then advance one step.

Try this: Try 0, 007, an empty input and a letter. Does validation or display change?

Check a misconception

Claim: The purpose is simply “to run code”.

Running code describes a mechanism, not the user’s intended achievement.

Guided practice

Write a purpose for a homework reminder without naming a screen.

Work with a partner. Make a prediction, compare your reasoning, then identify the rule that supports your answer.

Independent transfer

A programme logs visits but never shows a recommendation. Can logging alone establish that it helps choose a club?

Exit check

Give one feature and explain its connection to a purpose.

Write your reasoning before comparing with a classmate. If your teacher assigned this task, submit it through My classes to save your work and receive feedback.

Check yourself

  1. Question 1 of 2Which statement describes a purpose?

    Select one answer.

  2. Question 2 of 2Which TWO details explain how the club app serves its purpose?

    Select exactly two answers (0 of 2 selected).

Your practice so far

Check an answer to see its rationale.

Teacher guidance and scoring