aımnova
DashboardMy LearningCrash CoursesStudy Plan

Aimnova site navigation

Stay in the loop

Get the latest study resources and updates

New features, study tips and exam insights — straight to your inbox.

IB Diploma

  • IB Past Papers
  • IB Study Notes
  • IB Question Bank
  • IB Mock Exams
  • IB Revision

IB Subjects

  • IB Math AA
  • IB Math AI
  • IB Economics
  • IB Business Management
  • IB Physics
  • IB Biology
  • View all IB subjects→

IB Past Papers

  • IB Math AA HL Past Papers
  • IB Math AA SL Past Papers
  • IB Math AI HL Past Papers
  • IB Math AI SL Past Papers
  • IB Economics HL Past Papers
  • IB Economics SL Past Papers
  • IB ESS Past Papers
  • View all past papers→

Study Resources

  • Study Notes
  • Question Bank
  • Mock Exams
  • Crash Courses
  • Flashcards
  • Revision Guide
  • Exam Skills
  • Command Terms
  • Grade Calculator
  • Exam Timetable 2026

Aimnova

  • Features
  • Pricing
  • For Teachers
  • For Schools
  • For Parents
  • About Us
  • Blog
  • Contact
aımnova

IB study, practice and feedback built around the real exam.

TermsPrivacyCookies·© 2026 Aimnova. All rights reserved.c1e448f

Aimnova is not affiliated with or endorsed by the International Baccalaureate Organization (IB).

NotesComputer ScienceTopic 5.1Problem specification
Back to Computer Science Topics
5.1.14 min read

Problem specification

IB Computer Science · Unit 5

Exam preparation

Practice the questions examiners actually ask

Our question bank mirrors real IB exam papers. Practice under timed conditions and track your progress across topics.

Start Practicing

Contents

  1. 1Deciding what you are actually building
  2. 2The six parts
  3. 3What makes an objective testable
  4. 4Exam-style question
The big idea: A problem specification writes down exactly what the program must do, before anyone writes any of it.

It is what you check the finished program against — and without it, "finished" is a matter of opinion.
Why it comes first: "Make a system for the library" cannot be built or tested, because nobody can say when it is done.

The specification turns a wish into something with a definite answer.

Free preview

This is the free notes preview

You're reading the free notes. Aimnova Pro unlocks the full study experience — and you can try it with your first topic free to keep:

  • FlashcardsLock in vocabulary and key terms with spaced repetition.
  • Practice questionsAnswer exam-style questions and get instant AI marking.
  • Mock exams & past-paper vaultSit full mocks and see exactly how examiners award marks.
  • Personalised study planA daily plan built around your exam date and weak areas.
Start Studying Free Full access to Aimnova Pro · cancel anytime
1

Problem statement

One or two sentences saying what problem is being solved and for whom.

"Library staff cannot tell which loans are overdue without checking every record by hand." Describe the problem, not the solution you have in mind.

2

Objectives and goals

What the finished system must achieve, written so each one can be checked off.

"List all overdue loans within five seconds" is an objective. "Be easy to use" is not — nobody can tell whether it was met.

3

Input specification

What goes in: each item, its type, its valid range, and where it comes from.

"Member ID: a whole number between 1 and 99999, entered by staff." This is also where validation rules come from.

4

Output specification

What comes out: the format, the destination, and what happens when there is nothing to show.

"A list on screen, sorted by days overdue, showing member name, title and days late; a message if there are none."

5

Constraints and limitations

What you are not free to choose: the language, the hardware, a deadline, a budget, data protection rules.

Also what the system will deliberately not do — which prevents arguments later.

6

Evaluation criteria

How anyone will judge whether it worked, decided now rather than afterwards.

"Staff can find every overdue loan in under a minute, tested on a full term's data." Written before you build, so you cannot move the target.

Learn what examiners really want

See exactly what to write to score full marks. Our AI shows you model answers and the key phrases examiners look for.

Try AI Feedback FreeYour first topic is free to keep • No credit card required

Testable

  • "Return results within five seconds on 10,000 records"
  • "Reject any member ID outside 1 to 99999"
  • "Show a message when no loans are overdue"
  • Each one can be tried, and the answer is yes or no

Not testable

  • "Be fast"
  • "Handle errors properly"
  • "Be user-friendly"
  • Each one is a matter of opinion, so it can never be settled
The test for an objective: Ask: how would I prove this was met?

If you can describe the test in one sentence, the objective is good. If not, rewrite it until you can.
Where the marks usually are: Exam answers lose marks by writing vague objectives and by skipping the input and output specifications.

Naming types and ranges for inputs takes one line each and is the easiest part to get right.

How this is tested — you must write objectives and input-output specifications that could actually be tested. It comes up two ways:

Paper 2 — working with code

  • Construct a specification from a scenario, 4-6 marks
  • Write objectives, inputs and outputs
  • Identify constraints the scenario implies

Paper 2 — the algorithmic-thinking question

  • Specify a problem described in words, with no code involved
  • Say how the finished solution would be judged
The classic trap: Writing objectives that cannot be checked. "Be efficient" earns nothing; "process 10,000 records in under five seconds" earns the mark, because it can be tried.
IB-style questionConstruct[6 marks]

A school canteen wants a program that lets students pre-order lunch and tells staff how many of each meal to prepare. Construct a problem specification.

Model answer plan

See the answer broken into clear points, with guidance on how each point earns marks.

Claim your free topic

Try an IB Exam Question — Free AI Feedback

Test yourself on Problem specification. Write your answer and get instant AI feedback — just like a real IB examiner.

A car park wants a program that counts cars in and out and shows how many spaces are free on a sign at the entrance. one output in its specification. [1 mark]

Related Computer Science Topics

Continue learning with these related topics from the same unit:

5.1.2Computational thinking5.1.3Applying the concepts5.1.4Tracing flowcharts
View all Computer Science topics
Improve your exam techniqueCommand terms, paper structure, and mark-scheme tips for Computer Science
Previous4.4.2Ethics of everyday techNextComputational thinking5.1.2

26 questions to test your understanding

Reading is just the start. Students who tested themselves scored 82% on average — try IB-style questions with AI feedback.

Start FreeView All Computer Science Topics