A-level Computing/AQA/Computer Components, The Stored Program Concept and the Internet/Fundamentals of Computer Systems

Understand the relationship between hardware and software and be able to define both.


 * Be aware of how software is classified.
 * Be able to explain what is meant by system software and application software.
 * Understand the need for and attributes of different types of software

Understand the need for, and functions of, system software:
 * Operating system software
 * Utility programs
 * Library programs
 * Translator software (compiler, assembler, interpreter)

Describe the different types of application software and the criteria for selecting appropriate software for particular purposes.
 * General purpose application software.
 * Special purpose application software.
 * Bespoke application software

Describe machine-code language and assembly language.

Awareness of the development of programming languages and the limitations of both machine-code and assembly-language programming


 * First generation - Machine code
 * Second generation - Assembly language
 * Third generation - Imperative high level language
 * Explain the term imperative high level language and its relationship to first and second generation languages
 * Fourth generation - Declarative language
 * Explain the term declarative programming language and where and why declarative languages are used

Define each type of language translator and describe situations where each would be appropriate.
 * Assembler
 * Compiler
 * Interpreter