As IT Notes Shahd PDF
As IT Notes Shahd PDF
Direct data: is a primary source of information which must be used for the same purpose and
process for which it was collected.
Eg: questionnaires, interviews, observation, data logging
Advantages:
- Source and method is known
- Exact data needed is collected
- Data is easily changed and updateda
Disadvantages:
- Not a large range of data
- May not be available for that exact location and time.
Indirect data: is a secondary source of information which was collected for a particular purpose
but then used for another purpose.
Eg: Online shop, electoral register, weather information
Advantages:
- Large range of data
- Data is already analysed
- From different locations and times
Disadvantages:
- Data may be biassed
- Not accurate enough
- Available to everyone
1.3 Encryption
Caesar cipher - used to encrypt and decrypt messages. It selects replacement letters by shifting
along the internet.
Symmetric encryption- the key which decrypts the message. must be sent by the messenger to
the receiver. Both the sender and recipient use the same key.
Asymmetric encryption - there is a public key being used by the sender and the recipient uses a
private key to decrypt it. This requires a lot more processing but is more secure.
- This encryption is used for the secure sockets layer.
Applications of encryption:
● Hard disk - will encrypt every single bit of data stored on a disk, in order to access any
file on the disk, an encryption key will be required.
● HTTPS (hypertext transfer protocol secure): encryption standard used to secure web
pages. Using the SSL or TLS to encrypt and decrypt. TLS is usually used and more
trusted for banks.
● Email: uses asymmetric encryption. Recipients of the email must have a private key that
matches the public key. (digital certificates needed)
1.4 Checking accuracy of data
Methods of validation:
- Presence check: ensures that data is entered
- Range check: ensures that data is within a defined range
- Type check: ensures that data must be of a defined data type
- Length check: ensures that data is of a defined length
- Format check: Ensures data matches a defined format
- Lookup check: tests to see if data exists in a list
- Consistency check: compares data in one field that already exists within a record
- Check digit (redundancy check): a letter/number that is added to the end of an
identification number being input (algorithm should match the check digit)
Verification: the process of checking that the data entered into the computer system matches
the original source.
Methods of verification:
- Visual checking: proofread data that has been entered
- Double data entry: input data into the system twice and data is compared by the
computer system
- Hash total: calculated by adding together values for an input field for all the records that
need to be entered
- Control total: similar to hash totals but with more meaning
- Parity check: (used during data transmissions) each byte/word of data is checked
individually
- Checksum: a string of numbers and letters that act as a fingerprint for a file against
which later comparisons will be made to detect errors (used when computer is hacked)
Data processing: is any activity that manipulates data/ carries out operations on it.
Eg: sorting data, searching data, printing, saving data
Disadvantages:
- Delay as data is not processed until specified time
- Only data of the same type can be processed
- Errors can’t be corrected until the processing is done.
Master file: contains all the important data a computer stores. The data in the master file is
sorted into order using one of the fields in the records in the file, known as the primary key field.
The primary key field must uniquely identify each record in the file.
Transaction file: Data that is used to update a master file. This file is in database form.
If one thing happens to one of the files, the other one won't be affected.
*Master file and transaction file will merge together to create a flat file which will be difficult to
maintain.
Online processing (interactive processing): where data is input by the user and feedback is
given in the form of outputs.
Eg: electronic funds transfer, online stores, automatic stock control, electronic data exchange
and business to business buying and selling
Real time processing: Data is processed as soon as it has been input and outputs are
generated immediately.
Eg: air traffic control, computer games
Chapter 2
Uses:
- Census
- Transaction processing
- Industry statistics
- Consumer statistics
Supercomputer: large computer with parallel processing used to complete highly complex tasks
rapidly.
Uses:
- Quantum mechanics
- Weather forecasting
- Climate research
Performance measurement:
MFLOPS: the floating point operations per second. MFLOPS give a more reliable measure of
performance than MIPS but there are still discrepancies where some processors carry out single
floating point operations for the same result.
System software: programs that are designed to maintain or operate a computer system
- Device drivers:
Software that comes with an external hardware component and sends customised instructions
to that specific component. Allows hardware devices to run on the computer including printers,
sound,graphics and network cards.
- Compilers:
Translator which creates a file containing the machine code (executable file). Which can only
run on operating systems for which the compiler has translated it.
Includes 3 stages:
1. Lexical analysis - code broken down into tokens
2. Syntax analysis - program structure will be analysed to check that it conforms to the
grammar of the programming language.
3. Code generation - source code is converted into machine code
- Interpreters:
Translates a program written in a high level programming language into machine code. Less
efficient than a compiler
- Linkers:
Compiles the object files together to form a single execution file.
- Utilities:
Help to manage and maintain computer resources and performance by running specific tasks.
Utility software: software that performs some sort of maintenance on the computer system.
Does not include the operating system.
Backup:
Create a second copy of data programs that are in storage. Users are able to select which
folders and files will be backed up and can decide where backup files will be stored.
Data compression:
Will reduce the original size of files so that they use up less storage space. It will take longer to
open a compressed file than the uncompressed file.
*SSDs don't require defragmentation because they don’t have moving pieces
Formatting:
Process of organising the tracks on a disc into sectors where data will be stored.
Off the shelf : general purpose software that is available to a large market.
Example: spreadsheets, databases, word processors
Advantages:
- No mistakes
- Widely available
- Costs spread
- Less bugs
- Wide range of support
Disadvantages:
- Storage size of application is big
- No one to contact if any compatibility issues
Proprietary software:
Owned by a single person or organisation who sells it for use under an agreed licence.
Only files that are needed to run the software are made available and the source code used to
create the software remains with the owner
User interface: the boundary/communication between the user and the computer system.
Dialogue interface:
Using spoken words to communicate with a computer system. Suitable for use in cars or when
holding a telephone as no physical interference is required to work them. However, the
computer system may not recognise the spoken word.
Sensor: type of input device that is used to collect data about a physical environment
automatically. The data collected from a sensor is input into a system and any necessary action
required is taken.
Advantages:
- Data can be repeatedly collected 20 hours a day
- Data can be collected in harmful and dangerous environments without the need of
human interactions
- It is more consistent in the data that it samples as it is a mechanical drive (more
accurate)
Disadvantages:
- Sensors can be subject to wear and tear and may become faulty, leading to incorrect
readings.
3.2 Calibration
To make sure that the data collected by a sensor is accurate it can be put through a process of
calibration. This is where the device is modified and tested to make sure that it is taking the
correct readings.
How to calibrate:
- Test readings against those of a calibrated sensor
- Use a physical reference - like a ruler or measuring tape- to find out if an item that
should trigger the proximity sensor does so from a correct distance.
● Multipoint calibration: similar to the others but uses many different readings to increase
the accuracy further. Helps calibrate sensors which do not have a linear line of
inaccuracy.
For example: data may be collected about the temperature in a garden for a period of 24 hours
for a week. The data is then analysed at a later stage to see which day was the warmest
temperature.
Microprocessor:
Electronic component that can perform similar functions to a central processing unit. It
processes instructions and performs mathematical calculations and comparisons.
Registers - small areas to hold data.
Advantages:
- Execute several different tasks
- Small in size so can be easily built into different technologies
- Fast at moving data between different memory locations
Disadvantages:
- There is a limit on the size of data they can handle
- Can overheat if too much demand is placed on them
Actuator:
Used to move and operate other different mechanisms or devices.
They control operations such as opening and closing a valve, turning a switch on and off or
driving a mechanism to open a door. Can also be used to drive each of the individual parts in a
robot.
Advantages:
- Hydraulic and electric actuators are quiet
- Pneumatic actuators aren’t expensive
- Have high speed abilities to perform actions
Disadvantages:
- Pneumatic actuators are noisy
- Hydraulic and electric actuators are expensive
- Hydraulic actuators may have fluid leaks
Flowchart:
Chapter 4
4.1 Algorithms
A series of steps/instructions that are followed to achieve a certain outcome.
Before writing an algorithm on a computer, you need to design them by using a flowchart and/or
using pseudocode.
Flowchart: A set of symbols put together with commands that are followed to solve a problem.
● Connector:
Sometimes if a flowchart is long, it should be split up into smaller parts. The connector shows
where the flowchart continues
● Decision:
*Also known as comparison and selection.
Is either true or false.
If true then some code is run, if false then either different code is run or some code is skipped.
Pseudocode Constructs:
● Input: read, obtain, get
● Output: print, display, show
● Compute: compute, calculate, determine
● Initialise: set, init
● Add: increment, bump
● Sub: Decrement
● Decisions: is is replaced with if then OR else if for multiple
Loops (iteration):
Repetition; doing the same thing several times.
Used in two scenarios:
1. You know how many times you want to repeat the code (count-controlled loop)
2. You don’t know how many times you want to repeat the code, but want to keep going
until something happens (condition- controlled loop)
Count controlled:
Needs a counter to keep track of the number of repetitions you have done. The counter will be a
variable.
Before the loop is started, the counter needs to be set to the starting value (usually 0 or 1).
Then, inside the code that loops, you need to increment the counter (add 1 to it).
Condition controlled:
Same structure as the count controlled loop but it doesn't need a counting variable because
something else is controlling it. (could be controlled by an input from the user)
No variable counter.
String manipulation:
Collections of letters, characters and numbers represented by speech marks
Subroutines:
A set of instructions that are independent.
* Separate flow chart but instead of having start box it starts with the name of the sub routine
They have an identifier name and can be called from other parts of the program.
When it finishes running, control passes back to where it was called from.
- Procedure: performs a task and returns the control back to the program
- Function: returns a value to the program that called it
Example:
Chapter 5
Phishing
Phishing is when a person sends a legitimate-looking, but malicious email to a user, in hopes of
taking their sensitive data. The victim is usually tricked into replying with personal data, or
clicking a link where the criminal can take the data.
There are several precautions to take if you want to avoid phishing:
● Don't open an email that isn't from a trusted source
● Legitimate companies would never ask you for your personal data using email.
● Legitimate companies will normally address you by your name, be suspicious of any
email that addresses you as “Dear Member” or “Dear Customer”
● Legitimate companies will send an email that uses their domain name
● Legitimate companies are protective of their professional reputation
Smishing
Smishing (SMS phishing) is a variant of phishing that uses SMS text messages to lure users
into providing their personal details. Users should block any numbers that they believe are
suspicious.
Vishing
Vishing (Voice phishing) has the same aim as phishing, to obtain a user’s personal details. The
user receives a telephone call that could either be an automated system or a real person.
No company will ever call you and ask you to provide any login details.
Pharming
Pharming is when an unauthorised user installs malicious code on a person's hard drive or
server. The malicious code is designed to redirect a user to a fake website when they type in the
address of a legitimate one. The fake website is made to look like the real one, the user will then
enter their personal details into the fake website.
How to prevent pharming
● Have a firewall installed and operational
● Have anti-virus software installed that is designed to detect malicious pharming code
● Be aware when using public Wi-Fi connections (Use a VPN)
5.2 Malware
(malicious software) refers to any software that is designed to disrupt or damage a computer
system or sometimes a user.
Types of malware:
Virus:
A virus is the only type of malware that infects new files in the computer system. It attaches to a
clean file, replicates itself, then attaches to another clean file.
Once a virus has infected a file, it may replicate immediately or it can lay dormant until a certain
action triggers it.
*The aim of a virus is to corrupt data in your system. It's a method of sabotage.
Trojan:
A Trojan is a type of malware that disguises itself as legitimate software or is included in
legitimate software that may have been infiltrated. When a Trojan file is opened, it will normally
release another type of malware, such as a virus.
Worm:
Acts in a similar way to a virus. It replicates itself but it doesn’t attach itself to a file to cause
damage. It exploits security holes and issues in a computer.
*aims to fill up all the free space on a computer to slow it down
Spyware:
Spyware is a global term that is used to describe malware that is designed to gather information
about your interactions with your computer. The aim of spyware is to spy on the user.
Adware:
Displays targeted advertising on your computer. It manages this by collecting data about your
internet browsing habits. Adware can be both legitimate and illegitimate. Adware as malware will
present adverts when a user is browsing the web that is often shown constantly, they are
normally in the form of pop-ups or windows that cannot be closed.
Rootkit:
A Rootkit is a computer program that enables a person to gain administrator access to a victim's
computer. They are designed to stay hidden on a user’s computer and allow the computer to be
controlled from a remote location.
A rootkit allows the unauthorised user to do several criminal acts with the computer, such as
hide illegal files on the computer.
Rootkits can get installed because a victim’s password is cracked or a vulnerability in the
security of a computer system is exploited.
Malicious bot:
A bot is an application that is automated and used to carry out simple and repetitive tasks.
These are normally tasks that a human would find time-consuming.
● SPAM bots are used to bombard people’s email inboxes with SPAM emails.
● Zombie bots are used to create a bot network and the network will be used to launch an
attack on an organisation.
● Chatter bots will pretend to be humans on sites such as social networking and dating
sites, with the goal of obtaining personal data.
Bots often have worm-like capabilities because they can replicate and spread themselves.
Minimising risk of malicious bot:
Minimise it by avoiding the click on unknown links and sources that can lead you to a fake
website. Don't send personal information over the internet while chatting. Anti-malware software
can detect malicious bots on your computer system.
Ransomware:
Ransomware is a type of malware that restricts a user’s access to their computer system and
files. The ransomware will normally demand that the user pays a ransom in order to regain
access to their computer system.
Ransomware will normally try to enter a system in a similar way to a Trojan. If the user doesn't
pay the ransom in a set amount of time, they risk losing their data forever.
Chapter 6
6.1 Digital Divide
The Digital Divide refers to the technological gap between different demographics. The gap
between people and regions that have access to aspects of modern technology and information,
and those with restricted or no access.
The Digital Divide that people experience can depend on several aspects, such as age, status,
and location.
Rural areas may not have the infrastructure for broadband and internet connections, while Cities
are much more connected and much more technologically advanced and developed.
The quality of the infrastructure in rural areas could be improved. Many governments are
working with internet providers to improve infrastructure.
People who are technologically educated have an easier time using technology, but people who
aren't find it frustrating and hard to use. People can be technologically uneducated for many
reasons, maybe they don't have access to technology and don't have much experience, or
simply they have no interest.
One effective way of reducing the divide is to provide accessible technological courses. Courses
can be low-cost or even free, that allow people to learn along with other people of their skill
level, and teachers or leaders can be present to help them.
Technology has developed a huge amount over the last 50 years, this means that some people
have grown up with technology and other people witnessed the development of technology.
Younger people may feel more confident using technology to complete tasks, while older people
prefer older methods of communicating and completing tasks.
One of the biggest barriers to older people using technology is likely to be their fear of it. What
they may not see is that the use of older technology can be hugely beneficial to older people. By
using platforms such as social media, older people are less likely to feel isolated.
The parts of the world that have greater access to modern technology are the USA, Europe, and
Northern Asia, these countries are some of the more developed countries. On the other hand,
some of the lesser developed countries, such as the ones in Africa, have little access to
technology. This is due to them not being as wealthy, or using the money for more important
purposes.
Reducing the divide in less developed areas
The internet has become one of the most fundamental global infrastructures. Satellite
technology may assist remote areas to access the internet.
Socio-economic differences
The digital divide between socio-economics groups often revolves around cost. Richer people
have more access to technology, and can have all the benefits that come with it. Lack of
information and technology can really affect poorer societies.
Many countries are developing initiatives that provide technology at a subsidised rate or even
for free to those in poorer communities. This is helping close the divide by giving those who
would not normally be able to afford those technologies, access to the advantages that
technology can provide.
Chapter 7
Expert system: An expert system is a computerised system that attempts to reproduce the
decision-making process of an expert human being.
They are designed to try and replicate the judgement of a human that has expert knowledge in a
certain field. By doing this they can be used to replace or assist a human expert.
Capabilities:
- Advising
- Instructing and assisting humans in decision making
- Demonstrating
- Providing a solution
- Diagnosing (identifying a problem or illness by analysis of symptoms)
- Suggesting alternatives to a problem
Once the knowledge base is built, it can be used by the expert system to inform
The questions it needs to ask and assist in providing the results.
Rule base
A set of rules that will be used to produce an output or decision by the expert system.
These rules are used by the inference engine as a base for reasoning, to obtain a solution to a
problem.
Each rule contains two parts: IF and THEN.
A rule can have multiple IF parts that will be joined together by boolean operators including
AND and OR.
Inference engine
The part of the expert system that makes judgements and reasoning based on the knowledge
base and user interface.
It will ask the user questions and, based on their answer, it will follow a line of logic, leading to a
final result.
2 main methods that are used to stimulate reasoning:
- Backward chaining: breaking a goal down into sub-goals that allow the system to work
backward from the goal
- Forward chaining: a system that moves forward from rule to rule until it reaches a
possible outcome. (data driven)
Explanation system
A component of an expert system that provides an explanation of how the outcome was
achieved.
7.2 Are expert systems useful?
Advantages:
- Provides answers to questions that are outside the knowledge that you currently have
- Aids professionals by prompting them and guiding them to look at areas of knowledge
they may not have considered/ remembered
- Consistent in responses
- Can be used at any time
- Finds a solution to a problem faster than a human would
Disadvantages:
- Do not have the intuition humans have (not logical)
- Are only limited to the rules and data they are provided with
- May be errors in data
- Expensive to create
- Has to be upgraded
Mineral Prospecting
Expert systems are used to help in making decisions on where to drill for a specific
mineral. They help geologists evaluate whether particular sites are likely to contain
the mineral or ore being searched for.
1. First of all, the geologist enters data about the types of rocks and geological structure as
well as the minerals to be found at the site under
consideration.
2. The expert system’s knowledge base will store models of successful drilling
sites and their associated minerals together with a rules base.
3. The inference engine then compares this data with the models in the
knowledge base using the IF...THEN rules in the rules base.
4. The system may well ask the geologist further questions through the user interface and
the resulting percentage probabilities of finding the mineral at this site are produced.
Investment Analysis
Expert systems have been developed which act as assistants to financial advisors at
many banks. The financial advisor still makes the final decision, but the expert proves
to be a very useful tool in helping the advisor make recommendations to would-be investors.
When making a decision it is Important for the financial advisor to know four things about the
investor:
» The amount the client wishes to invest
» What level of risk the investor is willing to take
» The desired rate of return
» How long the investor is willing to make the investment for.
1. The user interface asks questions in the everyday language of the investor based
on the above factors.
2. Depending on the answers to the questions, the system may ask further
questions through the user interface.
3. The database of facts will consist of all the information the bank has gathered over the
years about the performance and stability of different companies.
4. The rules in the rules base will have been originally created by an expert
investor.
5. The inference engine will search the database of facts using the rules from the rules
base.
6. The expert system will then produce recommendations for purchasing stocks or shares
in a company, together with the reasons for recommending these particular stocks and
shares.
Financial Planning
Personal financial planning has become so complex that it is extremely difficult for
one human expert to deal with it. The result is a need for computerised expert systems
to assist in the process. There are so many variables to deal with that only a few can be
considered by one person in the time usually available.
1. Systems often involve the client completing a detailed questionnaire regarding
their personal and economic situation, including income, taxes paid or due,
investments, employee benefits, marital status, number of dependants, as well as
any future obligations such as retirement plans or funding their children’s university
education.
2. The inference engine analyses this information using the database of facts and a
very large number of rules in the system.
3. The database uses the results of books and articles which have been published
relating to personal financial planning as well as information gathered from
interviews with experts, such as professional financial advisors.
4. A report would then be produced by the financial advisor as to the client’s recommended
financial plans. The report would be based on a combination of a human expert’s
insights and the use of the results of the expert system. The report would serve as a
financial action checklist for the client in order to achieve their financial plans.