TSA Study Guide#1
abstraction
athe process of simplified depiction of a complex situation by hiding the irrelevant details and focusing only the main idea
adware
aagidvertising-supported software; software which
renders advertisements for the purpose of generating
revenue for its author
agile methodology
collaborative iterative software development process that involves: planning, requirement analysis, design, coding, unit testing, and acceptance testing; Each iterative process is called a sprint
algorithm
a step-by-step list of rules/instructions that specifies how to solve a given problem
alpha testing
an early testing stage
anti-virus
a computer software or program that detects
and destroys malwares on a computer
API
(Application Programming Interface) It is part of a server that receives requests and sends a response without the end user having to leave the application. For example: you schedule a hair appointment online with your stylist, the website offers you the opportunity to add that appointment directly to your Outlook calendar and you accept - the stylist's server communicates with the Outlook server and puts the appointment on your calendar as an API request)
append
to add or join data in an existing array or list
application
a computer program that gives computer
instructions
array
a list of objects that are the same data type, (an array of strings, integers, floats) each item in the array is called an array element
array element
a single item in an array
array index
the location of an array element, the first
index always starts with [0,1,2...]
ASCii
(American Standard Code for Information Interchange) Represents characters using numeric values, it uses a 7- bit system that gives it 128 possible combinations
backup
an extra copy of a file or directory stored in a separate storage device for future reference in case the original data is lost or corrupted
bandwidth
a measurement of transmission rate of the data in a networking device
beta testing
the secondary testing stage in the series of testing phase
Big-O Notation
a measure of the time and memory needed to complete an algorithm based on the problem size known as (n)
binary
a number system with the base 2, represented by a combination of 0's and 1's
Not studied (158)
You haven't studied these terms yet!
Select these 158
BIOS
(Basic Input/Output System) Pre-installed Windows programmed used to startup the computer; it checks the hardware connections and devices before launching the OS.
bit
a single and smallest unit of information stored in a computer and can be either a 0 or a 1
bluetooth
short range wireless connection that reaches 30 feet
Boolean
a binary value having two possible outcomes: true/false, yes/no, on/off
Boolean expression
a logical expression whose outcomes have two possible answers: True/False
branching
allows the computer to deviate from its normal algorithmic flow and continue reading through the code following another path (or branch)
browser
a computer application used to view html pages/websites through an internet connection
buffer
a part of memory used for temporary storage; helps to overcome the data transfer rate between two communicating devices
bug
denotes a fault or error in a computer program or a machine
byte
is equal to 8 bits, it is the the abbreviation of the two words binary term, it is a unit of storage for a single character
capacity
the size or amount of information/data that can be stored in a device usually denoted in KiloBytes/MegaBytes/GigaBytes
computer literacy
the in-depth knowledge of how computers operate and process data to solve problems
CPU (Central Processing Unit)
aso known as the brain of the computer; the part of computer that does most of the processing
class
a template or a blueprint that describes the state(variables) and behaviors(methods) of an object(s)
click
press the mouse button or the keys of the keyboard
clock
a remote server(s) that store data and can be retrieved online
code
a symbolic representation of a program or data in computer
command
an instruction to the computer; usually an elementary part of a computer program
compiler
a program or software for translating a computer program written in one language into code that can be executed by the computer
compiled code
translated source code (high-level language) to executable or assembly code
compression
used to reduce the size of a file/files to take up less memory space and to send a file(s) quickly online; compression can either be lossless or lossy
concatenation
joining two String values together using the '+' operator; e.g. "hello" + "World" will result in helloWorld
conditional operators
the mathematical symbols used to compare two values or variable for a decision making scenario in a computer program; greater than(>),greater than or equal to(>=), less than(<), less than or equal to(<=), not equal to(!=)
constant
in programming, this value cannot be changed by the program; unlike a variable
copyright
the ownership of someone's work and their right to sell or advertise the work
CyberCrime
an illegal crime or offence done through the internet and computers; e.g. credit card fraud
data sanitization
the process of permanently and irreversibly removing or destroying the data stored on a memory device for security purposes
data type
defines what kind of value a variable can hold such as number or string
database
an organized collection of data, files and services to access them in a variety of ways relevant to the data
debugging
the process of identifying errors or bugs in a program and fixing them
decompose
to break down a complex problem into smaller, simpler blocks
decryption
the process of decoding an encrypted data or text into a format or language that you can understand
decimal
the number system with the base ten, represented by a combination of ten digits ranging from 0 to 9
DeMorgan's Law
1) When the NOT operator is applied to the AND of two variables, it is equal to the NOT applied to each of the variables with an OR in between; 2) When the NOT operator is applied to the OR of two variables, it is equal to the NOT applied to each of the two variables with an AND in between
double
the numeric data type that contains positive or negative decimal numbers such as 12.3864 or -2.876
encapsulation
the feature of a programming language which enables the bundling of relevant data and methods of an object together; also provides for the security of object's data
encryption
the process of encoding a text or data into a format that only the authorised parties can understand or access; an important process to ensure cyber data safety
exception
an error that occurs during runtime or compile time due to an incorrect syntax, command or invalid user input
exception-handling
the process of rectifying the exceptions that occur in a computer code or program
fair use doctrine
United States law that permits limited use of copyrighted material without having to first acquire
permission from the copyright holder
float
an integer variable type that has numbers on the right of the decimal point (fractional values)
for loop
an iterative loop that executes a set of instructions repeatedly with a predefined beginning, terminating and incrementing condition; e.g. for(int i = 1; i<10;i++){ //instructions }
function
a procedure or a module that has a block of code or instructions that can be reused through the function call wherever required in a program
garbage collection
the process of identifying objects or data variables that are no more needed and delete them to free memory
gigabyte
equals to a billion bytes (10!)
GPS
Global Positioning System, is a navigation system used to track or find the physical location of an object or place of interest
GUI
(Graphical User Interface) the user interface that includes icons, toolbars, windows and other buttons to enable the end user to comfortably interact with a program
hacking
the process of gaining an unauthorised access
or control of a computing device or a program
hacker
a person who gains an unauthorised access to
a computer or any other network device like a server
hardware
the physical components of a computer; includes the input, output devices and the processing units; e.g. CPU, Monitor, Printer, Keyboard
hashmap
an imported Java Utility that is used for storing key and value pairs: HashMap<key,value>; this class permits null values and the null key
hexadecimal
the number system with the base 16, represented by a combination of sixteen digits ranging from 0 through 9 and A through F; e.g. 23F9A
hierarchy
a structured system of ranking and placing the components in a particular order generally by the order of their importance
high-level language
language or code that is readily able to be written and read by humans; this language must be compiled or interpreted in order to be understood by the computer
HTTP
(Hypertext Transfer Protocol) A set of rules that transfers files (graphics, sound, text) on the World Wide Web, it runs on top of TCP/IP
HTTPS
(Hypertext Transfer Protocol Secure) Like HTTP but adds a secure layer (SSL) in the data transfer protocol
IDE
(Integrated Development Environment) Used to develop software by providing an editor, automation and debugging tools for the programmer
I/O
input and output
IP
(Internet Protocol) the rules/standards used to send
and receive information over the Internet
IP address
a unique identifier for each device on the Internet or local network; Current standard is IvP4 and now IvP6
IvP4
32 bit addresses; this allows for 4,294,967,296 (232) unique IP addresses; because of the number of IoT and other devices this is being update to IvP6

IvP6
128 bit addresses; this allows for 340,000,000,000,000,000,000,000,000,000,000,000,000
(264) unique IP addresses
if
a conditional statement that runs if the data set is proven true
if-else
compares two or more data sets; IF the statement is true, the instructions continue if not the program continues the ELSE instructions
infinite loop
a set of instructions that run repeatedly for an infinite number of times and are often caused due to a missing termination condition for the loop to exit
inheritance
alllows new objects to take the properties of existing objects; the class used for inheritance is called the superclass(or a parent class) and the class that inherits is a subclass(or a child class)
initialize
assigning a variable a beginning value (int a = 3)
instantiate
to create an object of a particular class is referred to as instantiating that class
integer
a numeric data type which represents whole numbers; can be positive, negative or a zero
internet
the network of all the computers and other devices that are connected through the world wide web and communicate through a set of established rules and protocols
interpreted codde
computer language that does not need to be compiled into machine language (or translated) first, instead the language (such as Java) is interpreted and compiled at the time of execution; the code is read line by line; Java is an interpreted language
IoT
(Internet of Things) Interrelated computing devices that have unique identifiers and can exchange information over a network without human intervention
IP address
the identification for a device that is connected to the internet; can be permanent or temporary based on the protocol or the network; e.g. 129.45.67.09
iteration
the repetition of a certain process to reach a desired goal; helps avoid rewriting the same instructions
Java
object-oriented, class-based, interpreted
programming language
kilobyte
equal to 1,000 bytes or 103; used to measure the size of files
library
a collection of routines/modules/functions already created that can be called and used by the programmer; (examples might be: message templates, configuration data, subroutines, classes)
loop
part of a program that repeats a set of instructions for a specified number of of times
lossless compression
compression of a file without losing any quality; rewrites data in more efficient manner; still a larger compression type than lossy compression
lossy compression
compression of a file in which their is loss of quality; used with audio and graphics, this compression method degrades the original and can be visible and audible loss
low-level language
machine language or code that the machine can read
machine language
language consisting of binary and/or hexadecimals that allows the computer to reply directly
malware
a software program intentionally designed to cause harm to a computing device or server
McCarthy Evaluation
a type of short-circuit evaluation in which semantics of some Boolean operators where the second argument is executed or evaluated if the first argument is insufficient in determining the value of the expression
megabyte
equal to 1,000,000 bytes or 106; used to measure the size of files
modifier method
determines whether other classes can a specific field or use a particular method
motherboard
the main circuit board of the computer which connects major components of a computer such as CPU, memory, I/O devices
network
a set of computing and electronic devices connected through a wired or wireless medium for interaction; e.g. a network of computers, cell phone, router and printer
nested loops
a loop within a loop used for repeating an inner loop through the outer loop
object
an instance of a class in an object oriented programming approach such as Dog is an instance of the class Animal
object oriented programming
a programming style in which data and behavior are associated with an object modelling the real world scenario
operating system
that software of the computer that instructs the hardware components to work and interact with other software/hardware components;e.g. Mac, Windows, Unix
paradigm
a group of ideas that represent how
something should be developed or made
parameter
a special kind of variable used in a method or a function and has the data provided as input to the that method(function) call
piracy
Illegal production and distribution of a media(audio, video, images,art, computer software)
pixel
the smallest distinct part of an image in digital format
plagiarism
the process of stealing somebody else's work and posting it as yours
polymorphism
the process of using same modules to provide different behaviors usually through the use of varying parameters(count and data types)
port
a socket on a computing device for attaching them to external devices such as keyboard or a printer
procedure
a block of code or instructions that can run independently; also known as method or function
processor
the hardware component that executes the computer programs and software applications; also referred as the Central Processing Unit
program editor
a program designed to edit programming; may or may not be part of an IDE
programming
(Or program) set of instructions used by a computer to solve a purpose or problem
protected
a variable/method that can only be accessed by the class that belong to or its subclass
protocol
the rules and regulations that establish the grounds of communication between two or more devices or program; e.g. HTTP, TCP/IP
prototype
a working or non-working model of a project or object which is made for demonstration purposes; provides an approximate idea of how the end product would look and function like
private
a variable/method that can be accessed only by the class they belong
pseudocode
a well explained set of instructions about how a computer program or an algorithm will work but written in a rather non-programming language
public
may be referred to as "Global"; a variable/method that can be accessed by any other program or part of the program
pull
when the client initiates a request and the server responds
push
when the server initiates a request and the client responds
python
high-level, interpreted programming language; this language was created by Guido van Rossum and released in 1991
QR code
stands for Quick Response Code; barcode variety with a matrix of dots which can be scanned with a QR scanner
query
a question that is asked of a computer program that is answered by the program
ransomware
an advanced type of malware that restricts access to the computer system until the user pays a fee
RAM
also known as Random Access Memory, temporary working memory storage
RGB
stands for "Red, Green, Blue"; specifies color by giving the amount of each of three primary colors to make the desired color
reboot
to restart a computer or other device usually as a part of troubleshooting
repository
used by version control systems as a central storage system for multiple versions of data; usually accessible by multiple users
ROM
also known as Read Only Memory, stores the boot up instructions called BIOS; permanent storage
router
a network device that establishes the path for a data packet to transfer through the network medium
SDLC
(System Development Life Cycle; Software
Development Life Cycle)
server
a computer that provides a specific service and is accessible over the internet
simulation
modeling the behaviors and conditions of the real world situation or problem in a virtual form
software
a computer component that includes at least one or many programs and data files and are used with a specific goal in mind such as image processing software(Adobe Photoshop)
spam
an unwanted email or message
spyware
a malicious software that spies on a user, tracks their internet activities
SSL
(Secure Sockets Layer) A standard security that uses an encrypted link to transfer data between the server and its client
string
a combination of symbols, characters, numbers and letters; can be a name or an addressbind
subclass
can also be called "child class"; this class inherits behavior and states from its superclass (or parent)
substring
takes characters from a list between the two quantified indices
superclass
can also be called "parent class"; the class or computer program that has data and methods which can be inherited or reused by a subclass(child)
switch
a device that receives incoming data packets and redirects them to their destination on a local area network
switch case
the conditional block of instructions where decision is made based on comparison of defined cases
syntax
the grammar to define how a statement or command should be written in a certain language
TCP
(Transmission Control Protocol) A transport layer protocol that enables systems to communicate over the Web
terabyte
equals to a trillion bytes (𝟏0!")
thread
a small unit of execution of a process that can run in parallel with other threads in the process; helps multiple parts of a process run simultaneously
topology
the physical or the logical configuration of a network; the arrangement of a network, including its devices and connecting links
Trojan horse
a computer program that misrepresents itself as a regular program in order to persuade an unsuspecting victim to install it
troubleshooting
a systematic approach to solve a problem, error, or fault within software or a computer system
two-dimensional array
an array of arrays which has set of rows and columns usually represented as a table
UserName
a name that a user defines to register themselves for a website or a user group; also known as screen name
URL
(Uniform Resource Locator) The address of a specific website, page or file
variable
a user defined name that represents a data value to be stored and changed during a computer program run; can have numbers, strings, true or false values
virtual machine
a software implementation of a hardware component that executes programs like a physical machine
virus
a malicious program that has the capability to replicate itself and corrupt the device it is hosted on
version control system
system used to track changes to a files enabling the user to go back to prior file creations; examples of version control systems are (GitHub, Mercurial)
waterfall
A SDLC model developed by Winston W Royce in 1970, this development methodology uses five steps: requirements (planning and analysis), design (logical and physical), implementation (programming), verification (customer roll-out), and maintenance
word processor
an application that provides the user with tools needed to write and edit and format text files such as Google docs, Microsoft Word
worm
a malicious program that replicates itself to
corrupt the files and data on the victim device
website
a collection of interlinked web pages on the World Wide Web
while loop
a loop that repeats while a condition is true
WI-FI
a wireless method used to send information that
uses radio waves
workspace
the white/blank area usually on the right side of a learning system where you are able drag and drop commands in a blocky program
XML
(Extensible Markup Language) Not a markup language, but a "metalanguage", it can be used by HTML; it is used to create a markup language for a particular application such as a database of information used on a website without having to use a specific database program
YACC
(Yet Another Compiler Compiler) ; a Unix system
tool program for generating C or C++ code for a parser;
a command-line tool that accepts a grammar description
(in a text file) as input and generates the code for a
parser for that grammar as output

zip file
the file format that compresses a data file for less storage issues and quicker online transfer of material; the file extension ends in .zip