OSAT Computer Science (OK181) study materials
OSAT Computer Science (OK181) study resources

OSAT Computer Science (OK181) key terms

OSAT Computer Science (OK181) · Get comfortable with the vocabulary.

Decomposition

A computational thinking strategy that breaks a large, complex problem into smaller, more manageable subproblems that can be solved or understood independently and then recombined.

Related: Abstraction, Algorithm
Abstraction

The process of removing unnecessary detail and keeping only the essential features of a problem or system so that it can be modeled, communicated, or solved more easily.

Related: Decomposition, Pattern Recognition
Pattern Recognition

Identifying similarities, regularities, or recurring structures across problems or data so that a single general solution or rule can be applied in many situations.

Related: Abstraction, Algorithm
Algorithm

A finite, ordered set of unambiguous steps that takes some input, performs operations, and produces a result or output, terminating after a limited number of steps.

Related: Pseudocode, Flowchart
Pseudocode

A structured, informal language using programming-like keywords and indentation to describe an algorithm without the strict syntax of any real programming language.

Related: Algorithm, Flowchart
Flowchart

A diagram that represents an algorithm using standard symbols such as ovals for start and end, rectangles for processes, diamonds for decisions, and arrows for control flow.

Related: Pseudocode, Algorithm
Boolean Logic

A system of logic in which values are true or false and are combined with operators AND, OR, and NOT, forming the basis of conditional statements and digital circuits.

Related: Truth Table, Conditional Statement
Truth Table

A table listing every possible combination of input truth values for a logical expression along with the resulting output value for each combination.

Related: Boolean Logic
Variable Scope

The region of a program in which a declared variable or identifier is visible and can be referenced, determined by where it is declared and by language rules.

Related: Parameter Passing, Recursion
Parameter Passing

The mechanism by which arguments are supplied to a function, such as passing a copy of a value versus passing a reference to the original data.

Related: Variable Scope, Recursion
Recursion

A technique in which a function calls itself on a smaller version of the same problem, requiring one or more base cases to stop the repeated calls.

Related: Base Case, Stack
Base Case

The condition in a recursive function that is tested and handled directly without further recursive calls, preventing infinite recursion and ending the chain of calls.

Related: Recursion
Control Structure

A programming construct that determines the order in which statements execute, typically categorized as sequence, selection (conditionals), and iteration (loops).

Related: Conditional Statement, Loop Invariant
Conditional Statement

A statement that evaluates a Boolean expression and executes one block of code or another depending on whether the expression evaluates to true or false.

Related: Boolean Logic, Control Structure
Loop Invariant

A property or assertion that is true before a loop begins and remains true after every iteration, used to reason about and prove loop correctness.

Related: Control Structure, Algorithm
Big-O Notation

A notation describing an upper bound on how an algorithm's running time or memory use grows as input size increases, ignoring constant factors and lower-order terms.

Related: Time Complexity, Space Complexity
Time Complexity

A measure of how the number of operations an algorithm performs grows with the size of its input, commonly expressed using asymptotic notation such as Big-O.

Related: Big-O Notation, Space Complexity
Space Complexity

A measure of how much additional memory an algorithm requires as a function of input size, including auxiliary storage used by data structures and recursive calls.

Related: Time Complexity, Stack
Stack

A linear data structure following last-in, first-out order, where insertion and removal both occur at one end called the top.

Related: Queue, Recursion
Queue

A linear data structure following first-in, first-out order, where elements are added at the rear and removed from the front.

Related: Stack
Hash Table

A data structure that maps keys to values by computing a hash code for each key to determine a storage index, giving average constant-time lookup when collisions are controlled.

Related: Collision Resolution, Binary Search Tree
Collision Resolution

A technique for handling the situation in which two distinct keys hash to the same table index, commonly by chaining entries in a list or by probing alternative slots.

Related: Hash Table
Binary Search Tree

A binary tree in which every node's left subtree holds only smaller keys and its right subtree holds only larger keys, enabling ordered search, insertion, and deletion.

Related: Hash Table, Traversal
Traversal

A systematic process of visiting every node of a tree or graph exactly once, such as in-order, pre-order, post-order, breadth-first, or depth-first order.

Related: Binary Search Tree, Graph
Graph

A data structure consisting of vertices connected by edges, which may be directed or undirected and weighted or unweighted, used to model relationships and networks.

Related: Traversal
Sorting Algorithm

An algorithm that rearranges the elements of a list into a specified order, with common examples including bubble, insertion, merge, quick, and heap sort.

Related: Big-O Notation, Algorithm
Binary Search

A search algorithm that repeatedly halves a sorted array by comparing the target with the middle element, running in logarithmic time.

Related: Sorting Algorithm, Time Complexity
Machine Cycle

The repeating sequence a processor performs to execute an instruction: fetch the instruction, decode it, execute the operation, and store any result.

Related: Instruction Set, Cache Memory
Instruction Set

The complete collection of machine-language instructions that a particular processor architecture can decode and execute, including operations, addressing modes, and registers.

Related: Machine Cycle
Cache Memory

A small, fast memory between the processor and main memory that holds recently or frequently used data to reduce average access time.

Related: Machine Cycle
Operating System

System software that manages hardware resources, schedules processes, allocates memory, handles files and devices, and provides services to application programs.

Related: Deadlock, Virtual Memory
Deadlock

A situation in which two or more processes each hold a resource and wait indefinitely for a resource held by another, so none can proceed.

Related: Operating System
Virtual Memory

A technique that gives programs an abstract address space larger than physical memory by mapping pages between disk storage and main memory.

Related: Operating System
OSI Model

A seven-layer reference framework describing network functions from physical transmission through data link, network, transport, session, presentation, and application layers.

Related: TCP/IP, IP Address
TCP/IP

The core protocol suite of the Internet, in which IP handles addressing and routing of packets and TCP provides reliable, ordered, connection-oriented delivery.

Related: OSI Model, IP Address
IP Address

A numeric identifier assigned to a device on a network so that packets can be routed to it, with IPv4 using 32-bit and IPv6 using 128-bit addresses.

Related: TCP/IP, Subnet Mask
Subnet Mask

A bit pattern that identifies which portion of an IP address designates the network and which portion designates the host.

Related: IP Address
Encryption

The process of transforming readable data into an unreadable form using a key, so that only authorized parties can reverse the transformation and read it.

Related: Authentication, Public Key Cryptography
Public Key Cryptography

An encryption scheme using a key pair, where a freely shared public key encrypts data or verifies signatures and a private key decrypts or signs.

Related: Encryption, Authentication
Authentication

The process of verifying that a user, device, or system is who or what it claims to be, often through passwords, tokens, or cryptographic credentials.

Related: Encryption, Public Key Cryptography
Relational Database

A database that stores data in tables of rows and columns and defines relationships between tables through keys, queried using SQL.

Related: Primary Key, SQL
Primary Key

A column or combination of columns whose values uniquely identify each row in a table and cannot be null.

Related: Foreign Key, Relational Database
Foreign Key

A column or set of columns in one table that references the primary key of another table, enforcing referential integrity between related records.

Related: Primary Key, Relational Database
SQL

A declarative language for defining, querying, and manipulating data in relational databases, built around statements such as SELECT, INSERT, UPDATE, and JOIN.

Related: Relational Database, Primary Key
Data Normalization

The process of organizing database tables to reduce redundancy and avoid update anomalies by separating data into related tables according to dependency rules.

Related: Relational Database, Foreign Key
Data Visualization

The graphical representation of data using charts, plots, or maps to reveal patterns, trends, and outliers that are hard to see in raw tables.

Related: Data Normalization
Intellectual Property

Legal protection for creations of the mind, including copyright, patents, trademarks, and trade secrets, governing how others may use them.

Related: Software License, Digital Divide
Software License

A legal agreement that specifies how software may be used, copied, modified, and distributed, including open-source, proprietary, and freeware terms.

Related: Intellectual Property
Digital Divide

The gap between groups that have reliable access to computing devices, networks, and digital skills and those that do not.

Related: Intellectual Property
Computational Artifact

A product created through computing, such as a program, simulation, visualization, or dataset, used to demonstrate understanding and communicate results.

Related: Algorithm
Formative Assessment

Ongoing evaluation during instruction that provides feedback to adjust teaching and learning while the unit is still in progress.

Related: Summative Assessment, Rubric
Summative Assessment

Evaluation conducted at the end of a unit or course to measure the extent to which students have met learning objectives, often for grading or reporting.

Related: Formative Assessment, Rubric
Rubric

A scoring guide that lists criteria for evaluating student work and describes levels of performance for each criterion, supporting consistent and transparent grading.

Related: Formative Assessment, Summative Assessment
Pair Programming

An instructional and development practice in which two students work at one computer, one writing code as driver and the other reviewing as navigator, then switching roles.

Related: Formative Assessment
Parsons Problem

An exercise in which students arrange a shuffled set of correct code lines into the proper order, focusing assessment on logic and structure without requiring typing.

Related: Formative Assessment, Pseudocode