NCEA Level 3 Digital Technologies study materials
NCEA Level 3 Digital Technologies study resources

NCEA Level 3 Digital Technologies key terms

NCEA Level 3 Digital Technologies · Get comfortable with the vocabulary.

Algorithm

A finite ordered set of unambiguous steps that transforms inputs into a defined output. It must terminate and be precise enough for another person or machine to follow without extra judgement.

Related: Pseudocode, Decomposition, Computational Thinking
Decomposition

Breaking a large, complex problem into smaller subproblems that can be solved, tested, and reused independently. It makes complexity manageable and lets teams divide work across modules or functions.

Related: Abstraction, Modularity, Algorithm
Abstraction

Removing detail that is irrelevant to the task so the essential features can be represented and reasoned about. Good abstraction hides complexity behind a simpler interface or model.

Related: Decomposition, Encapsulation, Interface
Computational Thinking

A problem-solving approach that formulates problems so they can be solved by computation, using decomposition, pattern recognition, abstraction, and algorithm design. It applies to human processes as well as to writing code.

Related: Algorithm, Decomposition, Abstraction
Pseudocode

A structured, language-independent notation describing an algorithm's logic. It uses plain keywords and indentation rather than strict syntax, so it can be translated into any programming language.

Related: Algorithm, Syntax
Iteration

Repetition of a block of instructions, controlled by a loop condition or a counter. Iteration avoids duplicating code and is the main tool for processing collections of data.

Related: Recursion, Algorithm, Control Structure
Recursion

A technique where a function calls itself on a smaller version of the same problem, stopping at a base case. It suits naturally nested structures such as trees and directories.

Related: Iteration, Algorithm, Stack
Control Structure

A construct that determines the order in which instructions execute, such as sequence, selection (if/else), and iteration. Control structures give an algorithm its decision-making and repetition behaviour.

Related: Iteration, Boolean Expression, Algorithm
Boolean Expression

An expression that evaluates to either true or false, typically built from comparison and logical operators (AND, OR, NOT). It supplies the conditions that drive selection and loops.

Related: Control Structure, Iteration
Variable Scope

The region of a program in which a variable's name is visible and usable. Local scope limits a variable to one function or block, while global scope makes it accessible throughout the program.

Related: Function, Parameter, Encapsulation
Function

A named, reusable block of code that takes inputs, performs a task, and may return a value. Functions reduce duplication and make programs easier to test and maintain.

Related: Parameter, Return Value, Modularity
Parameter

A named input declared in a function's definition that receives a value when the function is called. Parameters let one function operate on different data without being rewritten.

Related: Function, Return Value, Variable Scope
Return Value

The result a function sends back to the code that called it. A function without an explicit return value typically yields a null or undefined result.

Related: Function, Parameter
Data Type

A classification of values that determines what can be stored and which operations are valid, such as integer, float, string, Boolean, or list. Choosing appropriate types prevents errors and saves memory.

Related: Variable Scope, Data Structure
Data Structure

A way of organising related data in memory so it can be accessed and modified efficiently, for example arrays, lists, stacks, queues, or dictionaries. The choice affects speed and code clarity.

Related: Data Type, Stack, Queue
Stack

A last-in-first-out data structure where items are added and removed at one end only. It is used for undo histories, expression evaluation, and tracking function calls.

Related: Queue, Data Structure, Recursion
Queue

A first-in-first-out data structure where items are added at one end and removed at the other. It models fair waiting lines and is used in scheduling and breadth-first traversal.

Related: Stack, Data Structure
Sorting Algorithm

A procedure that arranges items into a defined order, such as ascending numeric or alphabetical. Common examples include bubble sort, insertion sort, merge sort, and quicksort, which differ in efficiency.

Related: Searching Algorithm, Time Complexity
Searching Algorithm

A procedure for locating a value within a collection. Linear search checks items one by one, while binary search repeatedly halves a sorted list for much faster results on large data.

Related: Sorting Algorithm, Time Complexity
Time Complexity

A measure of how an algorithm's running time grows as input size increases, usually expressed in Big O notation such as O(n) or O(log n). It allows algorithms to be compared independently of hardware.

Related: Sorting Algorithm, Searching Algorithm
Debugging

The systematic process of finding, isolating, and fixing errors in a program. Techniques include reading error messages, tracing variables, adding print statements, and using a debugger.

Related: Syntax Error, Logic Error, Test Case
Syntax Error

A mistake that breaks the grammar rules of a programming language, such as a missing bracket or misspelled keyword. The program will not compile or run until it is corrected.

Related: Logic Error, Debugging
Logic Error

A flaw in a program's reasoning that produces incorrect output even though the code runs. It is found by comparing expected and actual results through testing and tracing.

Related: Syntax Error, Test Case, Debugging
Test Case

A defined set of inputs, preconditions, and expected outputs used to verify that a program behaves correctly. Good suites include valid, invalid, and boundary cases.

Related: Boundary Value, Logic Error, Debugging
Boundary Value

An input at the edge of a valid range, such as the minimum, maximum, or just outside the limit. Errors cluster at these edges, so they make high-value test cases.

Related: Test Case, Logic Error
Version Control

A system that records changes to files over time so previous versions can be reviewed, compared, and restored. Distributed tools also let multiple developers work on branches and merge their changes.

Related: Repository, Branch, Merge Conflict
Repository

A storage location holding a project's files together with its complete version history and metadata. It may exist locally on a developer's machine and remotely on a hosting service.

Related: Version Control, Commit, Branch
Commit

A saved snapshot of changes in version control, accompanied by a message and author details. Commits form a traceable history that can be reviewed or reverted.

Related: Repository, Version Control, Branch
Branch

An independent line of development within a repository, allowing features or fixes to be built without affecting the main code. Branches are later merged back together.

Related: Merge Conflict, Commit, Version Control
Merge Conflict

A situation where version control cannot automatically combine changes because two branches edited the same part of a file. A developer must resolve it manually before merging completes.

Related: Branch, Version Control, Commit
Modularity

Designing a system as separate, interchangeable components with clear responsibilities. Modular code is easier to test, reuse, and maintain because changes stay localised.

Related: Encapsulation, Interface, Decomposition
Encapsulation

Bundling data with the methods that operate on it and restricting direct outside access. It protects an object's internal state from unintended interference and hides implementation detail.

Related: Abstraction, Interface, Modularity
Interface

The defined boundary through which components communicate, specifying what operations are available without revealing how they work. Well-designed interfaces let implementations change without breaking callers.

Related: Abstraction, Encapsulation, Application Programming Interface
Application Programming Interface

A documented set of rules and endpoints that lets one piece of software request services or data from another. It defines permitted requests, formats, and authentication requirements.

Related: Interface, Representational State Transfer
Relational Database

A data store that organises information into tables of rows and columns linked by keys, queried with SQL. Relationships between tables are enforced through primary and foreign keys.

Related: Primary Key, Foreign Key, Structured Query Language
Primary Key

A column or combination of columns whose value uniquely identifies each row in a table. It must be unique and cannot be null.

Related: Foreign Key, Relational Database
Foreign Key

A column that references the primary key of another table, creating a link between records. It enforces referential integrity so child rows cannot point to nonexistent parents.

Related: Primary Key, Relational Database
Structured Query Language

The standard language for defining, querying, and modifying relational databases. Statements such as SELECT, INSERT, UPDATE, and DELETE manipulate data, while JOIN combines related tables.

Related: Relational Database, Primary Key
Normalisation

Structuring database tables to reduce duplicated data and prevent update anomalies, usually by splitting data into related tables. It trades some query complexity for consistency.

Related: Relational Database, Primary Key, Foreign Key
Representational State Transfer

An architectural style for web services using stateless HTTP requests and standard methods such as GET, POST, PUT, and DELETE to act on resources identified by URLs. Responses are commonly JSON.

Related: Application Programming Interface, Hypertext Transfer Protocol
Hypertext Transfer Protocol

The request-response protocol that underpins the web, defining methods, status codes, and headers used to transfer resources between clients and servers. HTTPS is its encrypted form.

Related: Representational State Transfer, Encryption
Encryption

Converting readable data into ciphertext using a key so that only authorised parties can reverse it. It protects confidentiality in transit and at rest.

Related: Hashing, Authentication, Hypertext Transfer Protocol
Hashing

Applying a one-way function that turns data into a fixed-length value, used to verify integrity or store passwords. Hashes cannot practically be reversed, unlike encryption.

Related: Encryption, Authentication
Authentication

Verifying that a user or system is who they claim to be, typically through passwords, tokens, or multi-factor methods. It is distinct from authorisation, which decides what they may access.

Related: Authorisation, Hashing, Encryption
Authorisation

Determining which resources or actions an authenticated user is permitted to access. It is enforced after identity is confirmed and is often role-based.

Related: Authentication, Encryption
Usability

The extent to which a product can be used effectively, efficiently, and satisfactorily by its intended users. It is evaluated through heuristics, observation, and user testing.

Related: User Experience, Iterative Design, Accessibility
Accessibility

Designing digital products so people with diverse abilities can perceive and operate them, guided by principles such as perceivable, operable, understandable, and robust. It includes alternatives for visual and auditory content.

Related: Usability, User Experience
User Experience

The overall quality of a person's interaction with a product, covering ease of use, usefulness, emotion, and accessibility. It is shaped by research, prototyping, and iterative testing.

Related: Usability, Iterative Design, Accessibility
Iterative Design

A cyclical process of prototyping, testing with users, and refining a solution based on evidence. Each cycle reduces risk by revealing problems before full development.

Related: User Experience, Usability, Prototype
Prototype

An early, simplified model of a product used to explore ideas and gather feedback before committing to full development. Prototypes range from paper sketches to interactive mock-ups.

Related: Iterative Design, User Experience
Intellectual Property

Legal rights over creations of the mind, including copyright, patents, trademarks, and designs. It governs who may copy, license, or profit from original work.

Related: Copyright, Creative Commons
Copyright

Automatic legal protection giving creators exclusive rights to copy, distribute, and adapt their original work for a limited period. Using others' work generally requires permission or a valid exception.

Related: Intellectual Property, Creative Commons
Creative Commons

A set of standard public licences that let creators grant permission to share and adapt their work under stated conditions such as attribution or non-commercial use.

Related: Copyright, Intellectual Property
Privacy

A person's control over how their personal information is collected, used, stored, and shared. Digital systems must handle it lawfully and ethically, often guided by privacy principles.

Related: Personal Data, Authentication
Personal Data

Information that identifies or could reasonably identify a living individual, alone or combined with other data. Its collection and use are subject to legal obligations and ethical expectations.

Related: Privacy, Authentication
Digital Divide

The gap between groups with reliable access to digital technologies and the skills to use them, and those without. It affects education, employment, and access to services.

Related: Accessibility, Usability