Chapter 1 Data representation in a computer

3 Introduction

 In digital computers, the user inputs is converted and transmitted as electrical pulses that can be represented by two digits 1 and 0 before processing. These two digits are referred to as**Binary** digits.  When a digital signal is to be sent over analog telephone lines e.g. e-mail, it has to be converted to analog signal. This is done by connecting a device called a modem to the digital computer. This process of converting a digital signal to an analog signal is known as modulation. On the receiving end, the incoming analog signal is converted back to digital form in a process known as demodulation.  Data and instructions cannot be entered and processed directly into computers using human language. Any type of data entered must first be converted into **machine-readable form. (Binary form)**. Computer together with its peripheral devices handle data in its electronic circuits, magnetic media and in optical devices. Data representation in electronic circuits

 Electronic

components such as microprocessor are made up of millions of electronic circuits. Availability of a high voltage (ON) in these circuits is interpreted as 1 while a low voltage (OFF) is interpreted as 0. In optical devices, the presence of light is interpreted as 1 while its absence is interpreted as 0.

**BITS** this is a binary digit, which can either be 0 or 1. its the basic unit of data or information in digital computers.

**BYTE** a group of 8 bits. It is the basic unit of

measuring memory size in computers.

**NIBBLE** it is a half a byte or a group of 4 bits. **WORD** its consists of one or more bytes and is the largest amount of memory that the computer can handle.

**WORD LENGTH** is the number of bits in each

word of computer. Reading data on a CD-ROM

  This number system has ten digits ranging from 0-9. A decimal number should be written with a subscript 10. e.g. 13210. Each digit of a given number in the base has a place value, which is influenced by base ten. E.g. number 123410  This number system uses two digits 1 and 0 to

represent numbers. The place value of the digits of a base two number is influenced by two (the base/radix). e.g. the place values of the 10102 are illustrated below  This number system consists of sixteen digits ranging from 0-9 and letters A-F where A is equivalent to 10, B to 11 up to F which is equivalent to 15, in base ten systems. Each digit of a number in base sixteen has its place value expressed in terms of sixteen. For example, the value 12A3 can be expressed as;  Decimal to Binary  Binary to Decimal Number  Decimal to Octal  From Octal to Decimal  Converting Octal to Binary  From Decimal to Hexadecimal  Hexadecimal to Decimal  Hexadecimal to Binary  To convert a number from base 10 to base 2, the

number in base 10 is repeatedly divided by 2 unit the divided is zero on each division the remainder is noted. The remainders are copied bottom up wise to give the binary equivalent of the decimal number.  For fractional numbers

the number is divided into two parts. The whole number part and the fraction part. The whole number is repeatedly divided by 2 while the fraction is repetitively multiplied by 2 until the fraction becomes zero or starts recurring. (Repeating it self)  Steps

1. First write the place values starting from the right hand side.

2. Write each digit

under its place value. 3. Multiply each digit by its corresponding place value.

4. Sum up the products.  Both positive and negative numbers can be represented in the computer memory during processing. various methods are used to represent negative numbers in the computer. These methods are: i. Ones compliment ii. Twos compliment The negative numbers are used to carry out subtraction in the computer arithmetic operations. Signed magnitude  In decimal numbers, signed number has a prefix + for a positive number e.g. +3210 and - for a negative number e.g. -3210. in binary, a negative number may be represented by prefixing a digit 1 to the number while a positive number may be represented by prefixing a digit 0. i.e. 1710  100012 (unsigned) -1710  To indicate its a negative number we add an extra bit (1) 100012 +1710  To indicate its positive we add an extra bit (0) 100012  Binary Coded Decimal (BCD)  Extended BCD code / standard BCD code  Extended Binary Coded Decimal

Interchange Code (EBCDIC)

 American Standard Code for Information

Interchange (ASCII)  BCD is a 4 bit code used to represent

numeric data only. For example, a number like 3 can be represented using binary coded decimal as 00112. BCD is mostly used in simple electronics devices like calculators etc.  This standard binary coded decimal is an enhanced format of binary coded decimal (BDC) its a 7-bit representation scheme which can represent non numeric characters. This allows 64 characters to be represented. For example letter A is represented as 1100012 using standard BCD code.  EBCDIC is an 8-bit character coding

scheme used primarily in IBM computers. A total of 256 (28) characters can be coded using this scheme. For example letter A is represented as 110000012 in EBCDIC code.  ASCII is a 7-bit code, which means that only 128 characters can be represented. There is an 8th bit to this coding scheme which can provide for 256 characters. The 8th bit coding scheme is referred to as an 9-bit ASCII for example letter A is represented as

10000012 in ASCII code 1. Differentiate between analog and digital data. 2. Define the following terms:

a. Amplitude b. Frequency c. Periodic time

3. Explain the role of a modem in communication. 4. State the reasons for use of binary in digital technology. 5. Using illustration, explain how data is represented:

In electronic circuits a. b. On magnetic media c. On CD-ROM

6. Distinguish between: a. A byte and a nibble b. Word and word length

1. Analog data is a type of data that is continuous in nature

while digital data is in discrete form.

2. a). Amplitude is the maximum.

b). Frequency is the number of cycles per second. c). Periodic time is the time taken by a signal to complete a cycle.

3. A modem converts (modulates) data to be transmitted

over the telephone line from digital signal to analog form. At the receiving end, the modem attached to the receiving computer converts (demodulates) the analog signal to original digital form.

4. Devices designed using binary logic are simple, more

reliable and consume less energy. a). In electronic circuits  availability of high voltage on is interpreted as a 1 while low voltage off is interpreted as a 0. b). On magnetic media, arrangement of magnetic dipoles of iron oxide in one direction is interpreted as 1s while those that face in the opposite direction are interpreted as 0s. c). On the shiny surface of the CD are pits and lands. When a laser beam falls on the shinny surface, it is reflected and interpreted as a 1. On the other hand, when the laser beam takes on the pit or bump, there is no reflection and this is interpreted as a 0 bit. a). A byte is made up of seven or eight bits while a nibble is made up of four bits i.e. it is half of a byte. b). A word consists of two or more bytes while a word length is used as a measure of the number of bits in each word.  Convert the following base two numbers

into denary (base 10) numbers. a. 01012 b. 11112 c. 101011011102 d. 101111112 e. 10110112 f. 1110001112  Using the place value and log division methods convert each of the following base 10 numbers to their binary equivalents. a. 1010 b. 4310 c. 36510 d. 51210 e. 143 f. 95410 1. Convert the

following binary numbers to their decimal equivalents. a. 0.100112 b. 0.00102 c. 0.101012 d. 11.01102 e. 101.111102 f. 100.1102 2. Convert the

following decimal numbers into their binary equivalents. a. 0.63510 b. 0.45010 c. 2.50010 d. 5.162510 e. 7.187510 f. 0.35010 1. Convert the binary numbers to their decimal equivalents. 2. Convert the decimal numbers into their binary equivalents.

a. 0.5937510 b. 0.12510 c. 0.6562510 d. 3.37510 e. 5.937510 f. 4.7510 a. 0.1012 b. 0.011102 c. 10.10002 d. 101.001010011 e. 111.00112 f. 110101.01011102  Convert the following octal numbers to decimal

numbers. a. 778 b. 648 c. 1028 d. 12008 e. 10008 f. 1738 g. 1238 h. 7778 i. 3458 j. 1668 3458 k.  Convert the following octal numbers to their

binary equivalents. a. 2448 b. 2478 c. 1628 d. 5658 e. 2228 f. 33708 g. 14138 h. 13318 i. 63478 j. 466538  Convert the following hexadecimal numbers

into decimal numbers. a. 3216 b. CCD16 c. EFE16 d. 11916 e. 32816 f. ABD16 g. 10AFFD16 h. DDFF3416 i. 11ABDF16 j. CDFF3116  Convert the following hexadecimal numbers into binary

form a. 29416 b. 24716 c. EFD16 d. 90716 e. BAD16 f. CBDF16 g. 585C16 h. ABCD16 i. 55C3A16 j. 33111CF16 k. Convert 1111000110111 to its hexadecimal equivalent. a. 10100101002 b. 10010001112 c. 11101111111012 d. 1001000001112 e. 1011101011012 f. 11001011110111112

g. 1011000010111002 h. 10101011110011012 1010101110000111 i. 0102 1100110001000100 01110011112 IE3716

j.

k. 1. 100012 2. 101102 3. 110012 4. 1100112 5. 10110012 6. 101012 7. 10001112 8. 1111112 9. 10000002 10. 110010112 11. 10010112 12. 11110012

1. 11112 2. 0012 3. 101002 4. 10012 5. 1101012 1. 111112 2. 102 3. 10100102 4. 110001102 5. 100012

1. Convert the decimal number -7 to 8-bit binary using

ones and twos complement.

2. Using 8-bits length, find the twos complement of the

following decimal numbers. A)

-3110 -2810 B) C) -510

3. Using ones and twos complement perform the following

arithmetic operations. A) 1410  710 B) 2810  1210 C) 3410  3310 D) 10010  5010 E) 10210  6410 4. Convert the following

decimal numbers to their decimal binary equivalents. A) 78910 B) 57010 C) 4210 D) 3010

5. Find the sum of the

following binary numbers. A) 11102 + 11112 = B) 0012 + 1002 = C) 11012 + 10112 + 1002 = D) 10102 + 1012 = E) 1112 + 112 = 1. Explain the two types of

data signals.

2. Differentiate between A) Octal and decimal number systems.

B) Binary and hexadecimal

number systems. 3. Convert the following binary numbers to their decimal equivalents. 1. 1011102 2. 1010112 3. 01102 4. 101012 1. Analog and digital 2. A). Octal number system is a base 8 system while the

decimal number system is a base 10 system. B). Binary number system is a base 2 system while hexadecimal number system is a base 16 system.

3. A). 4610 B). 4310 C). 610 D). 2210

4. A). 11000101012 B). 10001110102 C). 1010102 D). 111102

1. Work out the following binary subtraction using direct, ones and twos complement methods. A) 11001  1101 B) 1000  101 C) 100011  111 D) 10101110  1000110 E) 10001000110  101 2. Find the ones and twos

complement of the following decimal number in binary form. A) -7510 B) -8010 C) -10010 3. Determine the value of X in the

equations: A) 1001102  X2 = 0010102 B) X2 + 11012 = 7010

4. Work out the decimal equivalents of the following binary numbers. A) 0.100102 B) 101.112 C) 11.1012 D) 0.0012

5. Work out the decimal equivalents of the following binary numbers. A) 0.3510 B) 2.5010 C) 0.2010 D) 7.12510

1. A). 101012 B). 1012 C). 111002 D). 11112 E). 10102 2. A). 11002 B). 0112 C). 111002 D). 11010002 E). 100010000012

1. A). 0.562510 B). 5.7510 C). 3.62510 D). 0.12510 2. A). 0.0101102 B). 10.12 C). 0.00112 D). 111.0012

3. A). 111002 B). 1110012

1. Write down the character represented by the following

codes: A) ASCII

0110000 0110111 ii. iii. 1000011 iv. 1011001

i.

B) EBCDIC

1. 11110000 2. 11110111 3. 11000001 4. 01011101  Data  this is a collection of raw facts (figures, letters,

characters etc) that convey little meaning by themselves.

 Information  this refers to data that has undergone

processing and is meaningful to the user when he/she need it, in the form he needs and at the time he/she need it.

 Data processing  refers to the process of

transforming raw facts into meaningful output (information)

 Data processing cycle  refers to input process output stages that data goes through to be transformed into information. 1. Data collection  this involves looking for or getting the data from its point of origin for processing purpose.

2. Data input  this is the process where the collected data is converted from human readable form to machine  readable form.

3. Processing  this is transformation of input data by the central processing unit to a more meaningful output.

4. Output  this is the final activity of data processing

cycle which produces the desired output (information). The information is then distributed to the target groups.  This refers to the transfer of data from the point of collection (source) of the point where processing is to be done. Transmission can be electronically through computer  to  computer, physically by the post office etc. Verification  this involves checking that what is on input document is exactly the same as what is entered into the computer.

Validation  this is identification and removal of errors by the computer through the control of the program.  Transcription errors  these errors occurs during data entry. These errors includes misreading errors and transposition errors.

 Computational errors  they occur when an arithmetic operation does not produce the expected results. They include overflow errors, truncation errors and rounding errors.

 Algorithm or logical errors  these errors occurs

as a result of wrong algorithm design.  They are brought about by incorrect

reading of source document by the user and hence entering wrong values. This may be caused by bad hand writing or confusion on source document. E.g. the number 5 can be typed as s or letter 0 typed as Zero.  These errors occurs as a result of

incorrect arrangement of characters. i.e. putting characters in the wrong order. E.g. the user may enter 542 instead of 542. transcription errors can be eliminated by use of data capture devices.  This errors occurs if the result from a

calculation is too large to be stored in the allocated memory space. E.g. if the memory space can accommodate an 8-bit number and the results from arithmetic is 9-bit number.  This result from having real numbers that

have a long fractional part which cannot fit in the allocated memory space. The computer cut off the extra characters from the fraction part. E.g. a number like 0.854692 can be truncated to four digits as 0.854.  This refers to whether the information is available when it is needed, and if its outdated when it is received or when it is used. If information is not available when needed or its outdated by the time its used then has little or no value in decision making.  Threats to data integrity can be minimised

through the following; Using error detection and correction software when

transmitting data.

Design user interfaces that minimizes chances of

invalid data entry.

Using devices that capture data directly from source

e.g. scanners etc.

Control access to data by enforcing security

measures.

Back up data preferably on external storage media. Manual data processing

 In this method staff in an organisation uses the laid down procedures and rules to collect data, process and distribute information to relevant departments for use. The tasks are done manually with a pen and a paper. No machines are used to process data instead they use simple tools like tables and rulers.

 Mechanical data processing

 Mechanical systems are those where staff use various mechanical machines like calculators, typewriters, cash registers duplicating machines etc to perform operations.  In this system, data is

manipulated using electronic machines to produce information. This method is faster and more accurate than the manual and mechanical where large volumes of data are to be processed. This method involves the use of computers and other electronic machine like mobile phones, washing machines, modern digital TVs etc.  Information takes up less space than the

manual system.

 Enhance data integrity and reduces

duplication.

 Offers faster access and retrieval of data.  Its much easier to update or modify

information.  A computer file is made up 3 elements.

 Characters  this is the smallest element in a

computer file and refer to a letter, number, symbol that can be entered, stored and output by a computer.

 Field  a field is a single character or a collection of

characters that represents a single piece of data. For example in employees record, the name of employee is a field.

 Records  is a collection of related fields that

represents a single entity. For example in employees record, details of each employee in a row. E.g. Name, IDNO, sex, Department etc make up a record. Computer files can be viewed in two ways.  This is the main file that contains

permanent records about a particular item or entries. The master file contains both static and dynamic fields. For example a payroll system might keep a master file containing employees personal details (name, address, date of birth, sex etc) which rarely change (static fields) and data describing the earnings and deductions which frequently change (dynamic fields).  This file includes input and output files for holding temporary incoming or outgoing data. It contains data about an organisation activities taking place for some period of time. This file is used to update dynamic data on master files.  These files are created from existing

transaction or master files. They are used where data is to be processed sequentially. Data or records are first sorted in a particular format for example they are arranged in ascending or descending order of the key field and stored in the sort file.  Updating  refers to changing data in master file to reflect the current status.

 Referencing  happens when it is made to

particular records to ascertain what is contained therein. The activity does not alter the contents of master file from a file.

 Sorting  this entails arranging of file contents into some pre  determined sequence of the key field, which occupy the same position on the records.  Merging  the process that combines the

contents of two or more input files into one output files.

 Matching  the input files records are

matched/compared to ensure that records exist in both the files.

 Summarizing  the records of interest from the file are accumulated to form a record in the output file.

 Searching  it entails looking for the record of

interests from the file.  Hit rate  hit rate is used to describe the

rate of processing of a master file in terms of its active records. For example, if 600 transactions are processed each day against a master file of 12,000 records, then the hit rate is said to be 5% i.e. *100  Volatility  this is the frequency with which records are added to the file or deleted from it. If the frequency is high, then the file is said to be volatile otherwise static.  Size  refers to the amount of data stored in the file. Its expressed in terms of the total number of records in the file.

 Growth  files will always grow as new

records are added to it.  In this organisation records are stored and accessed in a particular order sorted using key field. The key field is used to search for a particular record. Searching commences at the beginning of the file and proceeds to the tail of the file until the record is reached. Mainly used with magnetic tapes.  Simple to understand the approach.  Easy to organise, maintain and

understand.

 Reading a record requires only the key

field.

 Inexpensive input/output media and

devices are used.  In this organisation records are stored

randomly but accessed directly. To access a file stored randomly, a record key is used to determine where a record is stored on the storage media. Used in magnetic and optical disks.  Data may be accidentally erased or over written. Unless special precaution taken.

 Expensive hardware and software

resources are required.

 Relative complexity of programming.  System design around it is complex and

costly.  The records are laid out

contiguously one after the other in no particular sequence. The records are stored one after the other in the same order they come into the file and there exists no relationship between contiguous records. Used with magnetic tapes.  On-line processing  Time sharing processing  Real time processing  Multi-programming / multi-tasking  Distributed processing  Batch processing  Multi-processing  Interactive processing  In this processing the result of data

processing is available immediately. All the computer peripherals and equipments are under the direct control of the central processor. As soon as the input transactions are available, they are processed to produce the required information. The user can interact with the system at any time of processing using input/output facilities.  In this mode the central processor serves two or more users with different processing requirements (tasks). The central computer is available to a variety of uses, connected to the central computer via communication links who may wish to process their data and receive information. The processor time is divided out appropriately among the user task is into time slices. Control is switched from one job to another, under the influence of the operating system. The time slice is equal for all jobs and its assigned to jobs waiting in a queue. In one turn, only one slice is allocated to the job. The jobs in the queue are assigned the time slice from the head of the queue towards the tail. Jobs that require more time slices are chained to the tail queue. New jobs into the queue are added at the tail of the queue. The wholly processed jobs output results. The incomplete jobs go back to the tail of the queue to await their next turn.  In this mode, computer processes the incoming data as soon as it occurs, updates the transactions file and gives an immediate response that would affect the events as they happen. The main purpose of a real time processing is to provide accurate, up to date information hence better services based on a real situation.  This processing refers to dividing

(distributing) processing tasks to two or more computers that are located on physically separate sites but connected by data transmission media. For example, a distributed database will have different tables of the same database residing on separate computers and processed there as need arises.  This is processing mode where the

transactions are accumulated over a period of time and then proce3ssed at a pre-specified time to produce a batch of output. The data to be processed e.g. daily, weekly, monthly etc then processed at once.  Time lag between origination of the transactions and the information availability.

 Late information is not suitable in

situations where instant decisions are requires.

 Its difficult to provide the desired priority

scheduling.  This refers to the processing of more one

task at the same time on different processors of the same computer. In such systems, a computer may contain more than one independent central processing unit which works together in a coordinated way. At a given time the processor may execute instructions from two or more different programs or from different parts of one program simultaneously.  The need for direct information retrieval

and/or file interrogation.

 The control over the resources e.g. files,

input/output devices.

 The cost of acquiring the relevant hardware, software, media etc.

 The optimization of the processing time.  The time factor of the information for

decision making by mangers. 1. Define the following terms:

A) Data processing. B) Data processing style.

2. Using an illustration, describe the four primary stages of the

data processing cycle.

3. Outline the stages of data collection. 4. You may have come across the term Garbage In Garbage Out (GIGO). What is its relevance to errors in data processing.

5. Explain the two types of transcription errors. 6. State three types of computational errors. 7. Define the term data integrity. 8. Give three factors that determine the integrity of data. 9. State at least five ways of minimising threats to data integrity.

1. A). Data processing refers to the transformation of raw

data into meaningful output (information). B). Data processing cycle are the stages that data goes through during its transformation into information. The output may be used later as input to another processing task.

2. Data collection  data input  data processing

output.

3. A). Data creation.

B). Data transmission. C). Data preparation. D). Media conversion. E). Input validation. F). Sorting. The accuracy of data entry determines the accuracy of the output. A). Wrong entry due to misreading the source data e.g. entering C instead of G (transcription error). B). Transposition  interchanging values e.g. 396 instead of 369.

4.

5.

6. Overflow and underflow.

Truncation. Rounding. A). Data integrity refers to accuracy and completeness of data. B). Accuracy, timeliness and relevance. C). Banking up, enforcing security, using input devices that capture data directly from the source etc. 1. Distinguish between data and information. 2. Describe types of data processing methods. 3. State at least four advantages of storing data in computer files over the manual filing system. 4. State elements that make up a computer file. 5. Differentiate between a logical file and physical file. 6. Explain at least six types of computer files. 7. Distinguish between

A) Sequential and serial file organisation methods. B) Random and indexed-sequential file organisation methods.

8. Describe at least five types of electronic data

processing modes. 5. A logical file is viewed in terms

of what data items and processing operation may be performed on the data while a physical file is viewed in terms how data is stored and how it is to be processed.

6. A). Master file.

B). Transaction file. C). Reference file. D). Backup file. E). Report file. F). Sort file. 1. Data refers to raw facts that do not have much meaning while information refers to the meaningful output after processing.

2. Data processing methods: manual, mechanical and electronic.

3. A). Takes up less space.

B). Easier to update or modify. C). Faster access and retrieval. D). Enhances integrity.

4. A). Characters.

B). Field. C). Record. Answer of revision questions 2

In sequential file organisation, records are stored in a sorted order using a key field while in serial file organisation, records are not sorted in any way. In random file organisation, records are stored randomly but accessed directly. On the other hand, in indexed-sequential, records are stored sequentially but accessed directly using an index. On-line distributed  the data being processed is accessed, processed and updated in real time. Time-sharing-competing computers are allocated time slots to use computer resources. Batch processing  all the available jobs are processed in bulk all at once. Interactive processing  the computer presents the user with input screens / the user inputs data as processing continues. Real time  data being processed is updated online and the results thereof affect current processing logic. Multi-tasking  several computer programs / tasks run concurrently at the same time sharing resources in shifts. Multiprocessing  several programs / tasks run concurrently on different processors. Introduction

 Human beings have evolved

from the stone age to a highly sophisticated and advanced society by inventing things like the wheel, fire, transistors and todays ultra modern devices like computers. The idea of computers started way back in the nineteenth century. The first generation computers called Electronic Numeric Integrator And Calculator (ENIAC 1) were operated by plugging wires into a control panel that resembles the old telephone switchboards.

  A program  is an organised list of statements (instructions) that when executed, causes the computer to behave in a predetermined manner or carry out a defined task.

 Programming  refers to the process of

developing computer (instructions) programs used to solve a particular task.

 A computer program  is designed using a particular programming language. Each language has a special sequence or order of writing characters usually referred to as syntax.  This translates the source program line-

by-line, allowing the CPU to execute one line before translating the next. The translated line is not stored in the computer memory, hence every time the program is executed, it has to be translated.  This translates the entire source program into object code. The compiler translates each high-level instruction into several machine code instructions in a process called COMPILATION and produces a complete independent program that can be run by the computer as often as required without the original source program being present. Interpreters Translates the source program one statement at a time.

Compilers

Translates the entire source code at once before execution.

Translates the program each time it is run hence slower than compiling.

Compiled program (object code) can be saved on a storage media and run as required, hence executes faster than interpreted programs. Compiled programs require more memory as the object file are larger. Interpreted object code takes less memory compared to compiled program.  These languages are classified as low

because they can be easily understood by the computer directly or they require little effort to translate into computer understandable form. These languages are hardware oriented and therefore they are not portable. i.e. a program written for one computer cannot be installed and used on another.  These languages are very close to the

human language (English-like) and they can be read and understood even by people who are not experts in programming. These languages are machine independent. This means that a programmer concentrates on problem solving during a programming session rather than how a machine operates. In this language, instructions are written using binary logic. Given that data and instructions are in binary form, many lines of codes are needed to accomplish even a simple task like adding two numbers i.e. a program written in this language look like this.

11100110 00000011 19999991 00001111 10001101 10001111 11111111 10000011

The program code is hard for human to understand but its easily understood by computers.  This language is close to the machines vocabulary

rather than human beings vocabulary. It was developed in order to overcome the difficulties of understanding and using machine language. This language helps the programmers to write programs as a set of symbolic operation codes called Mnemonics. Mnemonics are basically shortened two or three letter words. A sample program written in Assembly language.

MOV SUB AX, 15 AX, 10 (move 15 to register Ax) (Subtract 10 from the value Ax)

Programs written in this language require an assembler to convert them into machine language.  Third generation languages (3GLS)  Forth generation languages (5GLs)  Fifth generation languages (5GLs)  Object Oriented Programming Language

(OOP)

 Web scripting languages  This generation languages is also called structured or procedural languages. A procedural language makes it possible to break a program into components called modules. Each performing a particular task. Structured programming has advantages because its flexible, easier to read and modify.  Pascal  was developed to help in the teaching and learning of

structured programming.

 Fotran  was developed for mathematics, scientists of

programs with mathematical expressions.

 Cobol  was designed for developing programs that solve

business problems.

 Basic  developed to enable students to easily learn

programming.

 C  used for developing system software e.g. the operation

systems. Its very powerful high level language because of its ability to provide programmer with powerful aspects/features of low level.

 Ada  this language is suitable for developing military, industrial

and real  time systems.  This generation make programming an even

easier task than the third generation language because they present the programmer with more programming tools. Examples of such tools are command buttons, forms etc. the 4 GLs are easy to learn and understand because they are user based. The languages syntax (grammar) is natural, near English language and use menus to prompts to guide a non-specialist or retrieve data with ease.  These languages are designed around the concept of solving problems by enabling the computer to depict human like intelligence. These programs are designed to make the computer solve the problem for the programmer rather than programmer spending a lot of time to come up with the solution.  The concept behind OOP languages is to look at a program as having various objects interacting to make up a whole. Each object has a specific data values that are unique to it (called state) and a set of the things it can accomplish called (functions or behaviour). This process of having data and functions that operate on the data within an object is called**Encapsulation**. Several objects can then be linked together to form a complete program. OOP has greatly contributed to development of**Graphical user** **interface operation system**and**application** **programs.**  These languages are used to develop or add functionalities on web pages. Web pages are hypertext documents created in a language called**HyperText Markup Language**(HTML). The languages consist of markup tags that tell the Internet browser that the file contains HTML-code information and is distinguished by a file extension of HTML. The markup tags define the various components of a World Wide Web document such as heading, tables, paragraphs, lists etc. HTML does not have the declaration part and control structures, hence its not considered as a true programming language. Due to its simplicity, it has many limitations and cannot be used alone when developing functional websites. Some special blocks of codes called**Scripts**may be inserted in HTML pages using scripting languages like JavaScript, VBScript etc in order to add functionality to HTML pages.  Javascript is a popular scripting language. Before writing your HTML program with a script inserted, make sure that you have the latest browser software installed on your computer. Older browsers may not have support for Javascript. If you are using Internet Explorer, it should be version 5.0 and above.  Open Notepad and key in the following program. Do not

write the numbers to the left of each line of code. 1.  2.  3. <TITLE>Scripting Example</TITLE> 4.  5.  6. <HI>we are the world<HI> 7.  11.  Creating a script using Javascript 3

 After typing the entire

program, save your file on the desktop as Example.html and then close the notepad. Notice that the icon to your file on the desktop look like that of the default web browser in your computer.

 To view the web page, double click the icon of the file Example.html on the desktop. Figure right shows as open webpage. Explanations of JavaScript

  The CPU understands machine language

directly without translation.

 They are stable and hardly crash or

breakdown once written.

 Running a program is fast, no compilation

is needed.

 They are economical in terms of the

amount of memory they use.  They are difficult and cumbersome to use

and learn.

 Require highly trained experts to both

develop and maintain programs.  Debugging programs is difficult.  They are machine dependent.  The programs are long.  The programs are portable (not machine

dependent).

 They are user friendly and easy to use and

learn.

 They are more flexible.  They are easy to debug.  They provide better documentation.  Require less time to code.  This refers to the understanding and

interpretation of a particular problem. To understand a problem one has to look for key words such as compute, evaluate, compare etc. a programmer identifies problems in the environment and seeks to solve them by writing a computer program that would provide the solution.  At this stage the programmer tries to determine

or define the likely input, processing and expected output using the keywords outlined at the problem recognition stage. The boundaries of the expected program are established and if several methods to solve the same problem are identified the best alternatives should be chosen. At the end of the stage requirement documentation for the new program is written.  This is the actual development of the programs processing or problem solving logic called**algorithm.**(A limited number of logical steps that a program follows in order to solve a problem). The programmer comes up with an algorithm after analysing the requirements specifications. Some of the programs are made up of one large block code. i.e. they are Monolithic while others are made of several units called modules which work together to from the whole program. In modular programming, each module performs a specific task. This approach makes a program flexible, easier to read and debug. This phase enable the programmer to come up with models of the expected program. The model show the flow of events and data throughout the entire program from input of a program.  This is the actual process of converting a design model into its equivalent program. This is done by creating the program using a particular programming language. The end result of this stage is a source program that can be translated into machine readable form for the computer to execute and solve the target problem. Program in Pascal Program AreaCircle (input, output); Const Pi = ; Var Radius, Area: real; Begin WriteIn (Enter the radius); ReadIn (radius); Area: = Pi*Radius*Radius; WriteIn (The area is, Area) End. Program in C++

#include<iostream.h> double radius, area; double pi = ; main () { cout<<Enter the radius; cin>>radius; area = pi*radius*radius cout<<The area is, area; return 0; } Pascal code C++ code

Program Areacircle (input, output);

#include<iostream.h> The header of the

programs. The statements in () and <> shows that the user inputs data via the keyboard and the program display information on the screen.

Const Pi = 3.142; double pi = 3.142;

A constant has been declared with a name pi and value 3.142.

Var Radius, area:real

double area, radius;

Real variables with fractional part have been declared.  After coding the program has to be tested and the errors detected and corrected. Debugging refers to detection and correction of errors that may exist in the program. Program testing involves creating test data designed to produce predictable output. They are two types of errors (bugs) that can be encountered when testing.  Syntax errors  they occur as a result of improper use of language rules. E.g. grammar mistakes, punctuation, improper naming of variables etc. these errors are detectable by translator and must be corrected before the program runs.  Desk checking / dry  run.  Using Debugging utilities.  Using Test Data.  Implementation and maintenance

Implementation.

 Review and maintenance.  Program documentation.  The programmer carries out trial runs of the new program. At each run he enters various data variations and extremes including data with errors to test whether the system will grid to a halt. A good program should not crash due to incorrect data entry but should inform the user about the anomaly.  This is the actual delivery and installation

of the new program ready for use, creating data files and train people to use the system. The new system will change the way things are done hence it should be reviewed and maintained.  This stage is important because of the errors that may be encountered after implementation. A program may fail due to poor use, hence proper training and post implementation support of users will reduce chances of having them entering invalid data that crash the program.  User oriented documentation  these type enables the user to learn how to use the program as quickly as possible and with little help from programmer.

 Operator oriented documentation  meant for

computer operators. E.g. Technician. It helps them to install and maintain the program.

 Programmer oriented documentation  written for

skilled programmers. It provides necessary technician information to help in future modification of program.  The statements must be short, clear and

readable.

 Pseudocode lines should be clearly

outlined and indented clearly.

 It should show clearly the start and stop of

executable statements and control structures.

 Statements must not have more than one

meaning.  Write of Pseudo code that can be used to prompt the user to enter two numbers, calculate the sum and average of the two numbers and then display the output on the screen

***Solution*** **START**

**Print Enter two numbers**

**Input x,y** **Sum  x + y** **Average = sum / 2** **PRINT sum** **PRINT Average** **STOP**  A flowchart is a diagrammatic

representation of a program in algorithms. It uses statements and symbols that have specific meaning. The symbols are of different standard shapes linked to show the order of processing. Each shape contains note stating what the operation is.  Ellipse: denotes the beginning and end of the

program algorithm.

 Parallelogram: used to denote an input or output operation. For example, READ A,B, PRINT SUM =A+B

 Rectangle: indicates that a processing or data

transformation is taking place. For example SUM =A+B.

 Rhombus: used to specify a condition. A condition

must evaluate to a boolean value (True or false) for the program to execute the next instructions.

 Connector: used as a connecting point or interface

for arrows coming from different directions.

 Arrow: used to indicate the direction of flow of the

program logic.  There should be only one entry and one

exit point of a program algorithm.

 Use correct symbol at each stage in the

flowchart.

 Avoid crossed flow lines.  Be as neat and tidy in drawing as possible.  General direction of flow in any flowchart

is from top to bottom, left to right.  Gives programmer good visual reference of

what the program will do.

 Serves as a program or system

documentation.

 Its easy to trace through from the start to

find the action resulting from a set of condition.

 Allows programmers to test alternative

solutions to a problem without over coding the program.  There are so many different ways to draw

them.

 its difficult to remain neat and uncluttered

if the logic is complex.

 Constructing a flowchart is time

consuming.

 They take up considerable space.  They are difficult to amend without

redrawing. Comparison between a pseudocode and a flowchart

  In this control structure, the computer reads instructions from a program file starting from the first top line and proceeding downwards one by one to the end. Hence sequential program execution enables the computer to perform tasks that are arranged consecutively one after another in the code.  This is used if only one option is available. All other options are ignored. For example if a school wants to reward only the students who have mean mark of 80 and above, it will be reward only those students who have attained 80% and above and ignore the rest. ***General Format***

IF < Condition > THEN Statements 1

ELSE

Statements 2

EndIf

***The algorithem will be:-*** IF fault = Serious THEN

Print RED CARD

ELSE

Print yellow Card

EndIf ***The pseudo code segment will be:-*** If Marks = 80 THEN

Grade = A

ELSE

If Marks = 60 THEN Grade = B

ELSE

If marks = 50 THEN Grade = D

Endif Endif Endif Endif End  Its an alternative to the nested IF. This selection is preferred to the Nested if in order to reduce the many line s of codes. Case selection can only be expressed using integers and alphabetic characters only. The Boolean expression should be CASE integer OF or CASW char OF  This is designed to execute the same block of code again and again until a certain condition is fulfilled. Iteration is important in situations where the same operation has to be carried out on a set of data many times. There are three main looping controls. THE-WHILE-DO LOOP REPEAT.UNTIL LOOP The FOR LOOP  In this structure the code is executed before testing the condition. The repeat loop stops when the Boolean statement returns a value. For example in the case of ATM discussed above the client can withdraw money until balance is zero. ***Example***

Pseudo code segment.

REPEAT

Withdraw cash Update account Until balance <0;  This structure is used where execution of

the chosen statements has to be repeated a predetermined number of times. For example if a program is to calculate the sum of ten numbers provided by the user. The FOR LOOP can be used to prompt the user to enter the 10 numbers at most ten times. Once the numbers are entered the program calculates and displays the sum.  Ushirika Society pays 5% interest on shares

exceeding Kshs 10,000 and 3% on shares that do not meet this target. However no interest is paid on deposits in the members bank account. Design a pseudo code for a program that would: a. Prompt the user for shares and deposit of a

particular member.

b. Calculate the interest and total savings. c. Display the interest and total savings on the screen

for a particular member. ***Pseudo code*** Start Input Name, share, Deposit If share > 10000 THEN Interest = 0.05*shares ELSE Interest=0.03*shares Endif Total savings = deposits + Interest + shares Print Name, Totalsaving, Interest Stop  Botswana has a population of 3,000,000 but this is falling by 4% each year. The island of Reunion has a population of 95,000 but this is increasing by 9% each year. a. Draw a flowchart that predicts the year in which the population of reunion will be greater than that of Botswana if the trend continues. Solution of example 2

 ***Pseudo code*** Start Bts: = 3,000,000 1R: = 95,000 Year: = 0 REPEAT

Bts = Bts - (Bts*(4 / 100))

1R = 1R + (1R*(9 / 100)) Year = year + 1 UNTIL 1R > Bts Print year Stop  Write a program that will allow the input of name of

student marks obtained in 5 subjects (maths, English, Kiswahili, computer, biology). The program should calculate the total and average marks for each student and assign the grades depending on the average marks obtained as follows. A 80  100 B 70  79 C 60  69 D 50  59 E Below 50 The program should then display each students name, total marks and average grade. If (AVG>60) AND (AVG<69) THEN Grade = C If (AVG>50) AND (AVG<59) THEN Grade = D ELSE Grade = E Endif Endif Endif Endif Print Name, Sum, AVG, Grade Until count = Number of students ***Pseudo code*** START REPEAT Print Enter name and subject marks Input Name, maths, English, Kiswahili,

Computer, Biology

Sum = Maths + English + Kiswahili +

Computer + Biology

AVG = sum / 5 If (AVG>80) AND (AVG<100) THEN Grade = A If (AVG>70) AND (AVG<79) THEN Grade = B 1. Open a text editor program on your computer like NotePad or

WordPad. Type the following program exactly the way it is in the editor.  <TITLE>This is my first a webpage</TITLE>
Hello World
   Save your work as webpage.html on the desktop. Make sure that the*Save As Type*box reads All Files before clicking the save button in order to avoid saving a text file with two extensions i.e. webpage.html.txt.

2.

3. 4. Close your text editor. Notice that your file on the desktop has the icon of the default web browser installed on your computer. Double click it to view the web page! Figure right shows a sample of the display expected when the file is loaded to the browser. If you have a colour monitor, it should look as below only that it will have black bold text on a red background!

5. Check your program and

change your background to blue, save then click the refresh button. What happens? 1. Define the term computer program. 2. What is programming? 3. State three advantages of high level languages over low level languages. 4. List four examples of languages and for each, state its most appropriate

application area.

5. Why is an executable file unique when compared to any other file? 6. Differentiate between a compiler and an interpreter. Why did early

computers work well with interpreters?

7. List the various examples of programming languages per generation. 8. State one advantage of machine language over the other languages. 9. Write the following in full

A) HTML B) OOP

10. Distinguish between source program and object code in programming. 11. Define the term encapsulation as used in object oriented programming.

1. A computer program is a set of instructions that directs a computer on how

to process a particular task.

2. Programming is the writing of computer programs. 3. A). Easier to learn and use.

B). Portable. C). Flexible. D). Easier to correct errors.

4. A). FORTRAN  used for developing business oriented programs.

B). COBOL  designed for developing business oriented programs. C). Pascal  mostly used as a teaching tool in structured programming. D). C  mostly used to create system software such as operating systems. E). Ada  suitable for developing real-time and industrial systems. It is the main file that is used to start the program.

5. 6. A complier translates the entire source program into machine readable form while an interpreter translates the source program to machine language line- by-line. Interpreters were used on early computers due to memory limitations.

7. A). First generation  machine languages.

B). Second generation  assembly languages. C). Third generation  Pascal, C, COBOL, BASIC, FOTRAN, Ada etc. D). Fourth generation  Visual Basic, Delphi Pascal, Visual COBOL etc. E). Fifth generation languages  PROLOG, Mercury, LISP, OCCAM etc.

8. A). The processor executes them faster.

B). They are more stable.

9. A). HTML  Hypertext Markup Language.

B). OOP  Object Oriented Programming language

10. Source program refers to a program that is not yet translated while object code refers to the program code that is in machine readable form.

11. Encapsulation refers to the process of joining data and instruction

together to form an object. 1. Give one advantage of compiling a program

rather than interpreting it.

2. Outline at least six stages of program development in their respective order.

3. Highlight two advantages of monolithic programs. 4. State two advantages of modular programming. In what stage of the development does program 5. documentation fall? Justify your answer.

6. Differentiate between a flowchart and pseudocode. 7. What is a program bug? 8. Explain why it is important to test a program

before implementing it. 1. A). Interpreters translate the source program one statement at a

time while compilers translate the entire source code at once before execution. B). Interpreters translate the program each time it runs hence slower than compiling. Compiled programs can be saved on a storage media. This means that it does not require any further transaction every time the program is run hence executes faster than interpreted programs. C). Interpreters translation takes less memory while compiled programs require more memory as the object code files are larger.

2. A). Problem recognition. B). Problem definition. C). Program design. D). Program coding. E). Program testing and debugging. F). Implementation.

3. A). They are difficult to test and debug.

B). They are difficult to modify or upgrade.

4. A). They are easy to test and debug.

B). They are easy to modify and upgrade.

5. Documentation is done at all stages of program

development.

6. A flowchart is a graphical representation of step-by-

step processing logic of a program while a pseudocode is a set of structured-English like statements that describe the step-by-step processing logic of a program.

7. Bugs refers to program errors. 8. To correct any syntax or logical errors.

1. State the factors you would consider when

A) Writing a pseudocode B) Drawing a flowchart

2. Using illustrations, explain at least six symbols used in

flowchart design.

3. Give one advantage of pseudocodes over flowcharts. 4. Write a pseudocode for a program that would be used

to solve the equation E = MC2

5. Draw a flowchart that would be used to classify animals according to sex. If a letter M is input the program should display Male otherwise it should display Female.

1. A). Pseudocode

1). Statements must be short and clear. 2). Statements should be unambiguous. 3). Should shoe start and stop. 4). Words used should be suggestive such as READ, PRINT, OUTPUT etc. B). Flowchart 1). A flowchart should have one entry and one exit point. 2). Use correct symbols. 3). The flow should be clearly indicated using arrows. Answer of review questions 3-2

3. Pseudocodes are easier to write and understand.

4. Start

Enter values form M and C E=M*C*C Display E

Stop 1. Define the term selection in relation to program

control structures.

2. State three types of control structures used in

programming.

3. Differentiate between looping and selection.

In what circumstance does looping depend on decision?

4.

5. List four selection controls used in writing a

program. 1. Selection refers to a situation where further program execution depend one making a decision from two more alternatives.

2. Sequence, decision and iteration. 3. Looping refers to a situation where the same block of code is executed repeatedly until a certain condition is fulfilled, while selection refers to a situation where further program execution depends on making a decision from two or more alternatives. 4. Looping may depend on decision if a condition has to be met

before the looping terminates or continues.

5. A). IFTHEN

B). IF.THENELSE C). Nested IF D). Case State three reasons why high level languages are better than low level languages. Explain why HTML is not true programming language. List three examples of forth generation programming languages. Describe the term structured programming. Define the term structured programming. A). State two reasons for documenting all the stages of program development. B). Give three types of program documentation in reference to programming.

1.

2.

3.

4.

5.

6.

7. Write HTML code that would display a green background, with the words

Hello on the screen. Draw a flowchart showing the general flow of the following:

The nested IF selection. The FOR loop. REPEAT.UNTIL loop.

A)

B) C) 1. A). They are portable

B). They are user friendly C). They are more flexible D). They are easier to debug

2. HTML is not a true programming language because it does not have a true format of a programming language. For example, it does not have a declaration part and control structures.

3. A). Visual Basic

B). Delphi Pascal C). Visual COBOL

4. Fifth generation programming languages are designed in a way that

enables programmers design programs that emulate human intelligence. In structured programming, a program is broken down into components called modules each performing a particular task.

5. 6. A). Reasons for documenting

i. There may rise a need to revise or modify it. ii. Other people may think of ways of improving your program by

studying at the documentation.

B). Types of documentation i. User-oriented. ii. Operator-oriented. iii. Programmer-oriented.

7.

<TITLE>Hello program </TITLE>
<CENTRE>Hello
   1. Write a program algorithm that would enable the user to enter student marks. The program should then determine whether the mark entered is a pass or fail given that the pass mark is 50.

2. Draw a flowchart for a program that is to prompt for N

numbers, accumulate the sum and then find the average. The output is the accumulated totals and the average.

3. Write a pseudocode that reads temperature for each

day in a week, in degree Celsius, converts the Celsius into Fahrenheit's and then calculate the average weekly temperatures. The program should output the calculated average in degrees Fahrenheit's. 3. START

Input temperature in  et initial day to 0

WHILE initial day 6 DO Input temperature in  F=32+(9C/5) Initial day=initial day + 1 Cummulative = cummulative + F END WHILE

Average weekly temperature = cummulative/7 Print Average STOP A lady deposits 2,000 shillings in a Microfinance company at an interest rate of 20% per annum. At the end of each year, the interest earned is added to the deposit and the new amount becomes the deposit for that year. Write an algorithm for a program that would track the growth of the deposits over a period of seven years.

1.

2. Mukumu took a loan of Ksh 400,000 from a local bank at an interest rate of 10% payable in four years. Assuming you wish to develop a computer program that will keep track of monthly repayments: Identify the input, processing and output A) requirements for such a program.

B) Design the algorithm for the program using a simple

flowchart and pseudocode. START Input initial deposit Input interest rate Set deposit to initial deposit Set year to 0

WHILE year < 7 DO Interest = Deposit*interest rate Total = Deposit + interest Deposit = Total Year = Year + 1 END WHILE PRINT Deposit, Year STOP  Soft systems  human activity are said to be

soft systems. They are said to be soft because:  Their boundaries may be fluid or keep on changing.  Their goals and objectives conflict.  Its difficult to precisely define exact measures of

performance for them.

 Hard systems  these are systems whose

goals and objectives are clearly defined and the outcomes from the systems processes are predictable and can be modeled accurately.  Deterministic system  these are systems whose output are known precisely by their inputs e.g. a computer system.

 Probabilistic system  these are systems whose

output can only be predicted but not knows precisely e.g. business and economic system organisation.

 Cybernetic systems  these are self controlling systems which adapt to the environment and regulate their own behaviour by accessing the feedback. They access their output and adjust the input e.g. human beings, plants systems 1. Holistic thinking 2. Sub systems 3. Processor 4. Objectives/purpose 5. Environment 6. Boundaries

Interdependence

7. 8. Feedback 9. Control 10. Inputs and Outputs 11. System Entropy  Holistic thinking  in this, a system is considered

as a whole. A combination of various components that makes up a system creates a complex whole whose overall goals are more sophisticated than those of the individual components.  Control  this is the

process by which the system adapts to changes in the environment in order to give the expected level.  Inputs and outputs  a system communicates with its environment by receiving inputs and giving outputs.  Entropy means decay. System decay naturally over time, hence it slowly becomes useless to the user either due to improvement in technology, new management or change in user requirements. Therefore it must be reviewed in order to improve it or develop a new one.  To provide the people within an

organisation with information to assist in decision making process.

 To provide responsive service to meet

user needs.

 To enable sharing of information.  To facilitate interaction and dissemination of data throughout the various level of organisation.  New changes in organisation  management

can introduce new changes, and they have to be implement to meet the needs of the organisation.

 Problems in the current system  the

undesirable circumstances in the current system that prevent the organisation from meeting its goal.

 New opportunities  if an opportunity presents

itself that can enable the organisations improve its services.  This approach relies mostly on the skills

and experience of individual staff members carrying out of the project. In this approach, the manual system is replaced with a computerized one without change in overall structure of the former system. Hence the weakness of the former system are not addressed, they are forwarded to the new system.  RAD model evolved from the theory that

business today heavily rely on information technology, hence, development and implementation of information system needs to be quick enough for the organisation to maintain a competitive advantage in the market place.  Problem recognition is the initial stage where the analyst

decides if the project is really necessary to look into, and if its necessary to start a new project. In problem definition, the problem must be thoroughly defined. A through survey of the problem is undertaken by identifying the problem, understanding it, and finding out of there is a possibility of getting a solution. Before a new system is designed, a special study will be carried out to establish the costs and benefits of a new system. The study is called**feasibility study.**Feasibility study of a system is accessed in four ways.  Operational feasibility  Technical feasibility  Economic feasibility  Schedule feasibility  The documents maintained in connection to the system are referenced. This forms a good starting point for the analyst to gain an overall insight of the existing system.

 Interview  this is a face to

face communication between the analysts as the interviewer and the affected personnel as interviewee. The questions are geared to getting the information needed by the analysts.  Make the interviewee feel they are being

summoned by the analysts.

 Some interviewees give answers which

are not actually proven facts but opinions.

 The interviewee may not fully open on some issues that may be personal.

 The interviewee may be suspicious of the intentions of the proposed system for fear of being displaced by new system.  A questionnaire is a

document containing a number of standard questions set to be asked to a larger number of people in order to gather information from them. The analyst is able to collect information from several key people in the organisation who may be affected by the current proposed system. Advantages of questionnaires  Answers filled in less tense environment.  Since they are filled and returned in privacy, more sincere responses are possible.

 Questionnaire provides many people with

the opportunity to provide input and suggestion.

 Questionnaire saves time especially where respondents are geographically scattered.  Its a slow way of facts gathering.  Designing questionnaires requires

expertise.

 Some questions can be easily

misunderstood hence ambiguous replies will be received.

 Analysis of questionnaires requires a lot of

time.  Concepts that are too difficult for non-

technical staff to explain can be observed.

 It helps the analysts become acquainted

with operational personnel.

 It helps the analysts acquire know how needed to assist in changes that have been recommended.

 Can correct hazy understanding or

erroneous impressions.  This is mostly used when actual data is

required but difficult to get through interviews, observation or questionnaires. Such data is collected using devices that automatically capture data from the source. E.g. video, cameras, tape recorders etc.  The output specifications entails activities like generation of reports used to facilitate decision making. The output can be in the form of reports either in hardcopy or softcopy. The quality of those reports is important. Formality of reports is important so that good quality reports are produced for easy understanding.  File requirement involves making an

informed decision on file required to store data and information in the system. The analyst should identify the number of files that will be needed by the system and determine the structure of each file. System design  This involves detailing the physical design of the system, its the how of the process. Once the logical design is put lined during system analysis, the analyst determines the physical design, which describes the hardware, software and operating procedures required to make system operational. Several tools are used for designing an information system. Examples are flowchart, data flow diagram, requirements.  This refers to coding, installation and

testing of the modules and their components such as outputs, inputs and files. The purpose of the construction is to develop and test a functional system that fulfills the business and design requirements.  The system is tested by entering some

test data to find out whether its output are as expected. The system is tested using the requirements specifications and the design specification to find out whether it meets all requirements specified.  This involves installing the system in the users computers, testing the installed system, converting from old system to the new one and training the users. System implementation involves: File creation and conversion. Change over. Staff training  Advantages of parallel changeover

 Provides a method of training in the new system.  Personnel become familiar with the new system prior

to actual changeover.

 Disadvantages of parallel changeover

 Costly to run two systems  Cross checking is difficult  Requires more staff hence more training required for

additional staff  Advantages of phase changeover

 Allow the system to be implemented quickly  Less costly  Failures of the system are limited  Causes minimal disruption

 Disadvantage of phase changeover

 Problems on ensuring that the first phase is

implemented and converted.  System maintenance is the adjustment

and enhancement or correction of errors after the system has been implemented. The reviewing involves going through the specification and testing the system after implementation to find out whether it still meets the original specification.  Report of fact finding which outlines methods used to collect data,

weakness of the current system and recommendation of the current system.

 Requirements specification which entails the output requirements, input,

hardware and software required for the new system.

 System flowchart which shows the overall functionality of te proposed

information system.

 Tables or file structures depending on the approach used in system

construction.

 Sample test data to test whether the new computerized information

system is working as expected.

 User manual which helps the user work with the new system with

minimal guidance. The manual contains information like  How to install, start the system  The interface of the system  How to carry out various tasks  Error correction and how to get help 1. Define the term information system. 2. Differentiate between soft systems and hard

systems.

3. List five characteristics of a system. 4. What is system control? 5. Why do we need feedback in a system? 6. Explain the tem system boundary. 7. State and explain three purposes of information

systems in organisations.

8. Define the term online analytical processing? 9. Draw a well labelled diagram that depicts a system that is controlled through feedback.

1. An information system is the arrangement of people, data,

processes and information that work together to support and improve the day-to-day business operations. In soft systems, goals are not clearly defined unlike in hard systems.

2. 3. A). Holistic thinking B). Subsystems. C). Boundary and environment. D). Purpose. E). Process. F). System entropy. G). Inputs and outputs. H). Open and closed systems. I). Control

4. A system control is a method by which a system adapts to changes in the environment in order to give the expected output or perform at the expected level. Feedback is needed in order to adjust controls for better performance of the system. System boundary is the scope within which a system component operates. A). Supports information processing tasks. B). Supports decision making. C). Supports sharing of information. 1. Explain three system development theories and methods. 2. State the main disadvantage of Rapid Application Development

method.

3. Define the term system development lifecycle. 4. At what stage does the system change hands from the development

stage to the users.

5. Highlight three circumstances that necessitate the development of

new information systems.

6. Define the term feasibility study as used in system development. 7. State four methods that can be used to gather information during

system development.

8. State two advantages of interview over questionnaires. 9. State two disadvantages of interview method when used for

information gathering.

10. Give one example of automated information gathering technique.

5. A). New opportunities.

B). Problems C). Directives.

6. Feasibility study is a special study carried out to establish the costs and benefits of a new system. 7. A). Interviews

B). Questionnaires C). Observation D). Study of available documents. E). Automated methods. 1. A). Traditional approach. B). Rapid Application Development (RAD) C). Structure approach. 2. The main disadvantage of

RAD is that the system may be weak due to quick development.

3. System development life cycle refers to the steps followed in developing a system for conception to review and maintenance. 4. At the implementation stage.

8. A). Non-verbal communication can be used or

observed. B). Questions can be rephrased for clarity. 9. A). It is difficult to organise for an interview due

to time constraint. B). The interviewee may not fully open up some sensitive issues due to security concern. 10. An example of automated information gathering

technique is the use of a video camera to compare motion pictures. 1. Outline the four areas that are considered

during the requirements specification stage. 2. Explain at least three factors that should be put

into consideration during output design. 3. State four factors that may be considered in

order to design a good file.

4. Explain why it is important to consider file backup and recovery strategies during file design.

1. A). Output B). Input C). Files D). Hardware and software requirements. 3. A). Record key field B). Type of data C). Length of each field D). Backup and recovery strategies.

2. A). Target i.e. the 4. Back up and recovery

audience. B). Frequency of report generation C). Quality and format

strategy helps in making sure that if the current file gets corrupted, it is possible to reconstruct the original file. 1. Outline seven steps followed in structured system

development.

2. Explain three tasks that are carried out during system

implementation.

3. Outline three disadvantages of questionnaires. 4. Explain the concept of proxemics in interviews. 5. Give an advantages of straight changeover over parallel

changeover.

6. Define the term file conversion. 7. Differentiate between a system flowchart and a program

flowchart.

8. Draw four system flowchart symbols and explain their

functions. 1. A). Problem recognition and

definition. B). Requirement specification. C). System design. D). System construction. E). System implementation. F). System review and maintenance.

2. A). File conversions. B). Staff training. C). Project management. D). Changeover

4. Proxemics refer to issues related to physical contact such as sitting arrangement during an interview. 5. Straight changeover is

cheaper to implement than parallel changeover. 6. File conversion refers to

changing files from one format to another.

7. A system flowchart is for the

entire system while a program flowchart is for a part or a module in the system. Therefore, several program flowcharts may be derived from a single system flowchart. 1. Define the term attribute. 2. Explain the importance of using automated methods in

fact finding.

3. Why is observation sometimes disadvantageous when

used in fact finding?

4. State one of the disadvantages of the traditional

approach in system development.

5. Outline the factors that should be considered when

sourcing for hardware and software resources required for a new system.

6. Outline some of the contents of a user manual that would help the user run the system with minimal guidance.

1. Entity attributes refer to characteristics of a particular entity. 2. Automated methods of data collection can be used in areas which

are not easily accessible.

3. A). The person being observed might alter his or her behaviour.

B). It may be time consuming.

4. The weaknesses of the former system are not addressed. 5. A). Economic factors. B). Operational. C). Services from the vendor.

6. A). Installation procedures.

B). User interface. C). How to carry out various tasks. D). Test data and expected output E). Troubleshooting guide