Block 2 · Class 5

Your own product.

Choose it. Define one workflow.
Build it. Explain why it works.

Introduction to Programming · Nova SBE

From Class 4 to Class 5

You write the next task.

Last week

Follow a spec

Read the instructions, run the tests, review the change.

Today

Define a feature

Read the product brief, choose a workflow, state what must be true.

The same loop: instructions → build → check → revise.

Choose a product

Three different experiences.

01

Plot Twist

A mystery with items, locked choices, and multiple endings.

02

Campus Tycoon

Buy stock, set prices, and run a business for five days.

03

Festival Architect

Book artists and build a feasible festival lineup.

Open the overview and project briefs →

State · A room and a key

What does the app know?

You are in an office.
A key is in the drawer.
The door is locked.

What happens when you try the door?

State · An action that is rejected

The world stays the same.

Before

Office

Inventory: empty.

Action

Try the door

Rule: the player must have the key.

After

Office

Inventory: empty. Explain why the route is blocked.

Rejecting an action must not change the saved game.

State · An action that is accepted

The key changes your options.

Collect the key

Office
Inventory: key

→

Use the route

Check the inventory.
The condition now holds.

→

Enter the corridor

Corridor
Inventory: key

Return to the drawer. Can you collect the key again?

Persistence

Close the app. Come back.

Content

The story

Scenes, item locations, and the rules for each choice.

State

This game

Current room, inventory, remembered choices, ending.

Persistence

The saved game

Store accepted changes. Load them when the app starts again.

A Python variable is not automatically saved. Git history is not player progress.

Read the BRD

A product is bigger than a task.

The full product

Plot Twist

Five scenes, two items, two endings, saved progress.

The first task

One locked route

Collect a key, open the route, and resume after a restart.

The first task proves one complete workflow. Later tasks complete the brief.

Write the spec

Four familiar headings.

Intent

Why

What can the user accomplish?

Behaviour

What

Which actions and rules must work?

Boundary

Out of scope

Which parts of the product wait?

Evidence

Done when

What concrete checks prove this task works?

Before you build

Write the expected result.

Starting stateActionExpected result
No keyTry locked routeBlocked; state unchanged
Key collectedUse routeCorridor; key retained
Progress savedStop and restartSame room and inventory

Review these expectations before AI writes the tests.

Live build

Brief the first workflow.

Read the product brief and specs/first-feature.md.
Identify the state, what must be saved, and the rejection rule.
Propose checks for an allowed action, a rejected action, and restarting the app.
Do not implement yet.

Read the proposal against the brief. Then build only the reviewed task.

Live verification

Follow the click.

app.py

The screen

Where does the user action enter the program?

logic.py

The rule

What makes it valid or invalid?

db.py

The stored state

What is written, and what is loaded later?

Read the test output. Click both paths. Stop the process, restart, and resume.

Your turn

One workflow you can explain.

20 minutes · Open the planning sheet →

While you build

Keep the first task small.

Plot Twist

One route

Collect → unlock → save → resume.

Campus Tycoon

One day

Buy → trade → reconcile → reload.

Festival Architect

One booking

Schedule → reject overlap → reload.

Ready? Start your own repo and first-feature branch. Still planning? Test the spec with a neighbour.

The exam

Explain the app you built.

  • Trace one workflow.
  • Explain state and storage.
  • Predict an action’s result.
  • Locate a described bug.
  • Explain one verification check.
  • Reason about a new requirement.

Your project: 30% of the course grade. Read the public question template →

Before the next practical

Bring a clear first feature.

W6–W7: build the product. W8: choose a starting point for the team project.

← → navigate · F fullscreen · Week 5 materials