Choose a topic
Your topic decides how high you can score in every criterion. Check it here before you start.
What makes a good topic
What a good IA problem looks like
- The problem should need a software solution with enough complexity and innovation for DP Computer Science level.
- You must show organisational skills, algorithmic thinking, and the ability to code your own algorithms.
- The IA should be of personal interest to you.
Allowed forms of solution
New system
- OOP program
- Interactive web app with database
- Computer game
- Mobile app
- Simulation
- Stand-alone application
Add functionality to an existing system
- Connecting web pages to a database
- Writing a Moodle plug-in
- Adding meaningful new features to an existing system
Non-negotiable point
- The solution must be coded by you
- You must explicitly demonstrate and document algorithmic thinking
Inappropriate products
Copied or template-based work
- Copied code with no significant modification
- Website built from a template that predetermines the structure or layout
- Use of exemplar products or templates such as the Northwind database in Access
Insufficiently original development
- Copied computer game without major, properly documented modifications
- Builder, wizard, or drag-and-drop tools with no real code development
Ethics problem
- Any product that does not meet ethical requirements
- Minor cosmetic changes to a template are not acceptable
Getting the size right
| Too small | About right | Too big |
|---|---|---|
| A quiz that shows 10 fixed questions | A revision quiz where a teacher adds questions, students see the ones they got wrong more often, and scores are saved per topic | A full learning platform with accounts, video and AI marking |
| A form that saves bookings to a file | Room booking with clash checks, a weekly limit, a waiting list and a usage report (the PracticePal example) | A whole-school timetabling and booking system |
A good test: can you imagine 8–10 specific, testable success criteria, and at least a few parts that need your own algorithms (rules, calculations, searching, sorting, scheduling), not just screens that save and show data?
Learn from real IB examples
The IB's official exemplars for the new IA, with the total each scored. Read the one-page examiner comments to see what earned and lost marks.
| Project | Mark | Lesson | Open |
|---|---|---|---|
| IB timetable Java + MySQL | 26/30 | Generates a clash-free timetable; strong D write-up. | IA · examiner comments |
| Birthday card generator Java | 24/30 | Simple idea, very well documented and tested. | IA · examiner comments |
| Car management system Python + SQLite | 23/30 | Straightforward product, very good plan. | IA · examiner comments |
| Trip organiser Java | 22/30 | Assigns students to buses and rooms under constraints. | IA · examiner comments |
| Chat room Java sockets | 18/30 | Interesting idea; design and testing too thin. | IA · examiner comments |
| Quiz game Java | 17/30 | Few, incomplete success criteria limited every criterion. | IA · examiner comments |
| Currency converter Python | 16/30 | “A bit trivial”: free converters already exist. | IA · examiner comments |
| Flappy Bird clone Python | 13/30 | “Barely more than an academic exercise”: a copy of an existing game. | IA · examiner comments |