A Level. Computing (9691/1)       www.revision-notes.co.cc     www.revision-notes.co.cc
CPT1: Computing Fundamentals1.1 COMPONENTS OF A COMPUTER SYSTEM                   Candidates should be able to:           ...
CPT1: Computing FundamentalsStorage deviceA storage device is hardware that allows data to be saved, long-term, after it h...
CPT1: Computing FundamentalsCategories of Software                  Candidates should be able to:                  3.   De...
CPT1: Computing FundamentalsProgramming toolsProgramming tools include language translators such as compilers and assemble...
CPT1: Computing Fundamentals1.2 THE SYSTEMS DEVELOPMENT LIFE CYCLE                   Candidates should be able to:        ...
CPT1: Computing FundamentalsAnalysisThe analysis is a detailed, fact-finding, investigation of the existing system in orde...
CPT1: Computing FundamentalsDefining the problem                   Candidates should be able to:                   5.   Ex...
CPT1: Computing FundamentalsFeasibility Study                     Candidates should be able to:                     6.   D...
CPT1: Computing FundamentalsFact finding during analysis                   Candidates should be able to:                  ...
CPT1: Computing FundamentalsObserving the staff at work can often prove more advantageous than just interviewing them,beca...
CPT1: Computing FundamentalsRequirements analysis                   Candidates should be able to:                   8.   D...
CPT1: Computing FundamentalsData flow diagramsA data flow diagram is a drawing that depicts the transformation of data wit...
CPT1: Computing FundamentalsSystem flowchartsA system flowchart shows an outline of how a system operates.The following sh...
CPT1: Computing FundamentalsDesign                  Candidates should be able to:                  9.   Describe a design ...
CPT1: Computing FundamentalsExample of an interface for data entry:Processing (algorithm) designThese algorithms outline t...
CPT1: Computing FundamentalsData structures and validationData can be of many types and can have many properties. Typicall...
CPT1: Computing FundamentalsOutput designThis needs to be detailed in the same way as the input designs. Example of a mail...
CPT1: Computing FundamentalsTesting                   Candidates should be able to:                   12. Explain the impo...
CPT1: Computing FundamentalsTesting by the end-usersTesting by the end-users is either beta-testing or acceptance testing....
CPT1: Computing FundamentalsConversionConversion is the process of changing from an existing system to a new system.Note t...
CPT1: Computing FundamentalsMethods of conversion/changeoverThe change from the use of an existing system to the use of a ...
CPT1: Computing FundamentalsEvaluation (review)                   Candidates should be able to:                   10. Expl...
CPT1: Computing FundamentalsSystem documentation                  Candidates should be able to:                  11. Expla...
CPT1: Computing FundamentalsMaintenance                  Candidates should be able to:                  13. Explain the pu...
CPT1: Computing FundamentalsTypes of maintenanceThere are three types of maintenance:   • corrective maintenance;   • adap...
CPT1: Computing FundamentalsPrototyping                   Candidates should be able to:                   14. Describe pro...
CPT1: Computing Fundamentals1.4 SYSTEMS SOFTWAREOperating system                   Candidates should be able to:          ...
CPT1: Computing FundamentalsMemory managementThe operating system has to allocate memory to each running application and t...
CPT1: Computing FundamentalsInterrupt handlingThe OS detects and responds to many different kinds of interrupt such as:   ...
CPT1: Computing FundamentalsTypes of operating system                   Candidates should be able to:                   21...
CPT1: Computing FundamentalsInteractive operating systemAn interactive operating system is one that allows the user and th...
CPT1: Computing FundamentalsReal-time operating systems are characterised by their ability to:   • deal with events which ...
CPT1: Computing FundamentalsDistributed systemA distributed system is one in which file storage (or processing) is shared ...
CPT1: Computing FundamentalsHuman-computer interface (user interface)                  Candidates should be able to:      ...
CPT1: Computing FundamentalsFormsThis kind of interface presents the user with an on-screen form into which they enter or ...
CPT1: Computing FundamentalsMenu interfaceA menu interface is one that provides a list of choices from which the user can ...
CPT1: Computing FundamentalsGraphical User Interface (GUI)A graphical user interface (GUI) is one that provides a means of...
CPT1: Computing FundamentalsWindowsA window is a bounded area of the screen within which a specific task is executing – e....
CPT1: Computing FundamentalsNatural LanguageA natural language interface is one which allows a user to communicate with th...
CPT1: Computing FundamentalsCommand Line interfaceA command-line interface is one in which the operating system provides a...
CPT1: Computing FundamentalsBenefits and drawbacks of a command line interfaceBenefits                                    ...
CPT1: Computing Fundamentals1.5 DATA REPRESENTATIONNumber representation                    Candidates should be able to: ...
CPT1: Computing FundamentalsCounting in binaryIn binary, the first 15 numbers are as follows:                    128      ...
CPT1: Computing FundamentalsConverting from denary to binaryA denary number, such as 107, can be converted into binary as ...
CPT1: Computing FundamentalsBinary Coded Decimal (BCD)Binary Coded Decimal is one of the early memory encodings. Rather th...
CPT1: Computing FundamentalsConverting from denary to BCDEach digit is converted to its 4-bit BCD equivalent. Thus, the nu...
CPT1: Computing FundamentalsConverting between octal and binaryThe octal number 652 (426 in denary) is represented in bina...
CPT1: Computing FundamentalsHexadecimalThe hexadecimal number system uses 16 digits to represent numbers. The denary digit...
CPT1: Computing FundamentalsConverting from hexadecimal to binaryThis uses the same method as octal to binary, except each...
CPT1: Computing FundamentalsSummaryExpressing the denary number 195 as eight-bit binary, BCD, octal and hexadecimal:Binary...
CPT1: Computing FundamentalsNegative binary numbers                    Candidates should be able to:                    27...
CPT1: Computing FundamentalsConverting a negative denary integer into two’s complementDue to the way that binary numbers w...
CPT1: Computing FundamentalsConverting a two’s complement number into denaryThis is the same as converting any binary numb...
CPT1: Computing FundamentalsBinary arithmetic                     Candidates should be able to:                     28. Pe...
CPT1: Computing FundamentalsSubtractionTo perform subtraction, the number to be subtracted is converted into its two’s com...
CPT1: Computing FundamentalsText (character) representation                  Candidates should be able to:                ...
CPT1: Computing FundamentalsHow character encoding worksThe diagram below shows how the message “Hello World” is stored in...
CPT1: Computing FundamentalsNotice how the EBCDIC codes are completely different to ASCII – if a message was sent that had...
CPT1: Computing FundamentalsADDITIONAL NOTES:94                 www.revision-notes.co.cc
CPT1: Computing Fundamentals1.6 DATA CAPTUREStandard input devices                   Candidates should be able to:        ...
CPT1: Computing Fundamentalsdisplay the Start Menu if using Microsoft Windows™. Note that standard text entry using akeybo...
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
A level-computing-9691-paper-1-notes
Upcoming SlideShare
Loading in …5
×

A level-computing-9691-paper-1-notes

9,296 views

Published on

Published in: Technology
0 Comments
20 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
9,296
On SlideShare
0
From Embeds
0
Number of Embeds
14
Actions
Shares
0
Downloads
0
Comments
0
Likes
20
Embeds 0
No embeds

No notes for slide

A level-computing-9691-paper-1-notes

  1. 1. A Level. Computing (9691/1) www.revision-notes.co.cc www.revision-notes.co.cc
  2. 2. CPT1: Computing Fundamentals1.1 COMPONENTS OF A COMPUTER SYSTEM Candidates should be able to: 1. Define the terms hardware, software, input device, storage device and output device. 2. Describe the purpose of input devices, storage devices and output devices.HardwareHardware are the physical components of a computer – eg the input devices, output devices,primary storage (memory) and secondary storage (backing store), Central Processing Unit etc.Note that input and output devices are collectively known as peripherals.SoftwareSoftware are the sets of instructions/programs that are loaded into the memory of the computer inorder to perform a task or to control the operation of the computer.PeripheralA peripheral is a device that is external to the computer’s ‘box’ and connected to it via one of theInput/Output (I/O) ports.Common peripherals include: • mouse; • keyboard; • VDU; • printer; • scanner.Input deviceAn input device is hardware that allows data to be entered into a computer.Common input devices include: • keyboard; • mouse; • scanner; • digital cameraADDITIONAL NOTES: 11 www.revision-notes.co.cc
  3. 3. CPT1: Computing FundamentalsStorage deviceA storage device is hardware that allows data to be saved, long-term, after it has been inputted intothe computer.Common storage devices include: • Hard disk drive; • CD-ROM (or CD-R, CD-RW) • USB Flash ‘pen’Output deviceAn output device is hardware that allows a computer to present data to a user.Common output devices include: • Visual display unit (VDU/monitor); • Printer; • LCD projector.ADDITIONAL NOTES:12 www.revision-notes.co.cc
  4. 4. CPT1: Computing FundamentalsCategories of Software Candidates should be able to: 3. Describe the different roles and functions of systems software and applications packages.Systems softwareThe set of programs needed to control and monitor the operation of the hardware (and applicationssoftware) of a computer.Systems software consists of the following: • Operating System software • Utility programs • Programming tools • Library programsOperating System softwareThe Operating System is the software that controls the operation of the hardware and hides itscomplexities from the user.The operating system is loaded into main memory during start-up.Examples of Operating Systems are DOS, Windows, Unix, Linux, Mac OS. Note that the operatingsystem is not just one large program – it consists of a set of many programs all of which arenecessary to get the computer to work.Utility programsUtility programs are non-essentials small programs that are designed to perform common tasks thatthousands of computer users benefit from at one time or another.Some utility programs help maintain the functioning of the system and others make life easier forthe computer users.Utility programs include: • file backup; • file compression; • disk formatters; • disk defragmentation; • file recovery; • virus detection and cleaning etc..Performance monitoring programs can also be classified as utility software – this is software that isused to monitor disk, memory and processor use.ADDITIONAL NOTES: 13 www.revision-notes.co.cc
  5. 5. CPT1: Computing FundamentalsProgramming toolsProgramming tools include language translators such as compilers and assemblers that arenecessary to ‘build’ programs. They also include interpreters which are necessary to run programswritten in languages such as Visual Basic.Note that the MS DOS versions of DEBUG and QBASIC were clearly systems software althoughsome people argue that Visual Basic is closer to applications software.Library programsLibrary programs are files that contain program code, which is available to all applications to share.They allow different applications to communicate and share resources. MS Windows™ uses manylibrary files known as dynamic link libraries (*.dlls – pronounced dee-el-el’s).Applications packagesApplication packages (software) are the programs that are consciously used by the user to solveproblems or perform work related tasks – writing a letter, keeping accounts, printing invoices, etc.Small-scale applicationsEven though they are complex in their programming and can contain millions of lines of code,some applications are designed to be installed on a single computer for one user to use. Theseapplications include: • word processing; • spreadsheets; • desktop publishing (DTP); • presentation software; • drawing packages.Large-scale applicationsSome of the large scale applications can be used by hundreds of people at the same time and storemillions upon millions of records. Such applications are often central to large organisations such asbanks, supermarkets and other types of large business organisations. These applications include: • stock control; • payroll; • order processing and tracking; • utility billing.ADDITIONAL NOTES:14 www.revision-notes.co.cc
  6. 6. CPT1: Computing Fundamentals1.2 THE SYSTEMS DEVELOPMENT LIFE CYCLE Candidates should be able to: 4. Describe the stages of the systems life cycle.The stages in the systems life-cycleMost IT projects use the System’s Life-cycle approach to developing a new system. This approachconsists of several distinct stages, which follow one after the other.During the development life-cycle, a team is not permitted to go back to a previous stage – thiscould cause the project to over-run in terms of both cost and time.The stages in the System’s Life-Cycle are as follows: • Problem identification • Feasibility Study (Initial investigation) • Analysis (detailed investigation) • Design • Coding (software development) • Testing • Conversion • Review (Evaluation) • MaintenanceNote that each stage of the System’s Life-cycle has a distinct end-point, which can be shown to thecustomer and ‘signed off’. This helps to ensure that the final product is what the customer actuallywanted!Problem identificationThe problem identification is a statement of the existing problems and description of userrequirements as outlined by the customer.Feasibility StudyA feasibility study is an initial investigation of a problem in order to ascertain whether the proposedsystem is viable, before spending too much time or money on its development.ADDITIONAL NOTES: 15 www.revision-notes.co.cc
  7. 7. CPT1: Computing FundamentalsAnalysisThe analysis is a detailed, fact-finding, investigation of the existing system in order to ascertain itsstrengths and weaknesses and to produce the list of requirements for the new system.DesignDesign is the production of diagrams, tables and algorithms, which show how the new system is tolook and work.The design will show: • how the interfaces and reports should look; • the structure of and relationships between the data; • the processing to be used to manipulate/transform the data; • the methods to be used for ensuring the security and validity of the data.CodingCoding is the creation and editing of the interfaces, code and reports so they look and work asindicated in the design stage.Note that user and technical documentation will also be produced during the coding stage.TestingTesting is the process to ensure that the system meets the requirements that were stated in theanalysis and also to discover (and eliminate) any errors that might be present.ConversionConversion is the process of installing the new system into the customer’s organisation and trainingthe employees to use it.Review Post-implementation review (also known as evaluation) is a critical examination of a system after ithas been in operation for a period of time.MaintenanceMaintenance is the process of making improvements to a system that is in use.The reasons for maintenance could be to fix bugs, to add new features or to make the system runquicker.ADDITIONAL NOTES:16 www.revision-notes.co.cc
  8. 8. CPT1: Computing FundamentalsDefining the problem Candidates should be able to: 5. Explain the importance of defining a problem accurately.An accurate problem definition is needed so that the developers know exactly what is expectedfrom the system. This means that the system that is delivered is going to be what the customerexpected. Without an accurately defined problem, it is likely that the software that is developed willnot fully satisfy the needs of the end users.Note that there has to be a two-way dialogue between the analyst and the users because: • The users do not know a lot about computers and their capabilities; • Programmers will not know very much about the way the business works, for which they are developing the softwareADDITIONAL NOTES: 17 www.revision-notes.co.cc
  9. 9. CPT1: Computing FundamentalsFeasibility Study Candidates should be able to: 6. Describe the function and purpose of a feasibility study.After the problem/task has been defined and before a complete detailed study of exactly what isneeded within a new system, a feasibility study is undertaken to verify that the system that isrequired is, in fact, viable and that it is worth proceeding.There are five factors that are considered in a feasibility study: • Technical feasibility – this investigates whether the hardware and software exists to create the system that is wanted. • Economic feasibility – this investigates the cost of developing a new system (including the purchase of new hardware) and then determines whether the benefits of a new system would outweigh the costs. • Legal feasibility – investigates if there is a conflict between what is wanted and the law. For example, would the new system satisfy the requirements of the Data Protection Act? • Operational feasibility – investigates whether the current working practises within the organisation are adequate to support the new computer system. It is possible that the new system would require employees to perform duties in a different way –this may not be acceptable! • Schedule feasibility – this investigates the amount of time that the new system is likely to take to develop and determines whether it can be developed within the timescale that is available.Estimating cost effectiveness Costs Benefits New Hardware Reduced Staffing The New software Better service to customers Training (time and money) Improved management information Faster processing that speeds up payments from Conversion (Time) customers Maintenance (Money)ADDITIONAL NOTES:18 www.revision-notes.co.cc
  10. 10. CPT1: Computing FundamentalsFact finding during analysis Candidates should be able to: 7. Explain the importance of determining the information requirements of a system and describe different methods of fact finding, including questionnaires, observation, and structured interviews, highlighting the advantages and disadvantages of each method.When attempting to create a new IT system, it is vital that sufficient information is gained about theway the present system operates. The usual methods of obtaining this information include: • Interviewing staff • Observation of current procedures • Examination of paperwork • Surveying (with questionnaires)Interviewing staffAll levels of staff from end-user to senior management need to be involved during the analysisstage. A systems analyst should try to interview as many of them as possible so that all their needscan be ascertained. Interviews are time-consuming, but very effective.It should be remembered that many of the staff may not be sure exactly what they require and so thesystem analyst may have to ‘tease’ out some of their requirements with carefully thought outquestions. Benefits Drawbacks User can express their opinions in a detailed Time consuming for the analyst way Extension questions can be asked as a result Users may feel intimidated and not tell the truth of the user’s answers to the original questions about what they feel is lacking in the existing system Users may feel valued and involved with the new systemObservation of current proceduresTime and motion studies could be undertaken to see how data and documents move around theexisting system and to detect where bottlenecks occur and determine where procedures could bemade more efficient. This could be done by using a test document that has its movement trackedthrough all its stages as it moves around the system.ADDITIONAL NOTES: 19 www.revision-notes.co.cc
  11. 11. CPT1: Computing FundamentalsObserving the staff at work can often prove more advantageous than just interviewing them,because it may uncover processes that they do sub-consciously and do not remember to tell theanalyst about during interview. Benefits Drawbacks Allows the analyst to see the current system at Users may work differently if they know that first hand and what processes that are often they are being watched. done sub-consciously Analyst can get a feel for user-competence Analyst can measure the time taken to do tasksExamination of paperworkThis will help to show the inputs and outputs of the current system and so help determine the inputsand outputs required by the new one. The paperwork will include documents that are received froman organisation’s customers – such as membership application forms or orders. They will alsoinclude documents that are produced by the current system – such as the invoices sent to customersand the current reports that are produced for the management team. Benefits Drawbacks Analyst can get an idea of the volume of data Can be time consuming if there is a large being stored and processed volume of files to go through Analyst can see what output is required Analyst can see how data is currently validatedSurveying (with questionnaires)If there are many users of the system then surveying staff by asking them to complete aquestionnaire would be a more efficient method of gathering information than conducting personalinterviews. The analyst could then choose to follow up some of the responses with an interview. Benefits Drawbacks Efficient in terms of time Responses to questions are less flexible than in an interview Answers can be anonymous There is often a low return rate It can be difficult to design a good questionnaireADDITIONAL NOTES:20 www.revision-notes.co.cc
  12. 12. CPT1: Computing FundamentalsRequirements analysis Candidates should be able to: 8. Describe what is involved when analysing the requirements of a system, explaining the nature of the requirements specification and its content, including current data structures, inputs, outputs and processing represented in diagrammatic form (data flow diagrams, system flowcharts), identify inefficiencies/problems in the current system.The deliverable at the end of analysis is documentation that shows an investigation into the currentsystem and a list of system requirements for the new one. These requirements need stated in a clear,specific and measurable way.In order to ascertain these requirements, the systems’ analyst needs to examine the current datastructures and relationships between them. They must also trace the flow of data through theexisting system – this will begin by determining the source of the various data, identifying the waysin which the data is processed; and finish by identifying the destinations of the final outputs.The analysis documentation will contain the following: • Identification of existing and prospective users; • Identification of current data and its structure; • Identification of inputs, outputs and processes within the current system; • Identification of data flows including the sources and destinations of the data; • Identification of the strengths and the weakness of the current system; • Listing of objectives.Current data and its structuresThis is the description of the current data within the system – its data type, validation techniquesused, relationships with other data within the system. The analysis data dictionary is usuallypresented in tabular form, with each different category of data being described in its own table.ADDITIONAL NOTES: 21 www.revision-notes.co.cc
  13. 13. CPT1: Computing FundamentalsData flow diagramsA data flow diagram is a drawing that depicts the transformation of data within an existing systemby using three different graphical symbols connected by labelled, directed lines.A data flow diagram is an analysis tool that represents what a system does, not how it does it. Theyare: • graphical – eliminating thousands of words; • logical representations – not physical models; • hierarchical – showing systems at any level of detail; and • jargonless – allowing user understanding and reviewing.An example of a data flow diagram depicting the sale of turkeys on a farm:ADDITIONAL NOTES:22 www.revision-notes.co.cc
  14. 14. CPT1: Computing FundamentalsSystem flowchartsA system flowchart shows an outline of how a system operates.The following shows the system flowchart for a school’s registration system that stores studentattendance data on a magnetic disk in a database called Register.KEY: Input/output On-line storage ProcessADDITIONAL NOTES: 23 www.revision-notes.co.cc
  15. 15. CPT1: Computing FundamentalsDesign Candidates should be able to: 9. Describe a design specification including input design, diagrammatic depiction of the overall system, processing, data structure design and output design.The deliverable at the end of the design stage is documentation that could be used, unaided, by athird-party programmer to create the system as the designer intends.This means that each section of the design must be detailed and clear. Explanations of what must bedone and why this method is chosen need to be included.The design documentation will contain the following: • user interface designs (input forms and menus); • specification of data structures (including the relationships between different types of data); • validation procedures; • output/report designs; • algorithms; • security methods.User interfacesHumans will need an interface that allows them to: • give instructions – Print, Save, Open, Delete, Copy, Paste etc. • enter data – file names, number of pages to print; • make choices – Yes, No, Cancel etc.Computers need ways to: • inform of errors – illegal operation, invalid data input, printer out of paper, wrong password: • tell on progress – copying, deleting, installing, downloading: • display the results of processing • ask for options – e.g. number of pages to be printed, which file to open. • provide help with performing tasks – this help could be in the form of Status bar text, yellow Tip boxes, an Office Assistant or even a full-blown help file accessed via the Help menu.The user interface designs will need clearly annotated drawings to tell the programmer exactly whatis to be done.ADDITIONAL NOTES:24 www.revision-notes.co.cc
  16. 16. CPT1: Computing FundamentalsExample of an interface for data entry:Processing (algorithm) designThese algorithms outline the programming methods that need to be used to process the data.Algorithms are usually written in pseudo-code, which are instructions that are half-way betweenEnglish and a programming language. The advantage of pseudo-code is that it can be used todescribe an algorithm in a way that is not specific to any particular programming language.ADDITIONAL NOTES: 25 www.revision-notes.co.cc
  17. 17. CPT1: Computing FundamentalsData structures and validationData can be of many types and can have many properties. Typically, a table is constructed for eachcategory of data. The properties of the data and the necessary validation techniques are stated asshown: Field Name Data Type Validation Comments MemberID AutoNumber Uniqueness Automatically generated (Integer) check Primary Key FirstName Text (size 25) Presence check Enter members first name – maximum 25 characters) LastName Text (size 25) Presence check … DateOfBirth Date (Short) Data-type + … Presence check Gender Text (size 1) Existence check Default – M; choice of M/F (on ‘M’ or ‘F’) select from radio-button. --- ---ADDITIONAL NOTES:26 www.revision-notes.co.cc
  18. 18. CPT1: Computing FundamentalsOutput designThis needs to be detailed in the same way as the input designs. Example of a mail-merge letteroutput:ADDITIONAL NOTES: 27 www.revision-notes.co.cc
  19. 19. CPT1: Computing FundamentalsTesting Candidates should be able to: 12. Explain the importance of system testing and installation planning.Testing is undertaken to ensure that a system satisfies the user’s requirements and to discover anyerrors that might be present.Testing needs to be undertaken by both the programming team and by the end-users. Note thattesting a program can never adequately prove or demonstrate the correctness of the system – it canonly reveal the existence of errors.Testing by the programming teamTesting by the programming team is ongoing as the system is developed, but it is still veryimportant to undertake tests at the end, after the programming team believe that the system isfinished. This formal testing at the end of development is known as alpha-testing.Alpha-testingThis is the formal testing at the end of development. It: • is undertaken by the programming team; • uses data that the programmers perceive to be realistic; • is designed to ensure that the requirements/objectives have been met.ADDITIONAL NOTES:28 www.revision-notes.co.cc
  20. 20. CPT1: Computing FundamentalsTesting by the end-usersTesting by the end-users is either beta-testing or acceptance testing.Beta-testingBeta testing is when the software is tested under real conditions, using real data, by a selection ofreal end-users.This phase of testing is necessary because software developers will probably not anticipate all thecombinations of conditions that will occur when the software is in use in its ‘real’ environment.This is the stage of testing where problems with different hardware combinations are usuallydiscovered, as are problems with ‘clashing’ software.During beta testing, users generally agree to report problems and bugs to the developers. These willthen be corrected and the software may then undergo a second round of beta testing before thepackage is eventually released.These end-users who test the system during beta-testing: • use the system with realistic volumes of real data; • use the system with a variety of different hardware and configurations; • report faults/errors back to analyst; • check that there is a reasonable response time; • ensure that the user interface is clear; • ensure that the output as expected.Acceptance testingAcceptance testing is where the customer specifies tests to check that the supplied system meetshis/her requirements as specified at the analysis stage and that the system works in their ownenvironment.Note that the tests and data are specified by the customer, but the testing itself may be carried outby the customer or by the developer under the scrutiny of the customerADDITIONAL NOTES: 29 www.revision-notes.co.cc
  21. 21. CPT1: Computing FundamentalsConversionConversion is the process of changing from an existing system to a new system.Note that conversion may take place within a day, or it might be that it is several months before allparts of the new system have replaced the old.Problems arising when converting/changing overConverting from an existing system to a new one is not always smooth. The following problemscould arise: • Data may have to be converted because the format in the new system may be different to the format of the old system. • Users will have to be trained so that they will be able to use the new system – the organisation may even need to employ additional staff. • Data may be lost during conversion – must make sure there is a full backup made before changing to the new system; • Hardware may need to be replaced/upgraded – if it does not satisfy the demands of the new system; • System software may need to be replaced/upgraded – i.e. new system may be created to take advantage of the features within Windows XP and so will not run correctly on an earlier operating system. • Old data may need to be archived;ADDITIONAL NOTES:30 www.revision-notes.co.cc
  22. 22. CPT1: Computing FundamentalsMethods of conversion/changeoverThe change from the use of an existing system to the use of a new system cannot always beinstantaneous. There are several different methods of converting to a new system, the four mostcommon are: • Parallel; • Direct; • Pilot; • Phased.ParallelParallel conversion is when the old system and the new system operate along side each other for aperiod of time, until all issues with using the new system have been resolved.Parallel conversion allows an organisation to revert to the old system if the new system fails.DirectDirect changeover is when the old system is stopped being used one day and is replaced, in full, bythe new system the next day.There is no going back when direct changeover is used.PilotPilot conversion is one department within an organisation changes to the new system before theothers.This department will discover any problems with the use of the systems and these problems can beironed out before the rest of the organisation converts to the new system.PhasedPhased conversion is when the old system is gradually replaced, in stages, by the new system.This type of changeover is convenient when the system comprises of several different modules.This will allow the organisation to convert to one of the new modules first, but maintain the use ofthe other existing ones. This type of conversion means that training can be concentrated on one newmodule at a time.Note that if phased conversion is used, it is vital that the new system and the old system can sharedata.ADDITIONAL NOTES: 31 www.revision-notes.co.cc
  23. 23. CPT1: Computing FundamentalsEvaluation (review) Candidates should be able to: 10. Explain the importance of evaluating the system, and how to identify the criteria used for evaluation.Evaluation (also known as post-implementation review) is a critical examination of a system after ithas been in operation for a period of time.PurposeThe purpose of an evaluation is to assess the success of a system. Specifically, it will assess thesuitability, effectiveness, usability and maintainability of the system.The evaluation will ask many questions including: • can it carry out the all the requirements that were set? • is it an improvement on the existing system? • is it cost effective? • is it easy to use? • is the new system compatible with the existing systems? • is the system easy to maintain?The evaluation will also consider: • what limitations there are in the system; • what enhancements could be made to the system in the future.Note that feedback from the end-users should also be included.TimingThe evaluation will occur after a new system has been in operation for some time – usually a periodof between three and six months.The waiting period allows users and technical staff to learn how to use the system, get used to newways of working and understand new procedures required. It allows management a chance toevaluate the usefulness of the reports and on-line queries that they can make and go through severalmonth-end periods when various routine reports will have been produced. Shortcomings of thesystem, if they exist, will be becoming apparent at all levels of the organisation.ADDITIONAL NOTES:32 www.revision-notes.co.cc
  24. 24. CPT1: Computing FundamentalsSystem documentation Candidates should be able to: 11. Explain the content and importance of different types of documentation at different stages in the system life cycle, including the technical and user manuals.There are two types of documentation that are necessary: • Technical documentation – aimed at a future system developer • User documentation/Manual – aimed at the end user.Technical documentation:Note that technical/system documentation is very valuable for the maintenance process. This isbecause it will show how each part of a system has been constructed and the reasons why certainchoices have been made. The technical documentation should include: • Annotated program listing – if the system is coded. • Data flow diagram • System flow diagram • Structure charts/pseudo code/algorithm designs • Test plan • Data dictionary – i.e. the field definitions (including data-type, field length, validation) • Entity relationship diagramsUser DocumentationAs well as a contents page and index, the user documentation should include: • Overview of the system • Instructions on how to install • Instructions on how to backup the data • Instructions on how to operate the program • Details on possible errors and how to deal with them • Glossary of terms used within the documentationADDITIONAL NOTES: 33 www.revision-notes.co.cc
  25. 25. CPT1: Computing FundamentalsMaintenance Candidates should be able to: 13. Explain the purpose of maintaining the system, and explain the need for system review and reassessment, understanding that software has a limited life span.Maintenance is the process of making improvements to (or modifying) a system that is in use.The need for maintenanceMaintenance is needed because: • Bugs are discovered in the software code – these bugs will have been identified only after the system is in full use. They will be fixed and a ‘patch’ will be issued that changes the appropriate lines of code within the end-users’ programs. • The user requirements may change – this often happens after a system has been in operation for some time and the users see further uses of the data that the system produces. In some cases, the additional requirements may have been identified during the original development, but they were not implemented because the system’s life-cycle approach to projects does not allow a change in requirements once they have been agreed (such a change would extend development time and cause a project to miss its deadline). • Some in-built parameters change – e.g. VAT rate; • Hardware is changed – the system will be updated to take advantage of new hardware developments. This could be a new input device, output device or even communications device. • The performance needs tuning – often some of the original code, although working without error, uses some quite cumbersome routines that are slow to execute. System performance can often be improved by finding more efficient algorithms for such routines. • Operating system is upgraded – the system will be modified to take advantage of the additional capabilities of the operating system.ADDITIONAL NOTES:34 www.revision-notes.co.cc
  26. 26. CPT1: Computing FundamentalsTypes of maintenanceThere are three types of maintenance: • corrective maintenance; • adaptive maintenance; • perfective maintenance.Corrective maintenanceCorrective maintenance is the removal of some of the known bugs in a program.Software that has been released to the public will still contain bugs. Some of these bugs will bepreviously unknown to the developers while others will be known to exist, but solutions will not yethave been discovered. The software will be released with these ‘known bugs’ because of thenecessity to meet pre-set target dates and the need to gain some income from the software tocontinue to pay the developers.Eventually some of the bugs will be fixed and the solutions will need to be incorporated into thepublic’s version of the programs. This type of maintenance is often done by releasing a ‘patch’which is a very small program that actually changes lines of code within the main program. Thesepatches are available from Internet sites or from the CD-ROMs that are provided with computermagazines.Adaptive maintenanceAdaptive maintenance is the addition of new features to a program because of a change in users’requirements.The new version of the program may contain an added (or modified) feature or it may contain achange in the interface. Adaptive maintenance could be needed because of: • a change in the organisations/users requirements; • a change in the law; • a change in processes such as the method of tax calculation; • to take account of new technologies.Perfective maintenancePerfective maintenance is when internal routines are changed to make them more efficient, so thatthe application operates faster.In the initial release of the software some of the processes, although error-free, may have used longand slow routines. Perfective maintenance will make improvements in the way that the softwareperforms by ‘tidying up’ some of the internal routines. Changes to the interface may also be made.ADDITIONAL NOTES: 35 www.revision-notes.co.cc
  27. 27. CPT1: Computing FundamentalsPrototyping Candidates should be able to: 14. Describe prototyping to demonstrate how a solution will appear. 15. Describe the spiral and waterfall models of the systems life cycle.A prototype is a simplified working model of a proposed system used as a rough indicator of howthe new system will work.The prototype will consist of a set of screens and processes that show the user (and developer) whatmight be possible. It will help a customer to gain a clearer idea of a proposed system so that theycan give feedback before the development has gone too far.In the prototyping approach, the analysis establishes an outline specification. A model is then builtin order to evaluate it or have it approved before building the production model.Prototyping can involve the repeated re-development of a system with new features being added asthe initially vague requirements are refined.ADDITIONAL NOTES:36 www.revision-notes.co.cc
  28. 28. CPT1: Computing Fundamentals1.4 SYSTEMS SOFTWAREOperating system Candidates should be able to: 20. Describe the purpose of operating systems.The operating system is an integrated set of programs that is used to control and manage theresources and overall operations of a computer.Its role is to provide a ‘virtual machine’ by hiding the complexities of the hardware from the user. Itdoes this by providing a ‘buffer’ between the user and the hardware allowing the user to deal with asimplified system, but without loosing any of its computational powers.In addition to providing the HCI, the Operating System manages the hardware resources in order toprovide for an orderly and controlled allocation of the memory, storage media, processor time, andI/O devices among the various processes competing for them.The function of an operating systemThe operating system (OS) for a standalone computer will be much simpler than that of asupercomputer which is controlling hundreds of networked terminals and executing many differentkinds of job simultaneously. Nevertheless, all operating systems perform the same basic functions.These include: • memory management; • file management (sometimes known as backing-store management); • allocation of processor time; • input and output management.An operating system also manages: • interrupts; • errors; • the human/computer interface.ADDITIONAL NOTES: 55 www.revision-notes.co.cc
  29. 29. CPT1: Computing FundamentalsMemory managementThe operating system has to allocate memory to each running application and to itself. Eachapplication is loaded into its own memory space – this means that if one program freezes, the otherscan, in theory, keep working normally. It also means that you can terminate a ‘frozen’ program bypressing [Ctrl]+[Alt]+[Delete]. Doing this will not effect any other programs.To manage memory effectively, the operating system must: • assign programs their own area of memory; • prevent two programs from using the same area of memory; • reallocate memory when a program is quit.File managementThe OS controls the transfer of data from disk to memory and back again. It also has to maintain adirectory of the disk so that files and free space can be quickly located. The directory is called theFile Allocation Table (FAT for short). To manage files effectively, when files are written to a diskthe OS ensures that: • existing files are not over-written; • when files are deleted from the disk the storage blocks are made available for new files.Allocation of processor timeWhen several processes are executing on a computer at the same time (eg downloading a file,printing and listening to an .mp3), then they will all need to receive time from the processor. Someprocesses, such as printing, require very little processor time, while other processes require theprocessor continuously. In such situations the Operating System would place a high priority onprinting requests to get them cleared and then allow it to concentrate on the more demandingprocesses.Input output device managementWhen two programs want to print to the same printer, the operating system has to ensure that thetwo ‘jobs’ do not interfere with each other. It would normally do this by putting the jobs into aqueue and then pass them to the printer when the printer is ready.ADDITIONAL NOTES:56 www.revision-notes.co.cc
  30. 30. CPT1: Computing FundamentalsInterrupt handlingThe OS detects and responds to many different kinds of interrupt such as: • a user pressing a key on the keyboard; • a printer sending a message that it is out of paper; • a hardware or software malfunction.In the case of a keyboard interrupt the operating system may simply display the appropriatecharacter on the VDU, but in the case of the printer sending an ‘out of paper’ interrupt, theoperating system will display a message to inform the end-user.Error handlingApplication software should normally include routines to deal with their own errors. When this isnot done, it is necessary for the operating system to deal with them or else the whole computercould crash.The operating system should be able to ‘freeze’ the program that causes an error and display amessage to the end user. A message such as ‘General Protection Fault’ might be displayed when abadly-written application tries to use an area of memory that has been assigned to the operatingsystem itself.The human/computer interfaceThe HCI allows a user to communicate with the computer. In early operating systems, users gaveinstructions to the computer by typing command words. Most modern operating systems provide aGraphical User Interface (GUI), which allows a user to choose commands by moving a pointer and‘clicking’ on menus.ADDITIONAL NOTES: 57 www.revision-notes.co.cc
  31. 31. CPT1: Computing FundamentalsTypes of operating system Candidates should be able to: 21. Describe the characteristics of different types of operating systems and their uses: batch, real-time, single-user, multi- user, multi-tasking and distributed systems. 22. Describe a range of applications requiring batch processing, and applications in which a rapid response is required.Batch operating systemA batch operating system is one which allows input of data as batches and processes the data onlywhen all input has been collected so that the processing is carried out from beginning to endwithout user interaction.In a batch system the data is collected and input into the computer over a period of time. It is storedas a ‘job’ to be processed later. Several batch jobs are usually executed at the same time so that theprocessor and other resources are kept as busy as possible by switching between the different jobs.Batch processing is typically used for: • processing OMR forms such as those that contain answers to a multiple-choice exam; • payroll; • utility billingIn the case of processing multiple-choice OMR forms, the batch operating system can process theforms incredibly fast, but it needs to reject forms that it cannot read – marks may be too faint, twomarks may exist on the same line etc. It does this by rejecting unreadable forms into a ‘hopper’ andthe data from these forms then need to be handled manually.In the case of payrollADDITIONAL NOTES:58 www.revision-notes.co.cc
  32. 32. CPT1: Computing FundamentalsInteractive operating systemAn interactive operating system is one that allows the user and the computer to be in direct two-waycommunication.The user enters commands and data as the application is executed and the results of processing aredisplayed immediately.Categories of interactive system are single-user, multi-user, multi-tasking and real-time.Single-userA single-user operating system is one that can only be used by one person at a time.Multi-userA multi-user operating system is one that allows two or more users to communicate with thecomputer at any one time, with each user interacting with the computer via separate terminals.Multi-taskingMultitasking is the apparent concurrent execution of two or more programs, on the same computer,in such a way that communication and data sharing is possible.Real-timeA real-time operating system is one in which requests are executed immediately and can thereforeproduce a response within a specified, short, interval of time.Some definitions sate that: ‘A real-time operating system (RTOS) is an operating system that guarantees a certain capability within a specified time constraint’.Almost any general purpose operating system such as Microsoft Window or MacOS can beconsidered real-time to some extent – even if an operating system doesn’t fully qualify as real-time,it may have characteristics that enable it to be considered as a solution to a particular real-timeproblem.ADDITIONAL NOTES: 59 www.revision-notes.co.cc
  33. 33. CPT1: Computing FundamentalsReal-time operating systems are characterised by their ability to: • deal with events which happen at unpredictable moments in time; • deal with multiple events that occur simultaneously; • support application programs which are non-sequential in nature – i.e. programs which do not have a START:PROCESS:END structure; • carry out processing and produce a response within a specified interval of time.Note that the results of processing may be returned in milliseconds – as in the guidance systems of acruise missile – or if the processing is complex, it might take a couple of seconds – as in atemperature control system in a large greenhouse.Examples of real-time operating systems: • Airline flight reservation; • Missile guidance; • Temperature/pressure control; • Process control.Flight reservationThe booking needs to be processed quickly and confirmation given to the customer straight away.When a seat has been booked on a flight, the system needs to be updated before the next transactionoccurs in order to avoid the possibility of double-booking.Missile guidanceVarious sensors that detect the altitude, latitude, speed etc. constantly provide up-to-dateinformation to the guidance system. If the missile is slightly off course then adjustments must bemade immediately – a one second delay could result in the missile hitting the wrong target.Temperature/pressure controlSensors in a nuclear power station will be providing data on the current temperature of the reactor.If the reactor starts to overheat, then initiating cooling will have to happen instantly to avoid apotentially dangerous situation or meltdown.Sensors in a greenhouse will be providing data on the current temperature and humidity. If eithergoes outside the preset range then an action such as opening/closing the greenhouse windows willneed to occur straight away.Process controlIn manufacturing processes 1000s of signals per second can arrive from sensors attached to thesystem being controlled. Because such systems are extremely fast moving, the response time mayhave to be less than one thousandth of a second.ADDITIONAL NOTES:60 www.revision-notes.co.cc
  34. 34. CPT1: Computing FundamentalsDistributed systemA distributed system is one in which file storage (or processing) is shared between differentcomputers at different locations.Users of a distributed system will be unaware of the exact physical location of the data that they areaccessing – it is likely that one set of records is retrieved from one remote system and the next setof records is retrieved from another!An example is a banking system where the data for each customer is held on the server at their localbranch, but is accessible from any branch.Network operating systemA network operating system (NOS) is one that is able to share its resources (such as hard disk orprinter) and use the resources of others.Note that in sharing its resources the network operating system is able to control what other usersare permitted access to and whether that access should be read & write or read-only.A NOS often consists of exactly the same files as a standard operating system, but has an extralayer of software. This software (known as the redirector) intercepts commands for file storage andprinting and, in a manner completely transparent to the user, redirects the requests to the appropriateserver. In this way files, printers and application programs resident on the server can be used by theclient exactly as if they were resident on the user’s own system.Using a network printerWhen a computer is set up to share its printer (known as a ‘print server’), the NOS will: • allow the computer directly attached to the printer to make its printer visible to the other computers; • allow the other computers to be aware of the existence of the shared printer; • allow the print requests from the other computers to be redirected to the print server’s printer; • allow this printer server to control the printing requests of the other computers by putting all the requests into a print queue;Note that it is usually possible for the print server to use access rights to control which users areallowed to use the printer and to assign users priority in the queue.ADDITIONAL NOTES: 61 www.revision-notes.co.cc
  35. 35. CPT1: Computing FundamentalsHuman-computer interface (user interface) Candidates should be able to: 23. Identify and describe the purpose of different types of user interface: forms, menus, GUI, natural language and command line, suggesting the characteristics of user interfaces that make them appropriate for different types of user.The user interface is the hardware and software that provides the means for communicationbetween the user and the computer.Different interfaces have been developed for different needs. Common types of HCI are: • Forms • Menus; • Graphical (GUI); • Natural Language; • Command Line.ADDITIONAL NOTES:62 www.revision-notes.co.cc
  36. 36. CPT1: Computing FundamentalsFormsThis kind of interface presents the user with an on-screen form into which they enter or view data.The form will often be arranged into different sections and will consist of text-boxes, checkboxes,radio buttons, drop down lists and other input ‘controls’ to help the user enter data quickly and tohelp with validation.Travel agents and other booking systems would typically use a form interface.ADDITIONAL NOTES: 63 www.revision-notes.co.cc
  37. 37. CPT1: Computing FundamentalsMenu interfaceA menu interface is one that provides a list of choices from which the user can choose by pointingto/clicking on. Each choice that the user selects will display a screen with other choices andultimately the desired choice.ATMs and mobile phones often use menu driven interfaces and so do the ticket machines on theLondon underground and many tourist information systems.The benefits of a menu interface is: • less human error – the user can only choose from the options available; • user is restricted from accessing other parts of the system.The drawbacks include: • there may be no shortcuts for accessing common choices.Tourist information systems would typically use a menu interface with a touch-screen to act asboth an input and output device. This: • avoids the need for additional peripherals such as a mouse; • allows ease of use by indicating possible choices with icons (not just text); • provides an enclosed system with protection against vandals and the weather (can be used outside).ADDITIONAL NOTES:64 www.revision-notes.co.cc
  38. 38. CPT1: Computing FundamentalsGraphical User Interface (GUI)A graphical user interface (GUI) is one that provides a means of interaction using windows, icons,menus and a pointer to control the programs and operating system.This kind of interface is sometimes called a WIMP and consists of the following: • Windows; • Icons; • Menus; • Pointer.ADDITIONAL NOTES: 65 www.revision-notes.co.cc
  39. 39. CPT1: Computing FundamentalsWindowsA window is a bounded area of the screen within which a specific task is executing – e.g. wordprocessing, web browsing, file management etc.IconsAn icon is a small image that represents a program, folder, a device or a file.MenusA menu is a listing of options from which a user may choose – menus in a GUI are usually ‘pop-up’or ‘drop-down’.PointerA pointer is an on-screen ‘arrow’, usually controlled by mouse, used for navigation and to selectappropriate options by clicking a button.Note that it is possible to set the pointer to be an image other than an arrow, but doing this oftenmakes the system harder to use.Benefits and drawbacks of a GUI Benefits Drawbacks Easy for a novice because a GUI is usually Powerful hardware is required – fast intuitive – the screen is arranged as a processor, high quality graphics card and VDU, metaphor of a desktop with icons used to RAM and HDD with large capacity. represent familiar objects. User does not have to remember the precise Can be frustrating for an experienced user to format of the instructions – instructions are perform certain tasks because a greater initiated by selecting icons or menu number of operations may be required. commands. There is likely to be comprehensive, easy to Not all instructions are available through the navigate, on-line help available. GUI – the command line will still need to be used for many technical tasks. Modern GUIs allow very easy execution of some commands by ‘drag and drop’.ADDITIONAL NOTES:66 www.revision-notes.co.cc
  40. 40. CPT1: Computing FundamentalsNatural LanguageA natural language interface is one which allows a user to communicate with the computer byspeaking or typing in their normal way.Ask Jeeves was a natural language search engine – it will allow you to type a question in the normalway and it will interpret the question and provide the answer if it can. Below is an example: The image part with relationship ID rId47 was not found in the file. Type the question in your usual language – ‘what is the capital of France?’ The image part with relationship ID rId48 was not found in the file. Jeeves will tell you the answer if he knows it!ADDITIONAL NOTES: 67 www.revision-notes.co.cc
  41. 41. CPT1: Computing FundamentalsCommand Line interfaceA command-line interface is one in which the operating system provides a ‘prompt’ and the usertypes a command to start program execution or to perform a housekeeping task.For example:The computer might prompt as follows: C:>The command prompt is the > character and the C: is the pathname for the current directory.The user typing the following command: C:>Del *.docwill cause all files in the current directory with the extension .doc to be deleted.Another command with MS DOS is: C:>copy MyFile.doc C:BackupsMyFile.bakThis command copies the file called MyFile.doc into the directory called Backups and renames thefile MyFile.bak.Sometimes ‘switches’ can be used with commands: C:>xcopy C:Backups A:Backups /s /eThis command copies the directory named Backups from disk C: onto disk A: the /s means thatsubdirectories are copied too, and the /e means that empty directories are also copied.A command line interface is not for novice users, but is often used by an IT technician who needs toperform tasks that are difficult when using a GUI.When using a command line, the user must only type valid commands and they must be typed inthe correct format – omitting a space or a ‘’ will usually cause the command to fail.ADDITIONAL NOTES:68 www.revision-notes.co.cc
  42. 42. CPT1: Computing FundamentalsBenefits and drawbacks of a command line interfaceBenefits DrawbacksOnly low specification hardware is required – Difficult for a novice because they have tomonotone VDU, basic processor, small RAM remember a large number of commands andand HDD. their exact format.Experts can perform complex tasks using a The syntax of the command is vital and so thesingle (although lengthy) command. instruction will not execute if the command is typed incorrectlyAn instruction can be executed from any part Easy to make mistakes.of the system (do not have to have a certainwindow open).ADDITIONAL NOTES: 69 www.revision-notes.co.cc
  43. 43. CPT1: Computing Fundamentals1.5 DATA REPRESENTATIONNumber representation Candidates should be able to: 26. Express numbers in binary, binary-coded decimal (BCD), octal and hexadecimal.Computers can only process binary data – i.e. 1’s and 0’s. If numeric data is to be processed then itcannot be processed in its usual base10 form, it must be converted into its base2 form – known asbinary.There are two ways that can be used to represent numbers in binary: • ‘pure’ binary; • binary-coded decimal (BCD).There are also two ‘half-way’ stages that are sometimes used by programmers because they areeasier to understand than a string of 1s and 0s: • octal; • hexadecimal.‘Pure’ binaryPure binary represents numbers using just two digits (‘0’ and ‘1’) and columns, which increase by afactor of two.This is in contrast to our normal number system (denary), which uses ten digits (0-9) and columns,which increase by a factor of ten.In denary the number one hundred and ninety seven is represented as: 100 10 1 1 9 7In binary, it is represented as: 128 64 32 16 8 4 2 1 1 1 0 0 0 1 0 1ADDITIONAL NOTES: 77 www.revision-notes.co.cc
  44. 44. CPT1: Computing FundamentalsCounting in binaryIn binary, the first 15 numbers are as follows: 128 64 32 16 8 4 2 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 2 0 0 0 0 0 0 1 0 3 0 0 0 0 0 0 1 1 4 0 0 0 0 0 1 0 0 5 0 0 0 0 0 1 0 1 6 0 0 0 0 0 1 1 0 7 0 0 0 0 0 1 1 1 8 0 0 0 0 1 0 0 0 9 0 0 0 0 1 0 0 1 10 0 0 0 0 1 0 1 0 11 0 0 0 0 1 0 1 1 12 0 0 0 0 1 1 0 0 13 0 0 0 0 1 1 0 1 14 0 0 0 0 1 1 1 0 15 0 0 0 0 1 1 1 1Can you see the pattern?Converting from binary to denaryA binary number, such as 1001 0101, can be converted into its denary equivalent as follows:1. Write the binary number with the appropriate column headings: 128 64 32 16 8 4 2 1 1 0 0 1 0 1 0 12. Add the column headings under which there is a binary ‘1’: = 128 + 16 + 4 + 1 = 149ADDITIONAL NOTES:78 www.revision-notes.co.cc
  45. 45. CPT1: Computing FundamentalsConverting from denary to binaryA denary number, such as 107, can be converted into binary as follows:1. Write down the binary column headings: 128 64 32 16 8 4 2 12. Then, starting from the left, ‘take out’ the values in the column headings, if possible: 128 cannot be taken out of 107 so that column contains a ‘0’: 128 64 32 16 8 4 2 1 0 64 can be taken out of 107 so that column contains a ‘1’; this leaves 107 – 64 = 43: 128 64 32 16 8 4 2 1 0 1 32 can be taken out of 43 so that column contains a ‘1’; this leaves 43 – 32 = 11: 128 64 32 16 8 4 2 1 0 1 13. keep repeating the above process until the whole number has been converted to pure binary: 128 64 32 16 8 4 2 1 0 1 1 0 1 0 1 1ADDITIONAL NOTES: 79 www.revision-notes.co.cc
  46. 46. CPT1: Computing FundamentalsBinary Coded Decimal (BCD)Binary Coded Decimal is one of the early memory encodings. Rather than converting the entiredenary value into its pure binary form, it converts each digit, separately, into its 4-bit binaryequivalent. The table below shows the 4-bit BCD equivalents of the ten denary digits: 8 4 2 1 0 0 0 0 0 1 0 0 0 1 2 0 0 1 0 3 0 0 1 1 4 0 1 0 0 5 0 1 0 1 6 0 1 1 0 7 0 1 1 1 8 1 0 0 0 9 1 0 0 1Note that the higher codes are not used in BCD because they do not represent a denary digit. Theseare: 1 0 1 0 1 0 1 1 1 1 0 0 Not used in BCD because their denary equivalents are higher 1 1 0 1 than ‘9’. 1 1 1 0 1 1 1 1ADDITIONAL NOTES:80 www.revision-notes.co.cc
  47. 47. CPT1: Computing FundamentalsConverting from denary to BCDEach digit is converted to its 4-bit BCD equivalent. Thus, the number 319 would be represented in12-bits as follows: 8 4 2 1 8 4 2 1 8 4 2 1 0 0 1 1 0 0 0 1 1 0 0 1 (3) (1) (9)Converting from BCD to denaryEach group of 4-bits are converted into the equivalent denary digit. Thus, the 12-bit binary codeddecimal number 0110 1000 0011 is denary 683 as shown: 8 4 2 1 8 4 2 1 8 4 2 1 0 01 1 0 1 0 0 0 0 0 1 1 6 8 3OctalThe octal number system uses eight digits (0 to 7) to represent numbers, and columns whichincrease by a factor of eight. … … … 4096 512 64 8 1Converting from octal to denaryThe octal number 652 would be converted to denary as shown: … … … 4096 512 64 8 1 6 5 2 (6 × 64) + (5 × 8) + (2 × 1) = 426ADDITIONAL NOTES: 81 www.revision-notes.co.cc
  48. 48. CPT1: Computing FundamentalsConverting between octal and binaryThe octal number 652 (426 in denary) is represented in binary as: 256 128 64 32 16 8 4 2 1 1 1 0 1 0 1 0 1 0If we combine the bits in groups of three and label with the appropriate column headings… 4 2 1 4 2 1 4 2 1 1 1 0 1 0 1 0 1 0 6 5 2… we can see that converting from octal to binary converts each digit into its 3-bit binaryequivalent (very similar as converting between denary and BCD).Thus the octal equivalent of binary number 10011101 will be: 4 2 1 4 2 1 4 2 1 0 1 0 0 1 1 1 0 1 2 3 5 Note the extra ‘0’ added at the front because the original binary was only 8-bits.ADDITIONAL NOTES:82 www.revision-notes.co.cc
  49. 49. CPT1: Computing FundamentalsHexadecimalThe hexadecimal number system uses 16 digits to represent numbers. The denary digits 0 – 9 areused together with the first six letters of the alphabet (A – F).With hexadecimal, instead of column headings doubling, as they do in binary, or increasing by afactor of 10 as they do in denary, each column heading in hexadecimal increases by a factor of 16.The column headings are: … … … 65,536 4096 256 16 1Examples of hexadecimal numbers include: 3FC2, CFF8, 92B0, EE4D, ACDC.Note that the number 9375 could either be ordinary denary or hexadecimal – to make it clear thesymbols ‘h’, ‘#’ or ‘&’ are often used. Thus, if the number was in hexadecimal, it would be writtenas 9375h, #9375 or &9375.Converting from hexadecimal to denaryThe hexadecimal number 2C5A can be converted into its denary equivalent as follows:1. Write the hexadecimal number with the appropriate column headings: … … 4096 256 16 1 2 C 5 A2. Noting that A ≡ 10 and C ≡ 12, convert in the same way as conversion from binary to denary: = (4096 x 2) + (256 x 12) + (16 x 5) + (1 x 10) = 11 354ADDITIONAL NOTES: 83 www.revision-notes.co.cc
  50. 50. CPT1: Computing FundamentalsConverting from hexadecimal to binaryThis uses the same method as octal to binary, except each hexadecimal digit is represented by 4-bits. Thus, the hexadecimal number B7C can be converted into a 12-bit binary as follows: 8 4 2 1 8 4 2 1 8 4 2 1 1 0 1 1 0 1 1 1 1 1 0 0 (B) (7) (C)Converting from denary to hexadecimalConvert to binary first and then to hexadecimal. For example, 462 can be converted as follows:Convert to binary: 2048 1024 512 256 128 64 32 16 8 4 2 1 0 0 0 1 1 1 0 0 1 1 1 0Convert each group of four into their hexadecimal equivalent: 8 4 2 1 8 4 2 1 8 4 2 1 0 0 0 1 1 1 0 0 1 1 1 0 1 12 (C) 14 (E) = 1CEUses of hexadecimalHexadecimal is often used by Assembly language programmers to reference memory. It is also usedwithin HTML property values – specifically background and font colours.There are three advantages of using hexadecimal: • hexadecimal is quicker for a programmer to enter into a computer than binary; • hexadecimal is easier for a programmer to understand and remember – 8F8B is easier to remember than 1000111110001011. • it is very easy to convert between binary to hexadecimal.ADDITIONAL NOTES:84 www.revision-notes.co.cc
  51. 51. CPT1: Computing FundamentalsSummaryExpressing the denary number 195 as eight-bit binary, BCD, octal and hexadecimal:Binary … … … 128 64 32 16 8 4 2 1 1 1 0 0 0 0 1 1BCD 8 4 2 1 8 4 2 1 8 4 2 1 0 0 0 1 1 0 0 1 0 1 0 1Octal … … … 512 64 8 1 0 3 0 3or: Pure Binary: 1 1 0 0 0 0 1 1 Group in threes: 0 1 1 0 0 0 0 1 1 Octal: 3 0 3Hexadecimal 4096 256 16 1 C 3or: Pure Binary: 1 1 0 0 0 0 1 1 Group in fours: 1 1 0 0 0 0 1 1 Hexadecimal: C 3ADDITIONAL NOTES: 85 www.revision-notes.co.cc
  52. 52. CPT1: Computing FundamentalsNegative binary numbers Candidates should be able to: 27. Describe and use two’s complement and sign and magnitude to represent negative integers.Two’s complimentTwo’s compliment is a method of representing negative numbers in binary, whereby the mostsignificant bit maintains its magnitude, but is made negative.If, for example, one byte is used to represent a ‘signed’ integer using the two’s compliment method,the column headings would become: – 128 64 32 16 8 4 2 1Thus, the denary integer 18 would be represented as: – 128 64 32 16 8 4 2 1 0 0 0 1 0 0 1 0And the negative integer – 18 would be represented as: – 128 64 32 16 8 4 2 1 1 1 1 0 1 1 1 0Notes: • negative numbers will always start with a ‘1’ and positives will start will a ‘0’; • the range of integers that can be represented using one byte is from – 128 up to + 127. – 128 64 32 16 8 4 2 1 1 0 0 0 0 0 0 0 = – 128 0 1 1 1 1 1 1 1 = + 127ADDITIONAL NOTES:86 www.revision-notes.co.cc
  53. 53. CPT1: Computing FundamentalsConverting a negative denary integer into two’s complementDue to the way that binary numbers work, there is an easy ‘trick’ that allows very fast conversion.Taking the denary integer – 52 as an example, you can use the three stages shown below:Stage oneConvert the positive form of the number into unsigned binary: – 128 64 32 16 8 4 2 1 0 0 1 1 0 1 0 0 = + 52Stage twoStarting at the right hand side, copy each bit, up to and including the first ‘1’: – 128 64 32 16 8 4 2 1 0 0 1 1 0 1 0 0 1 0 0Stage threeReverse all the other bits: – 128 64 32 16 8 4 2 1 0 0 1 1 0 1 0 0 1 1 0 0 1 1 0 0 = – 52This will always work – even if you do not understand why!ADDITIONAL NOTES: 87 www.revision-notes.co.cc
  54. 54. CPT1: Computing FundamentalsConverting a two’s complement number into denaryThis is the same as converting any binary number into denary, as long as you remember that themost significant bit is negative. For example the ‘signed’ binary number 1 1 0 1 0 1 0 1 is convertedas follows: – 128 64 32 16 8 4 2 1 1 1 0 1 0 1 0 1 = – 128 + 64 + 16 + 4 + 1 = – 43Sign and magnitudeThe alternative to using two’s complement to represent negative numbers is to use the ‘sign andmagnitude’ method – here, the most significant bit is used as a sign bit without a numerical value. – 64 32 16 8 4 2 1 1 1 0 0 1 1 0 0 = – (64 + 8 + 4) = – 76Notes: • the range of integers that can be represented using one byte is from – 127 up to + 127. • although the sign and magnitude method is easier for humans it is much harder to use for computers performing arithmetic. SPOT CHECK 1. Assuming a single byte is used, convert the following numbers into two’s compliment binary: (a) – 5 (b) – 10 (c) – 20 2. What is the denary value of 1010 1011 if the binary codes represent: (a) a two’s compliment number (b) a sign and magnitude numberADDITIONAL NOTES:88 www.revision-notes.co.cc
  55. 55. CPT1: Computing FundamentalsBinary arithmetic Candidates should be able to: 28. Perform integer binary arithmetic, that is addition and subtraction.AdditionComputers will only ever add two numbers at a time – if three numbers need to be added, acomputer will add the first two and then add the third number will be added to the result.Since only two numbers are added at a time, there are limited outcomes: 0+0=0 0+1=1 1+0=1 1 + 1 = 2 (‘10’ in binary – this is 0 ‘down’ and ‘carry’ 1)Note that when you add a ‘carry’ to the next column, it is possible for: 1 + 1 + 1 (the carry) = 3 (‘11’ in binary – this is 1 ‘down’ and ‘carry’ 1)This is better shown if we add 1010 1110 1100 and 0011 1010 1010: 1 0 1 0 1 1 1 0 1 1 0 0 0 0 1 1 1 0 1 0 1 0 1 0 Carried bits  1 1 1 1 1 1 1 1 1 0 1 0 0 1 0 1 1 0ADDITIONAL NOTES: 89 www.revision-notes.co.cc
  56. 56. CPT1: Computing FundamentalsSubtractionTo perform subtraction, the number to be subtracted is converted into its two’s complimentnegative and then added.For example to subtract 12 from 25:1. Convert the 12 into two’s compliment –12 – 128 64 32 16 8 4 2 1 12 0 0 0 0 1 1 0 0 – 12 1 1 1 1 0 1 0 02. Now add this to the 25: – 12 1 1 1 1 0 1 0 0 25 0 0 0 1 1 0 0 1 Carried bits  1 1 1 1 0 0 0 0 1 1 0 1Note that there is still a ‘carry’ bit, but this is ignored. SPOT CHECK 1. Work out the following using binary addition and subtraction: (a) 34 + 73 (b) 67 – 96ADDITIONAL NOTES:90 www.revision-notes.co.cc
  57. 57. CPT1: Computing FundamentalsText (character) representation Candidates should be able to: 29. Explain the use of code to represent a character set (ASCII, EBCDIC and UNICODE).Character SetA character set are the characters that can be recognised by a computer.Character encodingA computer is able to represent four types of characters: • alphanumeric characters – letters A – Z and a – z and the digits 0 – 9. • punctuation characters and other ‘special’ symbols such as , . ; : “ ‘ ! @ £ $ % & * ( ) + < • graphical characters such as ♣, ♦, ♥, ♠, Ψ, , , ✘, ☛, ✻ (and many more…); • control characters – [Return], [Esc], [Space], [Alt], etc.Within a computer, each character is represented using a unique binary code. Although there aremany different methods of encoding the characters, three of the most common are ASCII, EBCDICand Unicode.ASCIIAmerican Standard Code for Information Interchange (ASCII) is used for character encoding bymost Windows™ PCs. ASCII can be used to translate alphanumeric characters into a 7-bit binarycode that represents all the characters available from the keyboard including punctuation and somespecial symbols such as ‘@’, # and $:A development of ASCII, known as Extended ASCII, uses an 8-bit code that also defines codes foradditional characters, including some graphical ones. Note that using an 8-bit code means themaximum number of characters that can be represented is 256.ADDITIONAL NOTES: 91 www.revision-notes.co.cc
  58. 58. CPT1: Computing FundamentalsHow character encoding worksThe diagram below shows how the message “Hello World” is stored in the memory of a computerusing the ASCII codes:The message is typed at the keyboard. Electronics in the keyboard convert the typed characters intoASCII binary codes that are sent from the keyboard along a cable to the computer. The computerstores these codes in its internal memory. The computer also provides a visual display of thecharacters as they are typed. To be able to do this, electronics inside the computer convert thestored binary codes back into their character equivalents.EBCDICExtended Binary Coded Decimal Interchange Code (EBCDIC) was developed by IBM for use intheir mainframe systems. It has the same limitation as ASCII in that its 8-bit code can only define256 different characters.ADDITIONAL NOTES:92 www.revision-notes.co.cc
  59. 59. CPT1: Computing FundamentalsNotice how the EBCDIC codes are completely different to ASCII – if a message was sent that hadbeen encoded using ASCII, but received by a system that used EBCDIC, then the resulting messagewould not make sense.Unicode.Unicode is an international system of representing characters using 16 bits. Using 16 bits meansthat 216 = 65 536 different characters can be represented (thus overcoming the limitation of ASCIIand EBCDIC).Unicode allows every character from most alphabets to have a code of its own – Chinese, Russian,Greek, Urdu etc, including Egyptian Hieroglyphics. Note that there are plenty of spare codes thatare used for mathematical symbols, common graphics and even the Braille symbols Some of the Mongolian characters: Some of the Hebrew charactersADDITIONAL NOTES: 93 www.revision-notes.co.cc
  60. 60. CPT1: Computing FundamentalsADDITIONAL NOTES:94 www.revision-notes.co.cc
  61. 61. CPT1: Computing Fundamentals1.6 DATA CAPTUREStandard input devices Candidates should be able to: 30. Describe manual and automatic methods of gathering and inputting data into a system, including form design, keyboard entry, voice recognition, barcodes, optical mark recognition (OMR), optical character recognition (OCR), magnetic ink character recognition (MICR), touch screens; image capture, chip and pin, sensors and remote data logging.An input device is the hardware that is used to enter commands or data into a computer.In many cases this requires the data to be converted into machine-readable form. Some inputdevices – such as a keyboard, mouse and flat-bed scanner – require a human-user to be present tocontrol the input. Other devices – such as sensors and optical mark readers – can obtain dataautomatically without the need for a human to be present. These latter devices are often referred toas data capture devices.KeyboardThe keyboard remains the most common input device although in terms of speed, it is one of themost limited. It is, however, suitable for entering a wide range of data and it is a device that isfamiliar to every office worker. Every key on a keyboard has a switch underneath it – when a key ispressed the switch is closed and a signal is sent to the computer. Keyboards are wired so that thesignal which is sent is determined by the row and the column in which the key is. Most keyboardshave the keys arranged in the same way as the once popular typewriter – this arrangement is knownas QWERTY because it is the order of the first characters. This QWERTY layout was designed toreduce the risk of jamming on early mechanical typewriters by spreading the most commonly usedletters around the keyboard – this effectively slowed down the typist. Improved layouts have beendesigned such as the Dvorak layout which rearranges the keys in an attempt to distribute typingmore evenly among the fingers of both hands. Using these improved layouts increases the speed atwhich data can be entered. Such layouts have never become popular, however, because there hasbeen no general agreement on a standard layout and also because of the time that it takes to get usedto a new arrangement.Modern keyboards have in excess of 105 keys thatinclude 12 or more function keys, some of whichcan be programmed by the user. Other keys havespecialist functions that can be used for navigationwithin a document, to copy an image of the screen,to put the computer into energy saving mode or toADDITIONAL NOTES: 95 www.revision-notes.co.cc
  62. 62. CPT1: Computing Fundamentalsdisplay the Start Menu if using Microsoft Windows™. Note that standard text entry using akeyboard is usually between 20 and 60 words per minute (wpm), but a trained operator can reachspeeds in excess of 100 wpm.Graphics TabletA graphics tablet is a specialist input device that is used to trace (or create original) drawings,pictures and designs into a computer. It consists of a flat tablet and a pen-like stylus. Softwaredetects the movement of the stylus on the tablet’s surface and the changes to the image areimmediately displayed upon the screen of the VDU. This provides an input device that is used in asimilar way to paper and pencil.Light PenThis is used in a similar way to a graphics tablet except the light pen is moved over the VDU screenitself. The pen is triggered by the raster scan of the VDU – it detects when the electron beambuilding up the screen image has just passed the point where the pen is positioned. Knowing theinstant at which the beam passed the pen, the software can calculate whereabouts on the screen ithas been placed.Touch Sensitive ScreenTouch sensitive screens are now often used as an alternative to a mouse. The user places their finger(or a stylus device) on the screen and the position is detected – the command/option that relates tothe screen display is then processed. One method of detecting the position of the figure is to have aseries of horizontal and vertical infrared beams directed across the screen. Position is calculated bydetecting which beams have been interrupted.Touch sensitive screens are generally used for navigation in data display applications. Here the usercan select one of a limited number of menu/navigation choices by pointing at the screen.These screens have started to become popular in restaurants, ATMs, London Underground ticketbooths and some British Telecom payphones. The Science Museum in London is now full of touchscreen terminals that are used to help visitors find the location of exhibits and also to provide themwith related information. They are particularly suited to this type of environment since they areeasily enclosed within a damage resistant casing.Touch sensitive screens offer flexibility in that it is easy to redesign the screens whenimprovements or modifications are made – for example an extra button can be added by modifyingthe computer program that controls the interface. Systems can be made user-friendlier because thebuttons can contain relevant graphics as well as words.ADDITIONAL NOTES:96 www.revision-notes.co.cc

×