F451 Computing Fundamentals Essential Revision Notes Hardware An input device is hardware that is used to put data into a computer. An output device is hardware is display information from a computer A storage device stores data that has been collected for future use Hardware is the physical parts of a computer system A secondary storage device is a peripheral that allows storage of data over a long period of time. A peripheral is an external device attached to the computer e.g. a printer. An example of secondary storage would be… Hard drive to store the operating system and software to use on the computer, CD-RW to backup and transport data Memory stick to transport data. An actuator is anything that gives a physical output such as a pump or a motor. A sensor is an input device that detects physical quantities e.g. heat/light. Used as part of data logging. Software Software is programs and instructions to make hardware do something. Software is written in a language the computer understands. Systems software controls the operation of the hardware, runs the computer An OS is a set of programs designed to manage the hardware of the system Applications software allows the computer do something useful, e.g. a spreadsheet. Bespoke software is custom made for a client to perform a specific task. Utility Software Compression software Reduces size of files. If sending files across internet/email means they are sent more quickly. Decompressed using a decompression algorithm at the destination File handlers Manages data storage/organises data storage. Allows files to be accessed/deleted/sorted Hardware drivers Contain the instructions to the OS for using a peripheral e.g. Printer has driver to install communication protocols into the OS. Written in low level language – assembler. Has to access hardware directly. Purpose of Operating Systems Used to control the hardware of the system/resource management through software like hardware drivers Used to provide a platform on which applications can run. Deals with issues that the software may have eg storage of files Provides a user interface with operator to allow communication between user & hardware Computing @ WBGS Handles communications using protocols to govern the communication between components and peripherals Provide utility programs used to carry out housekeeping on system e.g. file handlers Types of Operating Systems Batch Processing • Often run during night time/weekends • No need for human to be present • Run in computer downtime when workers have gone home • No need for instant response to inputs • Processes large amounts of data in one go • Processing cheques/bills/pay rolls • Large amounts of similar data that required similar processing Real Time Processing • Data is processed instantly • System responds instantly to changes in input • Automatic Pilots on airplanes • Seat booking system – ensures 2 seats aren’t booked simultaneously Single User A single user OS allows one user at a time to use the system. It allocates each user with rights and keeps the user files separate Multi User Allows more than 1 user to use the system simultaneously – e.g. a network operating system Multi Tasking Allows more than one task to run (apparently) simultaneously. Each task is given an amount of processor time before going on to next task e.g. plays music while typing essay. Transfer Data from Primary Memory to Secondary Storage Data is sent from primary memory to buffer Processor can continue other tasks Interrupt sent when buffer is full Buffer contents emptied to storage device Data error checked on arrival When buffer is empty Interrupt is sent to processor to request buffer refill with data Interrupt priority compared with priority of present task Use of priority to assign interrupt with position in queue Input/Output Devices Supermarket Checkout Input devices Barcode scanner/reader to input product ID number printed on barcode Keypad to input PIN number for card Touch screen to allow user to use menu based interface Output devices Screen to show details of objects scanned/current state of transaction Printer to print till receipt Beeper to indicate valid reading of code Computing @ WBGS A barcode is a method of storing data through a series of lines of different thickness. The thickness of each line represents a number which is scanned by a laser. A check digit is included in the barcode as a method of error checking. A start and stop digit allows for barcode to be scanned and read both ways. In a supermarket when a barcode is scanned on a product at the till, this number is searched for on a database. This is an existence check. The stock level is then decremented to allow for instant stock control information of each product. If number in stock is less than minimum stock and no order is outstanding for this item then supplier file is searched for details of supplier which are used and order field is set to show outstanding order. MICR is where special characters on document written using magnetisable ink which are both computer and human readable. Commonly used for printing account numbers on used on banking cheques. Optical Character Recognition - Characters shapes are scanned and these shapes are turned into text e.g. scanning a printed page of text into a word processor document. Optical Mark Reader – Scanned page which reads the positions of marks on a document that are made in a specific place which denotes inputted data. Multiple choice tests or lottery tickets. Fast and accurate to process. Useful on multiple choice tests as answers are all objective – no area for debate. Can be processed in batches. Automatic Data Capture Barcodes OMR OCR MICR Image Capture Sensors Data Logging Systems o Weather Stations Advantages of automatic data entry Human being does not need to spend time inputting data Data input will be more accurate No errors to be made Data is more likely to be accurately inputed Expert Systems Software that is designed to solve problems and provide solution to tasks, such as diagnosis of medical conditions or analyse large amounts of data. Rule Base Contains all the rules that can be applied to the knowledge/data. Inference Engine Uses the rules in the rule base and searches through the knowledge base Human Computer Interface Allows for data or queries to be input/results to be output. Common use of a natural language interface - very complex systems therefore simplification of use is essential. Processor Components Control Unit Controls fetch/execute cycle. Manages execution of instructions by using control signals to other parts of computer. Synchronises actions (using inbuilt clock). Computing @ WBGS Memory Unit Stores the OS/data currently in use and software currently in use Arithmetic and Logical Unit Carries out arithmetic instructions. Carries out logical instructions. Acts as a gateway to processor. Buses – Channel of communication to send data Data Bus Transmit data between areas of the processor Address Bus Identification about where the data is being sent/coming from Control Bus Send control signals from control unit to other parts of the processor Registers – Locations in memory used for specific purposes Memory Data Register o stores the data being transferred to or from memory Memory Address Register o stores the address in memory currently being accessed Current Instruction Register o stores the instruction currently being executed Accumulator o Stores results of calculations performed Program Counter o Stores the address of the next instruction and controls the sequence in which the instructions are executed. ROM is Read Only Memory and is non-volatile. The contents are not erased when powered off. The ROM contains the start up program which allows a device to boot up the OS. The start up program is needed immediately when the device is powered on. The contents of ROM cannot be changed. RAM is Random Access Memory is a volatile. Contents are lost when powered off. It contains applications software being used and data used in the operating system. Changes to RAM are made as the device is being used, and access to RAM is very fast. A character set is where each character available to input into system is given a unique binary code. On a standard PC each character on the keyboard has a 1 byte ASCII code. Other character sets are UNICODE which uses 2 bytes. The more characters required the more bits in each code. Data Transmission Serial is one bit transmitted at a time down a single wire. Parallel is multiple bits transmitted at a time down many wires. Simplex o Communication in one direction only Half Duplex o Communication in both directions but one at a time Duplex o Communication in both directions simultaneously Bit rate is the rate at which data is transferred, how many bits in a specific time period. Measured in bits per second also known as baud rate. Computing @ WBGS A fast internet connection is required to steam a video. A video has a large volume of data which needs to be transmitted at a very fast rate. A video is time sensitive unlike other data such as a text files which contain a relatively small amount of data. Protocol A protocol is a set of rules that governs communication between devices. To establish communication between 2 devices a handshake signal sent from one device and and acknowledged by the other. This states that each is now ready for communication. Agree logical parts of protocol such as the error detection and baud rate that will be used to transmit data The physical part of the protocol can be if data is transmitted wireless or hard-wired, Serial or parallel or the type of cabling used e.g. copper wire, or fibre optic, what frequency will be used in a wireless network. If different frequencies are used then the receiving device will never receive the communication as it will be listening to different parts of the frequency The logical part of the protocol is things that are programmed in software such as baud rate the error correction used, and any compression techniques used. Needed as if one device transmits data at a different rate than it is received the bits in the data will be mixed up. Networks A local area network is a network covering a single building or site. A WAN covers a wide geographical area crossing countries and continents. LAN is more secure than a WAN. To establish a network physical items required are a NIC, cabling and a server. A network operating system and hardware drivers for the NIC are also needed. To connect to the internet a router or modem is required. A router connects a LAN to a WAN. A modem converts digital signals to analogue signals to communicate down a phone line. A handshake is an exchange of signals between devices to signify that they are ready for communication. Protocols will be agreed prior to the communication beginning. Without agreement on rules the two devices cannot understand each other’s signals. Packet Switching Data split into packets sent onto network. Each packet finds the fastest route to destination. Packets must be reordered at destination/arrives in wrong order. Packets have identity on label No established route for each packet – doesn’t tie up parts of network. Data cannot be easily intercepted Maximises use of network Only as fast as its slowest packet! Circuit Switching Route reserved before transmission. Establishes a route along which to send data. Data sent down this route in its entirety. Can ties up large areas of network Error Detection Echoing Once data is received it is sent back to destination and compared to see if it is the same. Verification. Check Sum Blocks of bytes are added before transmission to give a sum. The sum is transmitted with the block. The same calculation is done on the data blocks at the destination and result is compared with the transmitted value. If different, there is a transmission error Computing @ WBGS Parity The total number of 1’s in a byte must add up to either an odd or even number depending on the parity bit. The parity bit is set to either a 1 or 0 to check the byte has been transmitted correctly. Validation Methods Validation ensures data meets certain rules. These are programmed in the software. Range Check o A number between 1 and 10 e.g. >=1 and <=10 Character Check o Only allowing letters to be used in a name field Format Check o A field may required letters and numbers in a certain order e.g. NI number is 2 letters, 6 numbers, 1 letter. Length Check o Only allowing a minimum or maximum number of characters in a field e.g. mobile phone number can’t be more than 11 digits. Existence Check o Barcode is read at supermarket till. That number is looked up on a database. If number is not on database then it must have been incorrectly inputted. Presence Check o Data has been entered into a field. Check Digit o An algorithm is performed on a string of numbers or characters to give a digit. This digit is transmitted along with the string. The same algorithm is performed to ensure the check digit is the same when received. Used on barcodes, ISBN (mod 11). System Life Cycle Feasibility study o Technical o Economic o Social Analysis Design Implementation Testing Evaluation Maintenance o Corrective o Adaptive o Perfective Spiral Developer works through each stage of the system lifecycle over and over again, and each stage is refined each time to produce the final system. Waterfall Computing @ WBGS Developer finishes each stage of the system life cycle in order and moves onto the next stage once each stage is fully completed. Developer uses RAD to develop the front end of the software. Produces series of prototypes with heavy involvement from end user to ensure product meets their demands. When conducting a feasibility study 3 factors have to be considered… Technical Can hardware/software be found to implement the solution Economic Is the proposed solution possible within budget/economic to run Social Effect on the people/employees involved – jobs, retraining, new skills needed Methods of Fact Finding Need to ensure analyst understands the organisation requirements or system produced may not meet requirements Interview One to one situation/can change course of questions/Boss or client Questionnaire Have their views considered/time saving/large workforce Observation See process in action/may not act as they would because being observed Meeting Get views from many people at once/may be taken over by one or two people Document collection Indicates what data is actually collected. Requirements Specification Input requirements Output requirements Processing requirements Clients agreement to requirements Design Specification Input design Output design/choice of interface System flow charts Data flow diagrams Entity Relationship Diagrams Installation Planning When installing a new system there a 4 methods of doing so. Parallel Run both systems side by side until the new one is considered error free. Used in situations where data is valuable so can't afford mistakes Pilot Try new system in one small area of business/company. See how it works before rolling out new system to whole business. Big Bang Old system removed and new one starts immediately Phasing Parts of old system replaced gradually. Evaluating the new system End User Requirements decided on in analysis. Does new system meet them? Computing @ WBGS Important to user because need to be sure software performs as required – is it actually what they wanted. Important to developer because it determines the end of the job if they are being paid for producing a suitable solution Future Enhancements Three types of maintenance are… Corrective To correct bugs found in software when being used Adaptive To alter software because of external need eg VAT increase Perfective To improve performance of software User Documentation How to operate the system Error messages/trouble shooting FAQ Required hardware specifications Software install procedure Backing up and archiving procedure Glossary Index All written from users point of view Technical Documentation Data Flow Diagram Flow of data through system System flow chart How parts of system interrelate Entity Relationship Diagram How data tables relate to each other Variable Names, Data Structure, how the code works Meant for future programmers Data Security Methods to keep data secure are Passwords that restrict access to system to certain users. Passwords can be made more secure – alphanumeric, minimum length, change every set period of time. Use of a firewall to stop signals from unauthorised users reaching the system/hardware or software Encryption so that if unauthorised access is gained the data is unintelligible Proxy server restricts the users allowed access to individual machines on network Types of User Interface A GUI is a graphical user interface which uses WIMP. A GUI is very processor intensive. A CLI is a command line interface. The user has to type in specific commands to operate the system. The user needs to be computer literate to use it as they have to remember all the commands and their syntax. CLI requires very little processing power. A menu based interface is a list of on screen choices which leads to further menus which allows the user to choose an action from a set list of options. These are commonly used on a touch screen information terminal or a mobile phone. A menu based interface is easy and intuitive to use and requires little training or computer literacy. A GUI is more difficult to use and more processor intensive. Computing @ WBGS A natural language interface is where the user communicates with the computer in a human conversation type way. Used with some internet search engines and expert systems. Requires no training or computer literacy. Very difficult to program due to the ambiguous nature of human language. When designing a user interface factors to consider are… Form of output o Sound may be inappropriate/inaccurate on a noisy factory floor Volume of data o User must not be subjected to information overload as this may lead to omissions Colours o Needs to be readable/sensible use of colours like red for danger Experience of user o CLI not suitable for inexperienced user Layout o Spread around screen, font size Hardware platform o Suitability for the application/environment to be used in. GUI very processor intensive. Forms of Output Different types of output could be… Reports / text / printouts Sound o to act as an alarm (in case of emergency action being required). Video / visual display / images o showing real-time actions/images Diagrammatic Flashing/Highlighted Text o highlights important information. Graphical /Charts Flashing Light o to act as an alarm to show problem with an area of the track. Backup and Archiving A backup is a copy of a file and its structure on a portable medium kept away from originals so that if the original is corrupted it can be replaced. Important files needs be protected from deliberate or accidental data loss. Archiving is where data is put onto long term storage and kept offline so that it can be referred to if necessary. Data is still available without taking up space on working storage. A backup routine needs to consists of the following aspects… How often backup is done Time of day it is performed Medium of storage used to store the backup Where the backup is stored Full or Incremental Backup Generations of backup – Grandfather, Father, Son Implications of Computer Use Some people are concerned about their data being stored electronically because concerns their personal details could be hacked by outsiders, become victims of identity theft, personal data can be sold on to companies for marketing purposes. Errors in their personal data leading to problems/miscalculations. Computing @ WBGS Measures to be taken to overcome peoples concerns are Check accuracy of the data being stored Allow people to view the data that is stored about them Limit access to small number of security screened people Abide by data protection legislation Ensure data is secure – firewalls, passwords, secure servers, encryption Physical security of data – restrict access to employees, Data protection Act governs the storage of personal data electronically. It is required because Information is confidential and sensitive Information must be accurate Clients must have confidence that measures are taken to protect their data Ensure irrelevant data is not kept Concerns about identity theft/fraud Stops data being passed onto 3rd parties for marketing purposes. Effects of Home Working Advantages Less pollution from travelling Less traffic congestion Less infrastructure required Greater opportunities for employment of disabled people Do not need to supply offices/car parking spaces Cheaper to run offices Work can be outsourced easily Employees have more freedom with family Save money/time on commuting Disadvantages Lack of social contact Less structure in society Difficulty if system goes down Communication with work colleagues more difficult Less control over work of individuals More difficulty in altering course of work Computing @ WBGS