levo

Systematic Approach to Problem Solving

  • 2 subtopics
  • 6 things to know
  • Paper 1 and the project

What Systematic Approach to Problem Solving covers

The stages of software development, from analysis and design through implementation to testing and evaluation. Supplies the skills Paper 1 draws on and the standard the project is marked against.

Where it is assessed

Paper 1 and the project

The problem-solving skills Paper 1 draws on and the non-exam assessment is marked against.

Check the AQA specification ↗

The 2 subtopics

Each one has its own page. AQA AS Computer Science students sit this topic in the first year.

What you need to know

Answer each one before you reveal it.

Your recallNot started
Key term

What has to happen in analysis before a problem can be solved?

Process

What is produced during the design stage?

Key term

Describe what is meant by designing an appropriate modular structure for a solution.

Process

What should a developer be able to do to demonstrate that a program is correct and efficient?

Key term

What evidence of acceptance testing does a developer need to record?

Process

An evaluation reports that the system 'works well'. Explain why that is an inadequate evaluation.

Take Systematic Approach to Problem Solving further

The same content, four other ways.

Commonly confused

Pairs that lose marks when they are blurred together.

  • Normal test data vs Boundary test data

    Normal test data: valid input lying well inside the permitted range. Boundary test data: input at or immediately beside the limits of validity.

  • Erroneous test data vs Normal test data

    Erroneous test data: invalid input that the system should reject. Normal test data: valid input the system should accept and process.

  • Sequential development vs Iterative development

    Sequential development: each development stage finishes before the next begins. Iterative development: stages are revisited through repeated improvement cycles.

Questions from this topic

Each one with the model answer underneath.

  1. 1

    Name the five stages of a systematic approach to solving a problem with software, in order.

    Model answer

    Analysis, design, implementation, testing and evaluation. They are presented in that order, but in practice work often returns to an earlier stage — particularly design and implementation, which may be repeated in cycles.

  2. 2

    What has to happen in analysis before a problem can be solved?

    Model answer

    The problem must first be defined, so that everyone agrees what is actually to be solved. Then the requirements of the system that will solve it must be established — what it must do, what data it must handle, and what constraints it must work within. A data model must also be created, identifying the things the system must store data about, the attributes of each, and the relationships between them.

  3. 3

    How are the requirements of a system established, and why must it be done that way?

    Model answer

    They are drawn out of the people who will actually use the system, by dealing with those people directly — interviewing them, circulating questionnaires, watching them at work in the existing process, and studying the forms, records and reports that process already produces. It has to be done that way because the developer does not do the users' job: what the system must cope with, including the awkward exceptions that never appear in a tidy description of the work, is knowledge the users hold and the developer does not. Requirements the developer invents instead tend to solve a problem nobody has, and that mistake is an expensive one, because the design, the code and the tests all rest on top of it and all have to be done again.

  4. 4

    Users often struggle to say exactly what they want. How can the process of clarifying requirements deal with this?

    Model answer

    By using a prototyping or agile approach. A prototype — even a rough one showing screens and a little behaviour — gives the users something concrete to react to, and people are far better at criticising a specific thing in front of them than at describing an imagined system in the abstract. Their reactions are fed back, the prototype is revised, and the requirements are refined through those cycles rather than being settled once at the start.

  5. 5

    What is abstraction, and what part does it play in analysis?

    Model answer

    Abstraction is representing something by keeping only the details that matter for the purpose in hand and leaving out the rest. In analysis it is how an aspect of the external world becomes something a program can hold: a real customer becomes a small set of attributes the system actually needs, a real journey becomes a start point, an end point and a time. Deciding what to keep and what to discard is the substance of building a data model — keep too little and the system cannot answer the questions asked of it, keep too much and it becomes needlessly complicated and harder to maintain.

  6. 6

    Why should a solution be designed and specified before it is constructed?

    Model answer

    Because decisions taken at design time are cheap to change and the same decisions are expensive to change once they are written into code and data. Designing first means the structure of the whole solution can be considered before any part of it is fixed, that the design can be checked against the requirements and discussed with others, that work can be divided between people, and that the person writing the code has something to work to. Coding without a design tends to produce a structure that grew rather than one that was chosen.

What is inside Levo

Six ways to work the same material.

1Closed book
2Open book
3Closed book

The 3-step method, run for you

Answer cold, learn it, then prove it stuck. Levo tracks the jump between your first attempt and your last.

Fundamentals of Programming
Fundamentals of Data Structures
Theory of Computation
Fundamentals of Data Representation

Cram a whole paper in one sitting

Sort every topic into what you know and what you do not, then drill only the weak ones.

A driver is .
softwarehardwarestorage

Blank Blitz makes facts automatic

Rapid timed gap-fills on the terms and numbers you need to recall without thinking.

AThe integer 5 is 0101.
B0.75 is 1/2 + 1/4.
CThe fraction bits are 1100.

Build It gets the exam shape right

Assemble a full-mark answer from its marking points, in the order an examiner wants them.

Head means the first single element of a non-empty list.
TrueFalse

Test It catches misconceptions

Spot the fault in a statement. The traps are the mistakes students actually make.

721941163128510

Brain Breaks between sessions

Short focus games to reset attention, so the next set lands better than the last.

Systematic Approach to Problem Solving revision questions

Is Systematic Approach to Problem Solving examined at AS in AQA Computer Science?
Yes. It sits in Paper 1 and the project, which you take in the first year, so it is on the AS paper as well as counting towards the full A level.
What does Systematic Approach to Problem Solving cover in AQA AS-Level Computer Science?
2 subtopics: analysis, design and implementation and testing and evaluation. Each one has its own page with questions and model answers.
How is Systematic Approach to Problem Solving organised?
By the AQA 7517 specification, subtopic by subtopic, so it matches the order you are taught it in.

Every question in Systematic Approach to Problem Solving, on a schedule.

Attempt a question from memory, write the correct version, then attempt it again. Levo records the jump between your first attempt and your last, and brings each question back on the day you are due to forget it.

Or £46 a year, about £3.83 a month. Cancel anytime.