IB Computer science Flashcards
Hardware
<ul><li>Physical parts of a computer</li><li>Includes both internal(RAM+motherboard) and external(keyboards+monitors etc.)</li><li>Internal-<span>components</span></li><li><span>External-</span><span>peripherals</span><br></br></li></ul>
Peripherals
<ul><li>External device providing input/output</li><li>Communicate with system via device drivers</li></ul>
Network
<ul><li>Multiple devices that can communicate and share resources with one another via a transmission medium</li><li>2 main networks-<span>LANs </span>and <span>WANs</span></li></ul>
<span>Software</span>
<ul><li>Computer programs or sets of instructions</li><li>Consists of lines of codes that have been compiled into a program</li></ul>
<span>Human resources</span>
<ul><li>Describes both people who work for a company/organisation+dept that manages resources for employees</li><li>Known as <span>end-users</span><span> and </span><span>stakeholders</span></li></ul>
Client(in networks)
<ul><li><span>Accesses services+resources provided by a server</span></li></ul>
Server
<ul><li>Provides data to other computers and fulfils a client's request</li><li>Software is specific to type of server,but hardware is not important</li></ul>
Client server model
<ul><li>Each client is connected to a single server</li><li>Clients request connections to the servers</li><li>Can be accepted/rejected</li></ul>
Client server model <span>+ves</span>
<ul><li>Centralised management of resources</li><li>Backups and network security controlled centrally</li></ul>
Client server model <span>-ves</span>
<ul><li>High set up and maintenance costs</li><li>Single point of failure</li></ul>
DNS server
<ul><li>Translates domain names into IP addresses, so they can be accessed by the user</li><li>Sends corresponding IP address of the needed web server back to the user's browser</li></ul>
Router
<ul><li>Routes data from a LAN to another network</li><li>Receives+forwards data packets</li><li>Determines most efficient path for packet</li></ul>
Firewall
<ul><li>Acts as a filter protecting a network from incoming and outgoing traffic</li><li>Monitors incoming+outgoing traffic,following set rules</li><li>Hardware/software</li></ul>
Social issue
<ul><li>Problem that influences a considerable number of individuals </li><li>Includes crime, health,education,media+propaganda etc.<br></br></li></ul>
Ethical issue
<ul><li>Problem or situation that needs person/organization to choose between options which are considered right/wrong</li><li>Examples include:</li></ul>
-Computer crime<br></br> -Privacy<br></br>
Social issues in networks
<ul><li>Cyberbullying</li><li>Less face-face interaction</li><li>Addiction</li><li>Hacking</li></ul>
Ethical issues in networks
<ul><li>Cybercrime</li><li>Identity theft</li><li>Data privacy</li><li>Malware attacks</li></ul>
Stakeholder
<ul><li>Person,group or organisation that has an interest/concern in an organisation</li></ul>
Ask yourself… when identifying stakeholders
<ul><li>Who will be affected by new system?</li><li>Who will new system affect?</li><li>Who will the end-users be?</li><li>What are their needs?</li></ul>
Methods of obtaining a client’s requirements
<ul><li>Surveys</li><li>Interviews</li><li>Direct observation</li><li>Collecting documents</li></ul>
Observation
<ul><li>Walk around organisation-watching how things are done</li></ul>
Observation <span>+ves</span>
<ul><li>Information gathered is first-hand + unbiased</li></ul>
Observation <span>-ves</span>
<ul><li><span>People may act differently than normal when being observed</span><br></br></li></ul>
Interviews
<ul><li>Interview key members within a system-find out how it works</li></ul>
Interviews <span>+ves</span>
<ul><li><span>Lots of detailed info can be gathered</span><br></br></li><li>Suggestions for improvements to the system can be heard</li></ul>
Interviews <span>-ves</span>
<ul><li>Takes a long time</li></ul>
Questionnaires/surveys
<ul><li>People are given questionnaires to fill out</li></ul>
Surveys <span>+ves</span>
<ul><li>Large amount of data from large group can be gathered</li><li>Simple</li><li>Little time needed to analyse(if done electronically)</li></ul>
Surveys <span>-ves</span>
<ul><li>Bias possible-info is limited by survey qs</li><li>Quality of responses may be poor/not useful</li><li>Hard to ask the 'right question'</li></ul>
Collecting documents
<ul><li>Look at documents currently being used in the system-find how system works</li></ul>
Collecting documents <span>+ves</span>
<ul><li>Detailed info about current system can be gathered</li><li>Can be seen where old system has problems</li></ul>
Collecting documents <span>-ves</span>
<ul><li>Time consuming</li><li>Documents may be hard to understand(forms/outputs etc.)</li></ul>
4 methods before making a new system
<ul><li>Examine current systems</li><li>Look at competing products</li><li>Literature search</li><li>Organisational capabilities</li></ul>
Examine current system steps
<ul><li>Who does what?</li><li>How do they do that?</li></ul>
Organisational abilities steps
<ul><li>Determine what organisation can manage+do</li><li>Can they afford new equipment?</li><li>Can the staff use new system(do they need training?)?</li><li>Can they have any 'downtime' to upgrade?</li></ul>
Competing products
<ul><li>Observe competitors</li><li>See what is being done/is possible</li></ul>
Intellectual property
<ul><li>Something unique that you physically create</li></ul>
Literature search
<ul><li>Consult literature to see other products</li></ul>
Types of diagrams to represent system requirements
<ul><li>System flow chart</li><li>Data flow diagram</li><li>Structure chart</li></ul>
Flowcharts
<ul><li>Represent algorithms,workflow or processes</li><li>Used to show how processes should work+help figure out how to create a system</li></ul>
How do flowcharts help developers?
<ul><li>Inform decisions that need to be made+ the necessary steps that must be taken</li><li>Estimate development time frames</li><li>Identify who should be involved at each step</li><li>Identify bottlenecks+other problems</li></ul>
<div>Input/Output</div>
<div><img></img><br></br></div>
Processing
<div><img></img><br></br></div>
Disk storage (symbol)
<div><img></img><br></br></div>
Online storage (symbol)
<div><img></img><br></br></div>
Document
<div><img></img><br></br></div>
Communication link
<div><img></img><br></br></div>
Data flow
<div><img></img><br></br></div>
Tape
<div><img></img><br></br></div>
Data flow diagram
<ul><li>Shows flow of data in an information system</li></ul>
Entity symbol(data flow)
<div><img></img><br></br></div>
Process symbol(data flow)
<div><img></img></div>
Data store symbol(data flow)
<div><img></img></div>
Data flow symbol
<div><img></img></div>
Entity definition
<b><span> source and destination of information data.</span></b>
Process(data flow)
<b><span> Activities and action taken on the data.</span></b>
Data storage(data flow)
<b><span>When, but not how, data is stored.</span></b>
Structure chart
<ul><li>Represent organisation of a system,showing different parts in a hierachy</li></ul>
Prototype
<ul><li>Abstract representations of a system,only focusing on one/two aspects</li><li>Important in testing-each component can be tested+idea of system can be illustrated to client</li></ul>
Purposes of a prototype
<ul><li>Fail early and inexpensively</li><li>Gather more accurate requirements-demonstrate functionality of product+help end-users decide what they want in the product</li><li>Technically understand the problem-can see any possible challenges of the design</li><li>File patent</li></ul>
Iteration(in design process)
<ul><li><span> procedure in which repetition of a sequence of operations yields results successively closer to a desired result </span><br></br></li></ul>
Importance of iteration in design process
<ul><li>Helps you be sure on what needs to be improved</li><li>Improvements in one iteration only possible due to improvements in last iteration</li><li>New technology/techniques can be used</li><li>User's needs can change</li><li>Stability and reliability improves</li></ul>
Consequences of not involving end user for the user
<ul><li>Software is not suitable for intended use-decrease user productivity</li><li>User may be unsatisfied</li><li>Unhappy customers-reduced user productivity</li></ul>
Consequences for developer of not consulting end user
<ul><li>Legal action could be taken against developers</li><li>Decreased reputation</li><li>Loss of market share/breakdown of company</li><li>Harder to get feedback+help from users</li></ul>
Why should we listen to the end-user in the design process?
<ul><li>Understand own needs+situation far better</li><li>Software developer has limited domain knowledge-can't appreciate end users' needs</li></ul>
Topics concerning the introduction of new IT systems
<ul><li>Robots replacing humans</li><li>AI algorithms replacing humans</li><li>New systems are addictive/less efficient</li><li>New systems lead to new markets</li></ul>
Usability
<ul><li>How simple and self-explanatory the use of a system is for inexperienced end-users</li></ul>
Ergonomics
<ul><li><span>How well the form fits the function</span><br></br></li><li><span>Discipline concerned with optimising human well being and system performance through the application of theory,principles,data and methods</span><br></br></li></ul>
Accessibility
<ul><li><span>Ability of the device to meet the needs of as many people as possible</span><br></br></li></ul>
Problems with devices
<ul><li>Difficult to handle hardware</li><li>Complex user interface</li><li>Specialist support needed to use device</li><li>Short battery life</li><li>Small screen size</li><li>Limited storage/portability</li><li>Small text</li></ul>
Types of disabilities
<ul><li>Visual</li><li>Auditory</li><li>Mobility and dexterity</li><li>Cognitive</li></ul>
Methods of improving accessibility
<ul><li>Touch screens</li><li>Voice recognition</li><li>Text-speech</li><li>Braille keyboard</li></ul>
Usability issues within a system
<ul><li>What happens if they can't access system/only certain parts?</li><li>Can't access output?</li><li>Glitches+crashes</li><li>Incompatibility-time formats,currencies</li><li>Interface language problems</li></ul>
Moral issue
<ul><li>Issue with potential to help or harm anyone</li></ul>
Economic issue
<ul><li>Issue concerned with organisation of money,industry and trade etc.</li></ul>
Environmental issue
<ul><li>Problem concerned with protection of the natural world</li></ul>
Context definition
<ul><li>the background, environment, framework, setting or situation surrounding a system</li></ul>
What are 2 considerations when considering a new system’s context
<ul><li>The <span>extent</span> of the new system</li><li>The <span>limitations </span>of the new system</li></ul>
What are some organisational issues when installing a new system? (<span>1.1.1</span><span>)</span>
<ul><li>Software/hardware incompatibility</li><li>User roles / the organisation restructure their workflow</li></ul>
Problems with changing a system <span>(1.1.2)</span>
<ul><li>Users may not like change</li><li>New systems may omit old features </li><li>Expensive</li><li>Old systems may be faster in certain situations</li><li>Data loss during migration</li></ul>
Change management steps <span>(1.1.2)</span>
<ul><li>Plan</li><li>Communicate</li><li>Integrate</li><li>Evaluate</li></ul>
Plan <span>(1.1.2)</span>
<ul><li>Business must first need a clear and valid reason for the change process</li></ul>
Communicate <span>(1.1.2)</span>
<ul><li>Communicating the change to the key stakeholders</li></ul>
Integrate <span>(1.1.2)</span>
<ul><li>Consult the stakeholders before enacting the change process</li></ul>
Evaluate <span>(1.1.2)</span>
<ul><li>Examining the stakeholders' and end-users' response to the change</li></ul>
Legacy system definition <span>(1.1.3)</span>
<ul><li>An old method, technology, computer system or app that is no longer supported or available for purchase anymore</li></ul>
Risks with legacy systems <span>(1.1.3)</span>
<ul><li>More susceptible to security vulnerabilities and malware</li><li>Increased maintenance costs-less hardware and software for the system, lack of IT staff with the skills for that specific system</li><li>Integrating with other systems can be difficult</li><li>Compliance risks-data protection and privacy laws etc.</li><li>Inefficient operations-decreased productivity</li></ul>
Merger definition <span>(1.1.3)</span>
A combination of 2 entities or more, into one
Issues with mergers <span>(1.1.3)</span>
<ul><li>Software incompatibility</li><li>Language differences</li><li>Time zone differences</li><li>Workforce cultural differences</li></ul>
Local software definition <span>(1.1.4)</span>
<ul><li>Where the software is installed on a particular computer or set of computers</li></ul>
Remote software <span>(1.1.4)</span>
Software that is installed on a server or computer somewhere on the internet to be used via a browser or specific local application
SaaS <span>(1.1.4)</span>
<ul><li>Software distribution model where a third-party provider hosts applications and makes them available to clients over the internet</li></ul>
Benefits of SaaS (1.1.4)
<ul><li>Minimises IT responsibilities and costs</li><li>Useful for small businesses- subscription can be adjusted easily for their specific needs</li><li>Reduction in staff workload-IT workers don't need to perform tasks associated with onsite hardware+software</li></ul>
Drawbacks of SaaS
<ul><li>Companies using multiple SaaS applications or trying to connect them with on site software may experience some integration issues</li><li>Relying on a third party to store your data and business processes</li><li>Businesses must be mindful of compliance regulations regarding storing data in a remote data centre</li></ul>
4 methods of implementing/installing a new system <span>(1.1.5)</span>
<ul><li>Direct changeover</li><li>Parallel running</li><li>Pilot running</li><li>Phased conversion</li></ul>
Direct changeover <span>(1.1.5)</span>
<ul><li>Old system is stopped and new one is started</li></ul>
+ves of direct changeover<span> (1.1.5)</span>
<ul><li>Minimal time and effort</li><li>New system is available immediately</li></ul>
-ves of direct changeover <span>(1.1.5)</span>
<ul><li>No backup if new system fails</li></ul>
Parallel running <span>(1.1.5)</span>
<ul><li>New system is initialised but old system is kept running alongside it</li></ul>
+ves of parallel running <span>(1.1.5)</span>
<ul><li>Backup if new system fails</li><li>Outputs from both can be compared-ensure new one is functioning properly</li></ul>
-ves of parallel running <span>(1.1.5)</span>
<ul><li>Expensive to run 2 systems</li></ul>
Pilot running <span>(1.1.5)</span>
<ul><li>New system is tested using a small part of the organisation</li><li>Once it is running properly and all bugs have been fixed, it is implemented everywhere</li></ul>
+ves of pilot running <span>(1.1.5)</span>
<ul><li>All features are fully tested-any bugs can be found</li><li>If the new system fails only a small part of the organisation suffers</li><li>Staff part of the pilot can train others</li></ul>
-ves of pilot running <span>(1.1.5)</span>
<ul><li>No backup for subset of the organisation in the pilot group if new system fails</li></ul>
Phased conversion <span>(1.1.5)</span>
<ul><li>New system is introduced in phases</li></ul>
+ves of phased conversion <span>(1.1.5)</span>
<ul><li>People can get used to new system</li><li>Staff training can be split into stages</li></ul>
-ves of phased conversion <span>(1.1.5)</span>
<ul><li>No backup for new system</li></ul>
Problems arising from data migration <span>(1.1.6)</span>
<ul><li><div><span>Incompatible file formats</span></div></li><li><div><span>Data structure differences</span></div></li><li><div><span>Validation rules</span></div></li><li><div><span>Incomplete data transfers</span></div></li><li><div><span>International conventions on dates, currencies & character sets</span></div></li></ul>
Incompatible file formats <span>(1.1.6)</span>
<ul><li>Same piece of software may have different versions-data from one version may not be compatible with another</li></ul>
Data structure differences <span>(1.1.6)</span>
<ul><li>Data being moved from an array to a linked list etc. can cause problems</li></ul>
Validation rules <span>(1.1.6)</span>
<ul><li>Rules applied to inputs</li><li>If different at destination than at source-data can be rejected and lost</li></ul>
Incomplete data transfers<span> (1.1.6)</span>
<ul><li>Only part of data will be at destination-data loss</li></ul>
<span>Differences in data/currency/character set </span><span>(1.1.6)</span>
<div><ul><li><div><span>In the UK, 3/5/18 means 3 May 2018, but it means 5 March in the USA</span></div></li><li><div><span>The $ might mean US dollars, but could be taken to mean Zimbabwe dollars which use the same symbol but is worth significantly less.</span></div></li><li><div><span>A set of character used in one country, e.g. ﷼ in Saudi-Arabia, might be copied as ?? on Russian computer. </span></div></li></ul></div>
Consequences of not running tests <span>(1.1.7)</span>
<ul><li>System that doesn't work as expected-reduces productivity and end-user satisfaction</li><li>Software may not be appropiate for intended purpose</li><li>Undiscovered bugs in system</li><li>Decrease in organisation's reliability and reputation</li></ul>
Static testing <span>(1.1.7)</span>
<ul><li>Involves verification </li><li>Can include reviews, walkthroughs or inspections</li><li>No execution of code</li></ul>
Dynamic testing <span>(1.1.7)</span>
<ul><li>Involves validation</li><li>Program is executed </li><li>Can be done to test specific parts of the code</li></ul>
Alpha testing <span>(1.1.7)</span>
<ul><li>Performed by internal employees of the organisation</li><li>Done on the developer's site</li></ul>
Beta testing <span>(1.1.7)</span>
<ul><li>Performed by clients/end-users not part of the organisation</li><li>Done at client location </li></ul>
Black-box testing <span>(1.1.7)</span>
<ul><li>Testing software without knowing its internals</li><li>Uses software interfaces</li></ul>
White-box testing <span>(1.1.7)</span>
<ul><li>Looks inside the software</li><li>Uses that knowledge to help with the testing process</li></ul>
User acceptance testing <span>(1.1.7)</span>
<ul><li>Testing any new/updated system with its end users</li><li>Checks if it meets their expectations</li></ul>
Automated testing <span>(1.1.7)</span>
<ul><li>Method in software testing using machines to automatically execute tests and compare the results with the expected ones </li><li>Usually done on large amounts of code</li></ul>
User documentation definition <span>(1.1.8)</span>
<ul><li>Any document that explains how to use the features and functions of a system to its end-users</li></ul>
Importance of user documentation <span>(1.1.8)</span>
<ul><li>Makes users aware of particular features that may not be obvious</li><li>If the documentation is simple-less training needed for users so system implementation is faster</li></ul>
Types of user documentation <span>(1.1.9)</span>
<ul><li>Help files</li><li>Online support</li><li>Printed manuals</li></ul>
Help files <span>(1.1.9)</span>
<ul><li>Files supplied together with the system</li></ul>
+ves of help files <span>(1.1.9)</span>
<ul><li>Accessible any time when using program</li><li>Provide general instructions on how to use system</li><li>General instructions on solving common errors</li></ul>
-ves of help files <span>(1.1.9)</span>
<ul><li>Only can be used after system installation</li><li>Only deal with general errors</li><li>Lack a search capability-have to look through the file for your specific solution</li></ul>
Online support <span>(1.1.9)</span>
<ul><li>Web service hosted by the system's developer to provide user documentation</li></ul>
+ves of online support <span>(1.1.9)</span>
<ul><li>More extensive than help files</li><li>Constantly updated by developers with FAQs</li><li>Often have live support-can talk to a real human operator</li><li>Search capabilities </li></ul>
-ves of online support <span>(1.1.9)</span>
<ul><li>Reliant on internet connection</li><li>Live support can be ineffective with users unfamiliar with computers</li></ul>
Printed manuals <span>(1.1.9)</span>
<ul><li>Manuals printed on paper and supplied with the system</li></ul>
+ves of printed manuals <span>(1.1.9)</span>
<ul><li>Always available</li><li>Help with system installation</li><li>Can be read by users before they work with the system</li></ul>
-ves of printed manuals <span>(1.1.9)</span>
<ul><li>Can be lost/destroyed</li><li>Usually only provides help on system installation</li><li>Rarely updated</li></ul>
Importance of user training <span>(1.1.10)</span>
<ul><li>Productivity is dependent on familiarity with the system</li></ul>
Methods of delivering user training <span>(1.1.10)</span>
<ul><li>Self-instruction</li><li>Formal classes</li><li>Remote training</li></ul>
Self instruction <span>(1.1.10)</span>
<ul><li>Users learn how to use the system on their own</li><li>Usually use a manual or watch a tutorial etc. </li></ul>
+ves of self instruction <span>(1.1.10)</span>
<ul><li>Lowest cost</li><li>Flexible timeline</li><li>Training is specific to exactly what the user wants to learn</li></ul>
-ves of self instruction <span>(1.1.10)</span>
<ul><li>Certain key features may be missed-learning is unstructured</li><li>User may feel overwhelmed without guidance</li></ul>
Formal classes <span>(1.1.10)</span>
<ul><li>Users sit in a classroom listening to an instructor</li></ul>
+ves of formal classes <span>(1.1.10)</span>
<ul><li>Structured learning environment</li><li>Expert on hand to answer questions</li><li>Curriculum covers all aspects</li></ul>
-ves of formal classes <span>(1.1.10)</span>
<ul><li>Expensive</li><li>Rigid schedule+curriculum</li><li>Hardly any personalisation </li></ul>
Remote training <span>(1.1.10)</span>
<ul><li>Instructor training a user or a group of users via a form of remote connection</li></ul>
+ves of remote training <span>(1.1.10)</span>
<ul><li>Structured learning environment</li><li>Expert on hand for questions</li><li>Curriculum covers all aspects</li><li>Flexible locations</li></ul>
-ves of remote training <span>(1.1.10)</span>
<ul><li>Expensive</li><li>Computer based-need basic knowledge to be able to join the meetings etc.</li></ul>
Causes of data loss <span>(1.1.11)</span>
<ul><li>Hardware/system malfunctions</li><li>Human error</li><li>Software corruption</li><li>Malware</li><li>Natural disasters</li><li>Malicious activity of employees or intruders</li></ul>
Things to think about when discussing consequences of data loss <span>(1.1.12)</span>
<b><ul><li><div><span>Can the data be replaced?</span></div></li><li><div><span>How easy is the data to replace?</span></div></li><li><div><span>Who will be affected by the data loss?</span></div></li><li><div><span>Are there financial implications to the data loss?</span></div></li><li><div><span>Are there ‘life-and-death’ consequences to the loss?</span></div></li><li><div><span>Who is responsible for data recovery?</span></div></li></ul></b>
Methods for data loss prevention <span>(1.1.13)</span>
<ul><li>Failover system</li><li>Redundancy</li><li>Removable media</li><li>Offsite/online storage</li></ul>
Failover system <span>(1.1.13)</span>
<ul><li>Failover-constant capability to automatically and effortlessly switch to a backup system</li></ul>
Redundancy <span>(1.1.13)</span>
<ul><li>Condition in a database or another data storage technology where data is stored in 2 separate places at once </li></ul>
Removable media <span>(1.1.13)</span>
<ul><li>Use of any storage device that can be removed from a computer while the system is still running</li></ul>
Offsite storage <span>(1.1.13)</span>
<ul><li>Where data or applications are stored in a facility offsite to the organisation or core IT environment</li></ul>
Online storage <span>(1.1.13)</span>
<ul><li>Where cloud storage is used to store data from backups</li><li>Cloud resources and infrastructure can be used to create, edit, manage and restore data along with perform backups</li></ul>
Release <span>(1.1.14)</span>
<ul><li>Process of launching a new product for a specific market or user base</li></ul>
Update <span>(1.1.14)</span>
<ul><li>Software file that contains fixes for problems found by users or developers</li><li>Almost always free</li></ul>
Patches <span>(1.1.14)</span>
<ul><li>Software update where code is inserted into the code of the program</li><li>May:</li></ul>
<div>-Fix a software bug</div>
<div>-Install new drivers</div>
<div>-Address security vulnerabilities</div>
<div><br></br></div>
<br></br>
How to get updates: <span>(1.1.14)</span>
<ul><li>Manually </li><li>Automatically</li></ul>
+ves and -ves of manual updates <span>(1.1.14)</span>
<ul><li><span>Full control</span></li><li><span>Time consuming</span><br></br></li></ul>
+ves and -ves of auto updates <span>(1.1.14)</span>
<ul><li><span>No need to worry about updates</span></li><li><span>No control</span></li></ul>
Types of release management <span>(1.1.14)</span>
<ul><li>Continuous delivery</li><li>Agile software development</li><li>DevOps</li></ul>
Continuous delivery <span>(1.1.14)</span>
<ul><li>Teams produce software in short cycles</li><li>Allows more incremental updates to the application</li></ul>
Agile development <span>(1.1.14)</span>
<ul><li>Requirements of the software evolve through collaboration between end users and cross functional teams within the organisation</li><li>Done in iterations (sprints)</li></ul>
DevOps <span>(1.1.14)</span>
<ul><li>Aims to unify software development and operation</li><li>Utilises lots of automation </li><li>Monitors each step of the software construction</li></ul>
Network definition
<ul><li>Group of computer systems and nodes linked together via transmission media to allow for communication and resource sharing</li></ul>
LAN characteristics
<ul><li>Local Area Network</li><li>Uses MAC addresses and switches</li><li>Private infrastructure</li><li>Usually almost always use Ethernet protocol</li></ul>
WAN characteristics
<ul><li>Wide Area Network</li><li>IP addresses and routers</li><li>Public infrastructure</li><li>Collection of other networks</li></ul>
VLAN characteristics
<ul><li>Virtual Local Area Network</li><li>Group of nodes that appear to be on the same LAN despite not being geographically in the same area</li><li>Software implemented</li><li>Able to quickly adapt to changes in the network requirements</li></ul>
SAN
<ul><li>Storage Area Network</li><li>Secure high speed data transfer network</li><li>Allows access to a centralised storage system</li><li>Allows multiple servers to access a network of storage devices</li></ul>
WLAN
<ul><li>Wireless Local Area Network</li><li>Network that uses radio-waves and usually an access point to the internet</li><li>Allows the users to have mobility</li></ul>
Internet
<ul><li>Uses TCP/IP protocols for data transmission</li><li>network of networks</li><li>Global communication system</li><li>Both hardware and infrastructure</li></ul>
Intranet
<ul><li>Private LAN that cannot be accessed remotely(only can be accessed via VPN or on the organisation's premises)</li></ul>
Extranet
<ul><li>Intranet that can only be accessed remotely via authentication</li><li>Utilised to allow 3rd parties to gain information without granting access to the entire network</li></ul>
VPN
<ul><li>Virtual Private Network</li><li>Uses the internet</li><li>Allows people to access a network remotely but encrypts the connection</li><li>Data is transmitted through a secure pathway known as a tunnel-tunnelling</li></ul>
PAN
<ul><li>Personal Area Network</li><li>A network covering a very small area</li><li>Bluetooth etc.</li></ul>
P2P
<ul><li>Peer to Peer network</li><li>Network model where nodes are connected directly to one another</li><li>Directly exchange files and resources etc. </li></ul>
Network standards definition
<ul><li>Rules followed by manufacturers of network hardware to ensure interoperability between devices</li></ul>
Importance of standards
<ul><li>Allows devices to be compatible and communicate with each other</li><li>Helps ensure data transmission is secure-minimum latency and good integrity of data</li><li>Allows manufacturers to have a framework on which to build their system</li></ul>
2 types of network layer models
<ul><li>OSI Network layer-7 layers</li><li>TCP/IP Network layer-4 layers</li></ul>
+ves of layers
<ul><li>New protocols can be added to each layer easily</li><li>Change to one layer doesn't affect functionality of another layer</li><li>Similar protocols can be grouped into layers with a specific function in data transmission</li></ul>
OSI Model layers
<ul><li>7 -Application</li><li>6-Presentation</li><li>5-Session</li><li>4-Transport</li><li>3-Network</li><li>2-Data link</li><li>1-Physical</li></ul>
TCP/IP model layers
<ul><li>Application</li><li>Transport</li><li>Network</li><li>Link</li></ul>
Function of application layer in TCP/IP model
<ul><li>Collects data to be transmitted</li></ul>
Function of transport layer in TCP/IP model
<ul><li>Breaks up data into packets</li><li>Adds packet sequence number</li><li>Adds checksum</li></ul>
Function of network layer in TCP/IP model
<ul><li>Adds IP addresses of the sender and receiver node</li></ul>
Function of the link layer in TCP/IP model
<ul><li>Adds MAC addresses of sender+receiver node</li><li>Physically transmits data as bits </li></ul>
Comparison of TCP/IP and OSI model layers
<img></img>
What 2 main technologies does a VPN use?
<ul><li>Encryption</li><li>Tunnelling</li></ul>
VPN encryption
<ul><li>Converting plaintext to ciphertext via a private key</li><li>Need a decryption key to understand the data</li><li>Computers at each end of the tunnel encrypt incoming data and decrypt it at the other end</li></ul>
VPN tunnelling
<ul><li>Tunnel-secure pathway through the public network</li><li>On this connection packets are constructed via the specific VPN protocol format and sent privately over public networks via encapsulation</li></ul>
VPN components
<ul><li>Client VPN software</li><li>VPN infrastructure</li><li>VPN server</li></ul>
VPN infrastructure characteristics
<ul><li>Need to use specific VPN-routers and firewalls which allow legitimate VPN traffic to pass through</li></ul>
VPN server characteristics
<ul><li>Handles and manages incoming VPN traffic</li><li>Establishes and manages VPN sessions and their access to network resources</li></ul>
+ves of telecommuting
<ul><li>Improved productivity</li><li>Reduced costs for businesses and employees</li><li>Flexibility for the employees</li><li>No need to commute to work</li><li>Less environmental impact</li></ul>
-ves of telecommuting
<ul><li>Social isolation</li><li>Lack of expertise or support on certain issues</li><li>Need specific hardware and a network connection etc.</li><li>May be more distractions in a home environment</li></ul>
+ves of VPN
<ul><li>Allow for telecommuting</li><li>Improves data security-encryption and tunnelling</li><li>Bypass geo restricted content via masking IP addresses</li></ul>
-ves of VPN
<ul><li>Reliability of VPN is controlled by ISP</li><li>Not all VPNs are compatible with products </li><li>May lead to increased latency on the user's connection if the nearest VPN server is very far</li></ul>
Protocol definition
<ul><li>Set of rules for data communication over a network</li></ul>
Data packet definition
<ul><li>Small unit of data that is used in network communication </li></ul>
3 components of a data packet?
<ul><li>Header</li><li>Payload</li><li>Trailer</li></ul>
What is contained in the packet header?
<ul><li>IP address of sender and receiver</li><li>MAC address of sender and receiver</li><li>Sequence number</li></ul>
What is contained in the packet payload?
<ul><li>Actual data block</li></ul>
What is contained in the packet trailer?
<ul><li>Check Sum</li><li>Parity Bit</li></ul>
Key functions of protocols
<ul><li>Maintain data integrity</li><li>Manage flow control</li><li>Prevent deadlock</li><li>Manage congestion</li><li>Error checking</li></ul>
Data integrity definition
<ul><li>The overall completeness,accuracy and consistency of the data</li></ul>
Flow control
<ul><li>Mechanism which ensures the rate at which data is being transmitted is in proportion with the receiver's receiving capabilities</li><li>Ensures receiving node is not overwhelmed with data</li></ul>
Congestion control
<ul><li>Congestion-where a node or link carries so much data network service quality deteriorates</li><li>This leads to queuing delay,frame or data packet loss and new connections unable to be made</li></ul>
Error checking
<ul><li>Techniques used to detect noise or other impairments introduced to data during transmission</li><li>Utilises parity bits and checksums</li></ul>
Deadlock
<ul><li>Where 2 nodes/processes are trying to access the same node at once-neither is able to proceed</li><li>Relevant protocol needs to stop and re-queue them </li></ul>
Primary factors affecting speed of data transmission
<ul><li>Traffic</li><li>Number of users</li></ul>
Secondary causes affecting speed of data transmission
<ul><li>Time of day</li><li>Distance</li><li>Infrastructure</li><li>Type of cabling</li></ul>
Tertiary factors affecting speed of data transmission
<ul><li>Environmental issues(temperature etc.)</li><li>Infrastructure limitations due to financial reasons</li><li>Type of data being transmitted</li></ul>
Compression definition
<ul><li>Encoding data to use fewer bits than the original version</li></ul>
Lossless v lossy compression
<img></img>
Uses of compression
<ul><li>Backups/archiving</li><li>File transfer</li><li>Media file transfer over the web</li><li>Encryption/protection</li></ul>
Backups/archiving (compression)
<ul><li>Compressed data is smaller in size than original file-saves storage space</li></ul>
File transfering (compression)
<ul><li>Fewer bits transferred per second-faster transmission rates</li><li>Lower bandwidth needed for uploads and downloads</li></ul>
Encryption/protection (compression)
<ul><li>Compressing files scrambles their data adding an extra layer of protection against any hackers etc</li><li>Reduces amount of data needing to be encrypted</li></ul>
4 characteristics of transmission media
<ul><li>Security </li><li>Reliability</li><li>Cost</li><li>Speed</li></ul>
UTP-Unshielded Twisted Pair cables characteristics
<ul><li>Security-moderate if encrypted</li><li>Susceptible to EMI</li><li>Relatively cheap</li><li>Relatively fast(faster than radiowaves)</li></ul>
Fibre optic cables
<ul><li>Security-very secure</li><li>Generally quite fragile(glass)</li><li>Very expensive</li><li>Fastest transmission media</li></ul>
Radio waves
<ul><li>Security-insecure unless encryption is used</li><li>Susceptible to interference</li><li>Technically free</li><li>Quite slow speeds</li></ul>
Packet switching definition
<ul><li>Routing data packets through a network depending on the destination address contained in each packet</li></ul>
Packet switching steps
<ul><li>Data is broken up into packets</li><li>Routed from source to destination using switches and routers</li><li>The most efficient routes for the packets are found via the MAC and IP addresses in the header</li><li>Reassembled at destination using sequence number</li><li>Checked for errors using checksum</li><li>If any packets are missing data is retransmitted</li></ul>
+ves of wireless networks
<ul><li>Radiowaves are technically free</li><li>No need for cabling</li><li>Global standards</li><li>Minimal set up costs</li><li>Allows for user mobility</li></ul>
-ves of wireless networks
<ul><li>Interference</li><li>Limited range</li><li>WAPs can be used to steal data</li><li>Transfer speeds are slower than wired networks</li><li>Each WAP only has a finite amount of bandwidth</li></ul>
Hardware components in a wireless network
<ul><li>Nodes</li><li>Wireless NIC</li><li>Radio waves</li><li>Connection point(WAP etc)</li></ul>
Software components of a wireless network
<ul><li>Network Operating System (with drivers)</li><li>Protocol stack</li><li>Applications</li></ul>
Types of wireless networks
<ul><li>WiFi</li><li>Wimax</li><li>3G</li><li>LTE</li></ul>
Wi-Fi (Wireless Fidelity)
<ul><li>Also known as WLAN</li><li>Most commonly used for home networks</li><li>Backwards compatible with most older Wi-Fi standards</li><li>Relatively slow to quick data transmission</li></ul>
WiMAX
<ul><li>Worldwide Interoperability for Microwave Access</li><li>Large distance internet connections</li><li>Relatively cheap</li></ul>
3G (Third Generation)
<ul><li>Primary way mobile phones access the internet today</li><li>Allows tunnelling of phone lines</li><li>Relatively fast</li></ul>
Key factors concerning security
<ul><li>Confidentiality</li><li>Integrity</li><li>Availability</li></ul>
Why is system security difficult ?
<ul><li>Users</li><li>'Arms race'-constantly evolving malware etc.</li><li>Systems may have a weak point which can cause it to collapse</li></ul>
One factor authentication
<ul><li>Something you know-password etc.</li></ul>
2 factor authentication
<ul><li>Something you have</li><li>OTP etc.</li></ul>
3 factor authentication
<ul><li>Something you are</li><li>Biometrics etc.</li></ul>
Firewalls
<ul><li>Hardware or software or combo of both</li><li>Analyses data packets based on predetermined rules</li><li>Acts as a filter monitoring incoming and outgoing network traffic</li></ul>
MAC Address filtering
<ul><li>Hard-coded into devices by manufacturers</li><li>Can be used to identify specific pieces of hardware</li><li>Routers can keep track of allowed and banned MAC addresses </li></ul>
Physical security examples
<ul><li>Locks on doors</li><li>Security personnel</li><li>Reinforced rooms</li><li>Barbed wire fences</li></ul>
Encryption in wireless networks
<ul><li>Using algorithms to convert plaintext into ciphertext, so that it cannot be understood by any hackers</li><li>3 main standards-WEP,WPA,WPA2</li></ul>
WEP
<ul><li>Wireless Equivalent Privacy</li><li>Very quickly broken and replaced by WPA</li></ul>
WPA and WPA2
<ul><li>WPA-intrusions could still occur from outside the network</li><li>WPA2-intrusion can only occur by those who have accessed the network previously</li></ul>
+ves of userID
<ul><li>Access rights can be set for each user</li><li>User groups can be created-manage access rights in batches</li></ul>
-ves of userID
<ul><li>userIDs can be stolen</li><li>System can be bypassed</li><li>No protection against interception</li></ul>
+ves of encryption
<ul><li>Strong encryption is very difficult to break</li><li>Maintains confidentiality of data</li><li>Data is encrypted so even if transmission media is insecure, data is still secure</li></ul>
-ves of encryption
<ul><li>Hard to encode-need specialists</li><li>Computationally expensive</li><li>Some encryption methods may have built in backdoors</li></ul>
+ves of MAC filtering
<ul><li> Another layer of security</li></ul>
-ves of MAC filtering
<ul><li>Danger of whitelist being discovered, so MAC addresses can then be spoofed</li><li>Difficult to manage whitelist</li><li>Doesn't help against data interception</li></ul>
+ves of firewalls
<ul><li>Effectively prevents unauthorised access to a network</li></ul>
-ves of firewalls
<ul><li>May slow the network</li><li>Issues with censorship on a software firewall</li></ul>
What does RAM do? (6.1.1)
<ul><li>Memory which stores currently running programs and data being used.</li></ul>
Effect on system if RAM is too limited (6.1.1)
<ul><li>Part of secondary storage needs to be used as virtual memory (much slower than RAM)</li><li>Less processes can be executed simultaneously</li><li>If virtual memory is not available, programs or data won't load</li></ul>
What does secondary storage do (6.1.1.)
<ul><li>Permanent storage of data and programs including vital programs such as OS</li><li>Non-volatile</li></ul>
Effect on system if secondary storage is too limited (6.1.1)
<ul><li>May not be enough space to permanently store programs and data-data loss occurs</li><li>Not enough space available to use virtual memory</li><li>Less data can be stored on the system in general</li></ul>
What does the processor speed do (6.1.1)
<ul><li>Processor performs all calculations and instructions in a system</li><li>Speed - measurement of how many instructions executed per second</li></ul>
Effect on system if processor speed is too limited (6.1.1)
<ul><li>Processor takes longer to perform tasks</li></ul>
What cores do (6.1.1)
<ul><li>Each processor has at least one core (ALU) which performs arithmetic and logic operations</li></ul>
Effect on system if cores are limited (6.1.1)
<ul><li>Without multiple cores, tasks cannot be executed simultaneously </li><li>More cores=more tasks executed simultaneously</li></ul>
What is screen resolution (6.1.1)
<ul><li>Measurement of the number of pixels in the height x width of a display</li></ul>
Effect on system if resolution is too limited (6.1.1)
<ul><li>Number of pixels displayed is lower-pixelated display</li><li>Poorer quality images but also smaller file size</li></ul>
What does a sound processor do? (6.1.1)
<ul><li>Helps the system with sound reproduction and processing-frees up CPU</li><li>Also may contain bank of sampled sounds-helps to produce better quality audio</li></ul>
Effect on system if sound processor is too limited (6.1.1)
<ul><li>CPU has to help with processing sounds-reduces system performance</li><li>Overall quality of audio is not as high without use of sound processor</li></ul>
What does a graphics processor do (6.1.1)
<ul><li>Complex graphics processing-3D rendering etc.</li><li><br></br></li></ul>
Effect on system if graphics processor is too limited (6.1.1)
<ul><li>CPU is less efficient at graphics processing-lower quality or slower</li></ul>
What does cache do ? (6.1.1)
<ul><li>Stores instructions and data most likely to be requested next by the CPU from the RAM</li><li>CPU doesn't need to wait for instruction or data to arrive all the way from RAM</li></ul>
Effect on system is cache is too limited (6.1.1)
<ul><li>CPU will have to wait longer for instructions/data to be fetched from RAM, decreasing performance</li><li>Less cache hits</li><li>Slower processing of common tasks on the system</li></ul>
What is bandwidth (6.1.1)
<ul><li>Measurement of the amount of data able to be sent at the same time in a certain time frame </li></ul>
Effect on system if bandwidth is too limited (6.1.1)
<ul><li>Lower data transmission speeds from one point to another-slower network performance</li><li>Takes longer to process data in its entirety </li></ul>
What is network connectivity (6.1.1)
<ul><li>The type of network connection being used within a network</li></ul>
Effect on system if network connectivity is limited (6.1.1)
<ul><li>Reduced data transmission speeds, and higher latency</li><li>Possibly more interference and transmission errors depending on the type of connection<br></br></li><li>Lower download and upload speeds</li></ul>
Mainframes:Processor, primary and second memory
<ul><li>Contains thousands of cores</li><li>Vast amounts of primary and secondary memory</li></ul>
Common uses of mainframes
<ul><li>Virtualise smaller computers</li><li>Weather/financial models and predictions</li></ul>
Servers and server farms:Processor,primary and secondary memory
<ul><li>Many high spec PCs running in parallel</li><li>Vast amounts of primary memory (less than mainframes, more than PCs) along with secondary memory</li></ul>
Common uses of servers and server farms
<ul><li>Serve networks</li><li>Data centres for cloud storage</li><li>Online data backups</li></ul>
Desktop PCs: Processor,memory
<div><ul><li>Single processor, but multiple cores</li><li>Quite a lot of primary ( less than servers) and secondary memory (much less than servers)</li><li>Upgradeable</li></ul></div>
Common uses of desktop PCs
<ul><li>Companies and schools with no need for portability</li><li>Gaming</li></ul>
Sub-laptop (netbooks): processor and memory
<ul><li>Single or low multi-core</li><li>Limited RAM</li><li>Quite little secondary storage,usually a SSD</li></ul>
Common uses of sub-laptops
<ul><li>Personal computing devices</li></ul>
Cell phones/mobiles: processor, memory
<ul><li>Single or multi-core</li><li>Moderate RAM</li><li>Quite limited secondary storage</li><li>Constrained by screen size along with input options</li></ul>
Common uses of cell phones
<ul><li>Personal computing devices</li></ul>
Tablets: processor,memory
<ul><li>Single or multi-core</li><li>Not much RAM</li><li>Moderate secondary storage(less than PC)</li><li>Very portable</li></ul>
Common uses of tablets
<ul><li>Media consumption</li><li>Personal computing device</li></ul>
PDAs:processor,memory
<ul><li>Single core</li><li>Very limited RAM and secondary storage</li></ul>
Common uses of PDAs
<ul><li>Not used that much anymore</li><li>Calendars/emails</li><li>Delivery drivers</li></ul>
Digital camera:processor,memory
<ul><li>Single core</li><li>Limited secondary and primary memory,however secondary storage is expandable</li></ul>
Common uses of digital camera
<ul><li>Higher end photography</li></ul>
Think about consequences on a system of limiting which 5 things ?
<ul><li>Primary memory</li><li>Secondary storage</li><li>CPU speed</li><li>CPU cores</li><li>Connectivity</li></ul>
Questions to think about and their consequence to the user (6.1.4)
If the processor is too slow?<br></br><br></br>If the processor has only one core?<br></br><br></br>If the amount of primary memory is limited?<br></br><br></br>If the amount of cache is limited?<br></br><br></br>If network connectivity is limited?<br></br><br></br>If user access is limited to a single user per device?
Multi-user system definition
<ul><li>Many users on the same machine or many users connected to the same network</li></ul>
Multi-programming system definition
<ul><li>System that can have different programs installed </li></ul>
Single programming system
<ul><li>Can only run one program/set of programs</li></ul>
4 main functions of the OS (6.1.5)
<ul><li>Device configuration</li><li>File management</li><li>Memory management</li><li>Interface platform</li></ul>
How does device configuration work with the OS? (6.1.5)
<ul><li>OS uses device drivers (software program that acts as a translator) to allow the system to communicate with peripherals</li></ul>
How does managing primary memory work with the OS (6.1.5)
<ul><li>OS ensures each process runs in its own allocated memory space</li><li>Therefore OS allocates and deallocates memory</li><li>Prevents overwriting</li><li>Ensures a program has sufficient memory to run</li></ul>
Virtual memory management with the OS (6.1.5)
<ul><li>Virtual memory is part of the secondary storage that is used as RAM when RAM is full</li><li>Virtual memory is transferred in the form of pages</li><li>Data from RAM is temporarily transferred to secondary storage</li></ul>
Managing secondary storage with the OS (6.1.5)
<ul><li>Provides structure and access methods for the storage</li><li>Known as folder-structure</li><li>OS manages security access of these folders and files also</li></ul>
Providing an interface with the OS (6.1.5)
<ul><li>User gives commands to computer and enters data</li><li>OS translates I/O and sends it to correct memory or folder address to be processed</li><li>Provides link between user and computer hardware</li></ul>
Time slicing
<ul><li>Multi-user system-time slice is set amount of processing time each user gets</li><li>Single user system-time slice is set amount of processing time each program gets</li><li>Allocating a fixed period of time to each process for which they are allowed to run</li><li>CPU time is allocated dependent on time and priority</li></ul>
Interrupt handling (6.1.5)
<ul><li>Function of the OS which is executed when an interrupt is detected</li><li>Interrupt-signal to processor emitted by hardware/software indicated an event needs immediate attention</li></ul>
Security management with the OS
<ul><li>Utilises authentication and access rights</li><li>In multi user systems OS also isolates each users tasks, data and programs along with controlling access rights to specific parts of memory and secondary storage</li></ul>
Parallel processing with the OS (6.1.5)
<ul><li>Multi-core systems</li><li>Utilises prioritising where highest priority tasks are executed until a higher priority task appears</li><li>Scheduler sorts tasks into order of priority</li></ul>
Main resource management techniques (6.1.7)
<ul><li>Scheduling</li><li>Policies and mechanisms</li><li>Multitasking</li><li>Virtual memory</li><li>Interrupt</li><li>Polling</li></ul>
Scheduling (6.1.7)
<ul><li>Action of deciding which processes can occur when and for how long</li><li>Allocating CPU time amongst running programs and tasks</li></ul>
Policies (6.1.7)
<ul><li><b>Policies</b>-what is to be done</li><li><b>Mechanism</b>-how it is to be done</li><li>Policies are rules followed by the system in order for it to run as effectively and safely as possible</li></ul>
Multi-tasking (6.1.7)
<ul><li>The OS allows more than one program or task to be executed simultaneously on a system</li><li>OS keeps track of the progress of each of these tasks and allows you to move from one to another without any loss of information</li></ul>
Virtual memory + paging (6.1.7)
<ul><li>Feature of the OS where secondary storage is used as an extension to RAM</li><li>Involves transferring pages from RAM to VM when you are running many programs or large ones</li><li>OS is constantly swapping data between the 2 locations</li><li>OS will transfer back pages they need from VM and then send other pages to the VM so there is space for these needed pages</li><li>Memory manager determines this by sending the least-used page usually to VM</li></ul>
Interrupt (6.1.7)
<ul><li>Signal emitted by hardware or software indicating an event needs immediate attention</li><li>OS responds first suspending its current activities,saving these tasks then execute an interrupt handler</li><li>After interrupt handler is finished the system resumes its previous activities</li></ul>
Polling (6.1.7)
<ul><li>Process of where OS regularly checks another device or peripheral in order to see its status(ready or not)</li><li>Often done with low-level hardware</li></ul>
Dedicated OS definition (6.1.8)
<ul><li>OS designed for a specific device or purpose</li></ul>
+ves of a dedicated OS (6.1.8)
<ul><li>Higher level of security-developers can restrict possible entry methods for malware etc.</li><li>Can be customised for maximum speed and efficiency for whatever specific device or purpose it is being used for</li><li>Since you know the purpose and hardware for the OS, developers can eliminate elements of a typical OS which may not be needed in this scenario(less resource usage)</li></ul>
Abstraction (6.1.9)
<ul><li>In general, it is omitting the unnecessary and complex info in a system</li><li>In OSs certain hardware details may be hidden and higher-level functions may be provided</li></ul>
Drive letters (6.1.9)
<ul><li>Single A-Z letter assigned to a physical drive or drive partition in a system</li><li>Example of abstraction</li></ul>
Virtual memory (example of abstraction) (6.1.9)
<ul><li>OS handles paging in the optimal manner to maximise performance, we can just alter settings of virtual memory</li></ul>
Java virtual machine (6.1.9)
<ul><li>Interprets compiled Java binary code for a computer's processor </li><li>Each platform has its own JVM</li></ul>
Control system definition
<ul><li>Device/set of devices that manages,commands or regulates the behaviour of other devices or systems</li></ul>
2 main types of control systems
<ul><li>Open-loop control systems</li><li>Closed-loop control systems</li></ul>
Key features of an open-loop control system
<ul><li>Non-feedback system(output has no impact on control action of input)</li><li>No self correction of errors</li></ul>
Examples of open loop control systems
<ul><li>Toaster</li><li>Electric hand dryer</li><li>Automatic washing machine</li></ul>
Key features of a closed loop system
<ul><li>Utilises feedback-output can influence control action of input</li><li>Output is measured to be compared with input</li><li>Self correction can then occur based on the output</li></ul>
Examples of closed loop systems
<ul><li>Air conditioner</li><li>Centralised heating system</li></ul>
Main steps in control systems operation cycle
- Analogue inputs taken from the sensors<br></br>2.Analogue data converted to digital using ADC<br></br>3.Digital data is processed by the microprocessor and digital output generated<br></br>4.Digital data converted to analogue using DAC<br></br>5.Output executed using actuators
Automated doors features (example of control system)
<img></img>
Heating system (example of control system)
<img></img>
Microprocessor definition
<ul><li>Computer system that contains all the functions of a CPU </li></ul>
Sensor definition
<ul><li>A device that converts a physical stimulus into a readable output</li></ul>
Actuators function
<ul><li>Part of a device or machine that helps it with physical movement</li><li>Converts energy into mechanical force</li></ul>
Accessibility input devices examples
<ul><li>Adapted keyboard</li><ul><li>Bigger keys</li><li>Ergonomic(help with Carpal Tunnel Syndrome)</li></ul><li>Adapted mouse,trackball and joystick</li><ul><li>Ergonomic mouse</li><li>Xbox Adaptive Controller(large buttons+is affordable)</li><li>USB mouse with a large trackball</li></ul></ul>
Assistive technology examples
<ul><li>Screen readers</li><li>Screen magnification software</li><li>Alternative input devices</li><ul><li>Motion/eye tracking</li><li>Head pointers</li></ul><li>Speech input software</li></ul>
Medical sensors examples
<ul><li>Airflow sensor</li><li>Body temp sensor</li><li>Accelerometer</li><li>Electrocardiogram sensor</li></ul>
Transducers definition
<ul><li>A device which converts signals from analogue to digital and vice versa</li></ul>
+ves of transducers
<ul><li>Compatible with microprocessors and computers</li><li>Ease of convertibility between analogue and digital</li><li>Remote controllability</li></ul>
What is feedback?
<ul><li>Modification or control of a process or system by its results or effects</li></ul>
Examples of processes that use feedback
<ul><li>Missile tracking moving target</li><li>A heating system in a house</li><li>Auto-pilot</li></ul>
Embedded system definition
<ul><li>A computer system within another mechanical or electrical device with a specific purpose</li></ul>
Tagging prisoners-arguments for:
<ul><li>Allows non-dangerous criminals to move</li><li>Reduces number of people needed to be in prison</li><li>Allows for tracking at all times</li></ul>
Tagging prisoners-against
<ul><li>Could be hacked to track innocent people</li><li>Tracking data could be sold to make money</li><li>Loss of freedom of movement</li></ul>
Surveillance
<ul><li>Monitoring/observation from a distance using electrical equipment</li></ul>
Arguments for surveillance
<ul><li>Greater security</li><li>Can be used as evidence in court cases</li><li>Fewer people need to monitor others-physical security replaced by cameras etc.</li></ul>
Arguments against surveillance
<ul><li>Loss of privacy</li><li>Could be hacked and used for malicious purposes</li><li>Utilised to spy on people</li></ul>
CCTV-how it works
<ul><li>Video surveillance technique</li><li>Works independently to monitor a certain area</li></ul>
Arguments for CCTV
<ul><li>Reduces crime-deterrent</li><li>Cost effective solution to criminal damage</li><li>People may feel safer</li></ul>
Arguments against CCTV
<ul><li>Doesn't stop crime</li><li>Expensive to install and maintain</li><li>May be used for illegal spying</li></ul>
What is a centralised control system?
<ul><li>Control system where all processing occurs at a single, central location such as a microprocessor</li><li>Microprocessor controls numerous terminals (sensors/actuators)</li></ul>
What is a distributed control system?
<ul><li>Control system where multiple decentralised microprocessors control multiple sensors and actuators</li><li>These terminals all communicate with one another via a network</li></ul>
+ves of centrally controlled systems
<ul><li>Easier to maintain-everything is managed centrally</li><li>More control</li><li>Cheaper-just need one microprocessor</li></ul>
+ves of distributed systems
<ul><li>Quicker access</li><li>Sharing of tasks and resources</li><li>No single point of failure</li><li>Response will be more specific to environment</li></ul>
-ves of centrally controlled systems
<ul><li>Single point of failure</li><li>Slower processing-single processor has to manage all terminals and respond to all sensors etc</li><li>Actuators will be less responsive to their environments</li></ul>
-ves of distributed systems
<ul><li>Much more expensive-multiple microprocessors and sensors</li><li>Much more complex-harder to maintain </li><li>Harder to fix any potential errors</li></ul>
What is an autonomous agent?
<ul><li>Software entity that carries out a set of operations on behalf of a user or another program with some degree of independence</li></ul>
4 key features of an autonomous agent
<ul><li>A-autonomy</li><li>B-reactive behaviour</li><li>C-concurrency/sociality</li><li>D-persistence</li></ul>
Autonomy key features
<ul><li>Self activation-agents don't need to be triggered to perform a task</li><li>No human intervention-agents can select task themselves without human intervention</li></ul>
Reactive behaviour key features
<ul><li>Agent senses environment it is in (use of sensors) and decides what to do</li></ul>
Concurrency/sociality key features
<ul><li>Agents able to interact with other agents through communication in various modes</li><li>Include coordination,cooperation and competition</li></ul>
Persistence key features
<ul><li>Code describing an agent runs continuously like a process</li><li>Not executed on demand</li></ul>