Nothing Special   »   [go: up one dir, main page]

A1P1 Revision Guide 9618 Computer Science

Download as pdf or txt
Download as pdf or txt
You are on page 1of 42

A Level Computer Science 9618 Quick Guide

A1 Paper 1 Revision Guide by MAK

1
Command words
The table below includes command words used in the assessment for this syllabus. The use of
the command word will relate to the subject context. Make sure you are familiar with these.
Command What it means
word
Analyse examine in detail to show meaning, identify elements and the relationship
between them
Assess make an informed judgement
Calculate work out from given facts, figures or information
Comment give an informed opinion
Compare identify/comment on similarities and/or differences
Complete add information to an incomplete diagram or table
Consider review and respond to given information
Contrast identify/comment on differences
Define give precise meaning
Demonstrate show how or give an example
Describe state the points of a topic/give characteristics and main features
Develop take forward to a more advanced stage or build upon given information
Discuss write about issue(s) or topic(s) in depth in a structured way
Draw draw a line to match a term with a description
Evaluate judge or calculate the quality, importance, amount, or value of something
Examine investigate closely, in detail
Explain set out purposes or reasons/make the relationships between things
evident/provide why and/or how and support with relevant evidence
Give produce an answer from a given source or recall/memory
Identify name/select/recognise
Justify support a case with evidence/argument
Outline set out main points

2
Predict suggest what may happen based on available information
Sketch make a simple freehand drawing showing the key features, taking care over
proportions
State express in clear terms
Suggest apply knowledge and understanding to situations where there are a range of
valid responses in order to make proposals
Summarise select and present the main points, without detail
Write write an answer in a specific way

Binary – base two number system based on the values 0 and 1 only.
Bit – abbreviation for binary digit.
One’s complement – each binary digit in a number is reversed to allow both negative and positive numbers
to be represented.
Two’s complement – each binary digit is reversed and 1 is added in right-most position to produce another
method of representing positive and negative numbers.
Sign and magnitude – binary number system where left-most bit is used to represent the sign (0 = + and 1 =
–); the remaining bits represent the binary value.
Hexadecimal – a number system based on the value 16 (uses the denary digits 0 to 9 and the letters A to F).
Memory dump – contents of a computer memory output to screen or printer.
Binary-coded decimal (BCD) – number system that uses 4 bits to represent each denary digit.
ASCII code – coding system for all the characters on a keyboard and control codes.
Character set – a list of characters that have been defined by computer hardware and software. It is
necessary to have a method of coding, so that the computer can understand human characters.
Unicode – coding system which represents all the languages of the world (first 128 characters are the same as
ASCII code).

3
Binary Addition
Add 0 0 1 0 0 1 0 1 (37 in denary) and 0 0 1 1 1 0 1 0 (58 in denary).
Solution

This gives us 0 1 0 1 1 1 1 1, which is 95 in denary; the correct answer.

Binary Subtraction

Carry out the subtraction 95 – 68 in binary.


Solution
1 Convert the two numbers into binary:
95 = 0 1 0 1 1 1 1 1
68 = 0 1 0 0 0 1 0 0
2 Find the two’s complement of 68:

3 Add 95 and −68:

The additional ninth bit is simply ignored leaving the binary number 0 0 0 1 1 0 1 1 (denary
equivalent of 27, which is the correct result of the subtraction).

4
Binary Addition
Carry out the subtraction 49 – 80 in binary.
Solution
1 Convert the two numbers into binary:
49 = 0 0 1 1 0 0 0 1
80 = 0 1 0 1 0 0 0 0
2 Find the two’s complement of 80:

3 Add 49 and −80:

This gives us 1 1 1 0 0 0 0 1, which is −31 in denary; the correct answer.

Name of memory size Equivalent denary value (bytes)


1 kilobyte (1 KB) 1 000
1 megabyte (1 MB) 1 000 000
1 gigabyte (1 GB) 1 000 000 000
1 terabyte (1 TB) 1 000 000 000 000
1 petabyte (1 PB) 1 000 000 000 000 000

Name of memory size Number of bytes Equivalent denary value (bytes)


1 kibibyte (1 KiB) 210 1 024

1 mebibyte (1 MiB) 220 1 048 576

1 gibibyte (1 GiB) 230 1 073 741 824

1 tebibyte (1 TiB) 240 1 099 511 627 776

1 pebibyte (1 PiB) 250 1 125 899 906 842 624


5
• Advantages of UniCodes
• create a universal standard that covered all languages and all writing systems
• produce a more efficient coding system than ASCII
• adopt uniform encoding where each character is encoded as 16-bit or 32-bit code
• create unambiguous encoding where each 16-bit or 32-bit value always represents the same character (it
is worth pointing out here that the ASCII code tables are not standardised and versions other)
• reserve part of the code for private use to enable a user to assign codes for their own characters and
symbols (useful for Chinese and Japanese character sets).

Bit-map image – system that uses pixels to make up an image.


Pixel – smallest picture element that makes up an image.
Colour depth – number of bits used to represent the colours in a pixel, e.g. 8 bit colour depth can
represent 28 = 256 colours.
Bit depth – number of bits used to represent the smallest unit in, for example, a sound or image file – the
larger the bit depth, the better the quality of the sound or colour image.
Image resolution – number of pixels that make up an image, for example, an image could contain 4096 ×
3192 pixels (12 738 656 pixels in total).
Screen resolution – number of horizontal and vertical pixels that make up a screen display. If the screen
resolution is smaller than the image resolution, the whole image cannot be shown on the screen, or the
original image will become lower quality.
Resolution – number of pixels per column and per row on a monitor or television screen. Pixel density –
number of pixels per square centimetre.
Vector graphics – images that use 2D points to describe lines and curves and their properties that are
grouped to form geometric shapes.
Sampling resolution – number of bits used to represent sound amplitude (also known as bit depth).
Sampling rate – number of sound samples taken per second.
Frame rate – number of video frames that make up a video per second.
Bit-map images are made up of pixels (picture elements); the image is stored in a two-dimensional matrix
of pixels.
Pixels can take different shapes, such as or
When storing images as pixels, we have to consider

• at least 8 bits (1 byte) per pixel are needed to code a coloured image (this gives 256 possible colours by
varying the intensity of the blue, green and red elements)
• true colour requires 3 bytes per pixel (24 bits), which gives more than one million colours
• the number of bits used to represent a pixel is called the colour depth.

6
Vector graphic images Bit-map images
made up of geometric shapes which require made up of tiny pixels of different colours
definition/attributes
to alter/edit the design, it is necessary to change possible to alter/edit each of the pixels to
each of the geometric shapes change the design of the image
they do not require large file size since it is because of the use of pixels (which give
made up of simple geometric shapes very accurate designs), the file size is very
large
because the number of geometric shapes is since images are built up pixel by pixel, the
limited, vector graphics are not usually very final image is usually very realistic
realistic

file formats are usually .svg, .cgm, .odg file formats are usually .jpeg, .bmp, .png

Sampling

Pros Cons
larger dynamic range produces larger file size
better sound quality takes longer to transmit/download sound files
less sound distortion requires greater processing power

Editing in Sound

• edit the start/stop times and duration of a sample


• extract and save (or delete) part of a sample
• alter the frequency and amplitude of a sample
• fade in and fade out
• mix and/or merge multiple sound tracks or sources
• combine various sound sources together and alter their properties
• remove ‘noise’ to enhance one sound wave in a multiple of waves (for example, to identify and extract
one person’s voice out of a group of people)
• convert between different audio formats.

7
Lossless file compression – file compression method where the original file can be restored following
decompression.
Lossy file compression – file compression method where parts of the original file cannot be recovered
during decompression, so some of the original detail is lost.
JPEG – Joint Photographic Expert Group – a form of lossy file compression based on the inability of the
eye to spot certain colour changes and hues.
MP3/MP4 files – file compression method used for music and multimedia files.
Audio compression – method used to reduce the size of a sound file using perceptual music shaping.
Perceptual music shaping – method where sounds outside the normal range of hearing of humans, for
example, are eliminated from the music file during compression.
Bit rate – number of bits per second that can be transmitted over a network. It is a measure of the data
transfer rate over a digital telecoms network.
Run length encoding (RLE) – a lossless file compression technique used to reduce text and photo files
in particular.

Run-length encoding (RLE)

Run-length encoding (RLE) can be used to compress a number of different file formats.
It is a form of lossless/reversible file compression that reduces the size of a string of adjacent, identical
data (such as repeated colours in an image).
A repeating string is encoded into two values.
The first value represents the number of identical data items (such as characters) in the run. The second
value represents the code of the data item (such as ASCII code if it is a keyboard character).
RLE is only effective where there is a long run of repeated units/bits.
Using RLE on text data
Consider the text string ‘aaaaabbbbccddddd’.
Assuming each character requires 1 byte, then this string needs 16 bytes. If we assume ASCII code is
being used, then the string can be coded as follows:

8
9
ARPAnet – Advanced Research Projects Agency Network.
WAN – wide area network (network covering a very large geographical area).
LAN – local area network (network covering a small area such as a single building).
MAN – metropolitan area network (network which is larger than a LAN but smaller than a WAN,
which can cover several buildings in a single city, such as a university campus).
File server – a server on a network where central files and other data are stored. They can be
accessed by a user logged onto the network.
Hub – hardware used to connect together a number of devices to form a LAN that directs
incoming data packets to all devices on the network (LAN).
Switch – hardware used to connect together a number of devices to form a LAN that directs
incoming data packets to a specific destination address only.
Router – device which enables data packets to be routed between different networks (for example,
can join LANs to form a WAN).
Modem – modulator demodulator. A device that converts digital data to analogue data (to be sent
down a telephone wire); conversely it also converts analogue data to digital data (which a
computer can process).
WLAN – wireless LAN.
(W)AP – (wireless) access point which allows a device to access a LAN without a wired
connection.
PAN – network that is centred around a person or their workspace.
Client-server – network that uses separate dedicated servers and specific client workstations. All
client computers are connected to the dedicated servers.
Spread spectrum technology – wideband radio frequency with a range of 30 to 50 metres.
Node – device connected to a network (it can be a computer, storage device or peripheral device).
Peer-to-peer – network in which each node can share its files with all the other nodes. Each node
has its own data and there is no central server.
Thin client – device that needs access to the internet for it to work and depends on a more
powerful computer for processing.
Thick client – device which can work both off line and on line and is able to do some processing
even if not connected to a network/internet.
Bus network topology – network using single central cable in which all devices are connected

10
to this cable so data can only travel in one direction and only one device is allowed to transmit at
a time.
Packet – message/data sent over a network from node to node (packets include the address of the
node sending the packet, the address of the packet recipient and the actual data – this is covered
in greater depth in.
Star network topology – a network that uses a central hub/switch with all devices connected to
this central hub/switch so all data packets are directed through this central hub/switch.
Mesh network topology – interlinked computers/devices, which use routing logic so data
packets are sent from sending stations to receiving stations only by the shortest route.
Hybrid network – network made up of a combination of other network topologies.
Cloud storage – method of data storage where data is stored on off-site servers.
Data redundancy – situation in which the same data is stored on several servers in case of
maintenance or repair.
Wi-Fi – wireless connectivity that uses radio waves, microwaves. Implements IEEE 802.11
protocols.
Bluetooth – wireless connectivity that uses radio waves in the 2.45 GHz frequency band.
Spread spectrum frequency hopping – a method of transmitting radio signals in which a
device picks one of 79 channels at random. If the chosen channel is already in use, it randomly
chooses another channel. It has a range up to 100 metres.
WPAN – wireless personal area network. A local wireless network which connects together
devices in very close proximity (such as in a user’s house); typical devices would be a laptop,
smartphone, tablet and printer.
Twisted pair cable – type of cable in which two wires of a single circuit are twisted together.
Several twisted pairs make up a single cable.
Coaxial cable – cable made up of central copper core, insulation, copper mesh and outer
insulation.
Fibre optic cable – cable made up of glass fibre wires which use pulses of light (rather than
electricity) to transmit data.
Gateway – device that connects LANs which use different protocols.
Repeater – device used to boost a signal on both wired and wireless networks.
Repeating hubs – network devices which are a hybrid of hub and repeater unit.
Bridge – device that connects LANs which use the same protocols.
Softmodem – abbreviation for software modem; a software-based modem that uses minimal
hardware.
NIC – network interface card. These cards allow devices to connect to a network/internet
(usually associated with a MAC address set at the factory).
WNIC – wireless network interface cards/controllers.

11
Ethernet – protocol IEEE 802.3 used by many wired LANs.
Conflict – situation in which two devices have the same IP address.
Broadcast – communication where pieces of data are sent from sender to receiver.
Collision – situation in which two messages/data from different sources are trying to transmit
along the same data channel.
CSMA/CD – carrier sense multiple access with collision detection – a method used to detect
collisions and resolve the issue.
Bit streaming – contiguous sequence of digital bits sent over a network/internet.
Buffering – store which holds data temporarily.
Bit rate – number of bits per second that can be transmitted over a network. It is a measure of the
data transfer rate over a digital telecoms network.
On demand (bit streaming) – system that allows users to stream video or music files from a
central server as and when required without having to save the files on their own
computer/tablet/phone.
Real-time (bit streaming) – system in which an event is captured by camera (and microphone)
connected to a computer and sent to a server where the data is encoded. The user can access the
data ‘as it happens’ live.

Networked computers
Networked computers form an infrastructure which enables internal and external
communications to take place. The infrastructure includes the following:
Hardware
• LAN cards Software Service
• routers • operation and management of the network s• DSL
• switches • operation of firewalls • satellite communication channels
• wireless routers • security applications/utilities • wireless protocols
• cabling
• IP addressing.
Networks can be categorised as private or
public.

12
Pros Cons
Thick • more robust (device can carry • less secure (relies on clients to keep their own
clients out processing even when not data secure)
connected to server) • each client needs to update data and software
• clients have more control (they individually
can store their own programs
and data/files) • data integrity issues, since many clients access
the same data which can lead to
inconsistencies

Thin • less expensive to expand (low- • high reliance on the server; if the server goes
clients powered and cheap devices can down or there is a break in the communication
be used) link then the devices cannot work
• all devices are linked to a server • despite cheaper hardware, the start-up costs
(data updates and new software are generally higher than for thick clients
installation done centrally)
• server can offer protection
against hacking and malware

Summary of pros and cons of thick and thin client hardware

highlights the differences between thick and thin client software.

Thin client software Thick client software

• always relies on a connection to a remote • can run some of the features of the
server or computer for it to work software even when not connected to a
server

• requires very few local resources (such as • relies heavily on local resources
SSD, RAM memory or computer processing
time)

• relies on a good, stable and fast network • more tolerant of a slow network
connection for it to work connection

• data is stored on a remote server or computer • can store data on local resources such as
HDD or SSD

13
Bus networks
A bus network topology uses a single central cable to which all computers and devices are connected.
It is easy to expand and requires little cabling. Data can only travel in one direction; if data is being sent
between devices then other devices cannot transmit. Terminators are needed at each end to prevent
signal reflection (bounce). Bus networks are typically peer-to-peer. The disadvantages of a bus network
include:
• If the main cable fails, the whole network goes down.
• The performance of the network deteriorates under heavy loading.
• The network is not secure since each packet passes through every node. The advantages of a bus
network include:
• Even if one node fails, the remainder of the network continues to function.
• It is easy to increase the size of the network by adding additional nodes.

Star networks
A star network topology uses a central hub/switch and each computer/device is connected to the hub/
switch. Data going from host to host is directed through the central hub/switch. Each computer/device
has its own dedicated connection to the central node (hub/switch) – any type of network cable can be
used for the connections Wired and wireless networking). This type of network is typically a client-
server. The disadvantages of a star network include:
• If the central hub/switch fails, then the whole network goes down.
The advantages of a star network include:
• Data collisions are greatly reduced due to the topology.
• It is a more secure network since security methods can be applied to the central node and packets
only travel to nodes with the correct address.
• It is easy to improve by simply installing an upgraded hub.
• If one of the connections is broken it only affects one of the nodes.
How packets are handled depends on whether the central node is a switch or a hub. If it is a hub, all
the packets will be sent to every device/node on the star network – if the address in the packet matches
that of the node, it will be accepted; otherwise, it is ignored (this is similar to the way packets are
handled on a bus network). If the central node is a switch, packets will only be sent to nodes where the
address matches the recipient address in the packet. The latter is clearly more secure, since only nodes
intended to see the packet will receive it.

14
Mesh networks
There are two types of mesh network topologies: routing and flooding. Routing works by
giving the nodes routing logic (in other words, they act like a router) so that data is directed to its
destination by the shortest route and can be re-routed if one of the nodes in the route has failed.
Flooding simply sends the data via all the nodes and uses no routing logic, which can lead to
unnecessary loading on the network. It is a type of peer-to-peer network, but is fundamentally
different. The disadvantages of a mesh network include:

• A large amount of cabling is needed, which is expensive and time consuming.


• Set-up and maintenance is difficult and complex.
The advantages of a mesh network include:
• It is easy to identify where faults on the network have occurred.
• Any broken links in the network do not affect the other nodes.
• Good privacy and security, since packets travel along dedicated routes.
• The network is relatively easy to expand.

• The internet and WANs/MANs are typical uses of mesh networks.


• Many examples include industrial monitoring and control where sensors are set up in mesh
design and feedback to a control system which is part of the mesh, for example
– medical monitoring of patients in a hospital
– electronics interconnectivity (for example, systems that link large screen televisions, DVDs,
set top boxes, and so on); each device will be in a location forming the mesh
– modern vehicles use wireless mesh network technology to enable the monitoring and
control of many of the components in the vehicle.

Hybrid networks
A hybrid network is a mixture of two or more different topologies (bus and star, bus and mesh,
and so on). The main advantages and disadvantages depend on which types of network are used
to make up the hybrid network, but an additional disadvantage is that they can be very complex
to install, configure and maintain.
Additional advantages include:
• They can handle large volumes of traffic.
• It is easy to identify where a network fault has occurred.
• They are very well suited to the creation of larger networks.

15
Pros of using cloud storage Cons of using cloud storage

• customer/client files stored on the cloud can be • if the customer/client has a slow or unstable
accessed at any time from any device anywhere internet connection, they would have
in the world provided internet access is problems accessing or downloading their
available data/files
• no need for a customer/client to carry an • costs can be high if large storage capacity is
external storage device with them, or use the required
same computer to store and retrieve information• expensive to pay for high
• provides the user with remote back-up of data download/upload data transfer limits with the
to aid data loss and disaster recovery customer/client internet service provider
• recovers data if a customer/client has a hard (ISP)
disk or back-up device failure • potential failure of the cloud storage
• offers almost unlimited storage capacity company is possible – this poses a risk of loss
of all back-up data

Routers Gateways

• forward packets of data from one network to • convert one protocol (or data
another; routers read each incoming packet of data format) to another protocol (format)
and decide where to forward the packet used in a different network

• can route traffic from one network to another • convert data packets from one
network protocol to another; they act as an
entry and exit point to networks

• can be used to join LANs together to form a WAN • translate from one protocol to
(sometimes called brouters) and also to connect a another
number of LANs to the internet

• offer additional features such as dynamic routing • do not support dynamic routing
(ability to forward data by different routes)

16
Pros of bit streaming Cons of bit streaming

• no need to wait for a whole video • cannot stream video or music files if broadband
or music file to be downloaded connection is lost
before the user can watch or listen • video or music files will pause to allow the data
• no need to store large files on your being streamed to ‘catch up’ if there is insufficient
device buffer capacity or slow broadband connection
• allows video files and music files • streaming uses up a lot of bandwidth
to be played on demand (as • security risks associated with downloading files
required) from the internet
• no need for any specialist hardware • copyright issues
• affords piracy protection (more
difficult to copy streamed files than
files stored on a hard drive)

• On demand
• Digital files stored on a server are converted to a bit streaming format (encoding takes place
and the encoded files are uploaded to a server).
• A link to the encoded video/music file is placed on the web server to be downloaded.
• The user clicks on the link and the video/music file is downloaded in a contiguous bit stream.
• Because it is on demand, the streamed video/music is broadcast to the user as and when
required.
• It is possible to pause, rewind and fast forward the video/music if required.
Real time
• An event is captured by camera and microphone and is sent to a computer.
• The video signal is converted (encoded) to a streaming media file.
• The encoded file is uploaded from the computer to the dedicated video streaming server.
• The server sends the encoded live video to the user’s device.
• Since the video footage is live it is not possible to pause, rewind or fast forward.

17
Internet – massive network of networks, made up of computers and other electronic devices;
uses TCP/IP communication protocols.
World Wide Web (WWW) – collection of multimedia web pages stored on a website, which
uses the internet to access information from servers and other computers.
HyperText Mark-up Language (HTML) – used to design web pages and to write http(s)
protocols, for example.
Uniform resource locator (URL) – specifies location of a web page (for example,
www.hoddereducation.co.uk).
Web browser – software that connects to DNS to locate IP addresses; interprets web pages
sent to a user’s computer so that documents and multimedia can be read or watched/listened to.
Internet service provider (ISP) –
company which allows a user to connect to the internet. They will usually charge a monthly fee
for the service they provide.
Public switched telephone network (PSTN) – network used by traditional telephones when
making calls or when sending faxes.
Voice over Internet Protocol (VoIP) – converts voice and webcam images into digital
packages to be sent over the internet.
Internet protocol (IP) – uses IPv4 or IPv6 to give addresses to devices connected to the
internet.
IPv4 – IP address format which uses 32 bits, such as 200.21.100.6.
Classless inter-domain routing (CIDR) – increases IPv4 flexibility by adding a suffix to the
IP address, such as 200.21.100.6/18.
IPv6 – newer IP address format which uses 128 bits, such as A8F0:7FFF:F0F1:F000:3DD0:
256A:22FF:AA00.
Zero compression – way of reducing the length of an IPv6 address by replacing groups of
zeroes by a double colon (::); this can only be applied once to an address to avoid ambiguity.
Sub-netting – practice of dividing networks into two or more sub-networks.
Private IP address – an IP address reserved for internal network use behind a router.
Public IP address – an IP address allocated by the user’s ISP to identify the location of their
device on the internet.
Domain name service (DNS) – (also known as domain name system) gives domain names for
internet hosts and is a system for finding IP addresses of a domain name.
JavaScript® – object-orientated (or scripting) programming language used mainly on the web

18
Memory cache – high speed memory external to processor which stores data which the
processor will need again.
Random access memory (RAM) – primary memory unit that can be written to and read from.
Read-only memory (ROM) – primary memory unit that can only be read from.
Dynamic RAM (DRAM) – type of RAM chip that needs to be constantly refreshed.
Static RAM (SRAM) – type of RAM chip that uses flip-flops and does not need refreshing.
Refreshed – requirement to charge a component to retain its electronic state.
Programmable ROM (PROM) – type of ROM chip that can be programmed once.
Erasable PROM (EPROM) – type of ROM that can be programmed more than once using
ultraviolet (UV) light.
Hard disk drive (HDD) – type of magnetic storage device that uses spinning disks.
Latency – the lag in a system; for example, the time to find a track on a hard disk, which
depends on the time taken for the disk to rotate around to its read-write head.
Fragmented – storage of data in non-consecutive sectors; for example, due to editing and
deletion of old data.
Removable hard disk drive – portable hard disk drive that is external to the computer; it can
be connected via a USB part when required; often used as a device to back up files and data.
Solid state drive (SSD) – storage media with no moving parts that relies on movement of
electrons.
Electronically erasable programmable read-only memory (EEPROM) – read-only (ROM)
chip that can be modified by the user, which can then be erased and written to repeatedly using
pulsed voltages.
Flash memory – a type of EEPROM, particularly suited to use in drives such as SSDs,
memory cards and memory sticks.
Optical storage – CDs, DVDs and Blu-rayTM discs that use laser light to read and write data.
Dual layering – used in DVDs; uses two recording layers.
Birefringence – a reading problem with DVDs caused by refraction of laser light into two
beams.
Binder 3D printing – 3D printing method that uses a two-stage pass; the first stage uses dry
powder and the second stage uses a binding agent.

Direct 3D printing – 3D printing technique where print head moves in the x, y and z
directions. Layers of melted material are built up using nozzles like an inkjet printer.

19
Digital to analogue converter (DAC) – needed to convert digital data into electric currents
that can drive motors, actuators and relays, for example.
Analogue to digital converter (ADC) – needed to convert analogue data (read from sensors,
for example) into a form understood by a computer.
Organic LED (OLED) – uses movement of electrons between cathode and anode to produce
an on-screen image. It generates its own light so no back lighting required.
Screen resolution – number of pixels in the horizontal and vertical directions on a
television/computer screen.
Touch screen – screen on which the touch of a finger or stylus allows selection or
manipulation of a screen image; they usually use capacitive or resistive technology.
Capacitive – type of touch screen technology based on glass layers forming a capacitor, where
fingers touching the screen cause a change in the electric field.
Resistive – type of touch screen technology. When a finger touches the screen, the glass layer
touches the plastic layer, completing the circuit and causing a current to flow at that point.
Virtual reality headset – apparatus worn on the head that covers the eyes like a pair of
goggles. It gives the user the ‘feeling of being there’ by immersing them totally in the virtual
reality experience.
Sensor – input device that reads physical data from its surroundings.

20
DRAM SRAM

• consists of a number of transistors and capacitors • uses flip-flops to hold each bit of
• needs to be constantly refreshed memory
• less expensive to manufacture than SRAM • does not need to be constantly
refreshed
• has a higher memory capacity than SRAM
• has a faster data access time than
• main memory is constructed from DRAM
DRAM
• consumes more power than SRAM under reasonable
• processor memory cache makes
levels of access, as it needs to be constantly
use of SRAM
refreshed
• if accessed at a high frequency,
power usage can exceed that of
DRAM

RAM ROM

• temporary memory device • permanent memory device


• volatile memory • non-volatile memory device
• can be written to and read from • data stored cannot be altered
• used to store data, files, programs, part of OS • sometimes used to store BIOS and other
currently in use data needed at start up
• can be increased in size to improve
operational speed of a computer

Pros of embedded systems Cons of embedded systems

• small in size and therefore easy to • difficult to upgrade devices to take advantage of new
fit into devices technology
• relatively low cost to make • troubleshooting faults in the device becomes a
• usually dedicated to one task, specialist task

making for simple interfaces and • although the interface can appear to be simple, in
often no requirement of an reality it can be more confusing (changing the time
operating system on a cooker clock can require several steps, for
• consume very little power example)
• very fast reaction to changing input • any device that can be accessed over the internet is
(operate in real time) also open to hackers, viruses, and so on
• with mass production comes • due to the difficulty in upgrading and fault finding,
reliability devices are often just thrown away rather than being
repaired (wasteful)

21
Laser
Printer

Stage Description of what happens


1 data from the document is sent to a printer driver
2 printer driver ensures that the data is in a format that the chosen printer can understand
3 check is made by the printer driver to ensure that the chosen printer is available to
print (is it busy? is it off-line? is it out of ink? and so on)
4 data is sent to the printer and stored in a temporary memory known as a printer buffer
5 printing drum given a positive charge. As this drum rotates, a laser beam scans across it
removing the positive charge in certain areas, leaving negatively charged areas which
exactly match the text/images of the page to be printed
6 drum is coated with positively charged toner (powdered ink). Since the toner is
positively charged, it only sticks to the negatively charged parts of the drum
7 negatively charged sheet of paper is rolled over the drum
8 toner on the drum sticks to the paper to produce an exact copy of the page sent to the
printer

9 to prevent the paper sticking to the drum, the electric charge on the paper is removed
after one rotation of the drum
10 the paper goes through a fuser (a set of heated rollers), where the heat melts the ink so
that it fixes permanently to the paper
11 a discharge lamp removes all the electric charge from the drum so it is ready to print the
next page

22
Ink-jet Printer

Stage Description of what happens


1 data from the document is sent to a printer driver
2 printer driver ensures that the data is in a format that the chosen printer can understand

3 check is made by the printer driver to ensure that the chosen printer is available to
print (is it busy? is it off-line? is it out of ink? and so on)
4 data is sent to the printer and stored in a temporary memory known as a printer buffer
5 a sheet of paper is fed into the main body of the printer. A sensor detects whether
paper is available in the paper feed tray – if it is out of paper (or the paper is jammed),
an error message is sent back to the computer
6 as the sheet of paper is fed through the printer, the print head moves from side to side
across the paper printing the text or image. The four ink colours are sprayed in their
exact amounts to produce the desired final colour
7 at the end of each full pass of the print head, the paper is advanced very slightly to
allow the next line to be printed. This continues until the whole page has been printed
8 if there is more data in the printer buffer, then the whole process from stage 5 is
repeated until the buffer is empty
9 once the printer buffer is empty, the printer sends an interrupt to the processor in the
computer, which is a request for more data to be sent to the printer. The process
continues until the whole of the document has been printed

23
Sensor Example applications
temperature • control a central heating system
• control/monitor a chemical process
• control/monitor temperature in a greenhouse

moisture/humidity • control/monitor moisture/humidity levels in soil/air in a greenhouse


• monitor dampness levels in an industrial application (for example,
monitor moisture in a paint spray booth in a car factory)

light • switch street lighting on at night and off during the day
• monitor/control light levels in a greenhouse
• switch on car headlights when it gets dark

infrared/motion • turn on windscreen wipers on a car when it rains


• detect an intruder in a burglar alarm system
• count people entering or leaving a building

pressure • detect intruders in a burglar alarm system


• check weight (such as the weight of a vehicle)
• monitor/control a process where gas pressure is important

acoustic/sound • pick up noise levels (such as footsteps or breaking glass) in a burglar


alarm system
• detect noise of liquids dripping from a pipe

gas (such as O2 or • monitor pollution levels in a river or air


CO2) • measure O2 and CO2 levels in a greenhouse
• check for CO2 or NO2 leaks in a power station

pH • monitor/control acidity/alkalinity levels in soil


• monitor pollution in rivers

magnetic field • detect changes in in cell phones, CD players, and so on


• used in anti-lock braking systems in motor vehicles

24
Examples of monitoring Examples of control

• monitoring a patient in a hospital for vital signs • turning street lights on at night and
such as heart rate, temperature, and so on turning them off again during daylight
• checking for intruders in a burglar alarm system • controlling the temperature in a central
• checking the temperature levels in a car engine heating/air conditioning system
• monitoring pollution levels in a river • controlling the traffic lights at a road
junction
• operating anti-lock brakes on a car
when necessary
• controlling the environment in a
greenhouse

25
Von Neumann architecture – computer architecture which introduced the concept of the
stored program in the 1940s.
Arithmetic logic unit (ALU) – component in the processor which carries out all arithmetic
and logical operations.
Control unit – ensures synchronisation of data flow and programs throughout the computer by
sending out control signals along the control bus.
System clock – produces timing signals on the control bus to ensure synchronisation takes
place.
Immediate access store (IAS) – holds all data and programs needed to be accessed by the
control unit.
Accumulator – temporary general purpose register which stores numerical values at any part
of a given operation.
Register – temporary component in the processor which can be general or specific in its use
that holds data or instructions as part of the fetch-execute cycle.
Status register – used when an instruction requires some form of arithmetic or logical
processing.
Flag – indicates the status of a bit in the status register, for example, N = 1 indicates the result
of an addition gives a negative value.
Address bus – carries the addresses throughout the computer system.
Data bus – allows data to be carried from processor to memory (and vice versa) or to and from

26
input/output devices.
Control bus – carries signals from control unit to all other computer components. Unidirectional –
used to describe a bus in which bits can travel in one direction only.
Bidirectional – used to describe a bus in which bits can travel in both directions.
Word – group of bits used by a computer to represent a single unit.
Clock cycle – clock speeds are measured in terms of GHz; this is the vibrational frequency of the clock
which sends out pulses along the control bus – a 3.5 GHZ clock cycle means 3.5 billion clock cycles a
second.
Overclocking – changing the clock speed of a system clock to a value higher than the factory/
recommended setting.
BIOS – basic input/output system.
Cache memory – a high speed auxiliary memory which permits high speed data transfer and retrieval.
Core – a unit made up of ALU, control unit and registers which is part of a CPU. A CPU may contain a
number of cores.
Dual core – a CPU containing two cores.
Quad core – a CPU containing four cores.
Port – external connection to a computer which allows it to communicate with various peripheral
devices. A number of different port technologies exist.
Universal Serial Bus (USB) – a type of port connecting devices to a computer.
Asynchronous serial data transmission – serial refers to a single wire being used to transmit bits of
data one after the other. Asynchronous refers to a sender using its own clock/timer device rather sharing
the same clock/timer with the recipient device.
High-definition multimedia interface (HDMI) – type of port connecting devices to a computer.
Video Graphics Array (VGA) – type of port connecting devices to a computer.
High-bandwidth digital copy protection (HDCP) – part of HDMI technology which reduces risk of
piracy of software and multimedia.
Fetch-execute cycle – a cycle in which instructions and data are fetched from memory and then
decoded and finally executed.
Program counter (PC) – a register used in a computer to store the address of the instruction which is
currently being executed.
Current instruction register – a register used to contain the instruction which is currently being
executed or decoded.
Register Transfer Notation (RTN) – short hand notation to show movement of data and instructions in
a processor, can be used to represent the operation of the fetch-execute cycle.
Interrupt – signal sent from a device or software to a processor requesting its attention; the

processor suspends all operations until the interrupt has been serviced.
Interrupt priority – all interrupts are given a priority so that the processor knows which need to be
serviced first and which interrupts are to be dealt with quickly.
Interrupt service routine (ISR) or interrupt handler – software which handles interrupt requests (such
as ‘printer out of paper’) and sends the request to the CPU for processing.
27
Register Abbreviation Function/purpose of register
current CIR stores the current instruction being decoded and executed
instruction
register
index register IX used when carrying out index addressing operations
(assembly code)

memory MAR stores the address of the memory location currently being read
address from or written to
register
memory MDR/MBR stores data which has just been read from memory or data
data/buffer which is about to be written to memory (sometimes referred
register to as MBR)

program PC stores the address where the next instruction to be read can be
counter found

status register SR contain bits which can be set or cleared depending on the
operation (for example, to indicate overflow in a calculation)

28
Pros of HDMI Cons of HDMI

• the current standard for modern • not a very robust connection (easy to break
televisions and monitors connection when simply moving device)
• allows for a very fast data transfer rate • limited cable length to retain good signal
• improved security (helps prevent piracy) • there are currently five cable/connection
• supports modern digital systems standards

Pros of VGA Cons of VGA

• simpler technology • old out-dated analogue technology


• only one standard available • it is easy to bend the pins when making
• it is easy to split the signal and connect a connections
number of devices from one source • the cables must be of a very high grade to
• the connection is very secure ensure good undistorted signal

29
Machine code – the programming language that the CPU uses.
Instruction – a single operation performed by a CPU.
Assembly language – a low-level chip/machine specific programming language that uses
mnemonics.
Opcode – short for operation code, the part of a machine code instruction that identifies the action
the CPU will perform.
Operand – the part of a machine code instruction that identifies the data to be used by the CPU.
Source code – a computer program before translation into machine code.
Assembler – a computer program that translates programming code written in assembly language
into machine code. Assemblers can be one pass or two pass.
Instruction set – the complete set of machine code instructions used by a CPU.
Object code – a computer program after translation into machine code.
Addressing modes – different methods of using the operand part of a machine code instruction as a
memory address.
Absolute addressing – mode of addressing in which the contents of the memory location in the
operand are used.
Direct addressing – mode of addressing in which the contents of the memory location in the
operand are used, which is the same as absolute addressing.
Indirect addressing – mode of addressing in which the contents of the contents of the memory
location in the operand are used.
Indexed addressing – mode of addressing in which the contents of the memory location found by
adding the contents of the index register (IR) to the address of the memory location in the

operand are used.


Immediate addressing – mode of addressing in which the value of the operand only is used.
Relative addressing – mode of addressing in which the memory address used is the current
memory address added to the operand.
Symbolic addressing – mode of addressing used in assembly language programming, where a
label is used instead of a value.

30
Shift – moving the bits stored in a register a given number of places within the register; there are
different types of shift.
Logical shift – bits shifted out of the register are replaced with zeros.
Arithmetic shift – the sign of the number is preserved.
Cyclic shift – no bits are lost, bits shifted out of one end of the register are introduced at the other end
of the register.
Left shift – bits are shifted to the left.
Right shift – bits are shifted to the right.
Monitor – to automatically take readings from a device.
Control – to automatically take readings from a device, then use the data from those readings to
adjust the device.
Mask – a number that is used with the logical operators AND, OR or XOR to identify, remove or set a
single bit or group of bits in an address or register.

Binary shifts
A shift involves moving the bits stored in a register a given number of places within the register.
Each bit within the register may be used for a different purpose. For example, in the IR each bit
identifies a different interrupt.
There are several different types of shift.
Logical shift – bits shifted out of the register are replaced with zeros. For example, an 8-bit
register containing the binary value 10101111 shifted left logically three places would become
01111000.
Arithmetic shift – the sign of the number is preserved. For example, an 8-bit register containing
the binary value 10101111 shifted right arithmetically three places would become 11110101.
Arithmetic shifts can be used for multiplication or division by powers of two.
Cyclic shift – no bits are lost during a shift. Bits shifted out of one end of the register are
introduced at the other end of the register. For example, an 8-bit register containing the binary
value 10101111 shifted left cyclically three places would become 01111101.
Left shift – bits are shifted to the left; gives the direction of shift for logical, arithmetic and
cyclic shifts.
Right shift – bits are shifted to the right; gives the direction of shift for logical, arithmetic and
cyclic shifts.

31
CMOS – complementary metal-oxide semiconductor.
Operating system – software that provides an environment in which applications can run and
provides an interface between hardware and human operators.
HCI – human–computer interface.
GUI – graphical user interface.
CLI – command line interface.
Icon – small picture or symbol used to represent, for example, an application on a screen.
WIMP – windows, icons, menu and pointing device.
Post-WIMP – interfaces that go beyond WIMP and use touch screen technology rather than a

32
pointing device.
Pinching and rotating – actions by fingers on a touch screen to carry out tasks such as move,
enlarge, reduce, and so on.
Memory management – part of the operating system that controls the main memory.
Memory optimisation – function of memory management that determines how memory is
allocated and deallocated.
Memory organisation – function of memory management that determines how much memory
is allocated to an application.
Security management – part of the operating system that ensures the integrity, confidentiality
and availability of data.
Contiguous – items next to each other.
Virtual memory systems – memory management (part of OS) that makes use of hardware and
software to enable a computer to compensate for shortage of actual physical memory.
Memory protection – function of memory management that ensures two competing
applications cannot use same memory locations at the same time.
Process management – part of the operating system that involves allocation of resources and
permits the sharing and exchange of data.
Hardware management – part of the operating system that controls all input/output devices
connected to a computer (made up of sub-management systems such as printer management,
secondary storage management, and so on).
Device driver – software that communicates with the operating system and translates data into
a format understood by the device.
Utility program – parts of the operating system which carry out certain functions, such as
virus checking, defragmentation or hard disk formatting.
Disk formatter – utility that prepares a disk to allow data/files to be stored and retrieved.
Bad sector – a faulty sector on an HDD which can be soft or hard.
Antivirus software – software that quarantines and deletes files or programs infected by a
virus (or other malware). It can be run in the background or initiated by the user.
Heuristic checking – checking of software for behaviour that could indicate a possible virus.
Quarantine – file or program identified as being infected by a virus which has been isolated
by antivirus software before it is deleted at a later stage.
False positive – a file or program identified by a virus checker as being infected but the user
knows this cannot be correct.
Disk defragmenter – utility that reorganises the sectors on a hard disk so that files can be
stored in contiguous data blocks.
Disk content analysis software – utility that checks disk drives for empty space and disk
usage by reviewing files and folders.

33
Disk compression – software that compresses data before storage on an HDD.
Back-up utility – software that makes copies of files on another portable storage device.
Program library – a library on a computer where programs and routines are stored which can
be freely accessed by other software developers for use in their own programs.
Library program – a program stored in a library for future use by other programmers.
Library routine – a tested and ready-to-use routine available in the development system of a
programming language that can be incorporated into a program.
Dynamic link file (DLL) – a library routine that can be linked to another program only at the
run time stage.

Pros of using DLL files Cons of using DLL files


the executable code of the main program is the executable code is not self-contained,
much smaller since DLL files are only therefore all DLL files need to be available at
loaded into memory at run time run time otherwise error messages (such as
missing .dll error) will be generated and the
software may even crash
it is possible to make changes to DLL files any DLL linking software in the main program
independently of the main program, needs to be available at run time to allow links
consequently if any changes are made to the with DLL files to be made
DLL files it will not be necessary to
recompile the main program
DLL files can be made available to a number if any of the DLL files have been changed
of applications at the same time (either intentionally or through corruption) this
could lead to the main program giving
unexpected results or even crashing
all of the above save memory and also save malicious changes to DLL files could be due to
execution time the result of malware, thus presenting a risk to
the main program following the linking process

34
Compiler Interpreter
The end user only needs the executable code, The end user will need to purchase a
therefore, the end user benefits as there is no compiler or an interpreter to translate the
need to purchase a compiler to translate the source code before it is used.
program before it is used.

The developer keeps hold of the source code, so it The developer relinquishes control of the
cannot be altered or extended by the end user, source code, making it more difficult to
therefore, the developer benefits as they can charge charge for upgrades and alterations. Since
for upgrades and alterations. end users can view the source code, they
could potentially use the developer’s
intellectual property.

Compiled programs take a shorter time to execute An interpreted program can take longer to
as translation has already been completed and the execute than the same program when
machine code generated may have been optimised compiled, since each line of the source
by the compiler. code needs to be translated before it is
executed every time the program is run.

Compiled programs have no syntax or semantic Interpreted programs may still contain
errors. syntax or semantic errors if any part of
the program has not been fully tested,
these errors will need to be debugged.

The source program can be translated on one type Interpreted programs cannot be interpreted
of computer then executed on another type of on one type of computer and run on another
computer. type of computer.

A compiler finds all errors in a program. One error It is easier to develop and debug a
detected can mean that the compiler finds other program using an interpreter as errors
dependent errors later on in the program that will not be can be corrected on each line and the
errors when the first error is corrected. Therefore, the program restarted from that place,
number of errors found may be more than the actual enabling the programmer to easily
number of errors. learn from any errors.

Untested programs with errors may cause the Untested programs should not be able to
computer to crash. cause the computer to crash.

The developer needs to write special routines in Partial results can be viewed during
order to view partial results during development, development, enabling the developer to
making it more difficult to assess the quality of make informed decisions about a section
particular sections of code. of code, for example whether to continue,
modify, or scrap and start again.

End users do not have access to the source code and If an interpreted program is purchased,
the run-time libraries, meaning they are unable to make end users have all the source code and
modifications and are reliant on the developer for the run-time libraries, enabling the
updates and alterations. program to be modified as required
without further purchase.

35
Data privacy – the privacy of personal information, or other information stored on a computer,
that should not be accessed by unauthorised parties.
Data protection laws – laws which govern how data should be kept private and secure.
Data security – methods taken to prevent unauthorised access to data and to recover data if lost
or corrupted.
User account – an agreement that allows an individual to use a computer or network server,
often requiring a user name and password.
Authentication – a way of proving somebody or something is who or what they claim to be.
Access rights (data security) – use of access levels to ensure only authorised users can gain
access to certain data.
Malware – malicious software that seeks to damage or gain unauthorised access to a computer
system.
Firewall – software or hardware that sits between a computer and external network that
monitors and filters all incoming and outgoing activities.
Anti-spyware software – software that detects and removes spyware programs installed
illegally on a user’s computer system.
Encryption – the use of encryption keys to make data meaningless without the correct
decryption key.
Biometrics – use of unique human characteristics to identify a user (such as fingerprints or
face recognition).
Hacking – illegal access to a computer system without the owner’s permission.
Malicious hacking – hacking done with the sole intent of causing harm to a computer system
or user (for example, deletion of files or use of private data to the hacker’s advantage).
Ethical hacking – hacking used to test the security and vulnerability of a computer system.
The hacking is carried out with the permission of the computer system owner, for example, to
help a company identify risks associated with malicious hacking of their computer systems.
Phishing – legitimate-looking emails designed to trick a recipient into giving their personal
data to the sender of the email.
Pharming – redirecting a user to a fake website in order to illegally obtain personal data about
the user.
DNS cache poisoning – altering IP addresses on a DNS server by a ‘pharmer’ or hacker with
the intention of redirecting a user to their fake website.

36
37
Legal – relating to, or permissible by, law.
Morality – an understanding of the difference between right and wrong, often founded in
personal beliefs.
Ethics – moral principles governing an individual’s or organisation’s behaviour, such as a code
of conduct.
Culture – the attitudes, values and practices shared by a group of people/society.
Intellectual property rights – rules governing an individual’s ownership of their own
creations or ideas, prohibiting the copying of, for example, software without the owner’s
permission.
Privacy – the right to keep personal information and data secret and for it to not be unwillingly
accessed or shared through, for example, hacking.
Plagiarism – the act of taking another person’s work and claiming it as one’s own.
BCS – British Computer Society.
IEEE – Institute of Electrical and Electronics Engineers.
ACM – Association for Computing Machinery.

Software Engineering Code of Ethics


1 PUBLIC – Software engineers shall act consistently with the public interest (contains 8 sub-clauses).
2 CLIENT AND EMPLOYER – Software engineers shall act in a manner that is in the best interests of their client and
employer consistent with the public interest (contains 9 sub-clauses).
3 PRODUCT – Software engineers shall ensure that their products and related modifications meet the highest professional
standards possible (contains 15 sub-clauses).
4 JUDGEMENT – Software engineers shall maintain integrity and independence in their professional judgement (contains
6 sub-clauses).
5 MANAGEMENT – Software engineering managers and leaders shall subscribe to and promote an ethical approach to the
management of software development and maintenance (contains 12 sub-clauses).
6 PROFESSION – Software engineers shall advance the integrity and reputation of the profession consistent with the public
interest (contains 13 sub-clauses).
7 COLLEAGUES – Software engineers shall be fair to and supportive of their colleagues (contains 8 sub-clauses).
8 SELF – Software engineers shall participate in life-long learning regarding the practice of their profession and shall
promote an ethical approach to the practice of the profession (contains 9 sub-clauses).

Piracy – the practice of using or making illegal copies of, for example, software.
Product key – security method used in software to protect against illegal copies or use.
Digital rights management (DRM) – used to control the access to copyrighted material.
Free Software Foundation – organisation promoting the free distribution of software, giving
users the freedom to run, copy, change or adapt the coding as needed.
Open Source Initiative – organisation offering the same freedoms as the Free Software
Foundation, but with more of a focus on the practical consequences of the four shared rules,
such as more collaborative software development.
Freeware – software that can be downloaded free of charge; however, it is covered by the
usual copyright laws and cannot be modified; nor can the code be used for another purpose.
Shareware – software that is free of charge initially (free trial period). The full version of the
software can only be downloaded once the full fee for the software has been paid.

38
What is AI?
Artificial intelligence (AI) is a machine or application which carries out a task that requires
some degree of intelligence when carried out by a human being. These tasks could include
• the use of a language
• carrying out a mathematical calculation or function
• recognising a person’s face
• the ability to operate machinery, such as a car, an aeroplane or a train
• analysing data to predict the outcome of a future event, such as weather forecasting.

The impact of AI
People often associate AI with science fiction, fantasy and robots. Numerous films and books
fuel this association. The science fiction author, Isaac Asimov, went so far as to produce his own
three laws of robotics:
1 A robot may not injure a human through action or inaction.
2 A robot must obey orders given by humans without question.
3 A robot must protect itself unless it conflicts with the two laws above.
However, AI goes way beyond robotics. It covers an ever-increasing number of areas, such as
• autonomous (driverless) vehicles
• artificial limb technology
• drones, used to carry out dangerous or unpleasant tasks such as bomb disposal, welding, or
entering nuclear disaster areas
• climate change predictions
• medical procedures, such as eye operations where extreme precision is required.

39
Database – a structured collection of items of data that can be accessed by different
applications programs.
Relational database – a database where the data items are linked by internal pointers.
Table – a group of similar data, in a database, with rows for each instance of an entity and
columns for each attribute.
Record (database) – a row in a table in a database.
Field – a column in a table in a database.
Tuple – one instance of an entity, which is represented by a row in a table.
Entity – anything that can have data stored about it, for example, a person, place, event, thing.
Attribute (database) – an individual data item stored for an entity, for example, for a person,
attributes could include name, address, date of birth.
Candidate key – an attribute or smallest set of attributes in a table where no tuple has the same
value.
Primary key – a unique identifier for a table. It is a special case of a candidate key. Secondary
key – a candidate key that is an alternative to the primary key.
Foreign key – a set of attributes in one table that refer to the primary key in another table.
Relationship – situation in which one table in a database has a foreign key that refers to a
primary key in another table in the database.
Referential integrity – property of a database that does not contain any values of a foreign key
that are not matched to the corresponding primary key.
Index (database) – a data structure built from one or more columns in a database table to
speed up searching for data.
Entity-relationship (E-R) model or E-R diagram – a graphical representation of a database
and the relationships between the entities.
Normalisation (database) – the process of organising data to be stored in a database into two
or more tables and relationships between the tables, so that data redundancy is minimised.
First normal form (1NF) – the status of a relational database in which entities do not contain
repeated groups of attributes.
Second normal form (2NF) – the status of a relational database in which entities are in 1NF
and any non-key attributes depend upon the primary key.
Third normal form (3NF) – the status of a relational database in which entities are in 2NF
and all non-key attributes are independent.
Composite key – a set of attributes that form a primary key to provide a unique identifier for a
table.

40
Database management system (DBMS) – systems software for the definition, creation and
manipulation of a database.
Data management – the organisation and maintenance of data in a database to provide the information
required.
Data dictionary – a set of data that contains metadata (data about other data) for a database.
Data modelling – the analysis and definition of the data structures required in a database and to produce
a data model.
Logical schema – a data model for a specific database that is independent of the DBMS used to build
that database.
Access rights (database) – the permissions given to database users to access, modify or delete data.
Developer interface – feature of a DBMS that provides developers with the commands required for
definition, creation and manipulation of a database.
Structured query language (SQL) – the standard query language used with relational databases for data
definition and data modification.
Query processor – feature of a DBMS that processes and executes queries written in structured query
language (SQL).
Security measures taken by a DBMS can include

• using usernames and passwords to prevent unauthorised access to the database


• using access rights to manage the actions authorised users can take, for example, users could
read/write/delete, or read only, or append only
• using access rights to manage the parts of the database they have access to, for example, the
provisions of different views of the data for different users to allow only certain users access to
some tables
• automatic creation and scheduling of regular back-ups
• encryption of the data stored
• automatic creation of an audit trail or activity log to record the actions taken by users of the
database.

Data definition language (DDL) – a language used to create, modify and remove the data
structures that form a database.
Data manipulation language (DML) – a language used to add, modify, delete and retrieve the
data stored in a relational database.
SQL script – a list of SQL commands that perform a given task, often stored in a file for reuse.

41
SQL (DDL) command Description
CREATE DATABASE Creates a database
CREATE TABLE Creates a table definition
ALTER TABLE Changes the definition of a table
PRIMARY KEY Adds a primary key to a table
FOREIGN KEY … REFERENCES … Adds a foreign key to a table

Data types for attributes Description


CHARACTER Fixed length text
VARCHAR(n) Variable length text
BOOLEAN True or False; SQL uses the integers 1 and 0
INTEGER Whole number
REAL Number with decimal places
DATE A date usually formatted as YYYY-MM-DD
TIME A time usually formatted as HH:MM:SS

SQL (DML) query Description


command
SELECT FROM Fetches data from a database. Queries always begin with SELECT.
WHERE Includes only rows in a query that match a given condition
ORDER BY Sorts the results from a query by a given column either
alphabetically or numerically
GROUP BY Arranges data into groups
INNER JOIN Combines rows from different tables if the join condition is true
SUM Returns the sum of all the values in the column
COUNT Counts the number of rows where the column is not NUL
AVG Returns the average value for a column with a numeric data type

SQL (DML) maintenance commands Description


INSERT INTO Adds new row(s) to a table
DELETE FROM Removes row(s) from a table
UPDATE Edits row(s) in a table
42

You might also like