The glossary includes definitions of terms used in the statements in the framework. These terms are defined for readers of the framework and are not necessarily intended to be the definitions or terms that are seen by students.

A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z



Term Definition
abstraction (process): The process of reducing complexity by focusing on the main idea. By hiding details irrelevant to the question at hand and bringing together related and useful details, abstraction reduces complexity and allows one to focus on the problem.

(product): A new representation of a thing, a system, or a problem that helpfully reframes a problem by hiding details irrelevant to the question at hand. [MDESE, 2016]

accessibility The design of products, devices, services, or environments for people who experience disabilities. Accessibility standards that are generally accepted by professional groups include the Web Content Accessibility Guidelines (WCAG) 2.0 and Accessible Rich Internet Applications (ARIA) standards. [Wikipedia]
algorithm A step-by-step process to complete a task.
analog The defining characteristic of data that is represented in a continuous, physical way. Whereas digital data is a set of individual symbols, analog data is stored in physical media, such as the surface grooves on a vinyl record, the magnetic tape of a VCR cassette, or other nondigital media. [Techopedia]
app A type of application software designed to run on a mobile device, such as a smartphone or tablet computer. Also known as a mobile application. [Techopedia]
artifact Anything created by a human. See computational artifact for the definition used in computer science.
audience Expected end users of a computational artifact or system.
accessibility The design of products, devices, services, or environments for people who experience disabilities. Accessibility standards that are generally accepted by professional groups include the Web Content Accessibility Guidelines (WCAG) 2.0 and Accessible Rich Internet Applications (ARIA) standards. [Wikipedia]
authentication The verification of the identity of a person or process. [FOLDOC]
automate: To link disparate systems and software so that they become self-acting or self-regulating. [Ross, 2016]

automation: The process of automating.

Back to top


Term Definition
Boolean A type of data or expression with two possible values: true and false. [FOLDOC]
An error in a software program. It may cause a program to unexpectedly quit or behave in an unintended manner. [Tech Terms]
The process of finding and correcting errors (bugs) is called debugging. [Wikipedia]

Back to top


Term Definition
code Any set of instructions expressed in a programming language. [MDESE, 2016]
comment A programmer-readable annotation in the code of a computer program added to make the code easier to understand. Comments are generally ignored by machines. [Wikipedia]
complexity The minimum amount of resources, such as memory, time, or messages, needed to solve a problem or execute an algorithm. [NIST/DADS]
component An element of a larger group. Usually, a component provides a particular service or group of related services. [Tech Terms, TechTarget]
computational Relating to computers or computing methods.
computational artifact Anything created by a human using a computational thinking process and a computing device. A computational artifact can be, but is not limited to, a program, image, audio, video, presentation, or web page file. [College Board, 2016]
computational thinking The human ability to formulate problems so that their solutions can be represented as computational steps or algorithms to be executed by a computer. [Lee, 2016]
computer A machine or device that performs processes, calculations, and operations based on instructions provided by a software or hardware program. [Techopedia]
computer science The study of computers and algorithmic processes, including their principles, their hardware and software designs, their implementation, and their impact on society. [ACM, 2006]
computing Any goal-oriented activity requiring, benefiting from, or creating algorithmic processes. [MDESE, 2016]
computing device A physical device that uses hardware and software to receive, process, and output information. Computers, mobile phones, and computer chips inside appliances are all examples of computing devices.
computing system A collection of one or more computers or computing devices, together with their hardware and software, integrated for the purpose of accomplishing shared tasks. Although a computing system can be limited to a single computer or computing device, it more commonly refers to a collection of multiple connected computers, computing devices, and hardware.
A feature of a programming language that performs different computations or actions depending on whether a programmer-specified Boolean condition evaluates to true or false. [MDESE, 2016]
(A conditional could refer to a conditional statement, conditional expression, or conditional construct.)
(process): Defining the options that are provided when installing or modifying hardware and software or the process of creating the configuration (product). [TechTarget]
(product): The specific hardware and software details that tell exactly what the system is made up of, especially in terms of devices attached, capacity, or capability. [TechTarget]
connection A physical or wireless attachment between multiple computing systems, computers, or computing devices.
connectivity A program’s or device’s ability to link with other programs and devices. [Webopedia]
control structure
control: (in general) The power to direct the course of actions.
(in programming) The use of elements of programming code to direct which actions take place and the order in which they take place.
control structure: A programming (code) structure that implements control. Conditionals and loops are examples of control structures.
cultural practices

culture: A human institution manifested in the learned behavior of people, including their specific belief systems, language(s), social relations, technologies, institutions, organizations, and systems for using and developing resources. [NCSS, 2013]

cultural practices: The displays and behaviors of a culture.

cybersecurity The protection against access to, or alteration of, computing resources through the use of technology, processes, and training. [TechTarget]

Back to top


Term Definition
data Information that is collected and used for reference or analysis. Data can be digital or nondigital and can be in many forms, including numbers, text, show of hands, images, sounds, or video. [CAS, 2013; Tech Terms]
data structure A particular way to store and organize data within a computer program to suit a specific purpose so that it can be accessed and worked with in appropriate ways. [TechTarget]
data type A classification of data that is distinguished by its attributes and the types of operations that can be performed on it. Some common data types are integer, string, Boolean (true or false), and floating-point.
debugging The process of finding and correcting errors (bugs) in programs. [MDESE, 2016]
decompose: To break down into components.

decomposition: Breaking down a problem or system into components. [MDESE, 2016]

device A unit of physical hardware that provides one or more computing functions within a computing system. It can provide input to the computer, accept output, or both. [Techopedia]
digital A characteristic of electronic technology that uses discrete values, generally 0 and 1, to generate, store, and process data. [Techopedia]
digital citizenship The norms of appropriate, responsible behavior with regard to the use of technology. [MDESE, 2016]

Back to top


Term Definition
efficiency A measure of the amount of resources an algorithm uses to find an answer. It is usually expressed in terms of the theoretical computations, the memory used, the number of messages passed, the number of disk accesses, etc. [NIST/DADS]
encapsulation The technique of combining data and the procedures that act on it to create a type. [FOLDOC]
encryption The conversion of electronic data into another form, called ciphertext, which cannot be easily understood by anyone except authorized parties. [TechTarget]
end user (or user) A person for whom a hardware or software product is designed (as distinguished from the developers). [TechTarget]
event Any identifiable occurrence that has significance for system hardware or software. User-generated events include keystrokes and mouse clicks; system-generated events include program loading and errors. [TechTarget]
event handler A procedure that specifies what should happen when a specific event occurs.
execute: To carry out (or “run”) an instruction or set of instructions (program, app, etc.).
execution: The process of executing an instruction or set of instructions. [FOLDOC]

Back to top


Term Definition
hardware The physical components that make up a computing system, computer, or computing device. [MDESE, 2016]
hierarchy An organizational structure in which items are ranked according to levels of importance. [TechTarget]
human–computer interaction (HCI) The study of how people interact with computers and to what extent computing systems are or are not developed for successful interaction with human beings. [TechTarget]

Back to top


Term Definition
identifier The user-defined, unique name of a program element (such as a variable or procedure) in code. An identifier name should indicate the meaning and usage of the element being named. [Techopedia]
implementation The process of expressing the design of a solution in a programming language (code) that can be made to run on a computing device.
inference A conclusion reached on the basis of evidence and reasoning. [Oxford]
input The signals or instructions sent to a computer. [Techopedia]
integrity The overall completeness, accuracy, and consistency of data. [Techopedia]
Internet The global collection of computer networks and their connections, all using shared protocols to communicate. [CAS, 2013]
iterative Involving the repeating of a process with the aim of approaching a desired goal, target, or result. [MDESE, 2016]

Back to top


Term Definition
loop A programming structure that repeats a sequence of instructions as long as a specific condition is true. [Tech Terms]

Back to top

M Terms

Term Definition
memory Temporary storage used by computing devices. [MDESE, 2016]
model A representation of some part of a problem or a system. [MDESE, 2016] Note: This definition differs from that used in science.
modularity The characteristic of a software/web application that has been divided (decomposed) into smaller modules. An application might have several procedures that are called from inside its main procedure. Existing procedures could be reused by recombining them in a new application. [Techopedia]
module A software component or part of a program that contains one or more procedures. One or more independently developed modules make up a program. [Techopedia]

Back to top


Term Definition
network A group of computing devices (personal computers, phones, servers, switches, routers, etc.) connected by cables or wireless media for the exchange of information and resources.

Back to top


Term Definition
operation An action, resulting from a single instruction, that changes the state of data. [Free Dictionary]

Back to top


Term Definition
packet The unit of data sent over a network. [Tech Terms]
parameter A special kind of variable used in a procedure to refer to one of the pieces of data received as input by the procedure. [MDESE, 2016]
piracy The illegal copying, distribution, or use of software. [TechTarget]

An independent code module that fulfills some concrete task and is referenced within a larger body of program code. The fundamental role of a procedure is to offer a single point of reference for some small goal or task that the developer or programmer can trigger by invoking the procedure itself. [Techopedia]
In this framework, procedure is used as a general term that may refer to an actual procedure or a method, function, or module of any other name by which modules are known in other programming languages.
process A series of actions or steps taken to achieve a particular outcome. [Oxford]

program (n): A set of instructions that the computer executes to achieve a particular objective. [MDESE, 2016]
program (v): To produce a program by programming.

programming: The craft of analyzing problems and designing, writing, testing, and maintaining programs to solve them. [MDESE, 2016]

protocol The special set of rules used by endpoints in a telecommunication connection when they communicate. Protocols specify interactions between the communicating entities. [TechTarget]
prototype An early approximation of a final product or information system, often built for demonstration purposes. [TechTarget, Techopedia]

Back to top


Term Definition
redundancy A system design in which a component is duplicated, so if it fails, there will be a backup. [TechTarget]
reliability An attribute of any system that consistently produces the same results, preferably meeting or exceeding its requirements. [FOLDOC]
remix The process of creating something new from something old. Originally a process that involved music, remixing involves creating a new version of a program by recombining and modifying parts of existing programs, and often adding new pieces, to form new solutions. [Kafai & Burke, 2014]
router A device or software that determines the path that data packets travel from source to destination. [TechTarget]

Back to top


Term Definition
scalability The capability of a network to handle a growing amount of work or its potential to be enlarged to accommodate that growth. [Wikipedia]
security See the definition for cybersecurity.

simulate: To imitate the operation of a real-world process or system.

simulation: Imitation of the operation of a real-world process or system. [MDESE, 2016]

software Programs that run on a computing system, computer, or other computing device.
(place) A place, usually a device, into which data can be entered, in which the data can be held, and from which the data can be retrieved at a later time. [FOLDOC]
(process) A process through which digital data is saved within a data storage device by means of computing technology. Storage is a mechanism that enables a computer to retain data, either temporarily or permanently. [Techopedia]
string A sequence of letters, numbers, and/or other symbols. A string might represent, for example, a name, address, or song title. Some functions commonly associated with strings are length, concatenation, and substring. [TechTarget]
structure A general term used in the framework to discuss the concept of encapsulation without specifying a particular programming methodology.
switch A high-speed device that receives incoming data packets and redirects them to their destination on a local area network (LAN). [Techopedia]
A collection of elements or components that work together for a common purpose. [TechTarget]
See also the definition for computing system.

Back to top


Term Definition
test case A set of conditions or variables under which a tester will determine whether the system being tested satisfies requirements or works correctly. [STF]
topology The physical and logical configuration of a network; the arrangement of a network, including its nodes and connecting links. A logical topology is the way devices appear connected to the user. A physical topology is the way they are actually interconnected with wires and cables. [PCMag]
troubleshooting A systematic approach to problem solving that is often used to find and resolve a problem, error, or fault within software or a computing system. [Techopedia, TechTarget]

Back to top


Term Definition
user See the definition for end user.

Back to top


Term Definition
A symbolic name that is used to keep track of a value that can change while a program is running. Variables are not just used for numbers; they can also hold text, including whole sentences (strings) or logical values (true or false). A variable has a data type and is associated with a data storage location; its value is normally changed during the course of program execution. [CAS, 2013; Techopedia]

Note: This definition differs from that used in math.

Back to top


Some definitions came directly from these sources, while others were excerpted or adapted to include content relevant to this framework.

ACM, 2006 A Model Curriculum for K–12 Computer Science
Tucker, A., McCowan, D., Deek, F., Stephenson, C., Jones, J., & Verno, A. (2006). A model curriculum for K–12 computer science: Report of the ACM K–12 task force curriculum committee (2nd ed.). New York, NY: Association for Computing Machinery.
CAS, 2013 Computing At School’s Computing in the National Curriculum: A Guide for Primary Teachers
Computing At School. (2013). Computing in the national curriculum: A guide for primary teachers. Belford, UK: Newnorth Print.
College Board, 2016 College Board Advanced Placement® Computer Science Principles
College Board. (2016). AP Computer Science Principles course and exam description. New York, NY: College Board.
FOLDOC Free On-Line Dictionary of Computing
Free on-line dictionary of computing. (n.d.). Retrieved from
Free Dictionary The Free Dictionary
The free dictionary. (n.d.). Retrieved from
Kafai & Burke, 2014 Connected Code: Why Children Need to Learn Programming
Kafai, Y., & Burke, Q. (2014). Connected code: Why children need to learn programming. Cambridge, MA: MIT Press.
Lee, 2016 Reclaiming the Roots of CT
Lee, I. (2016). Reclaiming the roots of CT. CSTA Voice: The Voice of K–12 Computer Science Education and Its Educators, 12(1), 3–4.
MDESE, 2016 Massachusetts Digital Literacy and Computer Science (DL&CS) Standards
Massachusetts Department of Elementary and Secondary Education. (2016, June). 2016 Massachusetts digital literacy and computer science (DLCS) curriculum framework. Malden, MA: Author.
NCSS, 2013 College, Career & Civic Life (C3) Framework for Social Studies State Standards
National Council for the Social Studies. (2013). The college, career, and civic life (C3) framework for social studies state standards: Guidance for enhancing the rigor of K–12 civics, economics, geography, and history. Silver Spring, MD: Author.
NIST/DADS National Institute of Science and Technology Dictionary of Algorithms and Data Structures
Pieterse, V., & Black, P. E. (Eds.). (n.d). Dictionary of algorithms and data structures. Retrieved from
Oxford Oxford Dictionaries
Oxford dictionaries. (n.d.). Retrieved from
PCmag Encyclopedia encyclopedia. (n.d.). Retrieved from
Ross, 2016 What Is Automation
Ross, B. (2016, May 10). What is automation and how can it improve customer service? Information Age. Retrieved from
STF Software Testing Fundamentals
Software testing fundamentals. (n.d). Retrieved from
Tech Terms Tech Terms
Tech terms computer dictionary. (n.d.). Retrieved from
Techopedia Techopedia
Techopedia technology dictionary. (n.d.). Retrieved from
TechTarget TechTarget Network
TechTarget network. (n.d.). Retrieved from
Webopedia Webopedia
Webopedia. (n.d.). Retrieved from
Wikipedia Wikipedia
Wikipedia: The free encyclopedia. (n.d.). Retrieved from