Table of content
Let's geek out and talk about all things IB Computer Science IA.
Regarding your Computer Science IA, things can get quite complex and confusing. Whether choosing the right client with an apt problem to solve or structuring one's IA correctly, taking care of the minutest details can throw one off the edge. But while all those things are true, there is nothing that concise and coherent guidance can't solve. If you are an IB DP Computer Science student, you're already a problem solver, and the boost you need to nail your IB Computer Science IA is a comprehensive step-by-step guide. And we present to you just that.
This IB Computer Science IA Guide will solve all your queries about your investigation and give you 25+ topic ideas to brainstorm. Pretty convenient? Please take this as a sign to kickstart your Computer Science IA process and nail it!
Before we dive deeper, we suggest you skim through these documents on IB DP Computer Science, published by the IB. These will brush up your basics on what IB expects of you and help you immensely as you prepare your IB Computer Science IA.
Understanding IB DP Computer Science From Scratch
The IB describes the IB DP Computer Science as a rigorous problem-solving course. Offered in two-course levels: Standard and Higher, IB highlights its features and benefits to the students as follows:
- Learning programming skills relevant to nearly all fields of study
- Developing computational and algorithmic thinking via assessments
- Encouraging students to investigate current issues in-depth that are not covered in their syllabus
In general, the core topics covered in both Computer Science SL and HL are:
- System fundamentals
- Computer organization
- Networks
- Computational thinking, problem-solving, and programming
The additional topics covered in the HL extension are:
- Abstract data structures
- Resource management
- Control
Besides the above, four-course options are offered as an HL extension:
- Databases
- Modelling and simulation
- Web science
- Object-oriented programming (OOP)
For a detailed understanding of the two, refer to these documents published by the IB on Computer Science SL and HL.
Let us now learn more about the IB Computer Science IA.
IB Computer Science IA: Everything You Need To Know
The Computer Science Internal Assessment is where students are expected to demonstrate the practical application of the skills learned during the course. This is done by developing a product and preparing the requisite documentation for this product/solution. Your IA is scored on a 34-point scale.
The IB has assigned the Computer Science SL IA a weightage of 30% (of the total grade) and HL IA a weightage of 20% (of the actual rate). The word limit on the IA is 2000 words, excluding the Bibliography, Footnotes, and Appendices.
The components of your Computer Science IA are:
- A cover page
- The fully-functional product
- Documentation which includes a 7-minute-long video
Five criteria are assessed, each of which tackles a particular aspect of your investigation. The five criteria as listed by the IB are:
- Planning
- Solution overview
- Development
- Functionality and extensibility of the product
- Evaluation
A few essential pointers to keep in mind before beginning your IA process are:
- IB has revised the Computer Science IA to an open-problem-solving exercise that allows students to choose a programming language by will. It is not a Java-related task anymore. You should, however, justify your choice of programming language in the context of your solution.
- The objective of the Internal Assessment is to develop a solution for a specific client for a particular problem.
- Some investigation-specific terminology you should know:
- Solution - all-encompassing work submitted as the IA
- Product - the software developed; a part of the solution
- Developer/Student - one who proposes and implements the solution
- Client - for whom the product is developed
- Advisor - a mentor/third party referred to for guidance.
- Students should select a challenging topic that interests them. Ensure the solution you propose and present documents your algorithmic and organizational skills.
- Word of Warning: Do not under any case:
- Develop a product by copying code found elsewhere.
- Rip off a web-based template for your website (product)
- Use any other existing unmodified software.
- The more you include graphical representation in your IA, the better. Visual content (tables, screenshots, diagrams, charts, etc.) will give your work credibility, not to mention the clarity it will add. You don't have to narrate a story through words; you have to propose a plausible solution with the needed requisites to back it up.
Let us break down the Computer Science Internal Assessment further with these points in mind, shall we?
How To Know They’re The One: Finding The Right Client For Your Computer Science IA
This is the most critical stage of your IA process. It's always good practice to approach your parents, teachers, or relatives as the first option. But an acquaintance or a personality running a business etc. can be closed.
- Ensure you understand your client's needs and consider how you can contribute to them.
- Discuss the criteria for work and obtain consent for the personal use of data before you start working.
- Maintain confidentiality where required and be responsible for sensitive data and information.
- Schedule at least two interviews with your client. The preliminary one is to assess the need and feasibility of the product, and the secondary is to consult with the client on the rationale and success criteria you come up with. You are supposed to move ahead only when they give you approval on the success criteria of the final product. You must attach the transcripts of the interviews in the appendix and refer to them in the main text.
- Get feedback and evaluate your solution after you hand it over to the client.
There may be better ideas than becoming a client for your own IA. Also, remember to communicate all your options with your advisor before settling on one.
The Computer Science IA Topic Hunt
Your IB Computer Science IA topic should be of appropriate complexity that explicitly demonstrates your algorithmic and organizational thinking. Your work should show your computational thinking. The topic doesn't necessarily have to be related to your syllabus, and there is the freedom to choose a programming language if you justify its use. The IB states your solution can be in the form of the following:
- Creating a new system, such as an OOP program, a relational database, a simulation, or a stand-alone/ web-based application
- Adding functionality to an existing system, such as connecting a webpage(s) to a database, writing a function for Moodle, writing a plug-in, or developing a stand-alone application
In case of an addition, modification/improvement to an existing work, clearly highlights the job done by you. Also, steer clear of copying available code.
For some inspiration, skip to our subsection on 25+ IB Computer Science IA topics!
Breaking Down The Computer Science IA Solution
- Product: A fully functional product must be developed whose access must be given to the moderator. A video of the product in use must be handed in as well.
- Documentation: This is the supporting content/documentation included in the 2000 word limit and is inclusive of-
- Record of Tasks
- Any form of extended writing for Design, Development
Organization Of Your Documentation Based On The Assessment Criteria
Criterion A: Planning (Levels: 0-6)
The three document components that must be included in the Planning criteria are:
- The Scenario
- Document - Description of the Scenario
- Estimated Word Count - (175-250)
- Format - Extended Writing
- This component deals with defining the problem statement. Justifications on why the particular client was chosen and the need for the product are dealt with here.
- The rationale for the Solution
- Document - Justification for the proposed product
- Estimated Word Count - (175-250)
- Format - Extended Writing Here, you state why the proposed Solution will be effective for your particular use case. Always consult your client and adviser and justify your choice of technology stack.
- Success Criteria
- Document - Success Criteria for your final product
- Format - Bulleted List
- These are the specific criteria against which your final product is evaluated.
Criterion B: Solution Overview (Levels: 0-6)
The two document components that must be included for the Solution Overview criteria are:
- Record of Tasks
- Document - Record of Tasks
- Format - Record of tasks from the template as provided by the IB
- The record tasks include:
-
- a chronology of the critical events in the planning, designing, developing, testing, and implementing of the Solution
- any other issues that may arise may affect the Solution's development.
-
The official template provided by the IB for the Record of Tasks form can be found here.
- Design Overview
- Document - Design Overview
- Format - Document including diagrams, tables, scanned sketches, flowcharts, screenshots, pseudocode, or any other diagrammatic representation
- The Design Overview comprises:
-
- design methodologies appropriate to the type of product being designed
- Different levels of the draft design, such as the overall structure and the internal layout of the product itself, can also include the investigation into specific elements used within the product (such as classes, sub-classes, tables, queries, style sheets, graphic elements, effects)
- Evidence of a testing plan that addresses the main areas of functionality of the product.
-
Criterion C: Development (Levels: 0-12)
- Document - Developing the Product
- Estimated Word Count - (500-1000)
- Format - Extended Writing (inclusive of screenshots as evidence and reasoning for the techniques opted)
Please list the techniques opted by you in this document which include but aren't limited to algorithmic thinking, data structures, software tools, and user interface. Here you give a detailed account of your algorithmic thinking. Also, include reference material ranging from templates to applets here. Your product code can be provided in the appendix.
Criterion D: Functionality and extensibility of product (Levels: 0-4)
The two components for this criteria are:
- The functionality of the product
- Estimated duration - 2-7 minutes, 5 minutes recommended
- Format - Video for evidence of functionality (MP4 format)
- While demonstrating the functionality of your product and explaining its features, cover the success criteria the product has managed to achieve. Remember to discuss how the program can be extended and its future scope. If needed, documents, including screenshots showing the product functioning, should be included in the documentation folder with information on how to access it on the cover page.
- Extensibility of the product
- This is assessed from the Design Overview and Development of the Product sections of your Solution.
Criterion E: Evaluation (Levels: 0-6)
The two components for this criteria are:
- Evaluation of the product
- Document - Evaluating the product.
- Estimated Word Count - (175-250)
- Format - Extended Writing
- Assessment of the product against the success criteria listed should be done both on the client's and the developer's end.
- Recommendations for the future development of the product
- Document - Recommendations for improving the product
- Estimated Word Count - (175-250)
- Format- Extended Writing
- Discuss possible improvements for the product and their corresponding benefits.
To conclude, the assessment criteria for both Computer Science SL and HL IA are the same. You can learn more about them here. These will help you better understand how to make your IA shine.
Computer Science IA Submission: The Final Step
The format for submission can get tricky, but the IB helps you with every component. All you've got to do is take care of the following:
- Create a zip file following the official template zip file provided by the IB.
- Hyperlinked documents on your zip file should be presented on your solution HTML cover page (website template).
25+ IB Computer Science IA Topics You Can’t Miss Out On!
There is no one "right problem" you would take up for your investigation, but it always helps to go through examples that get your creative juices flowing.
Your problem statement sets the tone for your IA quite literally. You must make sure everything runs smoothly. If you're here for inspiration, we assume you have read our subsection on The Computer Science IA Topic Hunt. If not, give it a good look before you start brainstorming ideas.
Below are some general IB Computer Science IA topics to get the ball rolling!
- An Application to help a client organize and manage a regular event
- An Application to help book a room/lodging
- A simple and efficient inventory management system
- An Interactive game application
- An Application used as a budgeting tool
- An Application for file backup
- A web-based program to schedule/manage personal fitness goals.
- A web application to schedule regular client appointments at a dentist's clinic
- A PHP text-based game
- A program for sorting products for a client
- Using Google Calendar API to schedule meetings/workshops
- An educational game using Pygame that makes learning fun
- A web-based logging framework
- A functional database for a school
- A functional database to keep track of one's investment portfolio (stock market investments)
- A program to keep track of books in a public library, whether borrowed, available, or missing.
- A python script was used to develop a network analysis tool that helps users clearly understand what might be wrong with a network connection application snooper.
- A functional database for an airline to keep track of its flights and respective fares to perform proper analytics to maximize profit.
- A programmed simulation to model various physics experiments
- A web program to help students understand what school they might be accepted to with their GPA
- An application that acts as a medication tracker to assist diagnosticians and patients alike. An application to manage screen-time
- A sorting program for a shoe retailer
- A functional database for a real estate agent to keep a record of client information
- An interactive problem-solving game, for example, Chess.
- An application that tracks all your TV shows
- An easy-to-use homework management application
- An application to be used for a hospital management system
The topics listed above will help you better understand what IB expects students to explore and plan regarding your Computer Science IA. To fully comprehend what it takes to prepare a good CS IA, refer to these fully annotated investigations published by the IB. These are your sure-shot way to success!
That's all for now!
We hope this IB Computer Science IA guide will help you understand IB's expectations from your IA and help you quickly score that 7! Check out our Take a Test series to get a better grip on your Computer Science fundamentals. For premium ib resources and guides, check out our repository!
Remember to sign up for our comprehensive video lectures delivered by IB experts and IB alums that can be found here.
What are you waiting for?
This is your sign to take a step towards nailing your IB journey! Want some A-quality guidance for all things IB? Start your Nail IB journey today, and thank us later!