A brief outline of what is involved to complete your IB Diploma Extended Essay in Computer Science.
Defining your topic
It might be , but that doesn't mean it doesn't contain truth. The better extended essays will compare two things seeking to solve a similar problem. The cliché research question might be "To what extent does ABC compare to XYZ when performing task PQR?"
Most Computer Science extended essays will compare two related technologies, protocols or algorithms against each other in a measured evaluation. Most, but not all, will involve some programming as part of an experiment to generate data for analysis. This is not a requirment, however, and other options do exist provided they are carefully designed.
Choosing a topic
- Ensure your topic is technical. Computer Science is a technical course. Social issues related to ICT belong in the ITGS course.
- Ensure your topic is specific and measurable. For example, "Will Windows or Linux will give a better and more efficient performance?". This is too broad and undefined. "Efficient" under what circumstances or context? What is the goal you are trying to achieve?
- Ensure your topic is not speculative. For example, "will quantum computing replace normal binary computers?", or "Have we seen the end of Moore's law?" No-one can know the answer to these. There is nothing you could do that would measure or produce compelling evidence to assert one way or the other. Don't try to guess the future.
- Ensure your topic is not historical. That would probably become ITGS. The EE is not a history dissertation (for CS at least), it is a scientific analysis.
- Ensure your topic allows for primary research. Don’t just take statistics off a website, conduct your own research, gather your own evidence.
Machine learning based topics
Certainly the flavour of the month. Be aware that means the markers will receive lots of them, so yours needs to be good to stand out from the crowd. What could you do? Some aspects of machine learning you could use to narrow your essay:
- Learning methods: Supervised, unsupervised, reinforcement learning
- Decide on efficacy measure: Spead of decision making, adaptability, innovation, insight
- Branches of ML: Computational learning theory, Adversarial Machine Learning, Quantum Machine Learning, Predictive Analysis, Robot Learning, Grammar Induction, Meta-Learning
- Available tools: ai-one, Protege, IBM Watson, TensorFlow, Amazon Web Services, OpenNN, Apache Spark, Caffe, Veles
- Topics: Machine Learning Algorithms, Computer Vision, Supervised Machine Learning, Unsupervised Machine Learning, Deep Learning, Neural Networks, Reinforcement Learning, Predictive Learning, Bayesian Network, Data Mining
- Some good ideas here: Awesome Deep Learning Project Ideas
Some other topics
Not everything is machine learning. Here are some ideas...
- Compare two compression methods for a given problem (lossless for text, lossy for images/video/audio)
- Compare two object recognition methods (compare YOLO to something else?)
- Compare two methods for determining primality in very large numbers
- Compare simple "if-then-else" with "fuzzy-logic" control methods on a following robot.
- Compare two path finding algorithms
- Compare of two encryption or hashing techniques for a particular scenario
- Compare the efficency of "sort then binary search" vs "linear search of unsorted data" for a particular problem
- Compare the efficency of solving the same problem two different ways... perhaps using two different programming languages.
- Compare two ways of designing a Robotics/Arduino/Raspberry Pi project for the same task
- Compare two ways of designing a computer network for a particular narrow requirement
- Compare two database systems for a particular narrow requirement
If you are keen to investigate something with a social implication and have it qualify as computer science, you would need to investigate it from a technical perspective. For example: Compare the efficacy of Haar and Dlib face recognition algorithms for racially diverse faces.
While not a requirement, and should be customised to the needs of your EE, you should draw guidance from the traditional structure for a science experiment. This is particularly the case if you are doing a comparison analysis of two algorithms, or two technologies, etc.
- Independent variables: The variables you are changing in order to conduct the experiment (the inputs)
- Dependent variables: The variables that change as a result of the experiment (the outputs)
- Control variables: The variables that could affect the outcome if they changed, so have been made constant so they do not cause errornous results.
The criteria is common across extended essays regardless of subject. The EE is marked out of 34 as follows:
- Criterion A: Focus and method 6 marks (topic is narrow and well defined, methodology used is appropriate)
- Criterion B: Knowledge and understanding 6 marks (knowledge, understanding, terminology is on point)
- Criterion C: Critical thinking 12 marks (research, analysis, discussion, critical evaluation of findings)
- Criterion D: Presentation 4 marks (structure, layout)
- Criterion E: Engagement 6 marks (reflective decision making throughout the process)
Historical grade boundaries: 0-6 E; 7-13 D; 14-20 C; 21-26 B; 27-34 A.
Maximum word count for the essay: 4000
Maximum word count for the reflections: 500
Guidance from the subject report
- Effective introductions are central for criterion A and must include a justification of why the topic was chosen, and why and how the selected sources were chosen
- Sometimes students may need to revise their research question; therefore, a research question should always be considered provisional until they have enough research data to make a reasoned argument
- The application of sources to support knowledge and understanding is central. Simply recounting primary or secondary sources is insufficient. The sources need to be applied to the student’s own thinking.
- The main issue for students with this criterion was the tendency to describe rather than analyse and evaluate. Conclusions were often repetitions of key ideas rather than syntheses that also offered limitations of research and unanswered questions.
There are 6 required elements to the essay:
- Title page which includes: the title of the essay; the research question; the subject; word count
- Contents page
- Body of the essay: Subheadings can help support the structure of the essay
- Conclusion: what has been achieved, including notes of any limitations and any questions that have not been resolved. While students might draw conclusions throughout the essay based on their findings, it is important that there is a final, summative conclusion
- References and bibliography
Timeline class of 2021
Meeting 1 (March 6, 2020)
- Discuss proposed focus, question, programming/experiment elment.
- Topic and proposed programming element to be approved/locked in this meeting (scope is appropriate?, proposal is feasible?)
Meeting 2 (April 3, 2020)
- "1000 words" deadline
- First reflection (fill out on RPPF)
- Background research finished - except where new research is required to explain the experiment results (ie: the primary research)
Meeting 3 (April 29, 2020)
- "2000 words" deadline
- Programming for the experiment finished, though data collection could be ongoing dependant on project
- Start documenting results of the experiment/primary research/program
Meeting 4 (June 19, 2020)
- "4000 words" deadline
- Full fraft EE with citation and referencing
- Written feedback
- Second reflection (RPPF #2)
- Action plan for the summer to be agreed upon
Meeting 5 (August 21, 2020)
- Identify/resolve final issues prior to EE submission
Submit final (9 September 2020)
- Submit final EE
Meeting 6 (9 October 2020)
- Viva Voce final reflection (RPPF #3)