SL CS Notes
SL CS Notes
SL CS Notes
Planning a computer system entails thinking about various details and organizing the
activities required to achieve the desired goals. I.E, would a small book shop benefit
from a computerized system. If so how would it be done.
An example would be, a small business changing which operating system they use. The
employees need to get proper training before they can continue working.
Mergers are hard because most companies will not use the same two systems, This
creates multiple issues when merging software. Some of them are listed below
Advantages;
• Security
• Backups can be controlled
• Legacy software
• Software control
• Feature control
Disadvantages:
• Cost of hardware
• Technical support
• Lack of collaboration
Software-as-a-Service (SaaS) : The client does not run its own computer system to
handle operations, but lends servers from the software manufacturer that are
managed and maintained by the software manufacturer.
Advantages:
• No cost in employing personnel to maintain system
• Software manufacturer can provide help in cases of malfunction
• Maintenance and updating managed by software manufacturer → they have staff
that fully understand the system
• Client enjoys the professional know-how of the software manufacturer
Disadvantages:
• Data security issues resulting from trusting your information to someone else (loss
of control)
• Host may be in a different time zone, so maintenance can happen at
uncomfortable times
• Because host is not the user itself, user feedback is harder to get
2) Parallel running – the old and new systems are run together
Advantages – if the new system has some problems, the old system will still work
Disadvantages – it is expensive and there will be a shortage of memory
4) Pilot running – the new system is tested on one branch of the company, and then it is
applied on the whole company.
Advantages – it is effective
Disadvantages – it is costly
Problems:
• Incompatible file formats.
• Data structure differences.
• Conflicting Validation rules.
• Incomplete data transfers.
• International conventions on dates, currencies & character sets.
Ways of testing:
Alpha testing , done before the product is made available to the general public.
Normally carried out by the company that develops the software in a controlled
environment and not by end user tests.
Beta testing, includes comments and suggestion of the users. Unlike alpha testing users
outside the company are involved in testing. The feedback is valuable and can be used to
fix defects and errors that were missed.
Dry-run testing is conducted using pen and paper by the programmer, the programmer
will usually run through the algorithm and ensures it all works well.
Unit testing is when individual parts of the system are tested separately.
Integration testing is when the entire system is tested at the same time to verify that all
the components can and will work together correctly.
User acceptance testing is used to determine if the system satisfies the customer needs
and in most cases is conducted in user premises before the transfer of ownership.
Black box testing is a software testing method in which the tester analyzes the
functionality of an application without thorough knowledge of the internal design.
White box testing is when the tester knows the internal design of the application and
analyzes it during testing.
Debugging is the systemic process of finding and correcting the number of bugs or
errors in a computer program.
Verification is the process of ensuring that the data input is the same as the original
source data. One way of achieving this is double entry
Internal documentation details the source code itself, variable names, code structuring
etc.
Manuals, can be provided online or offline, the advantage of an online manual is the
ability to print it and the ability to include multimedia features such as audio clips while
the advantage of an offline manual is the ability to read it without a PC or internet
connection.
Embedded assistance, software suites like MS office have built in help systems (tool
tips), One example is when the user hovers the mouse over an icon and a text box
appears explaining and naming the icon. It is a great way to increase app usability and
does not require software novices to ask the right questions to gain an answer.
Frequently asked questions, are listed questions and answers, all supposed to give
users answers to common set of problems and usually ordered in sets of topics. The
format is usually used in online forums.
Live chat, is a type of real time support that is extremely useful for emergency
situations. These have the advantage of making the user feel supported by a real person
which is preferred by many users.
Online portals, Depending on the product online portals can provide a list of things
from updates manuals to support pages to FAQ’s section.
Formal classes: Users sit in a classroom, listen to an instructor who shows and explains
how to use the system. This type of training is useful to train large amounts of staff as it
is effective and relatively cheap, but if the size of the classes is too big, there is little
time to deal with individual problems and questions.
Remote/Online training: An instructor trains a single user either by being in the same
room or by some kind of remote connection (Skype, chat). This is the most effective
way of training as it can be suited to user's needs and abilities, but is very expensive
compared to other types of training.
1.1.11 Identify a range of causes of data loss.
Data loss : error condition where data is lost or destroyed.
Causes Solutions
Accidental Deletion File recovery software
Administrative errors Need for care
Poor data storage program (misplace) Restructure data organization
Building fires Store data in two locations (backups)
Closing program without saving file Need for care, use auto save
Computer viruses Regular backups and use antivirus
Continued use after signs of failure Regular backups and maintenance
Data corruption Backups
Firmware corruption Backups
Natural disasters Backups and store data in two locations
Outsiders wanting to delete steal or alter Regular backups, use authentication
information methods, use a firewall
Physical damage of storage device Regular backups, need for care
Power failure Need for UPS, Backups
Data loss can be detrimental, - 70% of small business firms that experience a data loss
close their doors permanently within one year.
For this unit the candidate simply has to think about what the implications are for each
situation, I.E , losing files in a hospital might lead to a loss of patient information which
might be deadly.
1.1.13 Describe a range of methods that can be used to prevent data loss
Fail over Systems, data is also stored in an extra system (hardware, software, network)
which starts working once an error is detected in the main system.
Patches: used by software companies to update applications by fixing known bugs and
vulnerabilities. May introduce new bugs as an unwanted side effect.
Releases: final working versions of software. These applications have gone through
alpha and beta software testing.
Topic 1.2.1 Define the terms: hardware, software, peripheral, network, human
resources
Hardware: anything within a computer you can physically touch.
Software: the collection of programs and instructions that control the computer.
Peripheral: the devices attached to the computer that allow it to interact with its
environment and exchange information.
Types of peripherals:
Input peripherals:
• Keyboard
• Mouse
• Microphone
• Webcam
• Scanner
Output peripherals:
• Screen
• Speakers
• Printer
1.2.2 Describe the roles that a computer can take in a networked world
A computer can be a client or a server or both at the same time.
Examples of servers:
1.2.3 Discuss the social and ethical issues associated with a networked world
Social Issues of the network world:
Social issues are those which affect our society in general. Ethical questions are
involved often as well, but it's the affect on society, regardless of something being seen
as right or wrong, which is the issue.
• English is even more so the one dominant language for the networked world
• The good and bad of English being the "international language of the
Internet". Good: ease communication with a common language, Bad: lack
of diversity, potential loss of rare languages.
• Over-connectedness can curtail and even ruin real-life interactions between
people
• Cyber bullying is easier and more widespread
• The ease of piracy; companies in particular have the most to lose with this.
• The ease of identity theft; it was possible before, but now, with so much
financial business in particular being done on line, the implications of identity
theft are more immediate and potentially far-reaching
• The ease of other cyber-crimes such as fraud (tricking people into handing
money over to a fake website, for example)
• The ease of hacking; without networks and the Internet hacking could be done,
but the hacker physically had to be there - no more.
• Loss of jobs as certain sectors are taken over by digital equivalents (for example
the recording industry)
• Students being distracted at school
(Again, this is a good example of how "un-plugged" computers were still a bit of a
distraction in years gone by, but with students now being permanently connected
to so much, with their IT devices, the temptations and distractions have jumped to
another level altogether.)
• People do not experience quiet "mindfulness moments" because they are always
distracted by their technology, whether it be their cellphone notifications, or their
Netfix at home
• Health issues related to computer use (back, eyes, hands) are be exacerbated with
the increase use of technology
For example the stakeholders in the implementation of a new hospital database system:
• doctors
• nurses
• hospital IT
• first responders
• insurance companies
• patients (no.1 stakeholder)
• suppliers
• other hospitals
Example: An awkward man stands behind a store clerk for one whole day, seeing how
she works.
Pros:
- As it is not based on numerical statistics, it can explore topics in great detail and depth.
- Unobstructive observation will create extremely natural data.
Cons:
- A functioning system that is being observed will always act different than it does
normally.
- The non-statistical data can be difficult to analyze and can cause generalizations.
Cons
Pros
• You get direct feedback from stakeholders.
• You can ask any question you want, and can change the direction of the interview.
• People tend to be more truthful face to face.
• You can see how people physically react to certain questions
• You can discuss a topic in depth.
Cons
• It takes a long time to interview everyone.
• It is quite costly as people have to stop working to go to the interview and you
have to pay the interviewers.
• Since it take so long you are likely to choose a small group of people to interview
and if you have badly selected this group than some of the information you collect
may be useless.
• For an effective interview interviewers must take a lot of time to prepare.
• Organizational capabilities
The ways to illustrate system requirements are system flow charts, data flow
diagrams, and structure charts.
System flow charts - Diagrams representing how different parts of the system are linked
together and how the system should work in general.
Data flow diagram - Diagram representing how data is moving through the system.
Structure diagram - Diagrams representing the organization of a system, usually with
showing the different parts in hierarchical order
1.2.8 describe the purpose of prototypes to demonstrate the proposed system to the
client.
• Prototypes attract the attention of the client since it encourages and gives
them a feel for how the final product could work.
• They help users and developers to understand what can be expected from the
product.
• Can be used to market to investors.
• Great for finding problems and fixing them earlier.
• Helps gives an idea of what problems persists, what needs fixing and what
should be changed completely.
Topic 1.2.9 Discuss the importance of iteration during the design process.
Designing and creating the system usually happens in 5 stages: Planning, analysis,
design, implementation, maintenance. However, the maintenance step is often let out
because in maintenance you plan, analyses, design and implement changes, so the circle
effectively begins from start again.
This iterative process happens during the entire product life cycle.
he iterative system helps you find problems quickly because it makes it easy to try it
again.
Once a design is completed, problems are noted that many test users had with it. These
problems would be quickly fixed through an iteration which should be tested to make
sure the "fixes" went through and problems that had occurred are solved. It also finds
any new usability problems by the new changed design. Iterative design is specifically
aimed to teach you through messing up repetitively until you get it right resulting in a
more successful final product.
1.2.10 Explain the possible consequences of failing to involve the end-user in the
design process.
First off, if the users are not involved then the developers will not get any feedback
which leads to ‘developer bias’. What ends up happening is since there is no user
feedback a developer will likely program something in the way that the developer as a
professional would expect it to work and forget to design it intuitively for less tech
savvy users. Furthermore the user knows best, they are the ones who understand their
wants and needs better than the developers ever could and if they are not involved the
software might not meet all the needs of the users.
1.2.11 Discuss the social and ethical issues associated with the introduction of new
IT systems.
• digital divide.
• less social interaction.
• surgeries performed by machines.
• privacy.
• reliability.
• copyright .
• substitution of workers by cheaper machines.
• might be forcing new technologies on people who don’t want them.
If you need more help:
https://johnrayworth.info/jsr/_IB_Common/_topic1AssessmentStatements/1.2.11.php
Usability : The ease of use and learnability of a hardware or a software. The object of
use can be an application, website, machine, or anything a human interacts with.
Accessibility: Refers to the design of products for people with specific needs or
disabilities.
We do not need to know or understand the definition of ergonomics for this course.
Learnability : How easy is it for users to accomplish basic tasks the first time they
encounter the design.
Efficiency : Once users have learned the design how fast can they perform their tasks.
Errors : How many errors does the user make how severe are they and how fast can
your recover.
1.2.13 Identify a range of usability problems with commonly used digital devices
GPS :
• Small Screen.
• Low quality speaker.
• Antenna with poor performance.
• Inaccurate data.
• Outdated street data.
• Inefficient routing software.
Tablets :
• Accidental touches lead to undesired selections.
• Difficult to learn different gestures.
• Bad scaling and zoom.
• Difficult to use control features.
• Small side buttons.
• Poorly written instructions.
Game consoles:
• Portable game consols have relatively small screens.
• Buttons may be too small (controller).
• Difficult to use outdoors (screen glare).
• Short battery life (portable).
PCs:
• Excessive keyboard use may lead to RSI (repetitive strain injury) syndrome.
• Excessive use of large bright screen can cause eye damage.
• Poor lighting conditions may lead to reflecting screens.
• PC mice are designed for right hand people and it is often hard to use for left
handed people.
Digital Cameras:
• Incorrect calibration of touch screen menus.
• Need to hold camera vertically impairs convenient navigation.
• If a camera does not have a flash then a separate piece is needed for flash.
• The buttons might be too small.
• Some cameras require specific software to connect to PCs.
Mobile phones:
• Keyboard is very small many novice users, elderly people or people with bad eye
sight may struggle.
MP3:
• Tiny buttons.
• Insufficient memory.
• Fragile.
• Lack of screen in “micro” or “shuffle devices”
1.2.14 Identify methods that can be used to improve the accessibility of systems
Here are a few examples of different systems and their usability problems:
Payroll system:
• Internet Service Provider (ISP) downtime
• Depending on the complexity of the system, employees may have trouble learning
how to work with it.
• Employees might not have a bank in order to be payed
• This system might be complex to set up
Voice recognition:
• The dictionary of the voice recognition software may be limited and doesn’t
include certain words such as slang terms.
• If the user has a speech impediment then the software may have trouble
recognizing what they are saying.
• People from different regions of the world and backgrounds will all different
dialects as well as accents which the system may not be able to deal with.
• The system may not be able to recognize different words if the user speaks very
quickly or too slowly.
• Users may not want to speak about important and sensitive information in a public
space. As well as people speaking in a lower volume when in public, the system
may not be able to ‘hear’ the user.
• If the user is in an area with a lot of ambient noise then the system may not be
able to cancel out this noise.
• If the word database is not stored locally and there are network errors then the
system is not able to work.
1.2.16 Discuss the moral, ethical, social, economic and environmental implications
of the interaction between humans and machines.
CPU – Central processing unit, key component of a computer system. Contains the
necessary circuitry to interpret and execute program instructions.
ALU – Arithmetic logic Unit part of the CPU does all the arithmetic and logical
operations
CU – Control unit, controls the operations in the ALU and directs data flow
MAR – memory address register, It holds the memory address of the data to be used by
the ALU so that the ALU can fetch the content from memory and process it. It may also
hold the address of where the data that is processed needs to go
MDR – memory data register, holds the data that is to be used by the ALU and stored in
RAM the MDR and MAR are related because whatever data is located at the address of
the MDR will be put into the MAR.
Memory or address bus – Provide connection between CPU and the memory ( uni
directional CPU to RAM)
Data bus – connection between RAM and MDR (bi directional)
2.1.2 RAM ROM.
Primary memory : Only storage that is directly accessible by the CPU. May hold both
data and instructions.
RAM OR ROM
RAM : Random access memory, general purpose storage area meaning that the data
stored can be over written, this allows data and instructions be loaded for instructions
and used whenever. However ram is volatile which means that anything stores in it will
be wiped clean when power is lost.
ROM : Random access memory, is used to store permanent instructions and data that
can not be over written. Does not lose contents when memory is lost.
2.1.3 Cache memory
Cache refers to the frequently asked for memory from the ram. If an application is
frequently executed then it gets placed in the cache, this happens because the cache is
near the alu so the file arrives faster instead of having to travel all the way from ram to
ALU.
Can be placed between CU and RAM, e.g , MAR + MDR -- > L1 Cache -- > L2 Cache -
- > RAM
L1 cache is placed on the micro processor while L2 is placed between CPU and RAM
Decode:
The instruction is sent from the CIR to be decoded. Once it is decoded the CPU will
execute the instruction, the instruction could detail something needed to be fetched or
could be an operation. If it is fetched then the MAR will fetch it.
Execute :
The CPU executes the instruction using the necessary data that may have been loaded
and calculated a result depending on the result, additional data might be needed. These
are fetched from memory. The PC is incremented.
Store:
After executing the instruction and computing the result the CPU stores the result in
primary memory to do so it specifies the address where the result will reside in the
primary memory then using the memory bus sends the data through the data bus, the
CPU then checks the next instruction and repeat.
2.1.5 Persistent storage and secondary memory
Persistent storage is extremely vital in computer systems. This is because if all data was
volatile we wouldn't be able permanently keep data for later use, as it would all be gone
once we turned off the system. Persistent storage is necessary in order to be able to keep
all our files and data for later use. For example a hard disk drive is an example of
persistent storage, it allows us to permanently store a variety of data.
Peripheral management: Peripherals are anything that reside outside the CPU,
keyboards monitors and mice are all peripherals. The operating system is responsible for
communicating directly with the hardware and providing an interface between the
device and applications.
Memory management: An operating system is responsible for all the memory that is
available in a computer system. That means that an OS manages how the memory is
used by applications and ensures that the memory being used by one application doesn’t
interfere by another.
Multiple applications may run on a computer system at any one time, appearing as
though they are performing tasks simultaneously. Most computer however have a single
CPU that can perform a single action at any particular time. That means that applications
must share CPU time in order to accomplish a goal this is called multitasking.
Security: Operating systems provide security in the operating system. It does this by
multiple ways. One example is user authentication, username password. And log files
that keep trace of activity of any user in the computer system.
Spreadsheets:
Spreadsheets are an application that is used for organization and analysis of data. An
example would be Microsoft excel
The main features of a Spreadsheet software are:
• Data is represented as cells
• Organizes data
• Can be used for data processing using formulae
• Can be used to display graphical data
DBMS:
DBMS, database management system, is a software application that manages database
and is designed to provide an interface between users and a database. An example would
be Microsoft access.
Features of DBMS:
• Create databases
• Input data into databases
• Manage databases (queries, update, store, modifies and extracts information)
Web Browsers:
An application used to access retrieve and present content on the world wide web.
Example would be google chrome.
Email:
An application that allows the exchange of digital messages from a single author to one
or more recipients. This is done by connecting and sending the email to the mail server
of the recipient and then the recipient connects to their mail server and receives the
message. Example Microsoft Outlook
Features of Email:
• Allows managing of emails (Archive, mark as read, delete)
• Allows sending of emails
• Allows and displays viewing of emails in a tidy manner
CAD:
CAD, Computer aided design, is a program that assists engineers to create,modify,
analyze and optimize a design. Example AUTO C.A.D
Graphics Processing Software:
Software that allows a user to manipulate visual images on a computer. Can be edited
with a number of tools in various ways such as crop select move scale erase etc.
Example would be Adobe Photoshop.
2.1.8 Identify common features of applications.
GUI : graphical user interface.
Most applications typically come with a GUI which allows the user to interact with them
in a number of ways. It usually includes components such as graphical icons, visual
indicators, toolbars, menus and dialogue boxes, these allow a smooth user experience.
2.1.9 Define the terms: bit, byte, binary, denary/decimal and hexadecimal
Bit-Computers use binary - the digits 0 and 1 to store data. Is the smallest unit of data in
computing. It is represented by a 0 or a 1.
Byte- A group of 8 bits is called a byte.
Binary- Based on 2 systems and there are 2 symbols 0 ,1
Decimal-10 Based system. uses symbols 0 ... 9
Hexadecimal- 16 based system uses symbols 0....9 A,B,C,D,E,F (10,11,12,13,14,15)
OR:
NOT:
Input A Output
0 1
1 0
XOR:
Output is True when A is true or B is true, but not when both are true
NAND:
NOR:
Or gate followed by not gate (inverse or)
Types of Network
• LAN-local area network in which the nodes are close together(school,office)
• WAN-world area network in which the nodes are spread out over larger
geographic area.
• GAN- global area network where the nodes are spread out more globally
(internet)
• PAN-personal area network which consists of computers,mobile...(Computer-
printer relationships)
• P2P-peer-to-peer network in which computer can act as a server for the
other(Skype,Mail...)
• WLAN-wireless local area network it is the same as LAN,but wireless(Wi-Fi)
• SAN-storage are network which provide dedicated access to storage.
• VLAN-virtual local area network is a logical concept not physical.
• VPN-virtual personal network is creates an encrypted connection over a less
secure network,
• Internet-is a network of networks(www,mail,skype,viber)
• Extranet-an intranet that can be partially accessed by authorized outside users
• Intranet-a local or restricted communications network, especially a private
network created using World Wide Web software.
3.1.3 Describe how communication over networks is broken down into different
layers.
Secure vpn:
All traffic on the vpn is encrypted
technologies:
Internet protocol security protocol (IPSec) which functions in both transport and
tunnel mode:
• Allows secure transmission of data over public ip-based networks
• Uses standard encryption algorithm to provide confidentiality (AES)
• Provides authentication via digital certificates
Secure sockets layer (SSL) or transport layer security (TLS) with encryption. SSL
based VPNs are much simpler than IPSec based VPNs. Does not require special client
software.
Trusted VPN:
All traffic on the VPN relies on the security of a provider’s network to protect the
network. Can be separated into layer 2 and layer 3
technologies:
for layer 2 VPNs include:
• asynchronous transfer mode circuits
• frame relay circuits
• transport of layer 2 frames over MultiProtocol Label Switching (MPLS)
for layer 2 VPNs include:
• Multi protocol label switching (MPLS) with constrained distribution of routing
information through border gateway protocol (BGP)
Types of VPN:
Site to Site:
Connects entire networks and facilitates secure data interchanged between different
sites. Uses VPN gateways
Remote access:
Connects individual hosts to private networks and facilitates teleworkers who need to
access their company’s network securely using the internet. Every host has VPN client
software installed.
Disadvantages of VPN
• It has a low speed
• Compatibility issues can arise between the users of the network
Data Pocket- combination of bits in some lengths send across the network.
Data- Anything in a form suitable for use with computer such us binary. Typically data
meaningless.
Protocols are the set of rules computers follow when communicating across a network.
Without them, no information can be transmitted as computers don't know how to
interpret the signals coming through the network.
Data integrity – Means that the data has not been changed/corrupted deliberately or
accidentally during the transmission. Uses checksum mechanisms.
Source integrity – Means that the identity of the sender has been verified. Digital
signatures are used to prove source integrity.
Flow control- Networks have limited memory and bandwidth. The transport layer is
responsible for taking advantage of its protocols and facing situations where an overload
occurs. These protocols can request form a sending application to slow down the data
flow rate. The transport layer controls the reliability of a given link through flow control.
3.1.8 Explain why the speed of data transmission across a network can vary
3.1.9 Explain why compression of data is often necessary when transmitting across
a network
All networks have limited bandwidth. Compressing a file reduces its size which reduces
bandwidth uses and results in faster transfer speeds.
Lossy Compression:
Some of the information is lost to an acceptable degree. There is no way to get the
original file background
Examples : JPEG, MP3, MP4
Loseless Compression:
The compression method reduces the number of bits by identifying and eliminating any
statistical redundancy. There is no loss of information during loseless compression.
Examples = ZIP, GIF, PNG
Uses of compression:
Backups and Archiving
So backup files don't take as much space as the original ones.
File Transfer
If the file is smaller it will take less time to upload/download.
Wired:
Copper cable ( metal conductor) , most common kind of cabling in computer networks
Coaxial cable, consists of two copper conductors it was used in computer networks, as
well as to carry TV signals. Low cost of installation.
Unshielded Twisted Pair Cable (UTP) ,very popular in LANs. Easy to install. Prone to
electrical interference. Low cost of installation. Good for short distances.
Shielded Twisted Pair Cable, Same as UTP but harder to install and less prone to
electrical interference.
Fiber Optic Cable, Optical cable that carries a beam of light, Very expensive, Offers
very high speeds, Needs fewer repeaters. Extremely secure. Used for data and telephone
lines
Wireless:
Microwave Radio, used extensively for mobile telephone networks and LANs, info is
carried through the air.
RFID, uses various radio technologies, active RFID needs internal power. Passive RFID
needs no power source.
Bluetooth, bluetooth devices use microwave radio to exchange data, transmit at very
low power levels, regularly changing frequiencies.
Advantages
Disadvantages
• Risk of cancer
• 2-50x slower than wired communication
• Less stable
• Car crashes, because of talking on mobile
• Security issues
• Weak privacy
• High error rates
• Can be unsustainable because of weather
• The distance that wireless networking covers is smaller
• Can be used to steal data
Hardware:
A wireless router, Acts the same as a wired router, but in some cases will also act as a
WAP (wireless access point), WAP allows data transfer between a device and a network,
wireless router will usually have LAN jacks for wired devices.
A wireless network adapter, also known as a wireless NIC, it is required for any
devices that don’t have wireless capabilities.
Wireless antennas, Access points and routers will often utilize WiFi antennas that
significantly increase the effective communication area of a network. They are fixed,
optional or removable.
Software:
DHCP, dynamic host configuration protocol is a network protocol that allows a server to
automatically assign an IP address to a client device.
Software Firewall, a network security system that determines what data comes in and
goes out of a network or pc.
NIC drivers, a network interface card driver is a driver for the NIC cards, the driver
operated the hardware of the card, it acts as a translator between the OS and the NIC.
OS, Operating system handles system resources and is responsible for managing all
protocols software and hardware that have to cooperate so that a network can exist and
function.
Security software, Includes all software that prevents unauthorized access, use ,
disclosure, disruption, modification, perusal, inspection, recording or destruction of data.
Web Browser, is an application software that is used to find retrieve and display content
on the WWW. Includes, text images audio.
WiMAX
• WiMAX = Worldwide Interoperability for Microwave Access
• Designed for large distance high speed internet access
• Relatively cheap method of providing internet over a large area - suited for poorer
countries
• Rivaled by Long Term Evolution (LTE) standard
• Can be used as a form of wireless variant of DSL phone transmission lines
3G (Third Generation)
• The primary way mobile phones access the internet today
• Allows the tunneling of phone lines (mobiles don't have to switch back to phone
network when receiving a call
• Relatively fast
WiMAX vs LTE
• Both considered 4G technologies and both are IP technologies
• They use different channels
• LTE is compatible with 3G and 2G while WiMAX is not
• Building an LTE network is more expensive
• LTE allows much greater speed for mobile users
• WiMAX is less popular and less widespread than LTE
• WiMAX is considered a better choice for low-cost network installation in
developing countries
Because they need to protect from hackers intruders or unauthorized users, which can
cause harm in multiple ways including and not limited to:
• Disabling operations
• Inserting viruses or malicious code
• Steal identities
• Steal devices
• Steal sensitive information
• Cause a DOS attack (denial of service)
Encryption, uses complex math to alter a message into a form that is not understandable
to an unauthorized person.
Public-key encryption, also known as asymmetric key encryption, uses two keys
the public key is used for encryption while the private key is used for decryption. This
type of encryption is used on the internet. ( SSL, TLS)
Other methods:
Use of a password to access the interface of the access points (ROUTER LOGIN
PAGE)
Turn On/ Off wireless connectivity, very good option if wireless connectivity is not
needed
Block access to wireless devices by MAC address, MAC stands for medium access
controls, follows mac protocol and is a sub-layer of data link. Network security can be
increased by giving access to specific devices using their MAC address since each MAC
address is unique.
WEP wireless security, compatible with older devices, encryption method, increases
security, can be cracked but is relatively hard to crack.
WPS, designed to allow novice and residential users to securely operate their wireless
networks.
WPS methods:
• PIN that is entered on the device we wish to connect, pin is either in GUI or
sticker on router
• Push button, push WPS button on both devices
• NFC, device must be in close range to connect
• USB transfer, transfer data between router and device using USB
Use router hardware firewall, will prevent people from hacking router but not people
in range of router.
Topics 4.1.9-4.1.13
Inputs are resources that are given in order to solve a certain problem, for example
ingredients are used to cook a cake.
Pre-planning is the process of planning before the actual process of the solution. (Gantt
chart is a chart that presents the tasks and the time periods allocated for each of them.)
Pre-conditions are conditions that need to be met in order to start solving the problem
(Checking if ingredients (milk, sugar) are available for cooking).
Post-conditions are conditions that need to be met after solving the problem (Checking
the availability of place to eat the the cake).
Concurrency is when two or more processes are using the same resources at the same
time.
Advantages:
• Efficient workable
• Time saving
• Money saving
Disadvantages:
• Errors
• System may be overloaded
• Lower speed completing a certain task
Example:
No abstraction:
Leave house
Lock door
Get in car
Start car
Drive to cinema
Buy tickets
Go into theater
Watch movie
With abstraction:
Leave house
Drive to cinema
Watch movie
The real world entity has a lot more details and complexities whilst the abstraction is a
simpler more iconic version of it
Sequential search – used to find specific element in an array, it does this by checking
each component sequentially, ie 1 2 3 4 5
PSEUDOCODE:
Array = [2,9,5,6,7,8]
Search = 7
Found = false
Counter = 0
if Found = false
output Search, “ is not found in this array”
end if
Binary search – used on sorted arrays, divides the array in two parts and checks whether
the number is higher than or lower than the middle of the array
PSEUDOCODE:
Array = [11,12,15,16,112,118,123,145]
Search = 15
Min = 0
Max = Array.length -1
Found = false
Answer = 0
Mid = 0
Bubble sort – Compares 2 elements next to each other. If the task is to put the array in an
ascending order it will switch the places of the elements if the first one is higher than the
one next to it. The process continues until the array is put in an ascending order.
PSEUDOCODE:
Example = [1,663,8,2,4,1,22,66,20,122]
Selection sort- Sorting by finding the highest or lowest number from an array then puts
it in first place. Then it does the same starting from the second element and so on and so
forth
PSEUDOCODE:
* > is for descending order
* < is for ascending order
ELEMENTS = [1,5,3,86,256,420,9,510,51,24,60]
Min = 0
I=0
Temp = 0
output ELEMENTS
4.2.2 Outline the standard operations of collections.
Collections store a set of elements. The elements may be of any type (numbers, objects,
arrays,Strings, etc.).
The following code is guaranteed to retrieve each item in the collection exactly once.
// STUFF is a collection that already exists
STUFF.resetNext()
loop while STUFF.hasNext()
ITEM = STUFF.getNext()
// process ITEM in whatever way is needed
end loop
There are two types of computer languages, high level and low level
• They save time for developers since they are easier to debug
• They are more easily understandable for beginners
• They do not require the use of memory addresses and memory locations
4.3.5 Outline the need for a translation process from a higher level language to
machine executable code
Most programs are written in higher level language, however a CPU can only
understand machine language so a translator is needed to convert the higher level
language to machine code.
Compiler - Translator that executes the translation process only once, It will translate
the whole source program into an object program. It will also give error messages for
any syntax error found. A program only correctly compiles when all syntax errors are
removed
Interpreter – Translator that goes through the process of translation every time. Refers
to the process of reading each line translating it and executing it, errors are
communicated for every instruction that it interpreted.
Java Virtual Machine (Java) – Combines interpretation and compilation. Source code
is compiled into java virtual machine bytecode. This bytecode is then interpreted by the
java virtual machine interpreter. The java architecture allows code to run on any
machine through the java virtual machine.
Variable – Variables are a name that is used to store a data element of a program, value
can be changed during program execution. (MyNumber = 12)
Constant - Represents things and quantities that don’t change. They are basically non
modifiable variables. (PI = 3.14)
Operator – Used to manipulate operands. (2 + 3), 2 and 3 are operands while + is the
operator.
Object - Collection of data and actions. Actions refer to the operations that can be
performed by an object. Data includes a number of data members. Data members are
used to store the current state of an object and actions are used to change or access data
members.
If x = 6
min = 6
≠ Does not equal to
Min ≠ Max
> Greater than.
If Min > 6
< Less than
If Max < 6
>= Greater than or equal to
If Max >= 6
<= Less than or equal to
If Min <= 6
div Divide but without a remainder
22 divide 3 = 7.3333
22 div 3 = 7
mod Modulo operation, calculates the
remainder of a division and gives the result
Learn how to write pseudocode for collections problems (solving past papers)
4.3.12 Discuss the need for sub-programs and collections within programmed
solutions
Advantages of sub-programs/modules:
-Manageable tasks
-Distributed development
-Code re-usability
-Program readability
Advantages of collections:
• Methods of collections are predefined algorithms that a programmer can use
immediately. For example hasNext() Instead of writing logic to check if the
collection is empty
• Performance is increased by the data management capabilities which can be
gained using collections
• Software reuse is facilitated because all the methods are predefined and are based
on a common language