Y1 Flashcards

1
Q

1What is a variable?

A

A variable is a named container, held by the computer in a memory location

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

What is variable scope?

A

The block of code where the variable can be declared, used and modified

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

What is a local variable?

A

variable that is given local scope. A local variable reference in the function or block in which it is declared overrides the same variable name in the larger scope

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

When should you use local variables and when should you use global variables?

A

If you feel that a certain variable will take multiple values by passing through various functions then use local variables and pass them in function calls. If you feel that a certain variable you need to use will have constant value, then declare it as a global variable

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

Why do computers use binary to store data?

A

Easier to manufacture, therefore cheaper and it is more reliable

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

Examples of ways to store data using binary?

A

RAM, hard disk, optical disk and flash memory

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

What is a data structure?

A

A way of storing and managing data

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

What is a data type?

A

A classification that specifies which type of value a variable has and what type of mathematical, relational or logical operations can be applied to it without causing an error

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

What is an array?

A

A set of data items of the same type grouped together using a single identifier. Each of the data items or elements are addressed by the variable name eg myArray and an index. It is static - size is fixed when the structure is created/size cannot change at runtime.

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

What is a dimension?

A

The dimension of an array is the number of indices needed to select an element. A one-dimensional has one index. A 1D array is like a column of data. A two-dimensional has two indexes, one for the row and another for the column. A 2D array is like a table of data.

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

What is a list?

A

Ordered set of data accessed by index, not fixed size

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

What is a record?

A

think database, a record comprises multiple, related attributes (fields/columns) of different data types

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

What is a tuple?

A

immutable list (cannot be changed)

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

How do you declare a 1d array pseudocode(first way)?

A

array names[3]
names[0] = “Ahmad”
names[1] = “Ben”
names[2] = “Catherine”

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

How do you declare a 1d array pseudocode(second way)?

A

array names[3] = [“Ahmad”, “Ben”, “Catherine”]

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

Show the pseudocode for a linear search

A

array names[6] = [“Dave”, “Richard”, “Astrid”, “Dima”, “Charlie”, “Paul”]
found = false
for i = 0 to names.length - 1
if (names[i] == “Roberto”) then
print(“Found at index “ + i)
found = true
break // stops the for loop
endIf
next i
if (found == false) then
print(“No matching item is found”)
endIf

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

First way to declare 2d array

A

array scores[2][2]
scores[0][0] = 14
scores[0][1] = 80
scores[1][0] = 20
Scores[1][1] = 82

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

Second way to declare 2d array

A

array scores[2][2] = [[14, 80],[20, 82]]

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

Example of data that could be stored in a 2d array?

A

Scores for a class of students for multiple tests

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

How many elements would be in the array chores[3][3]

A

9

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

Pseudocode for bubble sort?

A

array myNumbers[6]

for (i = 0 to myNumbers.length-2)
swapped = false
for (j = 1 to myNumbers.length-1-i)
if (myNumbers[j-1] > myNumbers[j])
temp = myNumbers[j-1]
myNumbers[j-1] = myNumbers[j]
myNumbers[j] = temp
swapped = true
endif
next j
if (swapped == false) then
break //breaks out of loop
endif
next i

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

Disadvantages of bubble sort

A

In standard form, it’s inefficient as it may continue to makes passes even though the list is sorted (this can be overcome by setting a swaps variable – if swaps are made continue, otherwise stop)

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

Advantages of bubble sort?

A

Easy to implement
Good for small data sets that are almost sorted

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

Thinking concurrently?

A

What can be done at the same time

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

Thinking abstractly?

A

Hiding details and identifying and highlighting key elements

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

Thinking ahead?

A

What inputs / outputs will you need

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

Thinking procedurally?

A

Order of events / subproblems

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

Thinking logically?

A

Decisions to be made

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

Reason for abstraction?

A

Reduces complexity of a program / easier to read and understand
Reduces time to find a solution
Reduces design and programming time
Reduces computational resources eg memory, processing power
The above therefore reduces the cost of designing and building the program
Focus on the main purpose of the program

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

What are the two types of abstraction?

A

Data abstraction and problem abstraction

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

What is data abstraction?

A

Variables: represent real-world values (4.56, “Anna”, “21/01/2019”)
Objects: in Object Oriented Programming (OOP) a class is an abstract representation of something with certain properties (attributes) and operations (methods). (chair, car, dog, person)
Data structures: arrays, linked-lists, stacks and queues.

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

What is problem abstraction?

A

When faced with a problem deciding which factors are relevant to the problem and solution
(networks, database systems (E-R diagram), operating systems (device drivers, flight simulator, map, weather system, GPS)

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

What is primary storage?

A

Means memory. This is made up of RAM (volatile) and ROM. It is directly accessible by the CPU.

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

What is secondary storage?

A

Storage that is non-volatile. It is not directly accessible by the CPU.

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

What is virtual storage?

A

Storage that appears to be local but is physically located elsewhere

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

What is top down design?

A

Solved by breaking it down into smaller sub-systems

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

What is top down design an example of?

A

Decomposition

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

Advantages of top-down design ?

A

the problem is easier to understand, program, test and maintain.
Shows clearly how different parts of the problem relate to each other
Division of labour - different teams working on different parts of the problem independently
May make code more modular as it broken into smaller subroutines.

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

Disadvantages of top-down design

A

It assumes that the whole solution to the problem is knowable in advance.
Poorly understood programs are hard to decompose.
Not every problem can be broken down in this way, for example event driven programs like GUIs

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

Symbol for an and gate

A

upside down v

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

symbol for an or gate

A

v

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

symbol for a not gate

A

line above or top right corner of a rectangle

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

What rule are stacks built on

A

Last in first out

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

What is adding items to a stack called

A

push

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

What is removing items from a stack called

A

pop

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

What are some uses of stacks

A

Back/forward button on browsers

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

What is a systems development lifecycle?

A

A framework defining tasks performed at each step in the software development process.

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

What is the waterfall lifecycle model?

A

A linear, sequence of stages. Each stage is completed before the next stage begins. Good for small, simple projects where requirements are clear and do not change.

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

What are agile methods?

A

Agile development is an umbrella term for a set of methods and practices based on the values and principles expressed in the Agile Manifesto.

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

What is xp(extreme programming)

A

An agile methodology for software development that is iterative, focussing on high quality code and customer involvement / feedback.

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

What is iterative development?

A

Iterative development is a process, or a method, in which a software product is developed after breaking it down into smaller, easily developable “chunks”. Each chunk is analysed, designed, developed and tested in repeated cycles (iterations).

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

What is a prototype?

A

An original or first model of something from which other forms are copied or developed. Early prototypes will likely have reduced functionality.

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

What is risk analysis?

A

The process of identifying and analyzing potential issues that could negatively impact a software project. Risk factors in software development include inadequate estimation of time, cost, scope and resources.

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

What is a methodology?

A

A system of methods and principles for doing something,

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

What type of model is the waterfall mode?

A

Sequential/linear

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

What is the first stage of the waterfall model?

A

System and Software requirements. Documenting requirements gathered from questionnaires, observation, and structured interviews. Acceptance tests often paired with requirements.

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

What is the second stage of the waterfall model?

A

Feasibility – is it technically viable, economical, legal? How effective the project will be in solving the problem? Can it be done in time?

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

What is the third stage of the waterfall model?

A

White/black box, alpha/beta, performance etc

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

What is the final stage of the waterfal model?

A

installation, migration, support, and maintenance e.g. corrective, perfective, adaptive maintenance (to keep a software product usable in a changed or changing environment)

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

Positives of the waterfall model?

A

Lots of documentation
Easy to schedule and arrange tasks and judge progress
Simple and easy to understand model
Does not require a lot of customer involvement

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

Negatives of the waterfall model>?

A

Lots of documentation
No new ideas can be included during development.
Users not involved until testing
Cannot accommodate changing requirements
No working software is produced until late during the life cycle.
Efficient code is not prioritized

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

What are the 4 values of the agile methods

A

1.Individuals over processes
2.Working software over documents
3.Customer collab
change

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

What is xp

A

Extreme type of agile methodology

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

Positives of xp

A

Quality of code should be very high
Testing is continuous which will result in fewer bugs/issues
Sustainable pace - less chance of tired programmers!

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

Negatives of xp?

A

Programmers need to be based in same geographic location
Customer needs to provide a representative to work with the development team

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

When might xp be used

A

Early implementation is important
When requirements are changing
Can’t be used on a project with a huge staff
When code must be of high quality eg critical systems perhaps in health care

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

When might the waterfall method be used?

A

Straight forward projects where requirements are known and understood at the beginning and do not change
When there is no benefit to the customer of having parts of the system available early.
Short projects

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

What is a queue?

A

a data structure which uses the operations enqueue() and dequeue()

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

What type of structure is a queue?

A

First in first out

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

What are the error conditions of a queue?

A

A queue’s error conditions are isEmpty and isFull. If the queue is full you cannot enqueue anything on to it. If it is empty then you cannot dequeue anything from it.

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

How do queues use priority?

A

Different items in the queue have different priorities

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

Is a queue dynamic or static?

A

Dynamic

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

Is a queue linear or circular?

A

It can be either

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

What are the uses of queues

A

Printing and cpu processing

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

What does enqueue(item) do?

A

add an item to the end of the queue

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

What does dequeue() do?

A

remove and return an item from the front of the queue

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

What does peek() do?

A

gets the element at the front of the queue without removing it

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

How many pointers does a queue use?

A

2 (one at front and one at back) as oppose to a stack which uses 1

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

What is an entity?

A

A single object, person, event or thing eg customers, appointments, products about which data is to be recorded. Several tables may relate to a single entity.

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

What is an atribute?

A

A specific type of data representing a particular characteristic of each data record. Also known as a field or column.

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

What is data integrity?

A

The overall accuracy and completeness of data

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

What is referential integrity?

A

A foreign key must refer to an existing primary key. Referential integrity is violated when the primary key to which a foreign key refers no longer exists. A measure of the consistency of the data in a database.

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

What is a field?

A

A part of a record that holds data of a specific type about one characteristic of the subject of the record.

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

What is normalisation?

A

The process of structuring the data in a relational database according to formal rules, in order to avoid problems of data redundancy which leads to inconsistency and inaccuracy.

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

Pros of flat file database?

A

Easy to set up - no knowledge required
Easy to use in code - e.g. CSV files are easy to process
Easy to share, e.g. email attachments

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

Cons of flat file database?

A

Duplication of data (data redundancy) which take more time to update eg if Miss Read moves house you have to update her address in multiple rows, can lead to inconsistency eg you forget to update Miss Read’s details in every place they are stored.
Take up more space so more storage is required.
Everyone can see everything (not good if some data is sensitive)
Inefficient – have to have all fields for every record
Can’t perform complex queries as easily

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

Pros of relational database?

A

Reduces duplication of data meaning easier to update, accurate, better consistency, less storage space
Can set different access rights for each user for each table
Can index fields for quicker searching
If implemented with DBMS, it will allow concurrent access to the database allowing multiple users
Complex queries can be carried out

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

Cons of relational databases?

A

More difficult to correctly set up (normalization is the process of structuring the data in a relational database according to formal rules to avoid problems of data redundancy which leads to inconsistency and inaccuracy (incorrect) and inconsistency (between different fields).

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

What is secondary key?

A

is a non key field which is indexed

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

What do secondary keys do?

A

Speed up searches however it slows down inserts, updates and deletes as the computer has to write the data and the index

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

What does using secondary keys do to storage?

A

An index needs space on hard disk (and much more important) in RAM

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

What does the insertion sort do that is different?

A

It does not swap values. (Bubble sort swaps, insertion sort shifts)

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

Where does the insertion sort begin?

A

It begins at the second item (index 1) since the first item is already sorted (a list of length 1 can’t not be sorted)

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

What is the pseudocode for an insertion sort?

A

for i = 1 to A.length – 1
key = A[i]
j = i - 1
while j >= 0 AND A[j] > key
A[j + 1] = A[j]
j–
endWhile
A[j + 1] = key
next i

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

Explain how an insertion sort works? on 10,95,5,33,67

A

Repeat the following for each item in the list, excluding the first
Remember the current item as the key
On the first pass the key will be 95
Move every item before the key that is bigger than it forward
On the first pass, none need to be moved
Place the key item before these larger items
On the first pass, 95 doesn’t end up moving

96
Q

What are the advantages of an insertion sort?

A

Easy to implement
Good for small data sets that are almost sorted
Insertion sort generally performs quicker than bubble sort and is therefore preferable.

97
Q

What are the disadvantages of an insertion sort?

A

Does not scale well so is not good for large data sets

98
Q

What is caching?

A

the process of storing previously used data in a location (cache) so that it can be quickly accessed to speed up retrieval if it is needed in future.

99
Q

What is pre-fetching?

A

data is fetched and stored in a cache or buffer before it is needed. For example when streaming a video file, successive seconds/minutes of stream data are buffered. Algorithms must be able to correctly predict what will be needed.

100
Q

What is a library?

A

A collection of reusable subroutines that a programmer can “call” when writing code so that the programmer doesn’t have to write this code.

101
Q

hat are reusable components?

A

use of existing assets in some form within the software product development process including code eg subroutines, designs and documentation.

102
Q

What is the other reason accessing cache is quicker than accessing ram?

A

cache uses SRAM which is faster rather than DRAM which is used for main memory

103
Q

Cons of cache?

A

Small size, SRAM is expensive and fixed size which means to upgrade you would have to buy a new cpu

104
Q

What does the processor do when it needs to read or write a location in memory?

A

it first checks for a corresponding entry in the cache. If the processor finds that the memory location is in the cache, a cache hit has occurred and the processor immediately reads/writes to the cache. If not, a cache miss has occurred and the data is copied from main memory into cache and the request fulfilled from cache.

105
Q

What is hard drive cache also known as?

A

Disk buffer

106
Q

What are the cons of hard drive cache?

A

small size (will never hold everything), fixed sized (can’t be increased)
so same as normal cache

107
Q

Pros of web browser cache?

A

Faster load time, reduced network traffic ie fewer HTTP requests

108
Q

Cons of web browser cache?

A

cached resource may be out of date

109
Q

What does web browser cache store?

A

frequently used web pages/style sheets/scripts to reduce the number of requests that go to web server.

110
Q

What are proxies?

A

Proxies act as intermediaries between the client and the origin server.

111
Q

What does a cache server (proxy server) do?

A

Cache server (proxy server) saves previously requested web pages or other content.

112
Q

Pros of caching a proxy server?

A

Faster load time as HTTP request does not have to go original web server, reduces network traffic

113
Q

Cons of caching a proxy server?

A

cached resource may be out of date

114
Q

What does a domain name system do?

A

A DNS, short for domain name system, is used to resolve a particular domain name to its IP equivalent

115
Q

When is DNS cache used?

A

When a DNS server responds to a DNS request, the operating system may store these results in a local DNS cache

116
Q

Pros of DNS cache?

A

reduced network traffic ie fewer DNS requests.
Reduced network traffic as there will be fewer DNS requests to remote DNS servers

117
Q

Cons of DNS cache?

A

resources may be out of date, if a web page has changed the location of its server an error may occur

118
Q

pros of caching in general?

A

Speeds up retrieval
Cache miss normally would not result in error

119
Q

Cons of caching in general?

A

Algorithms for caching can be very complicated. When the cache is full, the algorithm must choose which items to discard to make room for the new ones.
Wrong data may be cached then it has to be removed and the correct data loaded.
Cache does not have the required content (cache miss) so time is wasted checking it.

120
Q

What is normalisation?

A

the process of organising the data in a database into multiple related tables to minimise data redundancy.

121
Q

What is the aim of normalisation?

A

The aim of normalisation is to minimize data redundancy and maximise data integrity

122
Q

What do you do for first normal form?

A

Each record (row) is unique
i.e. it has a primary key
Each field (column) has an unique name
There are no fields with repeated or similar data
e.g. choice1, choice2, choice3…
Each field cannot be broken down any further
e.g. addresses should be broken up

123
Q

What does first normal form do?

A

Makes all the data atomic

124
Q

What does atomic mean?

A

Atomic means each item of data is distinct and you can’t separate the data any more or break it up any smaller without losing meaning.

125
Q

What does second normal form do?

A

Non-key fields must depend on every part of the primary key
In other words, if a field that isn’t the primary key depends on only one part of the primary key (i.e. a partial key dependency) then it isn’t in second normal form.

126
Q

When would you not need to do anything for second normal form?

A

If you don’t have any composite primary keys

127
Q

Do the normal forms have to be done in order?

A

Yes

128
Q

What does third normal form do?

A

There are no non-key fields that depend on another non-key field

If you can find a field that isn't the primary key which depends on another 
field that isn't the primary key then it's not in third normal form
129
Q

What is the slogan for third normal form?

A

All fields must depend on the key, the whole key and nothing but the key!

130
Q

What is a network?

A

consists of two or more computers that are linked in order to share resources (such as printers and CDs), exchange files, or allow electronic communications.

131
Q

What is a protocol?

A

A protocol is an agreed-upon format/set of rules for transmitting data/communication between two devices.

132
Q

What does transmission control protocol do?

A

the type of error checking to be used
data compression method, if any
how the sending device will indicate that it has finished sending a message
how the receiving device will indicate that it has received a message
type of encryption used
packet size

133
Q

What does IP do?

A

he Internet Protocol is a set of rules for communication over the internet, An IP address identifies a network or device on the internet

134
Q

What does user datagram protocol do?

A

a communications protocol that is primarily used to establish low-latency and loss-tolerating connections between applications on the internet. UDP speeds up transmissions by enabling the transfer of data before an agreement is provided by the receiving party. No error checking which makes it good for gaming and streaming but bad for sending over important documents as if data is lost it cannot be retrieved due to no error checking

135
Q

What does simple mail transfer protocol do?

A

an Internet standard communication protocol for electronic mail transmission. Mail servers and other message transfer agents use SMTP to send and receive mail

136
Q

What does http do (hyper text transfer protocol)?

A

It was designed for communication between web browsers and web servers, sends and receives access to things such as web servers

137
Q

What does the s at the end of https mean?

A

Secure, it encrypts the data to keep it safe and secure

138
Q

What is a standard?

A

standard is a definition or specification that is an agreed way of doing things. Standards make it easier to build software or hardware that will run (is compatible) on different systems (in different countries). Without standards most devices would not be able to communicate with each other.

139
Q

What are the two categories of standards?

A

De jure (by force of law) and de facto standards

140
Q

What are dejure (by force of law) standards?

A

These are regulated by official bodies. For example, ICANN provides effective regulation of the names and numbers that are used across the internet

141
Q

What are defacto standards?

A

ones that arise through popular use but are not managed or regulated. For example, it may be standard to use sans serif fonts for web pages but no one will stop you if you go wild with Garamond.

142
Q

Why are standards important?

A

Standards form the fundamental building blocks for product development by establishing consistent protocols that can be universally understood and adopted.
Standards are important in the computer industry because they allow the combination of products from different manufacturers to create a customized system.
Without standards, only hardware and software from the same company could be used
For example, ASCII A (01000001) is recognised on all devices using the ASCII standard. HTML is a WWW standard recognised by all browsers.

143
Q

Why are protocols important?

A

Set of rules that allow transmission between devices.
Allowing devices to communicate
By ensuring all devices follow the same rules
So they interpret data/signals in the same way

144
Q

What is a LAN?

A

Geographically small area e.g. buildings or several buildings on the same site (schools, universities, offices etc)
Equipment is generally owned by the company using it

145
Q

What is a WAN?

A

Geographically remote area e.g. across a country, between continents
Connects LANs together using third party telecommunications equipment (the servers owned by ISPs, he telephone/cable/satellite connections owned by telecommunications
companies such as BT, China Mobile, Vodafone, AT&T etc).

146
Q

What is a hub?

A

Hubs are a piece of hardware used to connect computers on the same network together

147
Q

What is a switch?

A

are devices within a network that forward packets within the network itself. They allow multiple computers to connect to a network through a single node and therefore reduce the wiring requirement. This is especially important in larger networks.

148
Q

Difference between a hub and a switch?

A

A hub is a networking device that connects multiple PCs to a single network, whereas a Switch connects multiple devices on a single computer network

149
Q

What is a repeater?

A

A repeater is a network device that retransmits a received signal with more power and to an extended geographical or topological network boundary than what would be capable with the original signal

150
Q

What is a network interface card?

A

a hardware component, typically a circuit board or chip, which is installed on a computer so it can connect to a network

151
Q

What is a router?

A

A router is a networking device that forwards data packets between computer networks

152
Q

What is a wireless access point?

A

In computer networking, a wireless access point, or more generally just access point, is a networking hardware device that allows other Wi-Fi devices to connect to a wired network

153
Q

What is the spiral model?

A

A software development methodology that defines four quadrants (objectives, risk, develop prototypes, planning). It is iterative, focussing on risk and the iterative development of prototypes. Good for risky, complex, long projects.

154
Q

What is RAD

A

rapid application development

155
Q

What is RAD in simple terms

A

It is now used to refer to methodologies for developing software which use prototyping (a model with reduced functionality) and iteration (repeating cycles).

156
Q

Positives of RAD

A

Helpful when requirements are unclear as they do not all have to be specified at the start
Should result in excellent usability due to feedback from customer
Changing requirements can be accommodated
Reduced development time due to minimising planning
Time boxing can help keep projects on track

157
Q

Negatives of RAD

A

Good code is not prioritised (focus is on accelerated development of front-end focused prototype)
Demanding on customer’s time for feedback

158
Q

When might RAD be used

A

RAD should be used only when a system can be modularized to be delivered in incremental manner.
When the customer is unsure of their requirements.
RAD projects are typically small scale and of short duration

159
Q

How many phases is the spiral model split into?

A

4

160
Q

What is there a high emphasis on with the spiral model

A

High emphasis on risk identification and resolution.
Prototypes are created in each cycle.

161
Q

What are the positives of the spiral model?

A

Ideal for risky and complex projects. If risks are too high, the project may be stopped before prototyping.
Changing requirements can be accommodated
Users see the system early - likely to result in a solution which better matches user’s needs
Focus on alternatives encourages software reuse
Focus on eliminating unattractive risky alternatives early on. Risks could be personnel shortfalls, unrealistic schedules and budgets, developing the wrong software functions eg functionality that it not needed)

162
Q

What are the negatives of the spiral model?

A

Management is more complex so could be more expensive
Process is more complex than other models
Good risk analysts are expensive
Efficient code is not prioritized
No continuous customer interaction.

163
Q

When might the spiral model be used?

A

Significant changes are expected in the product during the development cycle
Customer is not sure of their requirements which is usually the case.
When risk is high
Should be used only when a system can be modularized to be delivered in incremental manner.

164
Q

What is a pre conditions

A

A condition that must always be true prior to the execution of code.

165
Q

What is computational thinking?

A

A condition that must always be true prior to the execution of code.

166
Q

What are the 5 aspects of computational thinking?

A

Abstractly, ahead, procedurally, logically, concurrently

167
Q

What is thinking ahead?

A

a) Identify the inputs and outputs for a given situation.
b) Determine the preconditions for devising a solution to a problem.
c) The nature, benefits and drawbacks of caching.
d) The need for reusable program components.

168
Q

What is thinking procedurally?

A

c) Determine the order of the steps needed to solve a problem.

169
Q

What is thinking logically?

A

c) Determine how decisions affect flow through a program.

170
Q

What is thinking concurrently

A

a) Determine the parts of a problem that can be tackled at the same time.

171
Q

What is an IDE?

A

An integrated development environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development.

172
Q

What does an IDE consist of?

A

An IDE normally consists of a source code editor, build automation tools and a debugger.

173
Q

What is a translator?

A

A program that converts code written in one programming language into functionally equivalent code in another language. Assemblers, compilers and interpreters are all translators.

174
Q

What is artificial intelligence?

A

Artificial Intelligence is the study and creation of computer systems that can perceive, reason and act.

175
Q

What is a turing test?

A

Devised by Alan Turing (mathematician) in 1950. Measures whether a computer could be described as intelligent. A human asks questions and gets both the human and computer to answer them. If the human cannot tell which response comes from the human and which from the computer then the computer is seen as showing ‘intelligence’.

176
Q

What can we do to ensure data integrity?

A

Not allow null values(presence checks), archiving(removing old data), record locking(preventing simultaneous access to a database to prevent inconsistent results) and backing up

177
Q

Similarities betweeen ROM and RAM?

A

Both primary storage/main memory
Both allow random access
Both can store programs
Connected to CPU via buses

178
Q

Which is quicker, ROM write/ read speed or RAM write/read speed?

A

RAM write/read speed

179
Q

Does ROM or RAM have a larger chip with more capacity?

A

RAM

180
Q

What is RAM used for?

A

Buffers

181
Q

What is DRAM

A

dynamic RAM and it is used for main memory

182
Q

What is SRAM

A

Static RAM and used for cache memory (shorter access time than dynamic RAM)

183
Q

What is the first step of the BIOS

A

Power On Self-Test (POST) runs to determine if hardware eg processor, RAM, storage devices and other interface cards are working correctly

184
Q

What is the second step of the BIOS

A

Load configuration settings eg clock speed, boot device order, enabled and disable interfaces

185
Q

What is the third step of BIOS

A

Find and load the bootloader program from secondary storage, which starts the initialisation of the operating system.

186
Q

What are computational methods?

A
  • strategies, techniques or approaches that help to formulate a problem and express a solution in a way that is computable.
187
Q

What does computable mean?

A

A problem is computable if there is an algorithm that can solve it in a finite number of steps.

188
Q

What does heuristic mean?

A

a technique designed to solve a problem more quickly. This is achieved by trading optimality, completeness, accuracy, or precision for speed.

189
Q

What is performance modelling?

A

Testing or simulating how well a solution scales to larger data sets and loads

190
Q

What are reusable program components

A

Use of existing assets in some form within the software product development process including code

191
Q

What is divide and conquer?

A

A rapid way of finding a solution by successive subdivision of a data set

192
Q

What is procedure identificication

A

Recognising how the sub-problems can be implemented as procedures

193
Q

What is caching?

A

the process of storing previously used data in a location (cache) so that it can be quickly accessed to speed up retrieval if it is needed in future.

194
Q

What is data mining?

A

earching for patterns in large data sets that are not obvious by simple comparisons

195
Q

What is heuristics

A

A best guess solution to a problem that reduces computation time whilst sacrificing accuracy

196
Q

What is pipelining?

A

Breaking a process into chunks that can be run concurrently (Concurrent Processing: Starting one or more task before another task has completed)

197
Q

What is back tracking?

A

A method of testing options and returning back up to earlier options as required

198
Q

What is application software?

A

Program designed for users rather than the computer. Categories include general purpose, bespoke and special purpose.

199
Q

What is an application?

A

Any program that can be run on a computer system

200
Q

What is system software?

A

Program(s) that is needed to run the computer’s hardware and application programs

201
Q

What is open source software?

A

The program’s source code is freely available to view/edit by anyone. Open source software is made by many people and distributed under licenses that comply with the Open Source Definition.

202
Q

What is bespoke software?

A

Custom software specially developed to suit the needs of a particular organisation or client. Examples might include software for the military, missile/UAV operations, software for hospitals and medical equipment, software being written inside banks and other financial institutions.

203
Q

What is closed source/proprietary software?

A

A program that legally remains the property of the organisation, group, or individual who created it. The organisation that owns the rights to the product usually does not release the source code, and may insist that only those who have purchased a special license key can use it.

204
Q

What is utility software

A

programs designed to help analyse, configure, optimize or maintain a computer eg system clean up, defragmenter, firewall, Task Manager, compression. Often built into OS

205
Q

Example of general purpose software

A

Applications that are not designed for a particular business

206
Q

Examples of special purpose software

A

CAD, calculators

207
Q

Pros of open source software

A

The source code can be compiled to work on different platforms eg Windows, macOS.
Potentially a community of developers continuously improving the source code
Potentially a community of users to learn from
Can modify the source code to adapt to your needs rather than starting from scratch (saves time and money)
Could be copied and sold for profit since source code is available
Potentially less vulnerabilities as lots of people can view the source code (but do they and are they sufficiently knowledgeable?)

208
Q

Cons of open source software

A

Risk of abandonment eg community decides not to maintain the code
Potentially less support compared to closed source

209
Q

Does open source software cost money?

A

Likely no, however opens source does not mean free of charge

210
Q

Pros of closed source software

A

Usually professional support comes with the software
Potentially a product that has been more robustly developed and tested

211
Q

Cons of closed source software

A

Usually a financial cost
Can not modify the meet your needs
Fixes to proprietary code rely on vendor rather than community so potentially slower.

212
Q

Does closed source software cost money

A

Likely yes

213
Q

Example of closed source software

A

Microsoft word

214
Q

Example of open source software

A

SQLite

215
Q

RIPA

A

Regulation of investigatory powers

216
Q

When was RIPA instroduced

A

2000

217
Q

What is internet censorship?

A

The deliberate control, suppression (preventing something from being seen) or prohibition (banning) of what can be accessed or published on the internet.

218
Q

What is piracy?

A

The unauthorized use, copying, distribution and selling of works under copyright.

219
Q

What is copyright infringement

A

is the use or production of copyright-protected material without the permission of the copyright holder. (Not all copyright infringement is piracy eg a public viewing of a film you own infringes copyright but is not piracy).

220
Q

What is plagiarism?

A

the practice of taking someone else’s work or ideas and passing them off as one’s own.

221
Q

What is a troll

A

online person who actively seeks to fuel an argument by posting offensive / abusive material and replies to comments

222
Q

Name two factors that increase piracy?

A

Increased internet download speeds
Availability of illegal content sharing sites

223
Q

Two factors that decrease piracy

A

Digital watermarking
Software product keys

224
Q

Operating System

A

System software that manages computer hardware and software held in secondary storage.

225
Q

Paging & Segmentation

A

Paging and segmentation are two different techniques for making optimum use of memory by splitting memory (RAM) into blocks. With paging, RAM is divided into fixed sized blocks. With segmentation, RAM is divided into varying sized blocks representing logical parts of the program.

226
Q

Interrupt

A

An event external to the currently executing process that causes a change in the normal flow of instruction execution eg printer out of paper.

227
Q

Interrupt Service Routine

A

A particular routine that is run to service an interrupt

228
Q

Memory Management

A

Recording how memory in the computer is divided and identified so that memory is allocated efficiently between processes that are running.

229
Q

Process Management

A

(CPU) Scheduling allows multiple processes to run in turn using a scheduling algorithm.

230
Q

File Management

A

Enables files and directories to be moved, copied, deleted and renamed on secondary storage devices

231
Q

Network management

A

Sharing resources of a remote computer such as files or printers.

232
Q

Security

A

The OS supports the security of a device by ensuring that resources are protected from unauthorised access through the use of permissions and passwords, e.g user access rights, user authentication, file permissions.

233
Q

User Interface

A

to provide an interface between the user and computer (ie, CLI, GUI)

234
Q

Virtual Memory

A

A means of apparently extending main storage by using backing storage (such as a hard disk) to store contents of RAM to free up space in RAM

235
Q

#

A