Back to AI Flashcard MakerInformation Technology /A Level Computer Science Paper 1: 1.2.2 Applications Generation

A Level Computer Science Paper 1: 1.2.2 Applications Generation

Information Technology48 CardsCreated about 1 month ago

This flashcard set introduces application software as tools designed for end users to perform specific tasks. It covers four main types—off-the-shelf, bespoke, proprietary, and open source—and explains the role of database management software in handling data efficiently.

Applications software

Designed to be used by the end user to complete one specific task

Tap or swipe ↕ to flip
Swipe ←→Navigate
1/48

Key Terms

Term
Definition

Applications software

Designed to be used by the end user to complete one specific task

4 types of application software

Off the shelf, bespoke, proprietary and open source

Database management software

Used to manage data in a database without having to access the database manually

Off the shelf software

Ready made software available for anyone to purchase

Bespoke software

Software that is custom created for a specific user

Open source software

Allows anyone to access the source code
Open source licenced but free to use
Anyone can sell a modified version but the owner has to accept c...

Related Flashcard Decks

Study Tips

  • Press F to enter focus mode for distraction-free studying
  • Review cards regularly to improve retention
  • Try to recall the answer before flipping the card
  • Share this deck with friends to study together
TermDefinition

Applications software

Designed to be used by the end user to complete one specific task

4 types of application software

Off the shelf, bespoke, proprietary and open source

Database management software

Used to manage data in a database without having to access the database manually

Off the shelf software

Ready made software available for anyone to purchase

Bespoke software

Software that is custom created for a specific user

Open source software

Allows anyone to access the source code
Open source licenced but free to use
Anyone can sell a modified version but the owner has to accept changes to the source code

Open source advantages and disadvantages

+ free licence, people collaborate to improve it, new versions need the same licences
- can’t make money, support must be paid for

Closed source/ proprietary software

Does not allow access to the store code, users must pay the company for the licence to use the software. There are restrictions on how it can be used

Proprietary advantages and disadvantages

+ Support is usually free, can be free, free updates

- Source code not easily available, cannot be altered/shared

Freeware

Software is free to use but source code is unavailable

Systems software

Low-level software responsible for running the computer system smoothly, providing a platform for applications software

Examples of systems software

Operating systems, utility programs, library programs, translators

Disk defragmenter

Rearranges your data so that it is stored contiguously

Automatic backup

Stores your data in servers elsewhere in case of an issue. Automatic so you don’t forget to do it

Automatic updating

Upgrades the system software to upgrade performance and removes bugs without us remembering to do it

Virus checking

Uses firewalls to stop viruses getting onto devices and anti-malware to fix them, minimises risk of viruses affecting you

Compression software

Stores the data in a smaller area, allowing you to store more data and instructions.

File manager

Allows the users to move/view/rename/open their files

Low Level Language

e.g. machine code (made up of operand and opcode) - first generation language
assembly code (opcode replaced with mnemonic ) - second generation language
Used in embedded systems/mobile phones

Low Level Language advantages and disadvantages

+ fast, uses little space, manipulates individual data

- hardware specific

High Level Language

Appear similar to English

One instruction is the equivalent to many in assembly code


What are compilers, assemblers and interpreters?

A type of translator (convert to machine code so it can be executed)

Assemblers

Translate from assembly language to machine code

Each line of assembly code is a line of machine code

Assemblers advantages and disadvantages

+ checks for errors for you

- particular to the computer hardware

Source program

The program written by the user in assembly code

Object code

The machine code created by the translator

Compiler

Converts source code to machine code in a .exe file

Compiler advantages and disadvantages

  • the exe file can be saved separately and run whenever, checks for errors multiple times, object code executes faster

  • takes longer to compile initially, different needed for different hardware platforms, all must be recompiled if changes need to be made

Interpreters

Compile into machine code one line at a time

| Checks each line for errors individually before compiling

Interpreters advantages and disadvantages

  • locates errors, doesn't look at the whole program for each line, more portable across platforms

  • doesn't produce object code so needs interpreting for every run

Byte Code

Intermediate between compiling and interpreting
Used by most interpreted languages, doesn’t interpret one line at a time
Done so that it can be interpreted to different computer architecture

3 stages of compilation

Lexical analysis
Syntax analysis
Code generation

Lexical Analysis

Takes the source program, removes comments and whitespace and replaces symbols with tokens of the type e.g. operator, variable
Variable names are stored for later use
Stored in a symbol table

Syntax Analysis

Tokens checked to see if the order makes sense
Syntax errors are flagged and an abstract syntax tree is produced
Expresses in binary to check

Code Generation

Code is actually converted into machine code from the abstract syntax tree
Each high-level function creates many low-level
Code can be optimised e.g. smallest size/ optimised performance

Semantics

About the meanings

Syntax

About the structure


Parsing

Made up of syntax and syntactic analysis

| Analyses a string of symbols to check it conforms to rules

Semantic Parsing

The meaning and implications are determined and necessary actions taken
Semantic analysis is done after to gain the meaning

Libraries

Sets of compiled and compiled functions in a language, can be called within a program

  • save time, cover complex areas, can be used in many languages

Linker

Needs to put the appropriate memory addresses in place so that the program can return and call from a library function

Loader

Copies the program and any linked subroutines into main memory to run
The code can assume the program in memory address 0
The loader needs to relocate the memory addresses so that it knows where to go to call functions

Full backup

Every file is copied to an alternative storage device

Incremental backup

Only the files that have changes since the last backup are copied


Utility software

Has a specific function linked to the maintenance of the OS

Static

Modules and libraries are added directly into the main file, increasing their size

Dynamic

Addresses of modules and libraries are included in the file. Files remain small and external updates feed through to the main file

Examples of utility software

Encryption, compression, backup