All Keywords 11-12 Grade
zhenispir
Data Privacy and Security
Data privacy
Data stored about a person or an organisation must remain private and unauthorised access to the data must be prevented.
Data protection laws
Laws which govern how data should be kept private and secure.
Data security
Refers to the methods used to prevent unauthorised access to data, as well as to the data recovery methods if it is lost.
Data integrity
The accuracy, completeness and consistency of data.
Data backup
An additional copy of data that can be used to restore and recover data if it was lost or corrupted.
Data mirroring
A way of storing the same data in different places on multiple hard disks to protect data in the case of a drive failure.
User accounts
Used to authenticate a user (prove that a user is who they say they are). User accounts control access rights.
Access rights (data security)
Use of access levels to ensure only authorised users can gain access to certain data.
Encryption
The use of encryption keys to make data meaningless without the correct decryption key.
Validation
Method used to ensure entered data is reasonable and meets certain input criteria.
Validation check types: range, type, length, presence, format.
Verification
Method used to ensure data is correct by using double entry or visual checks.
Verification check types: visual check, double entry, check digit.
Passwords
Used to restrict access to data or systems.
Digital signatures
Protect data by providing a way of identifying the sender of, for example, an email.
Biometrics
Rely on the unique characteristics of human beings.
Legal, Moral, Ethical and Cultural Issues
Legal
Covers the law, whether or not an action is punishable by law.
Morality
Concerns questions of right and wrong, and is more often thought of in relation to personal or individual choices.
Ethics
Also concerns questions of right and wrong, but is more often used in a professional context.
Culture
Refers to the attitudes, values and practices shared by a society or group of people.
Plagiarism
When a person takes another person’s idea or work and claims it was their own.
Piracy
The practice of using or making illegal copies of, for example, software, digital products such as movies, music.
Copyright
A type of intellectual property that gives its owner the exclusive legal right to copy, distribute, adapt, display, and perform a creative work.
Software Types and Licensing
Open-source software
Gives users the freedom to run, copy, change and adapt software.
Commercial software
Available to customers for a fee, providing a licence for one genuine copy to be used on a single device, or a multi-use licence for multiple users.
Shareware
Allows users to try out some software free of charge for a trial period.
Freeware
Software a user can download from the internet free of charge.
Cyber Threats
Hacking
Illegal access to a computer system without the owner’s permission.
Cracking
Refers to the intentional, illegal, or malicious process of bypassing security controls, copy protection, or cryptographic protections in computer software, networks, or systems.
Difference: While “hacking” can sometimes have neutral or positive connotations (ethical hacking), cracking is almost always associated with malicious intent, such as stealing data, bypassing licensing, or gaining unauthorized access.
Malware
Malicious software that seeks to damage or gain unauthorised access to a computer system.
Viruses
Programs or program code that can replicate and/or copy themselves with the intention of deleting or corrupting files or causing the computer to malfunction.
Worms
A type of stand-alone virus that can replicate themselves with the intention of spreading to other computers; they often use networks to search out computers with weak security.
Trojan horses
Malicious programs often disguised as legitimate software.
Spyware
Software that gathers information by monitoring, for example, key presses on the user’s keyboard.
Phishing
When someone sends legitimate-looking emails to users. They may contain links or attachments which, when clicked, take the user to a fake website, or they may trick the user into responding with personal data such as bank account details or credit card numbers.
Pharming
Malicious code installed on a user’s computer or on a web server. The code re-directs the user to a fake website without their knowledge (the user does not have to take any action, unlike phishing).
System / Program Development Lifecycle (SDLC)
SDLC
The process of developing a program set out in five stages: analysis, design, coding, testing and maintenance.
- Analysis – investigation leading to the specification of what a program is required to do.
- Design – uses the program specification to show how the program should be developed.
- Coding – the writing of the program or suite of programs.
- Testing – testing the program to make sure that it works under all conditions.
- Maintenance – making sure that the program continues to work during use.
The Waterfall Model
Linear sequential development cycle; each stage is completed and signed off before the next begins. Suitable for smaller projects with well-known, stable requirements.
| Principles | Benefits | Drawbacks |
|---|---|---|
| linear, as each stage is completed before the next is begun | easy to manage, understand and use | difficult to change the requirements at a later stage |
| well documented as full documentation is completed at every stage | stages do not overlap and are completed one at a time | not suitable for programs where the requirements could be subject to change |
| low customer involvement; only involved at the start and end of the process | each stage has specific deliverables | working program is produced late in the lifecycle |
| works well for smaller programs where requirements are known and understood | not suitable for long, complex projects |
The Agile (Iterative) Model
Develops a simple subset first, then expands in repeated cycles. Suitable for projects where major requirements are known but details may evolve.
| Principles | Benefits | Drawbacks |
|---|---|---|
| incremental development as the program development lifecycle is repeated | some working programs developed quickly at an early stage in the lifecycle | whole system needs to be defined at start, so it can be broken down into pieces |
| working programs are produced for part of the system at every iteration | easier to test and debug smaller programs | needs good planning overall and for every stage |
| high customer involvement, as part of the system can be shown to the customer after every iteration | more flexible as easier to alter requirements | not suitable for short simple projects |
| customers involved at each iteration therefore no surprises when final system delivered |
The Spiral Model
Focuses on managing risk-heavy projects; if too risky at any point, the project is terminated. Suited to very large-scale projects.
| Principles | Benefits | Drawbacks |
|---|---|---|
| Analysing system requirements | The high amount of risk analysis hence, avoidance of Risk is enhanced. | Not suitable for small projects |
| Pinpointing and mitigating risks | Good for large and mission-critical projects. | Costly, resource-consuming |
| Development, testing and implementation | Flexible in requirements. | More complex than other SDLC models |
| Evaluating to inform the next iteration | Strong approval and documentation control. | Spiral may go indefinitely; unknown end of the project |
Fact-Finding Methods in Analysis
Analysis employs fact-finding methods: observation, questionnaires, document collection, interview/meeting.
Observation – shadowing employees and noting how they work.
Questionnaires – gathering opinions from many people; challenging to design well.
Document collection – gathering business documents (orders, invoices, financial records).
Interviewing – quick collection of detailed information; often the starting point.
Advantages and Disadvantages of Fact-Finding Methods
| Method | Advantages | Disadvantages |
|---|---|---|
| Observation | • Pick up parts of the system not obvious to the client. • Confirm information gathered through different methods. |
• Some people may feel threatened while being watched. • No guarantee subtle parts show up during observation. |
| Questionnaires | • Can be given to a large number of people at once. • Can get many different opinions. • Targeted responses allow quick quantitative analysis. |
• Hard to create and design questions/responses. • Not all questionnaires are completed. • Free responses can be time-consuming to analyse. |
| Document collection | • Documents are reliable and show most stored data. • Document trails support business process understanding. |
• Limited view; do not show how documents were created. • May contain sensitive information with viewing restrictions. |
| Interviewing | • Large amounts of information gathered quickly; can query responses. • Detailed responses about key system parts. |
• Time-consuming; limited number of interviewees. • Interviewees may not be fully truthful; responses need verification. |
Data Flow Diagram (DFD)
A way of representing a flow of data through a process or system.
DFD Symbols
- Process – transformation or manipulation of data.
- Data Flow – movement of data from one process to another or to/from a data store.
- Data Store – storage location for data.
- Entity / Source Sink – external source or destination of data.
DFD Level 0 (Context Diagram) – highest-level overview; single process, two entities, no data stores.
DFD Level 1 – detailed view; breaks down the major process into sub-processes; includes multiple processes, entities, and data stores.
Flowchart
A diagrammatic representation of an algorithm using symbols linked with flow lines.
Flowchart Symbols
- Start/End (Terminator) – marks starting or ending point; usually contains “Start” or “End”.
- Action or Process (Box) – a single step or sub-process.
- Decision / Loop (Diamond) – decision or branching point.
- Input/Output (Parallelogram) – material or information entering/leaving the process.
Implementation and Changeover
Implementation – installing the new system and putting it into use after software and documentation are produced.
Changeover – switching from one system to another.
Changeover Types
| Type | Advantages | Disadvantages |
|---|---|---|
| Direct changeover | • Fast implementation • Cost-effective (only one system running) |
• High risk of failure • No fallback • Users can’t be trained on new system • No backup |
| Parallel running | • Lower risk • Easy comparison of systems |
• Time-consuming • Resource-intensive |
| Pilot running | • Low risk (trialled in one branch) • Allows fine-tuning • Staff have time to train • Few errors (fully tested) |
• Slower implementation • Potential inconsistencies • Confusion with two systems in use • No backup for the branch using new system |
| Phased implementation | • Reduced risk • Easier to manage |
• Takes longer • Potential compatibility issues |
Prototyping
Combines iterative and incremental development by providing a cut-down version for client feedback, then improving or adding functionality.
- Advantage: Quickly demonstrate ideas; high flexibility; react to changing requirements.
- Disadvantage: Difficult to manage; few concrete deadlines; mission creep possible.
Operating Systems
Software providing an environment for applications and an interface between hardware and users.
- Memory management – optimising, organising, and protecting main memory.
- Security management – ensuring integrity, confidentiality, and availability of data.
- Process management – allocating resources and synchronising processes.
- Hardware management – managing input/output peripheral devices.
- File management – defining naming conventions, directory structures, and file operations (create, open, close, delete, rename, copy, move).
GUI vs CLI
| Interface Type | Advantages | Disadvantages |
|---|---|---|
| Graphical User Interface (GUI) | • Intuitive to learn; no complex syntax needed. • Visual feedback. • Easy multitasking with separate windows. |
• Resource heavy (RAM, CPU, storage). • Slower for expert tasks. • Restrictive; limited to provided buttons/menus. |
| Command Line Interface (CLI) | • Low resource usage. • Highly efficient for experts (scripts/commands). • Maximum control over system settings. |
• Steep learning curve. • Unforgiving of errors (typos cause failure). • Poor visual multitasking. |
Types of Operating Systems
| OS Type | Key Features | Typical Use Cases |
|---|---|---|
| Real-Time (RTOS) | Guaranteed response time; failsafe; interrupt-driven. | ABS braking, nuclear plant controls, medical monitors. |
| Network (NOS) | Centralised resource management; user authentication; client-server architecture. | School/office networks. |
| Batch Processing | No user interaction; high throughput; job queuing. | Monthly payroll, utility billing, bank statements. |
Advanced Interface Types
| Interface Type | Advantages | Disadvantages |
|---|---|---|
| Natural Language (Speech/Text) | Hands-free; accessible; no learning curve. | Ambiguity (accents, sarcasm); background noise; privacy concerns. |
| Gesture Recognition | Touchless; immersive for VR/gaming; works in noisy areas. | Physical fatigue; false positives; environmental limits (lighting, line of sight). |
System Software: Translators and Utilities
Utility program – OS component performing functions like virus checking, defragmentation, disk formatting.
Library program – stored in a library for future use (e.g., DLLs).
Translator – translates source code into machine code.
Machine code – binary instructions executed by the processor.
Compiler
Translates high-level language to machine code all at once.
| Advantages | Disadvantages |
|---|---|
| Faster execution (optimised). | Harder to debug (all errors at end). |
| No extra software needed for end-user. | Hard to test partially. |
| Error-free runtime (no syntax errors). | Untested compiled programs can crash computer. |
Interpreter
Analyses and executes high-level code line by line.
| Advantages | Disadvantages |
|---|---|
| Easier to debug (stops at error line). | Slower execution. |
| Easy partial testing of incomplete code. | Exposes source code (IP loss). |
| Safer testing; usually won’t crash whole computer. | End-user needs interpreter installed. |
| End-users can modify source code. | Hidden syntax errors may remain. |
Assembler
Translates assembly language into machine code.
Comparison of Translators
| Feature | Assembler | Compiler | Interpreter |
|---|---|---|---|
| Source program written in | assembly | high-level language | high-level language |
| Machine dependent | yes | no | no |
| Object program generated | yes, stored on disk | yes, stored on disk | no, executed under interpreter control |
| Each source line generates | one machine code instruction (1:1) | many machine code instructions | many machine code instructions |
Integrated Development Environment (IDE)
A suite of programs for writing and testing high-level programs. Includes: source code editor; compiler/interpreter; run-time environment with debugger; auto-documenter.
Debugging – finding logic errors by running/tracing.
Breakpoint – deliberate pause during testing.
Computer Architecture
Von Neumann Architecture
Introduced the stored program concept. Features:
- Central Processing Unit (CPU)
- Processor can access memory directly
- Memory stores both programs and data
- Stored programs consist of instructions executed sequentially
CPU Components
- ALU (Arithmetic Logic Unit) – performs arithmetic and logic operations.
- Accumulator (ACC) – temporary general-purpose register storing numerical values.
- Control Unit – synchronises data flow and programs via control signals on the control bus.
- System Clock – produces timing signals on the control bus for synchronisation.
- Registers – temporary storage; types: PC, MAR, MBR/MDR, CIR, IX, SR.
System Buses
Parallel transmission components; each wire carries one bit.
- Address bus – carries addresses.
- Data bus – carries data between processor, memory, and I/O devices.
- Control bus – carries control signals from the control unit to other components.
Key Terms
- Clock cycle – speed measured in GHz; vibrational frequency of the clock.
- Bus width – number of parallel wires in a bus.
- Word length – group of bits a computer uses as a single unit.
- Difference: Word length is the amount of data CPU processes at once (e.g., 64-bit); bus width is bits transferred simultaneously over physical connections.
- Core – unit comprising ALU, control unit, and registers within a CPU.
- Cache memory – high-speed memory for fast data transfer.
- Interrupt – signal from device/software requesting processor attention; suspends current operations.
Fetch-Decode-Execute Cycle (Simplified)
| Step | Description |
|---|---|
| MAR ← [PC] | contents of PC copied into MAR |
| PC ← [PC] + 1 | PC incremented by 1 |
| MDR ← [[MAR]] | data at address in MAR copied into MDR |
| CIR ← [MDR] | contents of MDR copied into CIR |
| CIR decoded | split into operand and opcode, then decoded |
| Execute | instruction executed via control bus signals (CU, ALU, ACC) |
CISC vs RISC Processors
| CISC Features | RISC Features |
|---|---|
| Many instruction formats possible | Uses fewer instruction formats/sets |
| More addressing modes | Uses fewer addressing modes |
| Multi-cycle instructions | Single-cycle instructions |
| Instructions can be variable length | Instructions are fixed length |
| Longer execution time for instructions | Faster execution time |
| Decoding is more complex | Makes use of general multi-purpose registers |
| Difficult to implement pipelining | Easier to make pipelining function |
| Design emphasis on hardware | Design emphasis on software |
| Uses memory for complex instructions | Processor chips require fewer transistors |
Pipelining – allows several instructions to be processed simultaneously.
Memory
RAM vs ROM
| RAM | ROM |
|---|---|
| • temporary memory device | • permanent memory device |
| • volatile memory | • non-volatile memory |
| • can be written to and read from | • data stored cannot be altered |
| • used to store data, files, programs currently in use | • used to store BIOS and startup data |
| • can be increased in size to improve speed |
Other Memory Concepts
- Virtual memory – paging technique giving the illusion of unlimited memory.
- Virtual machine – emulation of a computer system; an OS running within another OS.
Addressing Modes
- Direct addressing – contents of memory location in operand are used.
- Indirect addressing – contents of the contents of memory location in operand are used.
- Indexed addressing – adds contents of index register to operand address.
- Immediate addressing – value of operand only is used.
Paging vs Segmentation
| Paging | Segmentation |
|---|---|
| Fixed-size blocks. | Variable-size blocks. |
| Causes internal fragmentation. | Causes external fragmentation. |
| Physical division; ignores code logic. | Logical division into units (functions, arrays). |
| Invisible (transparent) to programmer. | Visible to programmer. |
| Uses single logical address mapped by Page Table. | Uses Segment number + Offset via Segment Map Table. |
| Uses static linking. | Uses dynamic linking. |
| Pages are usually smaller than segments. |
Databases
Database – structured collection of data accessible by different applications.
Relational database – data items linked by internal pointers.
Table – group of data with rows (instances) and columns (attributes).
Record – a row in a table.
Attribute – individual data item stored for an entity (e.g., name, address).
Field – a column in a table.
Tuple – one instance of an entity (a row).
Entity – anything that can have data stored about it (person, place, event, thing).
Index – data structure built from columns to speed up searching.
Relationship – one table has a foreign key referring to a primary key in another table.
Primary key – unique identifier for a table; special candidate key.
Composite key – set of attributes forming a primary key.
Foreign key – attribute(s) in one table referring to a primary key in another.
Entity-Relationship (E-R) Model / ERD – graphical representation of database and relationships.
Normalisation
Process of organising data to minimise redundancy.
- 1NF – no repeated groups of attributes.
- 2NF – 1NF + non-key attributes depend on the primary key.
- 3NF – 2NF + all non-key attributes are independent.
DBMS and Data Management
Database Management System (DBMS) – software for defining, creating, and manipulating databases; solves redundancy, inconsistency, and dependency issues.
Data management – organisation and maintenance of data.
Data dictionary – contains metadata (data about data).
Common Data Types
| Data Type | Description |
|---|---|
| CHARACTER | Fixed-length text. |
| VARCHAR(n) | Variable-length text (up to n characters). |
| BOOLEAN | Logical values (True/False); often 1 or 0 in SQL. |
| INTEGER | Whole numbers. |
| REAL | Numbers with decimal places (floating point). |
| DATE | Date format, usually YYYY-MM-DD. |
| TIME | Time format, usually HH:MM:SS. |
Structured Query Language (SQL)
Standard language for relational databases.
Data Definition Language (DDL) Commands
| SQL Command | Purpose |
|---|---|
| CREATE DATABASE | Creates a new database container. |
| CREATE TABLE | Defines a new table and its columns/data types. |
| ALTER TABLE | Modifies an existing table’s structure. |
| PRIMARY KEY | Uniquely identifies each record in a table. |
| FOREIGN KEY … REFERENCES | Links a field to a Primary Key in another table. |
Data Manipulation Language (DML) – Query Commands
| Command | Description |
|---|---|
| SELECT … FROM … | Fetches data from a database. |
| WHERE | Filters rows based on a condition. |
| ORDER BY … ASC / DESC | Sorts results. |
| GROUP BY | Groups rows with same values into summary rows. |
| INNER JOIN … ON … | Combines rows from different tables when conditions are met. |
DML – Maintenance Commands
| Command | Description |
|---|---|
| INSERT INTO … VALUES … | Adds new records (rows). |
| DELETE FROM | Removes existing records. |
| UPDATE … SET … | Modifies existing data. |
Artificial Intelligence, VR and AR
Artificial Intelligence (AI) – machine or application performing tasks requiring human-like intelligence.
Virtual Reality (VR) vs Augmented Reality (AR)
| Feature | Virtual Reality (VR) | Augmented Reality (AR) |
|---|---|---|
| Environment | Fully immersive; real world blocked out, replaced by 3D computer-generated environment. | Overlaid; digital information superimposed on real world view. |
| Equipment | Head-Mounted Display (HMD), specialised controllers/haptic gloves. | Transparent glasses, headsets, or mobile device cameras/screens. |
| Sensors | Accelerometers, gyroscopes for head tracking. | GPS, compasses, computer vision to align digital objects with real coordinates. |
| Primary Use | Simulations, gaming, virtual walkthroughs. | Navigation, technical repair overlays, interactive retail. |