Components of a Computer System and Modes of Use Chapter 1. 1 Hardware and Software Definitions1 Chapter 1. 2 System Software4 Chapter 1. 3 Programming Tools and Techniques. 9 Chapter 1. 4 Data: Its Representation, Structure and Management15 Chapter 1. 5 Hardware23 Chapter 1. 6 Data Transmission and Networking26 Chapter 1. 7 Systems Development Life Cycle30 Chapter 1. 8 Choosing Applications Software34 Chapter 1. 9 Handling of data in Information Systems36 Chapter 1. 10 Designing the User Interface37 Chapter 1. 11 Characteristics of Information Systems38 Chapter 1. 12 Implications of Computer Use39
Chapter 1. 1 Hardware and Software Definitions A computer system consists of hardware and software. Hardware Definition The hardware is the physical part of the system. All computer systems require at least four types of hardware. •An input device is a hardware attached to the processor/computer to supply data to the processor/computer. •An output device is a hardware attached to the processor/computer to relay information from processor/computer. •A storage device is a hardware which can store data outside the processor in a form which is suitable for input back into the processor. A computer system need external device for the following reasons: ? In order to store files when the power to the processor is switched off. ?In order to store files which are too large to be stored in the processor itself, until they are needed. ?To allow for the transfer of data from one machine to another. Communications Hardware The need for communication hardware arises when different computers are connected. •Network Card To allow computer to communicate externally. •Modem To allow the computers to use the telephone lines for communication. It inter-converts Digital data to Analogue signal.
Software Definition The software is the various sets of instructions which tell the system how to do things. Difference between hardware and software ?Hardware comprises the physical parts of the computer system, while ? Software are the programs that make the machine produce useful results. Diagrammatic representation of Software Types of software •Operating system software is a set of programs which runs/controls hardware and software and also provides an interface between user and hardware. •User interface software is used to provide a method of communication between the user and the system. GUI -> WIMP) •Translator software translates High Level Languages/Assembly Language into machine code. (Mother-tongue of computer). E. g. Compiler, Interpreter, Assembler. •Utility software are programs which is part of the OS designed to carry out common tasks. E. g. Virus Checker, Disk Defragmenter, File Management. •Programming languages are used to write sets of instructions that the processor can understand. E. g. Visual Basic, PASCAL, FoxPro, Java. •Common applications software includes word processors, graphics, spreadsheets, and many others. These are the programs that you use to produce something worthwhile on the computer.
Applications Software •Application Software is a program that allows the user to do something useful. E. g. Spreadsheets. •Application Package is software that contains a documentation (of how to do things) and allow user to do something useful. E. g. Word Processing •Generic Application Software is a program that can be used in many different situations to do different useful tasks. E. g. Word Processing •Integrated Software is a number of different pieces of software/programs that can share data. E. g. Microsoft Works/AppleWorks where you can create a chart in spreadsheet and import it in PowerPoint for presentation purpose. note: Microsoft office is an application suite) Modes of computer Use •Batch mode Not time sensitive •Real-time mode Must provide immediate outcome •Online mode User/Peripheral in communication with processor. •Offline mode User is not in communication with processor. Device not controlled by processor. Scenario 1 At the end of each day, workers in a factory send, to the accounts department, the details of the time that they have been at work. They are paid at the end of each week. Choose two of the modes of which would be sensible to use in this example, justifying your answer. Answer -Batch -Offline
Reasons: •(Sets of daily hours must be collected for each worker) cannot be processed until all collected •Faster to process if processor not bothered by user •No need for user input during processing •Large quantities of similar data. Note: Online is also accepted because workers need to be on-line to a system in order to send details to accounts department Scenario 2 A computer game involves steering a car around a course. State two of the modes which would be needed for this example, justifying your choice. Answer – Real-time – On-line Reason: Because user commands must be acted on immediately Chapter 1. System Software Operating Systems An operating system is a set of programs designed to run in the background on a computer system, giving an environment in which application software can be executed. E. g. Windows XP, Windows Vista, Linux. (OS runs/controls the computer/hardware. ) An OS is stored in the hard disk for the following reasons: ?Saves space in processor memory ?Easy to change OS to a different one. Features/Purposes of OS •Provides security measures (passwords/user IDs) oto protect files from unauthorized access/identify user/identify user rights •Provides an HCI oto allow communication with user Controls the hardware oto allow data to travel from one part of the system to another. •Provides translators oso that software can be converted into form useable by the computer. •Manages interrupts ohandling requests from external units and prioritising needs. •Manages memory oto ensure data is stored in correct part of memory/can be retrieved correctly •Schedules processing ousing scheduling techniques Types of OS Batch Processing Batch processing is one that does not allow for user intervention during execution of work. Processing does not start until all data has been collected together.
Batch processing is used when •There are large amounts of data to be processed. •The data is very similar in nature. •It requires similar processing. •The application does not require human intervention. Applications using batch processing: •Production of bank statements from customer files •Production of gas, water, electricity bills from customer records •Payroll systems, producing pay-slips from employee file Speed mismatch between user, peripheral and processor. •The user is far slower than the processor in making decisions •The peripherals are slower than the processor This means that the processor has to wait How batch processing can overcome problems caused by speed mismatch •Data is prepared off-line •User is not provided direct access to processor/user is offline •Carried out at off-peak times so that processor time not so important Note: In case of system failure, does not cause major disruption; can cause delay Real time processing Real time processing is one that can react quickly enough to affect next input or process to be carried out. Applications using real time processing: •Monitoring temperature of Chemical plant •Controlling robot trolley •Airline booking system
Note: In case of failure, it may has catastrophic results; possible lives lost. Single User Single User is one that is used to control a system which has only one user, and their programs (multi-tasking), at any one time. Multi-tasking Multi-tasking is one that allows several applications to be run simultaneously. Multi-User (Multi-Access) Multi-User is one that services more than one user simultaneously. Distributed system A distributed system is one that allows software and data files to be distributed around a system. It uses many storage locations on different machines to store software and files.
Adv: Speed access to files since there is no bottleneck (situation that hinders progress due to blockage). Dis: Security and maintenance of the system are more complicated. User Interface The means of communication between the user and the machine is known as the User Interface. Types of UI Form based •Screen mirrors a data capture form/is a data capture form •Spaces for answers to questions. Data entered in order/in format •Drop down lists providing limited choices for some questions •Important questions must have input before carrying on •Validation is made simpler because of limited choices
Application: Used in telephone sales or where user knows what kind of input to expect. Operator taking information over phone Adv: •Does not allow information to be missed out •Simple to use •Forms prompt the user to answer standard questions in correct order •Validation checks are easier to set up •Clear indication of where and what information is to be entered Menu based •Series of options from which user chooses •Possibly leading to submenu •Limits user •Used typically with touch screen Application: Information bureaus or information systems for tourists at the airport. Graphical •Icons used to stand for options When selected, command code is run •Normally accessed by use of mouse or other pointing device •WIMP •Used by non-experienced user/child in school •Restricts access to certain parts of the system Natural language Sometimes referred to as a conversational interface, the computer will ask questions which elicit a response which gives the user the impression that they are talking to the computer. The trick is that the system restricts itself to questions to which the only sensible answers are the ones that it knows. If the user leaves the expected responses, a message is produced which makes clear that a further attempt is required.
Command line •Prompt on screen •User types commands •Must ensure syntax correct •Must learn commands •Allows access to whole system Application: Technician looking after a network Characteristics of a command-based interface are •The user needs to know what commands are available •The user needs to understand the commands •The user needs to understand the way that material is stored in the computer system Adv of Command line interface ?Allows access to whole system ?Access to any particular part of the system is gained more quickly than any other interface. ?Does not use large amount of memory
Dis of Command line interface: ?User needs to be computer literate to be able to understand the commands that are available. ?User needs to understand the way the system is designed so that it can be navigated efficiently. Utility Software They are programs which are part of the OS designed to carry out common tasks. Types of Utility Software •Disk Formatter oTo divide up the surface of a disk so that the computer can use it. •File Handling oTo allow the computer to manage files e. g. storing & finding them. •Hardware driver oTo give instructions necessary for using a piece of hardware. File compressor oTo reduce the size of files so that transmission can be done faster. •Virus checker oTo find and delete viruses on a system before they can damage files. Chapter 1. 3 Programming Tools and Techniques. Top-down approach It is an approach where an original problem (top) is split up into smaller and smaller parts (sub problem) until they become manageable. Adv: •Fewer bugs because each set of programming commands is shorter. •Algorithm is more easily understood. •Many programmers can be employed, one on each of the modules. •Programmers can use their expertise on particular techniques. Testing can be more thorough on each of the modules. •Allows library programs to be inserted. •All of which saves time and means the finished program can be completed more quickly. Dis: •Can lead to problems with variable names. •Means documentation of modules must be thorough. •Can lead to problems when modules are linked, hence links must be thoroughly tested. Scenario A program has been written using a top-down technique. The individual modules in the program have been fully tested and there are no errors in any of them. Explain why the program may fail to run or may produce incorrect results, despite the testing that has been done.
Answer •Individual modules may be linked incorrectly •Clash of variables across modules •Parameter values of wrong type Program Translation High-levelMachine LanguageTranslator code Procedure •A small program/subprogram •To do a defined task •Is called by a name/identifier Source code The original code as programmed in HLL / assembly language. Object code The machine-readable version of the code or intermediate code/machine code version for the machine on which it is to be run. (Executable version of source code) Translator Translator Translator program turns source into object Spots some of the errors in the source code -Reports errors to user Types of Programming Errors There are 3 types of errors which can be made when program code is being produced. 1. Syntax errors •Error in grammar/rules of language •Incorrect use of language •E. g. Misspelled reserved word. (PLINT instead of PRINT) 2. Logic errors •Error in construction of program/order of statements •A mistake in the structure of the solution •Wrong interpretation of algorithm •E. g. jump instruction to wrong point in program 3. Arithmetic errors •Inappropriate arithmetic is used •E. g. Division by zero is attempted
Testing Methods Test Plan A schedule which contains a test for every type of input that could be made. There are a number of ways of testing a program. 1. Black-box testing •Test that the outcome is as expected for a given input •Testing not knowing the code •Test data are typical values, borderline values and unacceptable values. Scenario A program is written which uses marks out of 100 as input, the test data would include •Typical values, e. g. 27, 73,40 •Borderline values, e. g. 0 and 100 •Unacceptable data, e. g. –32, 112 2. White-box testing •Testing all possible routes through the program logic Testing knowing the code/Test the algorithm. •Note: not dry run on its own 3. Alpha testing •Testing carried out by programmer/in-house 4. Beta testing •Testing carried out by end users/potential users/unconnected with writing Selection of test data Scenario An algorithm has been produced which inputs two numerical values and outputs the larger one. Select three pairs of numbers that could be used as test data. Explain what each pair of numbers is intended to test. Answer •2, 3 to test that the system works using standard data. •2, -2 to test the effect of different signs. •-2, -3 to test the effect of two negatives 2, 2 to test the effect of both inputs being the same. •? , ? to test the degree of accuracy of the program. •1. 2, 2. 6 to test if program can use decimal inputs. (Note: The reasons for testing must be different) Debugging Bugs Errors in computer solutions are called bugs. Methods or tools available for identifying program errors •Translator diagnosis When translator finds oWrong (reserved) words oWrong syntax in instruction construction oWrong use of variables messages are produced for user. (Gives position and explanation of error) •Desk Checking / White-box testing oFollowing the logic of the code (manually) •Debugging tools Range of tools to study characteristics when the code fails •Bottom-up programming oCode is in small modules making it easy to check •Black-box testing oChoosing test data to study the results produced/set results against expectations •Trace tables / step modules oTrace the values of variables through a program run. (Follow value of variable to give clue as to where error occurs) •Variable dump oPrints values of all variables at given point in program •Break points oTo stop execution at significant points •Cross-references oIdentifies errors caused by duplicate variable names Annotation •Explanation of the techniques used in the algorithm Needed by people employed to maintain or amend the program in the future… •By explaining the logic and the reasoning behind the code. Methods of making code of a piece of software more understandable to other programmers (Methods of used to annotate code) •Comments/annotations (in code) o(code) which machine ignores/explains clearly the purpose of code •Indentation of program lines oTo make it obvious which lines of code go together. •Meaningful names oWhich explain meaning of variable/function/procedure oSo that there is less chance of error •Modularisation osmall blocks of code easier to understand so that the solution is easier to follow Reading pseudocode Two ways of breaking out a sequence 1. Selection Selection is the process of making a choice. The simplest example is the command If…Then…Else… (Case of…) 2. Repetition There are a number of ways of repeating the same instructions more than once. A repeating construct is often called a loop. a. REPEAT … UNTIL b. WHILE … ENDWHILE c. FOR … NEXT Scenario1 Explain how procedures and the programming construct “selection” can be used to code a simple menu system for a user. Answer •User selection from menu is compared with possibilities •Each possibility gives the name of a procedure Which is run if possibility chosen •Procedure is code which carries out what user desires. Scenario 2 X = 1 WHILE X < 9 DO X = X + 1 Y = X * X PRINT Y ENDWHILE The intention of this module is to print out the square numbers from 1 to 100. Write down the output that the module will produce. Answer — 4,9,16,25,36,49,64,81 Scenario 3 REPEAT INPUT NUMBER IF NUMBER 0 THEN TOTAL = TOTAL + NUMBER COUNT = COUNT + 1 ELSE ZERO = ZERO + 1 UNTIL COUNT = 5 ANSWER = TOTAL/COUNT PRINT ANSWER, ZERO a)If the numbers 3,5,4,0,4,0,9,1 are used as data for this procedure, state what the printout will be when the procedure is completed. )Identify the condition statement, and explain what it does. Answer a) 5 and 2 b)-IF…THEN…ELSE… -Decides whether the number input is zero or not. -A count is kept of all the zeros input, and the other numbers are used in the calculation. Chapter 1. 4 Data: Its Representation, Structure and Management Number Systems and Character Sets ASCII Characters (American Standard Code for Information Interchange) •A member of the character set that a computer recognizes •Character on a standard keyboard •Standard to many machines (Hence allow communications between systems) •Stored in binary as 8 bits per character. Data Types Numeric data.
Numbers can be restricted to whole numbers; these are called INTEGERS and are stored by the computer as binary numbers using a whole number of bytes. It is usual to use either 2 bytes (called short integers) or 4 bytes (called long integers), the difference being simply that long integers can store larger numbers. Boolean data Data which can only have two states like this is known as BOOLEAN data. E. g. T/F or M/F. The storage will be 1 byte. Characters/Text/String/Alphanumeric A character can be anything, which is represented in the character set of the computer by a character code in a single byte. (1 character = 1 byte)
Date/Time Either 6 or 8 bytes used for storage. Files, Records, Items, Fields Field – Storage space for one data item. E. g. Student Number Record – All the data about all fields File – All the data about a set of records Key field – A unique key which identifies a record. Sizing a File Scenario A library stores details of the books that are available. a)Apart from title and author, state 3 other fields that it would be sensible for the library to store in this file, giving a reason why each of your chosen fields would be necessary. Answer ISBN – to identify book Shelf number – to allow for ease of search for book
Category (Fiction or reference or childrens’) – to decide whereabouts in library it should go. b)State which field would be used as the key field of the record and explain why a key field is necessary. Answer Book number (ISBN), because it is unique to that record and hence can be used as an identifier. c) State the size of each of the fields in your record. Answer Title40 bytes Author20 bytes ISBN10 bytes Shelf 3 bytes Category 1 byte d) If the library stores approximately 20,000 books, estimate the size the book file. Answer •Total size of one record = 74 bytes •Size of file = 74 * 20000 = 1,480,000 bytes + Overheads of 10% = 1,480,000 + 148,000 = 1,628,000 bytes. •(Divide by 1024 until sensible units) = 1. 55 Mbytes. Expressing numbers in binary Conversion of denary numbers into binary Express the number 113 (denary) in binary using an appropriate number of bits. 1286432168421 0 1 1 10001 =01110001. Conversion of binary to denary Change the binary number 10110010 into a decimal number. 1286432168421 1 0 1 10 010 128 +32 +16 +2=178 Arrays Array is a set of storage locations (Static data structure) referenced by a single identifier. Individual elements of the array are referenced by combining one or more subscript with the identifier.
E. g. RedCOLOUR Subscript BlueCOLOUR  Yellow COLOUR  Identifier Parameters that need to be given about an array before it can be used •The size of the array (how many data items it will hold)… oSo that this amount of space can be reserved in memory. •The type of data to be stored in the array… oSo that it can be set up in the correct area of memory. •The name of the array… oSo that it can be identified when it needs to be used. •The number of dimensions of the array… oSo that the computer knows what form the data is going to be stored in. Array Initialisation in memory •Size of array calculated Location of array decided •According to data type/size •Locations reserved •Array named in look up table •Size of array stored in table •Lower bound of array stored in table •Upper bound of array stored in table •Data type stored in table •Address of first element stored in table E. g. Dim Colour  as text The above code intialises an array of size 15 and type character. Searching in an array •Index set to 0 •Array [index] searched •If = Item, then found •Else increment index and repeat •Until found or error report Note There may well be two-dimensional arrays where more than one piece of information can be stored.
E. g. Dim Student  as text Dis of Arrays •Array size has to be predetermined. Hence there will be no room for more data to be stored than specified size. •Waste of valuable memory. Linked Lists A Linked List is a dynamic data structure used to hold a sequence. Each item in the list is called a node and contains a data field and a next address field called a link or pointer field. Scenario By drawing a diagram show how the following are arranged in a list in alphabetical order. Pansy, Dahlia, Clematis, Sweet pea Null Value Searching through a Linked List •Follow pointers At each node, compare data with X until •Either found, report found •Or null value, report error Queues A queue is a list where any new item is added to one end (Rear) and items are removed from the other (Front). The mode of operation is FIFO, which is the concept of the item being dealt with in the order they arrive. Front (Head)Rear (Tail) Stacks A stack is a data structure where items are added or deleted from the same end. The mode of operation is LIFO, which is the concept where the most recent item to arrive is dealt with first. CD B BB A AA Empty StackPop Push Access Methods to Data Serial access Records are stored in no particular order (chronological – in order it arrives) •Data is unstructured; hence finding it again is difficult. •E. g. of a serial file – a transaction log Sequential access •Records are stored in a logical order. E. g. alphabetic / numeric / key order •Easier to find a particular record Indexed sequential access It involves looking up the first piece of information in an index which narrows the search to a smaller area. The data is then searched sequentially. E. g. Phone book Random Access (direct access) •It goes directly to the searched item without passing through every record. Uses a hashing algorithm to store data Implementation of File Access Methods Serial access. •Have no order, no aids to searching. •New data is simply placed on the end of the existing file •Searches for data require a search of the whole file Sequential access. •Held in order •Adding a new record is more complex, because it has to be placed in the correct position in the file. •To do this, all the records that come after it have to be moved in order to make space for the new one. E. g. A section of a school pupil file might look like this … Hameed, Ali, 21…….. Khurram, Saeed, 317……… Khwaja, Shaffi, 169………..
Naghman, Yasmin, 216……….. … Hinna needs to be inserted, hence space must be found between Hameed and Khurram. To do this all the other records have to be moved down one place, starting with Naghman, then Khwaja, and then Khurram. … Hameed, Ali, 21………… Khurram, Saeed, 317………. Khwaja, Shaffi, 169 ……. Naghman, Yasmin, 216…….. This leaves a space into which Hinna’s record can be inserted and the order of the records in the file can be maintained. Note – Serial and Sequential access methods are only used on files that have a small number of records or files that change very rarely. Indexed Sequential Scenario
The account numbers for a bank’s customers are used as the key to access the customer accounts. The accounts are held sequentially and there are approximately 1 million accounts. There are 7 digits in an account number. Indexes could be set up which identify the first two digits in an account number. Dependent on the result of this first index search, there is a new index for the next two digits, which then points to all the account numbers, held in order, that have those first four digits. 00 01 0002 01… 0299 … …000102000 DATA 99010102001 020102002 One…0102003 First level index99………. (first two digits0102999 in account number) 0010,000 Second level indexesFinal index blocks (third and fourth digitseach containing up to in account number)1000 account numbers Note: Indexed Sequential is used when there is the need for sequential access as well as Direct access. Random Access (Direct Access) To access a random file, the data itself is used to give the address of where it is stored. This is done by carrying out some arithmetic (known as pseudo arithmetic because it doesn’t make much sense) on the data that is being searched for. Hashing algorithm is a pseudo arithmetic carried out on the data in order to determine the location of the data in memory.
A clash occurs when the answer to the pseudo arithmetic is the same despite the data used in the calculation is different. Scenario The rules that we shall use are that the alphabetic position of the first and last letters in a name should be multiplied together; this will give the address of a student’s data. So Jawad = 10 * 04 = 40. Therefore Jawad’s data is being held at address 40 in memory. The problem with this example can be seen if we try to find Jaheed’s data. Jaheed = 10 * 04 = 40. The data for Jaheed cannot be here because Jawad’s data is here. This is called a CLASH. Solution to clashes
When a clash occurs, the simple solution is to work down sequentially until there is a free space. So the computer would inspect address 41, and if that was being used, 42, and so on until a blank space. How records can be accessed directly in a random access file using hashing algorithm •Key is read •Hashing algorithm is applied to it •To give (relative) address of data •Data is looked for at that address •Recognition of problem over clashes Methods of dealing with clashes 1)-Subsequent locations are read -Until empty location found -Record inserted at empty location 2)-Existing record is used as head of list Pointers pointing to subsequent records with same hash values -New value inserted in free location 3)-Area of memory (bucket) set aside for overflow -Any clashing record inserted into bucket – In next location in serial form Backing up and Archiving Data Backing up data. •Is making a copy of the entire file •In case of corruption of working (main) file •Short term Backup routine to follow •Do backup at sensible interval •Onto sensible medium (floppy, CD-RW, Zip drive, Tape) •Sensible reason (file small, medium easily accessible, medium portable) •More than one copy made •One copy kept away from main computer system Keep a transaction copy between backups Archiving •Store (makes a copy of) little used data •In case it is needed in future •So that it can be removed from the main file •To allow space for other data Chapter 1. 5 Hardware Control Unit •Coordinate the work of the rest of the processor •Manage the execution of instructions •Choreograph the instructions by using a clock •Decode the instructions Memory Unit •Store the OS •Store Application Software in use •Store data files in use Arithmetic Logical Unit •Carry out processing/calculations •Carry out I/O from & to processor (acts like a gateway) •Make logical decisions
Types of Primary Memory ROM •Content cannot be changed •Non-volatile •Small in size •Stores the bootstrap/start up program (It must be available when computer is switched on) RAM •Content can be changed •Volatile – loses content as power is switched off •Larger than ROM •Stores data/OS/software currently in use (Since processor can only use what is stored in RAM) Comparison of Primary memory and Secondary memory Storage TypeImplementation featuresContentsExampleTypical Size Primary MemoryHigh-speed devices located outside CPU (on motherboard). Costly and larger in capacityEntire program contents being executed; holds small volume of data.
RAM & ROM256MB 512MB Secondary MemoryLow speed; Non-volatile; Low cost; Huge in capacityPrograms not currently being executed; Holds large volume of dataHard Disk, CD, Floppy Disk, DVD60GB, 80GB Buffer A buffer is a small amount of fast memory outside the processor that allows the processor to get on with other work instead of being held up by the secondary device. Double Buffering While one buffer is being emptied, the other is being filled. (Faster & more efficient) Interrupt An interrupt is a signal sent to the processor requesting attention while interrupting present job.
Transferring of data from memory to secondary memory •Processor fills buffer with data •Processor continues with other job •Buffer is emptied to storage device (without holding up processor) •When buffer is emptied •Signal is sent to processor (interrupt) (from storage device) •Requesting further data to be sent to buffer •Dependent on priority •Processor interrupts present job to refill buffer •Double buffering might also be used making the transfer faster Input Devices Keyboard Types: •QWERTY •Touch-sensitive/concept keyboard – for outside use •Braille keyboard – for blind people MIDI (musical instrument digital interface) Mouse Tracker ball – used in laptop Barcode readers A barcode reader is a laser scanner that reads the reflected laser light from a series of dark and light coloured lines of varying thickness. MICR This is a device that reads characters (printed using magnetic ink) that are printed on an original document at the time of it being created. E. g. used to read cheques OCR This is a device that reads characters and can distinguish between the different characters in a given character set (stored in its memory) OMR This device can recognise the presence of a mark on a sheet of paper.
The position of the mark conveys information to the machine. Scanners A scanner is a device that converts a document into a series of pixels (picture elements – these are small squares that, when put together, form a picture). Graphics Tablet A graphics tablet is a flat surface on which a piece of paper is placed. The user can then draw on the paper and the tablet will sense where the pencil is pointing and transfer the line to the screen. Microphones Used to input sound to a computer system Output Devices Screens (Note: A touch screen acts as both an input device as well as an output device)
Printers A printer is a device which provides the user with an output from the system which is permanent (in hard copy). Types •Dot matrix •Ink Jet •Laser Speakers Used to output sound from a computer system Chapter 1. 6 Data Transmission and Networking Networks A network is connection of more than one computer allowing communication between the devices. Adv of Network •Files can be accessed from any machine •Data can be shared •Software can be shared •Peripherals can be shared •Allows communication across the network Dis of Network •Security of files less certain •Spread of viruses Failure of part of network may affect the rest •Complexity of hardware •Need for technical administrator Hardware needed to set up a network •Network card •Cable •Server/hub •Modem Software needed to set up a network •Network Operating System •Communications software •Network versions of application packages Differences between the different types of network •LAN is geographically small area while WAN spans over large area •LAN must be hard wired while WAN requires other medium for communication •LAN much easier to keep secure while WAN is prone to hacking Network Topologies Bus Network All machines feed off central data bus •Use of terminators •Shared hardware oAdv – Wiring is simple (simple to set up) Ring Network •All machines linked by a cable in a completed loop. oAdv – Can continue with a break in network cable Star Network •All machines separately connected to central hub/server oAdv – Breakdown of one machine/wire does not affect whole network oRate of transmission is greater oData more secure oNo risk of collision oNew stations may be added/removed without affecting others. Note: •Text files are downloaded quickly since texts based are relatively small files. Each character takes only one byte) •Graphics takes time to download since graphics tend to be large files (Each character takes up to 3 bytes) Types of data transmission •Serial – The transfer of data one bit at a time down a single wire. •Parallel – The transfer of data down a number of wires – Bits being sent simultaneously, normally one byte at a time. Modes of data transmission •Simplex – The transfer of data in only one direction. ( e. g. Television sets receiving information from antennas) •Half duplex – The transfer of data in both directions but only one direction at a time. (E. g. ending data to be printed or CB radios used by military) •Duplex – The transfer of data in both directions and can be at the same time. (e. g. Telephone conversation) Note: In transfer of data from primary memory to secondary memory, parallel type and half-duplex mode of transmission is needed. (Half duplex because data need to go to buffer and interrupt the processor but at different times. Parallel for faster transmission. ) Baud rate •Rate at which processors send/receive data. Bit rate is necessary •To enable standardization •To enable one layer to be altered without altering the entire protocol. To enable manufacturers to design hardware & software for a particular layer. Error checking during data transmission 1. Echoing back The data is sent twice. If one expects echoing and the other does not, there will be a freeze while one waits. 2. Parity Check •Involves every byte having its bits adding to either an odd or even total (number of 1s) •Type of parity must be agreed between sender and recipient •Use of parity bit to make each byte of correct type •If bit is changed during transmission then the sum of bits will not match parity type. 3. Check sum Is the result when adding all the bytes of data (ignoring the carry out of the byte) •The result is sent along with the data and •Checked against the total calculated as the data arrives. •If the two totals differ then a transmission error has occurred. Switching Packet Switching •Message is split into equal sized packets •Each packet labeled (with packet Number & destination) •Each packet travels independently •At each node, label checked and packet redirected Adv of packet switching •Allows optimum use of network •Less chance of message being intercepted. •If a route is congested/blocked, an alternative route is used.
Dis of packet switching •Travels at a speed of slowest packet •Must be re-ordered at destination Circuit Switching •Involves setting up the route before the message is sent Adv of circuit switching •Faster than packet switching •Messages do not need to be re-assembled at destination Dis of circuit switching •Greater chance of message being intercepted. •Blocks one route until message do not reach destination Protocol •A set of rules •To allow communications between devices Protocols necessary for successful transmission of data between 2 devices 1. Type of data transmission •Is the transmission serial/parallel? Duplex/half-duplex/simplex? 2. Baud rate •Both devices must talk, listen at the same number of bits per second •Otherwise bits may be missed/sent twice 3. Error checking •Is parity odd or even? •Is echoing back used? •Acknowledge messages to confirm accepted transmission? Protocols should be used in a layered fashion so that •Individual layers can be altered •Without altering other layers •When software/hardware is changed. Chapter 1. 7 Systems Development Life Cycle Stages in system life cycle •Problem identification •Feasibility study •Information collection •Analysis •Design •Development & Testing Installation •Documentation •Maintenance Note: the system life cycle is an iterative process. Fact Finding Methods 1. Interview key personnel Adv: •Allows questions to alter according to answers given •Comments ca be at length Dis: •Lengthy •Limits the number of views that can be sought •Generalised answers 2. Questionnaires Adv: •Allows a large number of people to give their views in a short period of time •Maintains anonymity •All employees perceive that they have a say Dis: •Restricted responses possible •Some may have difficulty completing them •Few replies 3. Meetings (Group discussions) Adv: Many can air their views •Cut the number of repeat views obtained in interview •Allows discussion between people in meeting Dis: •Some people may hog the discussion •Some people’s views may not be heard 4. Collect present documentation Adv: •Shows what form of input & output is expected to take •A clear indication of data used & the collection methods Dis: •Volume collected •Data & forms tend to be in isolation 5. Observe present system in action Adv: •Can see unjaundiced view of what actually happens Dis: •People tend to act not the way they normally do •Data & form tend to be in isolation Feasibility study involves Is the solution technically possible? oIf the equipment does not exist to carry out the task then it does not matter how good it would be, it cannot happen; similar for software •Is the solution economic to produce? oIf the cost of automation is so great that the firm could not regain the cost then it is not feasible •Is the solution economic to run? oIf the running costs are higher than at present then there is little point in changing •Effect on workforce oIf the human cost (mass redundancy) is so great there are serious social implications that are not acceptable •Is the workforce skilled enough? If there are no skilled people to operate the machines it cannot work •Will the customer notice a difference? oPrice/quality/reliability, if no then why bother? •Will profits increase? oIs the introduction going to be beneficial to the company? •Will the solution create legal problems? oDPA covered? •How long will it take? oIf it takes too long the factory may have to shut Diagrams needed in Analysis Stage •DFDs/Flowchats oShow the way data enters & leaves the system oShow how the data relates to each other during processing •Jackson Structure Diagrams oShows how the solution can be split into modules Using the top down approach oShow the links between the modules Decisions to be made about data in new system (by analyst) •I/O of data •Types of data •In which form data is stored! •Amount/type of data storage required •Data structures to be used •Access methods Restrictions that analyst must consider •Cost oLimit to the budget that can be used •Site oIs site dirty, small/noisy? oEnough to effect decisions? •Work force oAre they trained? •Availability oDo the hardware/software exist? oCan they be produced easily? Why customer & Analyst must work together? •Customers are expert in the problem Analyst is expert with computers •The two need to pool out resources to come with a clear definition of the problem •Agree the outcomes so that when the system is implemented there are a set of criteria (Requirement Specifications) to judge it by Methods of implementation 1. Parallel running •Both systems run simultaneously •Until sure that new system works •Very expensive & time-consuming Adv: •Old system is available if new system fails to function properly •Staff training can be carried out 2. Phased implementation (Pilot) •Some sections are introduced while others run old system •Not changed over until running properly
Adv: •Only one file is affected at a time •Key parts of new system run alongside old system until fully tested 3. Big Bang •Old system is turned off & new system is brought online •If it does not work, then admin must shut down •Training/files must all be in place Adv: •Only one system is running •No confusion for staffs Types of maintenance 1. Corrective maintenance •To correct faults that are found after commissioning •To debug errors in the code 2. Adoptive maintenance •To institute necessary changes •Because of changes in the way the organization works •E. g. tax changes; law changes 3. Perfective maintenance To improve performance of the system •Despite the fact that it does all it needs to Requirement Specifications •List of requirements of the customer •Consists of the criteria that will be used for evaluation of the finishes system •Need to be signed by analyst and customer so that there is no confusion when work is finished. Design Specifications •Taking the RS and working out the stages necessary to produce the required end product. Program Specifications •Include detailed algorithms (DFDs or Pseudo code) User documentation •Explanation of software aimed at person who uses the system Includes Installation instructions •Input methods •Example output •Examples of valid input •Error message explanations Technical Documentation •Used by computer literate to maintain the system Includes •Program coding •Variables used •Data structure details •Detailed algorithm Chapter 1. 8 Choosing Applications Software Off-the-shelf Generic software that needs tailoring for the application Adv: •Cheaper than custom-written software, since development costs are shared •Available immediately, custom-written takes time to write •Fewer bugs since it have been more thoroughly tested Compatible with other applications packages •More likely that there are well established training courses in the software Dis: •Not suitable for one-off application which require specific routines. (E. g. Process control applications) Custom-written Specially written to solve a specific problem for an application Adv: •Software will be tailored to the exact needs of the user •Perhaps no off-the-shelf software fulfills the system requirements •There is potential to work with the developer to expand the marketplace for the new software •Not paying for areas/routines that are not going to be used
Off-the-shelf software is not appropriate for every application •Generic packages are designed to satisfy needs of a number of applications •Some applications are specialized one-off applications •Having different needs with no appropriate off-the-shelf software available. CAD Use of a computer system to design a commodity Features of CAD when designing new product •Automatically calculates costs •Works out volumes of material needed •Ensures design remains between previously set parameters •Can simulate (make predictions about) finished product •Can make decisions about the manufacture •Can be tested in different situations Allows for changes to be easily made •Can then be passed to manufacture seamlessly (via CAM) CAM •Use of a computer to help with the manufacturing process •Controls robot machinery to produce item Note: CAD and CAM are normally combined to manufacture a product. (Designed using CAD & manufactured using CAM) Generic Applications software Word processing •Write letters •Mail merging •Preparing text docs Spreadsheets •Store different data types •Perform calculations •Applications: Profit & Loss accounts, budgeting, payrolls Desktop publishing (DTP) •Used for production of leaflets •Posters •Magazines & books
Presentation software •Allows animation •Full use of text & graphics •Soundtrack can be added Drawing packages •Produces graphics output •E. g. Paintbrush & Draw Chapter 1. 9 Handling of data in Information Systems Verification Check that data input is what was meant to have been input Validation Check on the data entered to ensure that it is sensible & follows given rules Scenario In a 6 digits code, first 3 digits are between 000-100 for organizations & between 300-600 for individuals. Explain how verification & validation can be used to ensure correctness. Answer •Verification oEnter data twice Computer compares the 2 entries oRejects code if the 2 entries do not match ?OR visual verification on screen •Validation oLength Check – all codes must contain 6 digits oCharacter Check – all characters must be digits oRange Check – first 3 digits must be in range 000-100 or 300-600 oExistence Check – code must match a key field in the file oCheck digit – one of the 6 digits is used to check the other digits for validity Chapter 1. 10 Designing the User Interface HCI •Is the means by which the human & the computer communicate. Factors (internal) to be considered when designing an interface: •Who will be using the interface What experience/knowledge do they have? •What is the system requirement oTime sensitive or not •What is the information that needs to be shown? •How much information is needed? •What is the best way to present the information •Colours that should/should not be used •What other forms of output are sensible •What technology is available •Layout/language to be used •Under what circumstances (environment) will the system operate Importance of colour in HCI •Contrasting colours for background makes text difficult to read •Colour (red) to highlight items more important than others •Needs to be used sparingly Use of corporate colour scheme •Care with red/green because of colour blind people Importance of layout in HCI •Layout should follow normal reading pattern for eye •Limit the volume of information, otherwise screen becomes daunting •Layout should be similar on all pieces of software so that user gets used to the layout Importance of content in HCI •Content should be similar across pieces of software to enable user to be able to be trained easily •Content must be relevant else user will begin to ignore •Content type must be correct, e. g. if highlighted in red, then it must be really urgent •Take account of different users Help should be available Features (External) to be considered when designing output screen •Colours to be used (Do not used red & green) •Contrast (ensure background & text are suitably contrasting) •Size of fonts & diagrams •Layout – top to bottom / left to right •Volume – not too much information on single page •Navigation – to move between screens Chapter 1. 11 Characteristics of Information Systems Passive IS •One that gives/supplies information but cannot have that information changed Interactive IS •One where data held can be altered by the user Management Information Systems (MIS) 1.
Operating Management (day to day basis) •Keeps track of invoices •Ensuring that business has enough stock •Arranging for workers to be paid •Condition-driven information •Decisions/reports/responses triggered by meeting some parameter •E. g. Number of component that falls below minimum level 2. Strategic Management •Makes decision about what item of stock to keep •What new items to stock/what to discontinue •If we do ‘this’ then ‘that’ will happen •Strategic Information •Provides information upon which decisions may be based •E. g. whether or not to invest in a new product Knowledge based system (Expert System) Expert knowledge covering different areas •Is brought together in a computer system •Comprises oRule base oKnowledge base oInference engine (carries out the search) oHCI Chapter 1. 12 Implications of Computer Use Effects of computerized system on staffs Positive •More jobs available in some areas •Training lead to extra qualifications •Extra responsibilities, leading to high pay •Less danger to human being on production line Negative •Loss of jobs •Only technical jobs will be available •Training will be required •Some, probably older, workers unable to retrain •Problems with computer use & health Deskilling because of reliance on automated system Importance of Legislation •Data may be untrue •Some information may be confidential in nature •Data may be misused if not protected •Customers may lose financially •Customers may not be willing to supply data •Business may lose potential customers Measures included in Legislation •The right to see data held – to ensure that it is correct •Relevance of information so that it is not possible to store just anything •Timeliness of information to ensure that out of date information is destroyed •Limit to personnel able to view to ensure audience is limited (E. . password protection) •Cannot be passed on to others to maintain confidentiality •Collected legally – should only be collected and processed for stated reasons Measures to ensure information remain confidential •Password (Hierarchy) •Allow only some staff to access files •Only some machines to contain important files •Physical location of machines •Physical locks on machines •Encrypted data in files •Firewall if connected to the internet Any personal data that is stored in a computer system must •Be accurate and up to date. Be relevant to the task for which it is intended to be used and used for that original purpose. •Not be kept longer than is necessary. •Be kept securely. Access to the data must be strictly controlled. •Be available, on request, to the subject of the stored data. Health & Safety issues •RSI oWrist supports oTake regular breaks •Dry eye / eye strain oUse anti-glare screens oLook away regularly •Back problems oEnsure a properly designed chair is used •Headaches oChange the refresh rates oEnsure ventilation