Definitions Flashcards

1
Q

Absolute Error

A

The difference between the actual number and the nearest representable value.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Abstract data type (ADT)

A

A data type whose properties are specified independently of any particular programming language.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Abstraction

A

Representation that is arrived at by removing unnecessary details.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Aggregation

A

A type of association where the aggregated object has a weaker form of association with the objects that it is aggregating than is the case with composition. These objects have an existence independent of the aggregated object and can continue to exist even after the aggregated object is disposed of.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Ajax

A

Web technology that allows only the part of a web page that needs updating to be fetched from the web server.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Algorithm

A

A sequence of unambiguous instructions for solving a problem. It can be represented as a Turing machine program.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Application programming interface (API)

A

A layer of software that allows application programs to call on the services of the operating system.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Association

A

An association is a relationship between two classes. There are different types of association: composition and aggregation.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Asymptotic behaviour of f

A

Behaviour of the functionf(n) for very large values ofn.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Asynchronous serial data transmission

A

Transmission system in which the sender and receiver have separate clocks which are not kept synchronised. Instead, the clocks are synchronised temporarily at the start of a transmission. The arrival of data cannot be predicted by the receiver; s a start bit is used to signal the arrival of data and to synchronise the transmitter and receiver temporarily.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Attribute

A

A property or characteristic of an entity (databases) or an object (OOP).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Automation

A

Turning an abstraction into a form that can be processed by a computer.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Backus-Naur Form, (BNF)

A

Backus-Naur Form, (BNF)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Bandwidth

A

For a transmission medium, the range of signal frequencies it may transmit.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Base case

A

A value that has a solution which does not involve any reference to the general case solution.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Baseband system

A

A system that uses a single data channel system in which the whole bandwidth of the transmission medium is dedicated to one data channel at a time.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Basic operation

A

The operation which contributes most to the total running time.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Baud rate

A

The rate at which signals on a wire may change.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Behaviours

A

The functions of the object or what the object does.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Bit rate

A

The number of bits transmitted per second.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Broadband

A

A multiple data channel system in which the bandwidth of the transmission medium carries several data streams at the same time.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Bubble Sort

A

A sorting algorithm where during a pass, neighbouring values are compared and swapped. Passes are made until no further swaps are needed.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Cipher text

A

Message data after it has been encrypted.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Circular queue

A

When the array element with the largest possible index has been used, the next element to join the queue reuses the vacated location at the beginning of the array.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Class definition
A template that can be used to create objects of that class.
26
Client
A computer that uses the services provided by a server.
27
Client-server system
A system in which some computers (the clients), request services provided by other computers, the servers.
28
Closed path/circuit
A sequence of edges that start and end at the same vertex and such that any two successive edges in the sequence share a vertex.
29
Communication protocol
A set of agreed signals, codes and rules to be used for data and information exchange between computers.
30
Complexity of a problem
Taken to be the worst case complexity of the most efficient algorithm which solves the problem.
31
Composite key
A combination of attributes that uniquely identifies a tuple/record.
32
Computational complexity
A measure of how economical an algorithm is with time and space.
33
Composition
A type of association where the composite object has ownership of the objects within it. The objects that are part of the composite objects have a lifecycle determined by the composite object. If the composite object ceases to exist then they too will cease to exist.
34
Conceptual model
A representation of the data requirements of an organisation constructed in a way that is independent of any software that is used to construct the database.
35
Cryptanalysis
A method of trying to find the plain text from the cipher text without the decryption key.
36
Cryptography
The science of designing cipher systems.
37
Cycle
A closed path in which all the edges are different and all the intermediate vertices are different.
38
Data Model
A method of describing the data, it's structure, the way it is interrelated and the constraints that apply to it for a given system or organisation.
39
Data transmission
Movement of data.
40
Database
A structured collection of data.
41
Database management system
A software system that enables the definition, creation and maintenance of a database and which provides controlled access to this database.
42
Decryption
Using an algorithm and a key to convert encrypted message data into its plain text equivalent.
43
Degree (of a vertex)
The number of neighbours for that vertex.
44
Degree of relationship
Between two entities, it refers to the number of entity occurrences of one entity which are associated with just one entity occurrence of the other and vice versa.
45
Deterministic finite state machine (FSM)
An FSM that has just one next state for each pair of state and input symbols.
46
Directed graph
A diagram consisting of vertices, joined by directed edges.
47
Dynamic allocation
Memory space is only allocated when required at runtime.
48
Dynamic data structure
The memory taken up by the data structure varies at run time.
49
Dynamic web page content
Content that is generated when the web browser request is received.
50
Embedded computer system
A dedicated computer system with a limited or non-existent user interface and designed to operate completely, or largely, autonomously from within other machinery.
51
Encapsulation
Combining a record with the procedures and functions that manipulate it to form a new data type; a class in OOP.
52
Encryption
Using an algorithm and a key to convert message data into a form that is not understandable without that key.
53
Entity
An object, person, event or thing of interest to an organisation and about which data are recorded.
54
Evaluation
A systematic assessment of whether something meets its objectives or specifications and how well it meets the latter in terms of effectiveness, usability, maintainability.
55
Explorer's problem
The solution finds a route that traverses each road exactly once before returning to the starting point.
56
Exponential growth
Growth that has the form kn, e.g. 2n where k = 2 and n = 1, 2, 3, etc.
57
Exponential time algorithm
An algorithm whose execution time grows exponentially with input size.
58
Feasibility study
A study that investigates the potential of a new system.
59
Finite state machine
A finite state machine is a model of computation for a machine that is always in one of a fixed number of states. The state of the machine can be changed according to transition rules, based  upon the input that it receives and its current state. Some finite state machines produce output as they carry out transitions whilst others simply produce a yes/no response at the end of processing their input.
60
Floating point notation
A real number represented by a sign, some significant digits (the mantissa) and a power of 2 (the exponent).
61
Foreign key
An attribute in one table that is a primary key in another table.
62
Gateway
A device used to connect networks using different protocols so that information can be successfully passed from one system to another.
63
General case
The solution in terms of itself for a value n.
64
Graph
A diagram consisting of vertices joined by edges.
65
Halting problem
The unsolvable problem of writing a program that can tell whether a given program and its inputs will halt, without running the given program.
66
Halting state
A state that has no outgoing transition.
67
Handshaking protocol
The sending and receiving devices exchange signals to establish that they are each ready to initiate data transfer.
68
Heuristic
An approach that uses experience to make informed guesses that assist in finding a polynomial time solution to an intractable algorithmic problem. The 'solution' may be non-optimal.
69
Human-computer interaction
The study, planning and design of what happens when a computer and human work together.
70
Inheritance
The relationship between two object types in which one is a kind of the other and shares some of its properties or behaviours.
71
Instantiation
An object is defined based on a class.
72
Internet
A global wide area network that is formed from the interconnection of many other networks and that uses the TCP/IP protocol.
73
Interpreter
An interpreter works its way through a set of source code instructions identifying the next instruction and then running routine(s) to execute it, before moving on to the next instruction.
74
Intractable
A problem which can be solved, but for which no polynomial time solution (or better) has been found.
75
Labelled or weighted graph
A graph in which the edges are labelled or given a value called its weight.
76
Linear queue
Elements join the queue at one end and leave the queue at the other.
77
Linear search
Starts at the beginning of the list and compares each element in turn with the required value until a match is found, or the end of the list is reached.
78
Linear time algorithm
An algorithm that executes in O(n) time.
79
List
A collection of elements with an inherent order.
80
Maintainability of software
How easy it is to fix bugs, change parameters and respond to changing requirements.
81
Maintenance
Fixing bugs, changing parameters and responding to changing requirements.
82
Mealy machine
A finite state machine (FSM)that determines its outputs from the present state and from the inputs.
83
Model
An abstraction of an entity in the real world or in the problem that enables an automated solution. The abstraction is a representation of the problem that leaves out unnecessary detail.
84
Neighbours
Two vertices are neighbours if they are connected by an edge.
85
Non-computable
An algorithmic problem that admits no algorithm.
86
Normalisation
A technique used to produce a normalised set of entities in a database.
87
Normalised entities
A set of entities that contain no redundant data.
88
Null pointer
A pointer that does not point to anything, usually represented by Ø or –1.
89
Object
An instance of a class.
90
Operating system role
To manage the hardware resources in order to provide for an orderly and controlled allocation of the processors, memories and I/O devices among the various programs competing for them and manage the storage of data. It hides the complexities of the hardware from the user.
91
Order of complexity
Of a problem is its big O complexity.
92
Overflow
The result of a calculation is too large to be represented using the available number of bits.
93
Parallel data transmission
Multiple bits are sent down several wires simultaneously.
94
Peer-to-peer network
A network that has no dedicated servers. All computers are of equal status and can both share resources themselves and use resources from other computers, ie they are peers.
95
Pharming
When a phisher changes DNS server information so that customers are directed to another site.
96
Phishing
When someone tries to get you to give them your personal information.
97
Plain text
Message data before it is encrypted.
98
Pointer
A variable that contains a memory address. The pointer 'points' to the memory location with that address.
99
Pointer type
A variable of pointer type that stores an address of a data value.
100
Polymorphism
Giving an action one name that is shared up and down a class hierarchy. Each class in the hierarchy implements the action in a way appropriate to itself.
101
Polynomial growth
Growth that has the form nk, e.g. n3 where k = 3 and n = 1, 2, 3, etc.
102
Polynomial time algorithm
An algorithm whose execution time grows as a polynomial of input size.
103
Precision
The maximum number of significant digits that can be represented.
104
Primary key
An attribute or set of attributes which uniquely identifies a tuple.
105
Principle of universality
A universal machine is a machine capable of simulating any other machine.
106
Priority queue
Each element of a priority queue has an associated priority.
107
Prototype
An early or trial working version of the proposed system developed to test possible solutions.
108
Prototyping
Building a working model, demonstration system, simplified version, rough copy or trial piece of software to help an analyst.
109
Pseudo-random numbers
A series of numbers generated by computer with apparent randomness.
110
Queue
A first-in-first-out (FIFO) abstract data type.
111
Recursive definition
One that is defined in terms of itself.
112
Recursive routine
A routine defined in terms of itself.
113
Referential integrity
If a value appears in a foreign key in one table it must also appear in the primary key in another table.
114
Regular expression
A notation for defining all the valid strings of a formal language or a special text string for describing a search pattern.
115
Regular language
Any language that a finite state machine (FSM) will accept.
116
Relation
A set of attributes and tuples, modelling an entity (a table).
117
Relational database
A collection of tables which can be linked together by means of primary and foreign keys.
118
Relationship
An association or link between two entities.
119
Relative error
The absolute error divided by the actual numbers.
120
Robust code
The program will function reliably and not crash or go into infinite loops, even with incorrect inputs or unpredictable values.
121
Rooted tree
A tree in which one vertex has been designated as the root and every edge is directed away from the root.
122
Router
A device that receives packets or from one host (computer) or router and uses the destination IP address that they contain to pass them correctly formatted, to another host (computer) or router.
123
Serial data transmission
Single bits are sent one after another along a single wire.
124
Server
A computer that provides shared resources to network users.
125
Significant digits
Those digits which carry meaning contributing to the accuracy of a number. This includes all digits except leading and trailing zeros where they serve merely as placeholders to indicate the scale of the number.
126
Simple graph
A graph without multiple edges in which each edge connects to two different vertices.
127
Software as a service (SaaS)
A model of software deployment where an application is hosted as a service provided to customers across the internet.
128
Space-complexity (of an algorithm)
How much memory an algorithm needs.
129
Stack
A last-in-first-out (LIFO) abstract data type.
130
Stack frame
The locations in the stack area used to store the values referring to one invocation of a routine.
131
Stand-alone computer
A computer not networked, requiring its own printer and other peripherals plus its own installation of application software.
132
State transition diagram
A directed graph whose nodes represent the states. An edge leading from state s to state t is called a transition and is labelled with a symbolic code, eg a | b. The a part of the label is called the transition’s trigger and denotes the input symbol. The b part, which is optional, denotes the output symbol.
133
Static data structure
The memory required to store the data structure is declared before run time.
134
System software
A program that manages the operation of a computer.
135
Thin-client network
A network where all processing takes place in a central server; the clients are dumb terminals with little or no processing tower or local hard disk storage.
136
Time-complexity (of an algorithm)
How fast an algorithm runs, expressed as a function of the number of input values.
137
Topology (networks)
The shape, configuration or structure of the connections that connect device to the network.
138
Tractable
A problem that has a reasonable (polynomial) time solution as the size of the input increases.
139
Transition function
Maps (input symbol, current state) to (output symbol, next state, direction of movement).
140
Transition table
Tabulates the mappings (input symbol, current state) to (output symbol, next state, direction of movement) for all inputs.
141
Traveller’s problem
The solution finds a route that visits each city exactly once before returning to the starting point.
142
Tree
A connected undirected graph with no cycles.
143
Trojan
A program that hides in or masquerades as desirable software, such as utility or a game, but attacks computers it infects.
144
Tuple
A set of attribute values in a database.
145
Turing machine (TM)
A formal model of computation that consists of a finite state machine (FSM) that controls one or more tapes, where at least one tape is of unbounded length (ie infinitely long).
146
Undecidable
Describes a decision-type algorithmic problem that is non-computable.
147
Underflow
The result of a calculation is too small to be represented using the available number of bits.
148
Universal TM, UTM
A universal Turing machine can simulate any other Turing machine.
149
Usability
The ease with which a user interface can be used by its intended audience to achieve defined goals.
150
Virtual machine
The apparent machine that the operating system presents to the user, achieved by hiding the complexities of the hardware behind layers of operating system software.
151
Virus (computer)
A small program attached to another program or data file. It replicates itself by attaching itself to other programs.
152
Volumetrics
Measurement or assessment of the volume of data that a system will be required to process and store.
153
Web 2.0
Software that becomes a service that is accessed over the Internet.
154
Web server extension
A program written in native code, ie an executable or a script that is interpreted by an interpreter running on the web server that extends the functionality of the web server and allows it to generate content at the time of the HTTP request.
155
Web services
Self-contained, modular applications that can be described, published, located and invoked over a network, generally the web.
156
WiFi
Trademarked IEEE 802.11 technologies that support wireless networking of home and business networks.
157
Wireless network
Any type of local area network (LAN) in which the nodes (computers or computing devices, often portable devices) are not connected by wires but use radio waves to transmit data between them.
158
Worm
A small program that exploits a network security weakness (security hole) to replicate itself through computer networks.
159
Explain how a key-value pair is added to a hash table.
1. Apply hash function to the key 2. Use the resulting hash value as an index to the array 3. Check if the location within the array at the index of the hash value is empty 4. If empty, store the key and paired value at that location at that index in the array 5. If an item is already present to handle collisions appropriately through (rehashing, linear probing and separate chaining.
160
Separate chaining
The linked list data structure is used to implement this technique. So what happens is, when multiple elements are hashed into the same slot index, then these elements are inserted into a singly-linked list which is known as a chain.
161
Function Application
Function Application means to apply a function to its arguments and can be described as the process of giving particular inputs to a function.
162
Partial Function Application
A function application scheme, where a function is decomposed into smaller intermediate partial functions. A partial function takes some of the arguments and returns a function awaiting the remainder of the arguments. f :: A -> B -> C pf :: A -> B f :: pf -> C
163