A-Level OCR Computer Science Paper 2
1. Explain and evaluate the use of caching: Data that has been used is
stored in cache/RAM in case it is needed again, allowing faster access for future
use. Gives better performance of program, however takes time and may be
difficult to implement.
Relies on the same data needing to be accessed multiple times.
2. Evaluate the use of concurrent processing: Several processes work
simultaneously to solve a problem.
Multiple processors each work on a different part of the problem at once.
Only speeds it up if the program is able to be solved concurrently (e.g. works for
linear search, but not binary search).
Could be limited by bottlenecks such as accessing a storage device.
n processors could potentially mean an increase of up to 1/n of time, but realistically
speed increase is likely to be less.
3. What is the need for, and benefits of, producing and using reusable
program components?: Program is split into small components, helping with
decomposition.
Can identify components that are needed in more than one place.
Can be imported into other areas of a program.
Can be imported into any future programs.
Can be tested independently.
Changes made in them update across the whole program.
Can import library sub-procedures, which are likely to be error-free as they have
been tested by someone else.
Saves time, as code does not have to be re-written.
Can update one module and it will change all programs that use it - don't have to
change every place the code is written, avoids accidentally missing one.
4. Describe features commonly found in IDEs: Stepping Through The Code -
to run one line at a time to see where the error is, allows the programmer to watch
the effects each line of code.
Syntax Error Highlighting - to find syntax errors in the program code.
Setting breakpoints - to debug individual sections of code at a time, allows the
program to be stopped at a predetermined point in order to inspect its state.
Variable watch window - to check that the variables are being updated correctly.
5. Reasons to use a simulation before implementing something in the real
world: Safer
Time can be sped up / decreased, so do not need to wait to see what happens and
can view changes immediately
1/4
1. Explain and evaluate the use of caching: Data that has been used is
stored in cache/RAM in case it is needed again, allowing faster access for future
use. Gives better performance of program, however takes time and may be
difficult to implement.
Relies on the same data needing to be accessed multiple times.
2. Evaluate the use of concurrent processing: Several processes work
simultaneously to solve a problem.
Multiple processors each work on a different part of the problem at once.
Only speeds it up if the program is able to be solved concurrently (e.g. works for
linear search, but not binary search).
Could be limited by bottlenecks such as accessing a storage device.
n processors could potentially mean an increase of up to 1/n of time, but realistically
speed increase is likely to be less.
3. What is the need for, and benefits of, producing and using reusable
program components?: Program is split into small components, helping with
decomposition.
Can identify components that are needed in more than one place.
Can be imported into other areas of a program.
Can be imported into any future programs.
Can be tested independently.
Changes made in them update across the whole program.
Can import library sub-procedures, which are likely to be error-free as they have
been tested by someone else.
Saves time, as code does not have to be re-written.
Can update one module and it will change all programs that use it - don't have to
change every place the code is written, avoids accidentally missing one.
4. Describe features commonly found in IDEs: Stepping Through The Code -
to run one line at a time to see where the error is, allows the programmer to watch
the effects each line of code.
Syntax Error Highlighting - to find syntax errors in the program code.
Setting breakpoints - to debug individual sections of code at a time, allows the
program to be stopped at a predetermined point in order to inspect its state.
Variable watch window - to check that the variables are being updated correctly.
5. Reasons to use a simulation before implementing something in the real
world: Safer
Time can be sped up / decreased, so do not need to wait to see what happens and
can view changes immediately
1/4