Intro - To Computer
Intro - To Computer
Dear learner, welcome to the course introduction to computer application. This course will enable you to understand the basic
knowledge and skills of computer.
The types of courses are listed below. So you are expected to read the notes and practice the activities carefully. This course is
composed all units. These are
Unit 1: Introduction to Computer
Unit 2: Organization of a computer system
Unit 3: Computer Architecture and Data Representation
Unit 4: Data Communication and Networks
Course objective
After studying and up on combination of these course students should be able to
Will be demonstrating how a practical understanding of computer and demonstrate the data communication networks
and problem solving using computers.
0
Information is the collection of meaningful facts and figures that can be used as a base for guidance and decision making.
Information is data that has been rearranged, processed organized, into a form perceived as useful by the recipient. Information is
data that has been processed in such a way as to be meaningful to the person who receives it. Information can be used for
Planning, Recording, Controlling, Measuring andDecision-making in an organization.
Hence we must combine, add to or process data in some way to make it meaningful or to change it to information.
Information-is a processed data that has a meaning to its users. It is informative about something. Information needs cognitive states
of its users i.e. demands awareness of data.
Data processing is therefore the manipulation and transformation of data in to more meaningful form (information). Think of data
as a "raw material" - it needs to be processed before it can be turned into something useful hence the need for "data processing".
Think of the data that is created when you buy a product from a retailer. This includes:
Time and date of transaction (e.g. 10:05 Tuesday 23 December 2003)
Transaction value (e.g. £55.00)
Facts about what was bought (e.g. hairdryer, cosmetics pack, shaving foam) and how much was bought (quantities)
How payment was made (e.g. credit card, credit card number and code)
Which employee recorded the sale
Whether any promotional discount applied
At its simplest, this data needs processing at the point of sale in order for the customer to receive a valid receipt. So the data about
the transaction is processed to create "information" - in this case a receipt. You can imagine that the same data would also be
useful to the manager of the retail store. For example, a report showing totals sales in the day, or which are the best-selling
products. So the data concerning all shop transactions in the day needs to be captured, and then processed into a management
report.
So that, Data are the raw material for information where asInformation is data that has been processed in such a way as to be
meaningful to the person who receives it. Note the two words underlined - "processed" and "meaningful". It is not enough for data
simply to be processed. It has to be of use to someone - otherwise why bother?! The information produced by the data processing
must be accurate, timely and full.
Dear student explain how data convert into information?
1.1.2. Information Technology
Dear student!Information technology is technology that merges computing with high-speed communications links carrying
data, sound, and video. This merging of computers with communication technology is produced through a phenomenon called
technological convergence. This technological convergence brings several industries using devices that can exchange
information in electronic format used or understood by computer. The current century that we are living is termed as Information
Age. Its parents are computer technology and communication technology.
N.B: The most important consequence of information technology is that it is producing a gradual fusion of several important
industries in a phenomenon that has been called technological convergence.
Technological convergence (or Digital Convergence) technological merger of several “industries” through various devices that
exchange information in the electronic or digital format used or (understood) by computer. Industries to mean computers,
communications, electronics, entertainments and mass media.
Example: Web TV technology: is one of the technological mergers that allow adding set-top boxes to your TV, so that they can
access and view the WWW, internet over the TV screen.
Effects of IT
Change conventional meaning of time, distance and space.
Physical location that are associated with work, leisure become meaning less.
Nature of work is changing and changing fast.
Entire industries are redefined using Internet and WWW(world wide web)
Technological convergence: is derived from a combination of two recent technologies: computers and communications.
1
Computer technology
A computer is a programmable, multiuse machine that accepts data, raw facts and figures and processes, or manipulates, it into
information we can use, such as summaries or totals. Its purpose is to speed up problem solving and increase productivity.
Communications technology
Communications, or telecommunications, technology consists of electronic and electromagnetic devices and systems for
communicating over long distances.
Examples are telephone, radio, broadcast television, and cable TV.
Information Technology is a science concerned with information, that is, representation, storage, manipulation or processing and
presentation of information. Like any other science, which uses different devises and lab equipments, Information technology
uses a special device called computer.
1.1.3. Computer Science
Dear learner!Computer Science is concerned with information. It is devoted to the representation, storage, manipulation and
presentation of information. Computer Science uses information transferring device. The unique aspect of computer Science is the
Computer, computer being a general-purpose, electronic, stored-program device.
Just like any other sciences, computer science is also engaged in theoretical studies which do not necessary involve computers
directly. The study of structures and models of programming language is one such area of theoretical commuter science.
Computer Science is about data, programs, computers and people. It is a young science and is rich in challenges and applications,
since computing systems are every where: in Science and engineering, medicine, design and manufacture commerce and public
service, defense, transportation, arts and media, entertainment and the home. Information processing technology allows many
people to use computing systems to create, store, transform, and communicate written, aural and visual information.
What is Computer?
Dear learner!The word computer is derived from the Latin word “compute” which means to “calculate” or “compute”.
Therefore, computer is electronic device which is devised to perform calculations and controlling operations. Note that
calculation can be numeric (like addition, subtraction...) and nonnumeric (like logical operation using and, or ...)
A computer can be defined as an electronic machine capable of accepting data in the form of facts and figures , applying
prescribed process to the data , and supplying the results of these processes as meaningful information.
Computer is a device that enables you to process information automatically and in accordance with instructions that you give it.
Computers have become part of the day-to-day activities of people around the globe. It is difficult to think any field that does not
involve or is not affected by computer. Computer is taken as future development tool by providing access to information.
Formal Definition:Computer science or computing science is the study and the science of the theoretical foundations of information
and computation and their implementation and application in computer systems. Computer science needs its own special devices like
chemistry has “test tube” for its practical aspect. This device is called computer.
The word computer generated from a Latin word “compute” which means “to calculate” and can be applied to abacus or any adding
machine as to the modern computer. A computer is any calculating device or machine, which is electrical, mechanical or
electromechanical.
But that doesn’t mean that computer performs only calculation. However, the term “Computer” has come to mean a special electronic
device having certain definite characteristics. Generally, a computer is an electronic device that takes an input, process it under a set of
instructions called program, produce an output and store the result for future use. Why we need computer is that if we want some
problems to be solved, in nowadays computers can solve problems if the problem can be solved in to logical steps. From these
definitions, what a computer in general does is that-
2
Disseminating
- To store and process large amount of information with high speed and accuracy;
- To transmit information across continents via communication channels;
- To perform complex mathematical computations and make comparisons;
- To perform repetitive process with great ease, speed and reliability;
- For research purposes;
- For diagnostic purposes;
- For weather forecasts etc.
1.2.2. Characteristics of Computers
The increasing popularity of computers has proved that it is a very powerful and useful tool. Computers have the following
characteristics:
Automatic. Computers are automatic; once started on a job, they carry on until the job is
finished, normally without any human intervention.
Speed. A computer is a very fast device. Units of timeare microseconds (10-6 second),
nanoseconds (10-9 second) or even picoseconds (10-12). A powerful computer is capable of performing several billion (10 9)
simple arithmetic operations per second.
Accuracy. The accuracy of a computer is consistently high and the degree of accuracy of a
particular computer depends upon its design.
Diligence. Unlike human beings, a computer is free from boredom, tiredness, lack of
concentration, etc., and hence can work for hours without creating any error and without grumbling.
Versatility. Versatility is one of the most wonderful things about the computer. A computer is
capable of performing almost any task provided that the task can be reduced to a series of logical steps.
Power of Remembering. A computer can store and recall huge amount of information
because of its secondary storage capability.
Although computers can be applied in different activities there are activities that computers can’t perform. For example, a
computer can’t do the following:-
No I.Q. A computer is not a magical device. It can only perform tasks that a human being can.
The difference is that it performs these tasks with unthinkable speed and accuracy. It possesses no intelligence of its
own. Its I.Q. is zero. It has to be told what to do and in what sequence. Hence, only the user can determine what tasks a
computer will perform.
3
No Feelings. Computers are devoid of emotion. They have no feelings and no instinct because
they are machines. Computers cannot make judgments on theirs own. Their judgment is based on the instructions given to
them in the form of programs that are written by us.
Computers can’t decide how to be programmed. It is always persons or humans that are responsible for programming the
computers.
Computers do not provide their own inputs unless people provide it with the inputs.
Interpretation of data and implementation of decisions is always left for humans
In general terms computers can use for the following purposes:-
To make the work easy.
To do the work efficiently (Efficiency).
To improve the quality of the result of work (Quality).
To assist the work (Assistance).
To finish the task faster (Speed).
1.2.3. Evolutions of Computers
Over the last 50 years computers have been used in many great human achievements including the manned/unmanned exploration
of space, automation in the workplace, technological advancement and of course the internet, to name a few. The following topics
discuss some important event in the evolution of computers:-
The first actual calculating mechanism known to use is the abacus, which is thought to have
been invented by the Babylonians sometime between 1,000 BC and 500 BC. Although the abacus does not qualify as a
mechanical calculator, it certainly stands proud as one of first mechanical aids to calculation.
In the early 1600s, a Scottish mathematician called John Napier invented a tool called Napier's
bones, which were multiplication tables inscribed on strips of wood or bone. Napier also invented logarithms, which greatly
assisted in arithmetic calculations.
In 1621, an English mathematician and clergyman called William Oughtred used Napier's
logarithms as the basis for the slide rule. However, although the slide rule was an exceptionally effective tool that remained in
common use for over three hundred years, like the abacus it also does not qualify as a mechanical calculator.
Blaise Pascal is credited with the invention of the first operational calculating machine. In
1640, Pascal started developing a device to help his father add sums of money. The first operating model, the Arithmetic
Machine, was introduced in 1642. However, Pascal's device could only add and subtract, while multiplication and division
operations were implemented by performing a series of additions or subtractions.The first mechanical adding machine was
invented by Blaise Pascal in 1642
The first multi-purpose, i.e. programmable, computing device was probably Charles Babbage's
Difference Engine, which was begun in 1823 but never completed. Charles Babbage is considered to be the father of modern
digital computer. A more ambitious machine was the Analytical Engine. It was designed in 1842, but unfortunately it also was
only partially completed by Babbage. Babbage was truly a man ahead of his time: many historians think the major reason he was
unable to complete these projects was the fact that the technology of the day was not reliable enough. In spite of never building a
complete working machine, Babbage and his colleagues, most notably Ada, Countess of Lovelace, recognized several important
programming techniques, including conditional branches, iterative loops and index variables.
A machine inspired by Babbage's design was arguably the first to be used in computational
science. George Scheutz read of the difference engine in 1833, and along with his son EdvardScheutz began work on a smaller
version. By 1853 they had constructed a machine that could process 15-digit numbers and calculate fourth-order differences.
The Universal Automatic Computer (UNIVAC I) was the first digital computer .This machine
was one of the first commercial uses of computers was by the US Census Bureau in 1951.
1.2.3. Generation of Computers
Computer’s efficiency and functionality has been enhanced since the emergence of different types of computers technologies.
This development process can be classified as generations of computers. ”Generation” in computer talk is a step in technology.
The major characteristics that distinguish the various generations are the following:-
Dominant type of electronic circuit elements used.
Major Secondary storage Medias.
Computer languages used.
Type or characteristics of operating system used.
Memory access time.
First Generation Electronic computers (1942-1955)
Vacuum tubes were used as the switching devices. The first general purposes programmable electronic computer was the
Electronic Numerical Integrator and Computer (ENIAC), built by J. Presper Eckert and John V. Mauchly at the University of
Pennsylvania.
Through the use of a memory that was large enough to hold both instructions and data, and using the program stored in
memory to control the order of arithmetic operations, another first generation computer, EDVAC (Electronic Discrete Variable
Computer), was able to run orders of magnitude faster than ENIAC.
The memory of these computers was constructed using electromagnetic relays and all data and instructions were fed into the
system from punched cards.
The instructions were written in machine language and assembly language, the latter only in the 1950s.
4
Second Generation Electronic computers (1955-1964)
Transistors (invented around 1952) were used as the switching devices. Transistors are much smaller in size, more rugged,
more reliable, faster, and consume less power than their vacuum tube counter-parts. The second-generation computers were thus
more powerful, more reliable, less expensive, smaller, and cooler to operate than the first-generation computers.
The memory of the second-generation computers was composed of magnetic cores. Magnetic cores were small rings made of
ferrite, which could be magnetized, in either clockwise or anti-clockwise direction.
High-level programming languages like FORTRAN, COBOL, ALGOL, and SNOBOL were developed, which were easier to
understand and work with than assembly and machine languages.
Third Generation Electronic computers (1964-1975)
Around 1964 Integrated Circuits (ICs) made their appearance and the third-generation computers were constructed around
these ICs. ICs are circuits consisting of several electronic components like transistors, resistors, and capacitors grown on a single
chip of silicon eliminating wired interconnection between components. ICs were much smaller, less expensive to produce, more
rugged and reliable, faster in operation, dissipated less heat, and consumed much less power than circuits built by wiring
electronic components. The third-generation computers were thus more powerful, more reliable, less expensive, smaller, and
cooler to operate than the second-generation computers.
Parallel advancements in storage technologies allowed the construction of larger magnetic cores based memory, and larger
capacity magnetic disks and magnetic tapes. Third-generation computers typically had a few megabytes (< 5 MB) of main
memory and magnetic disks capable of storing a few tens of megabytes of data per disk drive.
Efforts were made to standardize some of the existing high-level programming languages like FORTRAN IV and COBOL 68.
Programs written with these languages were thus able to run on any computer that has these compilers. Other high-level
programming languages like PL/1, PASCAL and BASIC were also introduced in this generation.
Fourth Generation Electronic computers (1975-1989)
The average number of electronic components packed on silicon doubled each year after 1965. The progress soon led to the
era of large scale integration (LSI) with over 30000 electronic components integrated on a single chip, followed by very large-
scale integration (VLSI) when it was possible to integrate about one million electronic components on a single chip. This
progress led to a dramatic development – the creation of a microprocessor. A microprocessor contains all the circuits needed to
perform arithmetic and logic operations as well as control functions, the core of all computers, on a single chip. Hence it became
possible to build a complete computer with a microprocessor, a few additional primary storage chips, and other support circuitry.
It started a new social revolution – the Personal Computer (PC) revolution.
Magnetic core memories were replaced by semiconductor memories, with very fast access time. Hard disks also became
cheaper, smaller in size, and larger in capacity and thus became the standard in-built secondary storage device for all types of
computer systems. Floppy disks also became very popular as a portable medium for moving programs and data from one
computer system to another.
The fourth-generation also saw the advent of supercomputers based on parallel vector processing and symmetric
multiprocessing technologies.
Fourth-generation period also saw the spread of high-speed computer networking. LAN and WAN became popular for
connecting computers.
Operating systems like MS-DOS and Windows made their appearance in this generation. Several new PC-based application
packages like word processors, spreadsheets and others were developed during this generation. In the area of large-scale
computers, multiprocessing operating systems and concurrent programming languages were popular technological developments.
The UNIX operating system also became very popular for use on large-scale systems. Some other software technologies that
became popular during the fourth-generation period are C programming language, object-oriented software design, and object-
oriented programming.
Fifth Generation Electronic computers (1989 – Present)
The fifth Generation was characterized by VLSI technology being replaced by ULSI (Ultra Large Scale Integration)
technology, with microprocessor chips having ten million electronic components. In fact, the speed of microprocessor and size of
main memory and hard disk doubled almost every eighteen months. The result was that many of the features found in the CPUs
of large mainframe systems of the third and fourth generations became part of the microprocessor architecture in the fifth
generation. More compact and more powerful computers are being introduced almost every year at more or less the same price or
even cheaper.
The size of main memory and hard disk storage has increased several folds. Memory size of 256 MB to 4 GB and hard disk
sizes of the order of 100 GB are common. RAID (Redundant Array of Independent Disks) technology has made it possible to
configure a bunch of disks as a single hard disk with a total size of a few hundred gigabytes. Optical disks (CD-ROMS, DVDs)
also emerged as a popular portable mass storage media.
This generation also saw more powerful supercomputers based on parallel processing technology.
Communication technologies became faster day-by-day and more and more and more and more computers got networked
together, resulting in the Internet.
In the area of operating systems, some of the concepts that gained popularity during the fifth-generation include micro kernels
(operating systems being modeled and designed in a modular fashion), multithreading (a popular way to improve application
performance through parallelism), and distributed operating systems (an operating system for a set of computers networked
together with the aim of making the multiple computers of the system appear as a single large virtual system to its users).
5
In the area of programming languages, some of the concepts that gained popularity during the fifth-generation include JAVA
programming language, and parallel programming libraries like MPI (Message Passing Interface) and VPM (Parallel Virtual
Machine).
The characteristics that appeared in each generation are summarized in the following table:-
Generation Time Circuit Elements Storage Languages Operating Access Time
Devices Systems
First 1950s Vacuum Tubes Punched Machine Operator 1 Millisecond
Cards &Assembly controlled
Second 1959- Discrete Magnetic COBOL Batch 10Microsecon
1964 transistors tape FORTRAN ds
Third 1965- IC Magnetic Structured Interacti 1nanoseconds
1970 disk language ve
Fourth Late VLSI Mass Applications Virtual 100nanosecon
1970s Storage oriented ds
1.2.4. Types of computer
Dear learner!Computers can be categorized broadly by their application, the type of data they process and their size.
By Application
General-purpose computers can be used for different purposes. We need only have appropriate software to use a general-
purpose computer to perform a particular task. For example, the personal computers (PCs) currently in wide use are general-
purpose computers.
Special-purpose computers are specifically designed to perform one particular task. A computer that guides a missile is, for
example, a special-purpose computer.
By Type of Data
Analog computers process data that vary continuously with time, such as variations in temperature, speed, chemical composition
of petroleum products, or current flowing through a conductor. Analog computers operate by measuring. They deal with
continuous variable. They do not compete directly with numbers, rather, they operate by measuring physical magnitude such as
pressure temperature, voltage, current and etc. Generally, they are computers designed for special purpose
E.g. Thermometer, voltmeter, speedometer
Digital computers process digital data. All the PCs currently in wide use are digital computers. Digital computers deal with
discrete variables. They operate by counting rather than measuring. They operate directly upon numbers (or digits) that represent
numbers, letters, or other special symbols. Digital computer is a computing device in which data is represented by discrete
numerical quantities. It is represented by discrete voltage states (1s and 0s). They have very high accuracy and speed than analog
ones.
E.g. Personal Computers
By Size
Supercomputers are the most powerful and expensive computers; they are used for problems requiring complex calculations. A
supercomputer is generally characterized as being the fastest, most powerful, and mot expensive computer. Super computers are
largely used by research organizations, military defense systems, national weather for casting agencies, large corporations,
aircraft manufacturer, etc. The CRAY and CYBER are typical examples of the supercomputers.
Mainframe computers are mainly found in large organizations. They can serve hundreds or thousands of users, handling
massive amounts of input, output and storage. They are used as e-commerce servers handling transactions over the Internet. To
give some example, mainframes can handle the processing of thousands of customer inquiries, employee paychecks, student
registrations, sale transactions, and inventory changes.
Minicomputers more properly called medium-sized computers; are smaller, slower and less expensive than mainframes. Minis
perform many of the tasks that a mainframe can, but on a reduced scale. They can support a network of user terminals, but not as
many as mainframes can. They may be used as network servers and Internet servers. They are popularly used in scientific
laboratories, research centers, universities and colleges, engineering firms, industrial process monitoring and control etc.
Workstations are powerful single-user computers used for tasks that require a great deal of number-crunching power, such as
product design and computer animation. They are often used as network and Internet servers. Work stations were powerful
sophisticated machines that fit on a desk, cost much and were used mainly by engineers and scientists for technical purposes.
Microcomputers, or personal computers, are meant for personal or private use. Microcomputers come in a variety of sizes and
shapes for a variety of purposes. Basically they can be grouped into three: Laptop, Palmtop and Desktop computers. Laptop
computers are smaller versions of microcomputers about the size of a briefcase designed for portability. Palmtop computer is the
smallest microcomputer that is about the same size as a pocket calculator. Desktop computer is the most widely used type of
personal computer (microcomputers).
1.3. Application areas of computer
We can use computers in an endless area but to list some of it:
1. Commercial Application
In this area of application the emphasis is on data processing. It covers the use of computers for clerical, administrative and
business uses.
2. Scientific , engineering and research applications
Here, the emphasis is scientific processing .This covers the use of computers for complex calculations, the design, analysis, and
control of physical systems, and the analysis of experimental data or results.
6
3. Computers in Education
Computers are widely used in the educational field, for instruction and for administration. Computers can provide instructions and
ask questions of the user. This kind of instruction is called CAL (Computer Aided Learning) or CAI (Computer Aided
Instruction).
4. Computer in Medicine
Computers can be used as an aid to medical research by analyzing data produced from produced from the trial of drugs, to aid
diagnosis and to hold details of patients.
5. Computers in Manufacturing
Some aspects of computer in manufacturing are: stock, and production control and engineering design. The design manufacturing
and testing processed are all becoming increasing computerized, hence the terms CAD (Computer Aided Design), CAM
(Computer Aided Manufacturing) are used in this area of application.
Checklist
You have know complete the first unit and you need to check whether have understood the basic concept in this unit. Try all the
questions and if answer all questions go to the next unit. If not you have to go back and read the appropriate section again until you
grasp the important points.
Chapter Questions
1. What is the difference between data and information?
2. Write a concise definition of the term "computer".
3. List at leastfour advantages of computers over human beings.
4. Write five major characteristics that distinguish the various generations of computers.
5. Write classification of computers based on their size. (Hint: from the highest to smallest)
CHAPTER TWO: ORGANIZATION OF A COMPUTER SYSTEM
Dear learner!Even though the size, shape, performance, reliability and cost of computers have been changing over the years the
basic logical structure as proposed by Von Neumann has not changed. No matter what shape and size of computers, all the
computers perform the following five basic operations for converting raw input data into information useful to their users:
1. Inputting: The process of entering data and instructions into the computer system.
2. Storing. Saving data and instructions so that they are available for initial or for additional processing as
and when required.
3. Processing. Performing arithmetic operations (add, subtract, multiply, divide, etc) or logical operations
(comparisons like equal to, less than, greater than, etc) on data in order to convert them into useful information.
7
4. Outputting. The process of producing useful information or results for the user, such as a printed report or
visual display.
5. Controlling. Directing the manner and sequence in which all of the above operations are performed.
The internal architectural design of computers differs from one system model to another. However the basic
organization remains the same for all computer systems. A block diagram of the basic computer organization is shown in figure
below.
Secondary Storage
Output
Input Unit
Unit
Primary Storage
Control Unit
Arithmetic Logic
Unit
A computer is often more accurate called a computer system .A definition of the word system is a “number of things adjusted as
connected whole” .This is exactly what a computer system is .The components of a computer system act as a connected whole to
accept data, store data, process data and give out meaningful information. A complete computer system includes four distinct
parts; Hardware, Software, Data and people.
Hardware
Hardware refers to the physical components of the computer. It is that part of the computer or any accessory attached to the
computer called “peripheral” which you can touch or feel. The computer case, monitor, keyboard, mouse, printer, modem and
scanner all constitute hardware.
Software
Software refers to the detailed set of instructions that direct the computer to perform a certain task. You cannot actually see or
touch the software, although you can see the packages it comes in. Two kinds of software exist: system software and application
software.
System software helps the computer manage its own tasks and devices. System software can further be
classified as operating system, programming language and utilities:
o Operating system – tells the computer how to interact with the user and its own devices. Examples include Windows,
UNIX, Linux, etc.
o Languages – are used to write programs. Programming languages can generally be classified as low-level languages and
high-level languages.
Application software enables you perform a particular task like writing letters, analyzing data, sorting files,
drawing diagrams or playing games. Examples of application software include Microsoft Word, Microsoft Excel, Microsoft
Access, PageMaker, AutoCAD, SPSS, etc.
Data
Data are raw facts which the computer can manipulate and process into information that is useful to people. Computer data is
digital, or in the form of digits or numbers. The computer reads and stores all data as numbers.
People
People are the most important part. Without the people the computers can not do anything. Only people have to say what the
computer has to do. Giving instructions, operating the computer, rectifying the errors when the computer goes wrong, etc are
done by the people. There are two main set of people we can define from the type of work they do with the computer. Computer
Professional and End-User
8
Computer Professional: A computer professional, or an information technology professional is a person who has had extensive
education or considerable experience in the technical aspects of using a computer-and-communications system. These computer
professionals are the ones needed to develop software or to maintain the software that is run in a company or in a business. A
computer professional can be an computer Administrator who takes care of the computers and their networks.
End-User: An end-user or simply a user is someone with moderate technical knowledge of information technology who uses
computers for entertainment, education or work-related tasks. He does not understand all the technical details of the software
work internally, how the computer works internally, but instead usually reacts to the programs and procedures instituted by
information professionals. He is the one who make things happen at the end. He is the one who sits at the computer to use the
software that is developed and installed in the computer. For example, a Bank employee uses the banking software. She does not
know how this Banking software was developed. But this software is developed by the computer professional.
The users are the people operating the computers.
Expansion cards are small circuit boards that are used to upgrade a computer. These include: enhanced graphics cards, modems,
networking cards, sound cards, etc. Expansion cards are inserted into expansion slots in the motherboard (a board into which
most of the basic components of the computer are built).
PCI (Peripheral Component Interconnect) is a local bus system that allows devices to be inserted quickly and easily (plug–and–
play compatible). Most of the computers today come with PCI slots and cards.
AGP (AcceleratedGraphicsPort) is a new platform bus specification that enables high performance graphics capabilities,
especially 3D graphical display applications.
USB (Universal Serial Bus) defines a class of hardware that makes it easy to add serial devices to your computer. It provides an
instant, no-hassle way to connect a new digital joystick, a scanner, a set of digital speakers, a digital camera or a PC telephone to
their computer. To install a USB device, plug the cord from the device into any USBPort on your computer.
Power Supplies
Power supply converts normal household electricity, alternating current (AC), into electricity that can be used by the computer,
direct current (DC). It also lowers the voltage level. In Ethiopia, the normal household voltage is 220V/50Hz AC. The capacity
of a power supply is measured in watts (W). A power supply of 150–200 W is large enough for most computers.
9
Storage Unit
Secondary Storage
Input Unit Output Unit
Program and Data Information
(Results)
Primary Storage
2.2.1. Input Unit– consists of devices that accept data and instructions from the user or from another computer system.
In short, the following functions are performed by an input unit:
1. It accepts the list of instructions and data from the outside world.
2. It converts these instructions and data in computer acceptable form.
3. It supplies the converted instructions and data to the computer system for further processing.
10
Pointing Devices
The principal pointing tools used with microcomputers are the mouse, the trackball, the joystick, and the touch pad, all of which
have variations.
Mouse: Mouse is a hand-operated device that controls the movement of the cursor or pointer on a display screen. It is a small
object that can be rolled along a rough flat surface. Mouse can have as many as three buttons whose function depends on what
program is running.
Types of mouse
a. Mechanical-has a rubber or metal ball in its underside that can roll in all directions.
Mechanical sensors within the mouse detect the direction the ball is rolling and move the screen pointer accordingly
a. Optical- uses a laser to detect the mouse’s movement.
Mouse is connected to computer in one of three ways:
Port (Serial, Parallel),
Bas Mouse (interface card) and
Cordless mice (no physical connection).
Mouse pad- is a pad on which you can move a mouse. It provides more traction than smooth surfaces such as glass & wood, so
they make it easier to move a mouse accurately.
Scanners
Are input devices that can read text or illustrations printed on paper & translate the information into a form that a computer can
use.
2.2.2. Output Unit – consists of peripheral devices through which processed data (information) are made available for humans or
other computer systems. Examples include monitor and printer. Communication devices like modems and network interface
cards perform both input and output, allowing computers to share information.
In short the following functions are performed by an output unit:
1. It accepts the results produced by the computer, which are in coded form and hence cannot be easily understood by us.
2. It converts these coded results to human acceptable form
3. It supplies the converted results to the outside world.
The most common type of output devices are printers, plotters, monitor or screen, speakers. Hard disk and floppy disk are a
special type of input and output devices.
Monitors
The monitor displays the output of the computer. Monitors are categorized by the colors they produce and by the technology they
use.
Monochrome - one color text/image on single color background, i.e. white on blue, or green on black.
Cathode ray tubes (CRT) – in these monitors, electrons are fired at phosphor dots on the screen. The dots are grouped
into picture elements called pixels, which glow when struck by electrons. In color CRT monitors, each pixel contains a red, green
and blue dot. These glow at varying intensities to produce color images.
Liquid Crystal Display (LCD) – these screens use an entirely different technique. The screen is still made of dots but is quite
flat. LCD displays are made of two layers of a polarizing material with a liquid crystal solution in between. An electrical signal
makes the crystals line up in a way that keeps light from going through entirely or just partly. A black screen has all the crystals
lined up so that no light gets through. A color LCD screen uses groups of 3 color cells instead of 3 phosphor dots. The signal for a
picture cleverly lets just the right spots show their colors. Your eye does the rest.
Resolution – number of pixels on the screen. This is important especially for graphics, page layout and CAD.
o VGA (Video Graphics Array) monitors have resolution of 640 X 480 pixels.
o SVGA (Super VGA) monitors have resolutions ranging from 800 X 600 pixels to 1024 X 768 pixels or more.
Refresh rate – indicates how often the picture is redrawn on the monitor. If the rate is low, the picture will appear to flicker.
Flicker is not only annoying but also causes eye strain and nausea. So, a high refresh rate is desirable. 60 times per second is
tolerable at low resolutions for most people. 75 times per second or more is better and is necessary for high resolutions.
11
Dot pitch – is the distance between phosphor dots that make up a single pixel. A dot pitch of .28 is very common and .26
should be good for nearly all purposes, however it is measured.
Printers
Printers are used to produce “hard copy” of documents, programs and data. Some printers use serial communication (RS232
standard) while others use parallel communication to transfer information from the PC to the printer. In serial communication,
data is transferred one bit at a time while in the case of parallel communication; one byte (8 bits) is transferred at one time.
The printing method (the actual forming of characters) also varies. Based on the printing method used, printers are categorized as
impact printers and non-impact printers. Impact printers strike an inked ribbon, pressing ink from the ribbon onto the paper while
non-impact printers use different methods to place ink on paper.
Dot–matrix printersare common types of impact printers. The print head has an assembly of tiny pins that are activated in a
row and physically “hit” the paper through the ribbon to produce the desired impression. Speeds are expressed in characters per
second (cps) and vary between 180cps and 400cps. These printers are loud, inexpensive and slow. The quality of the printout is
not so good as that of inkjet or Laser printers. But, we can have carbon copies and printouts on stencils from these printers.
Inkjet printers are non-impact printers. Tiny particles of ink are electrically charged after leaving the nozzle. The droplets are
then guided to the right position on paper by electrically charged deflection plates. The print quality is very good. We cannot use
them with stencils nor can we produce carbon copies using these printers. Inkjet printers are available for color or black and
white.
Laser (Light Amplification by Simulated Emission of Radiation) printers are the most advanced of all. In this printer the laser
beam forms an image of the characters to be printed on to the light sensitive drum. Ink then sticks to the character images and is
transferred from the drum and fused onto the paper. Laser printer speeds are specified in pages per minute (PPM), e.g. 6PPM,
12PPM or 24PPM.
Factors to be considered while selecting printers include: speed (measured in PPM or CPS), quality (measured in dots per inch –
dpi), initial cost, cost of operation and special features like support for color and large page formats.
Plotters
A plotter is a specialized output device designed to produce high-quality graphics in a variety of colors. Plotters are used for
creating large hardcopy items, such as maps, architectural drawings, and 3-D illustrations items typically too large for regular
printers.
2.2.3 CPU
The control unit and the arithmetic logic unit of a computer system are jointly known as the Central Processing Unit (CPU) the
CPU is the brain of the computer system. In a human body, all major decisions are taken by that brain and the other parts of the
body function as directed by the brain. Similarly, in a computer system, all major calculations and comparisons are made inside
the CPU and the CPU is also responsible for activating and controlling the operations of other units of a computer system.
The CPU has two major components:-
The Arithmetic/Logic Unit (ALU)
The Control Unit
Control Unit:
How does the input device know that it is time for it to feed data into the storage unit? How does the ALU know what should be
done with the data once they are received? And how is it that only the final results are sent to the output device and not the
12
intermediate results? All this is possible because of the control unit of the computer system. By selecting, interpreting and seeing
to the execution of the program instructions the control unit is able to maintain order and direct the operation of the entire system.
Although, it does not perform any actual processing on the data, the control unit acts as a central nervous system for the other
components of the computer system. It manages and coordinates the entire computer system. It obtains instructions from the
program stored in main memory, interprets the instructions and issues signals that cause other units of the system to execute them.
A Memory that can be instantly changed is called read-write memory or random-access memory (RAM). When people talk about
computer memory in connection with microcomputers, they usually mean the volatile RAM. It is best simply to remember that
the data in ROM does not change while the data in RAM changes constantly.RAM can hold information only while the computer
system is on. As soon as the computer system is switched off or reset, the information held in the RAM disappears. This nature of
RAM is known as volatile.
B. Secondary storage: - The secondary storage, also know as auxiliary storage, is used to take care of the limitations of the
primary storage. That is, it is used to supplement the limited storage capacity and the volatile characteristic of primary storage.
This is because secondary storage is much cheaper than primary storage and it can retain information even when the computer
system is switched off or reset. The secondary storage is normally used to hold the program instructions, data and information of
those jobs on which the computer system is not working on currently but needs to hold them for processing at a later time. The
most commonly used secondary storage medium is the magnetic disc. The physical material that actually holds data is called
storage medium. The surface of floppy disk (or the diskette) is storage medium. The hardware that writes data to or reads data
from a storage medium is called a storage device. A floppy disk drive is a storage device.
There exist two technologies for secondary storage: magnetic and optical. Floppy disk, hard disk, magnetic tapes are examples of
magnetic storage. CD-ROM, DVD-ROM, CD-R, CD-RW are examples of optical storage.
Magnetic storage devices – the medium contains iron particles, which can be polarized, i.e. given magnetic charge in one of two
directions. Each particle’s direction represents a 1 or a 0, representing each bit of data that the CPU can recognize. A disk drive
uses read/write heads containing electromagnets to create magnetic charges on the medium.
Optical Storage Devices – offer high-capacity storage medium. Optical drives use reflected light to read data. The disk’s 3 ½”, 1.44MB
metal surface is covered with dents (pits) and flat spots (lands), which cause light to be reflected differently. Light cannot be
reflected back from pits (data = 0) and lands reflect light back to its source (data = 1).
o CD–R is a standard and technology allowing you to write to and read from a Compact Disc, but not erase or change what
you record. This technology is compatible with existing CDs, i.e. you are able to read these discs in existing CD–players. Today,
we have speeds as much as 52X .A single CD–R can hold up to 650MB information.
o CD–RW is rewritable CD–ROM technology. CD–R/W drives can also be used to write CD–R discs, and they can read CD–
ROMs. But, CD–R/W disks have a lower reflectivity than CD–ROMs, and CD–ROM drives must be of the newer multi-read
variety in order to read them. CD–R/W was initially known as CD–E (or CD–Erasable).
o Digital Video Disc (DVD), also called Digital Versatile Disc, is similar to CD–ROMs but able to store far more music,
video or data. DVDs are of the same physical size as today's CDs but are able to store as much as 17GB, compared to the 650MB
on today's CD–ROMs.
Some of the recently developed Storage Devices:
DVD: The DVD represents a new generation of high density CD-ROM disks, which are read by laser and which have both write-
once and re-writable capabilities. It stands for Digital Video Disk.
Flash Memory Cards: Flash-memory cards consist of circuitry on PC cards that can be inserted into slots connecting to
motherboards.
2.3 Software
The computer software is collection of set of instructions that instructs the computer hardware. These set of instructions perform
different functions; some deals with handling the computer hardware and the others perform user specific tasks such as managing
a database. Therefore the computer software is divided into two major categories depending upon the nature of work this software
does:-
1. System software
2. Application software
Computer Software
Operating
E.g. system software
Language software
Windows 2000
Unix
14
e.g.
Visual Basic
Java
The system software is further divided as operating system software and language software.
If we can list some of the general things that the operating system does in the computer, we can come up with the following:
Managing storage media
Booting
User Interface
Managing computer resources
Managing files
Managing tasks.
Booting: When the computer is switched on, the startup process is carried out which is called booting. This includes checking the
system, devices, etc. and enabling them so that the computer can be ready to work with.
Managing storage media: OS manages storage devices so that they can be efficiently utilized. Recognizing the storage
hardware, enabling them so that they can be used include this process.
User Interface: Once the system is started the user should be able to interact with the computer. OS provides user friendly
capabilities so that the user can interact with the computer. This is called User Interface. With this, the user can setup a software,
printer, scanner, or do any OS related work. This is also called Graphical User Interface (GUI)
Managing computer resources: Providing resources can be different from managing them. Resources such as Random Access
Memory should be managed properly to run the computer efficiently. There can be more than one process or one work requiring
the same resource.
For example, MS Word and Calculator are running in the computer at the same time. The user may require the Calculator to do
some calculations so that he can enter those numbers in the Word file. So, two applications should share the same RAM. These
kinds of things are managed by the OS.
Managing Files: Files are stored in the hard disks or floppy disks and other secondary storage devices. The operating system
helps to find them and manage them. With the help of this we can manage the files. We can rename a file, delete, copy, move, etc.
Managing Tasks: Computer is required to perform various tasks at the same time. For example, the computer can print a
document, scan a picture and search for a file. Operating system manages these tasks so that the computer can do all these tasks
efficiently.
15
A single user operation system normally only allows one user to access the system at a time. Operating systems of this type is
used by many microprocessor systems, Example of single user operation system include MS_DOS Microsoft Disk Operating
System.
2. Bach-mode Operating systems
Bach processing refers in general to a computer system in which jobs (programs +data) are entered and then run one or more a
time under the control of the operation system. In this system, the operating system schedules the submitted jobs according to
required resources and priority of the jobs and produces the result at some time later. It is the oldest operating system.
3. Time –sharing Operating system
A time-sharing system is an interactive system in which a number of users at terminals all have access to the computer at the
same time. An operation system for such a system is called time-sharing. UNIX is the most popular time-sharing operating
system.
4. Real-time operating system
A real-time system is a system that is capable of processing data so quickly that the results are available to influence the activity
currently taking place. Examples include air plane seat reservations and a computer controlled plant.
5. Multitasking:Executing more than one program concurrently.(one user) How does a computer handles more than one
program? The answer is that the operating system directs the processor (CPU) to spend a predetermined amount of time executing
the instruction for each program, one at a time. A small amount of each program is processed and then the processor moves to the
remaining programs, one at a time, processing small parts of each. This cycle is repeated until processing is complete. The
processor speed is usually so fast that it may seem as if all the programs are being executing at the same time. However the
processor is still executing only one instruction at a time, no matter how it may appear to the user.
6. Multiprogramming: Executing different users programs concurrently. (Multiple users) As with multitasking, the CPU,
spends a certain amount of time executing each user’s program, but it works so quickly that it seems as though all the programs
are being run at the same time.
7. Multiprocessing: Simultaneous processing of two or more programs by multiple computers. (Single or multiple users) With
multiprocessing, two or more computers or processors linked together perform work simultaneously, meaning at precisely the
same time. This can entail processing instructions from different programs or different instructions from the same program. One
type of multiprocessing is parallel processing, whereby several CPUs work together on the same tasks, sharing memory. This is
used in large computer systems designed to keep running if one of the CPUs fails. This kind of systems is at work in important
places like space stations, online reservation systems, etc.
Machine language uses machine codes (strings of binary digits) to write computer programs.
Early computer programs were written using machine language.
Each instruction tells the CPU what to do, the length, and location of the data fields that are involved in the operation
Typical operation involve reading, adding, subtracting, writing and so on
The string of 1s and 0s required for an operation is determined by the design of the computer or the nature of the
computer logic circuitry
Each computer design has its own unique machine codes
Advantage
1. Machine Languages make efficient use of memory
2. Instructions of a machine language program are immediately executable.
3. Machine language instructions can be used to manipulate the individual bits in a byte of computer storage.
Disadvantage
o Difficult to learn
o Prone to errors
o Difficult to correct or modify errors
o Not portable
o Machine Languages are machine dependent
o Machine languages require a high level of programming skill.
16
Assembly Language
Machine language is the lowest-level programming language. Assembly language is a bit higher than machine language, but it is
still ‘low’ in the sense that the programmer must spend some time thinking of the instructions that the particular computer can
execute, rather than spending all his time in solving the problem. This language lies between high-level languages and machine
languages.
It’s easier for programmers to write instructions in an assembly language than to prepare instructions in machine language codes.
The major drawback of machine languages and assembly languages is that they are machine oriented. That is, they are designed
for the specific make and model of processor being used.
A machine can directly understand only instructions written in machine code. Therefore, for an assembly language to be
understood by the CPU there must be an intermediary between the programmer and the hardware. An assembler is a program that
enables the computer to convert the programmer’s assembly language instructions into its own machine code.
A program of instructions written by a programmer in an assembly language is called a source program. After this source
program has been converted into machine code by an assembler, it’s referred to as an object program.
Source code Assembler Object code
(Assembly Langrage) (Machine Code)
Advantage
o Writing in Assembly Language saves time and reduces the need for detail.
o Fewer errors are made and those made are easier to find. These programs are easier to modify.
o Easier to learn
o Easier to locate correct errors
Disadvantage
o Coding is time consuming
o It is also machine-oriented program. The programmers must know the machine characteristics and
requirements
o The program size is big like machine codes
o It is usually unique to a particular computer series
oIt is not directly executable by the computer. It needs assembler to translate it into machine codes
High Level Programming Language
It is human Oriented Language because it is more related with human language. It is machine independent. A programmer may
not be needed to know the details of the internal logical structure of a computer.
The high level programming languages are problem oriented unlike the machine language, which is machine oriented
programming language. The person developing software using a high level language does not bother about machines. His
program can be executed on any type computer after it is translated into machine codes. His worry is how to solve the problem
systematically at hand.
The high level languages are symbolic languages that use English like words and/or mathematical symbols rather than mnemonic
codes.
Advantage
o Easier to learn and write the codes
o Codes are written without any particular machine in mind
o Portable
o Small program size
o These languages may be used with different makes of computers with little modifications.
o They are easier to learn.
o They require less time to write.
Disadvantage
o Require more time to run and more computer memory space
o Cannot access all components of the computer hardware such computer accessories. In that case we have to use lower
level languages
o They require additional time during translation
o They are less efficient compared to the machine code languages.
17
In compiled languages, a translation program is run to convert the programmer’s entire high level program, which is called the
source code, in to a machine language code. This translation process is called compilation. The machine language code is called
the object code.
Examples of the most widely used compiled languages are COBOL, C, C++ and FORTRAN.
An interpreted language, a translation program converts each program statement into machine code just before the program
statement is to be executed. Translation and execution occur immediately one after the other. That means, it translate one
statement at a time.
Example of the most frequently used interpreted language is BASIC.
18
The software developers find ways to enhance their software product now and then. So they put forth new versions or new
release. Although not all software developers use the terms consistently, their accepted definitions are as follows.
Version: A version is a major upgrade in a software product. Traditionally, versions have been indicated by numbers such as 1.0.
2.0, 3.0, etc. The higher the number preceding the decimal point the more recent the version. In recent years software developers
has departed from this system. Microsoft for instance decided to call the new operating systems by the year. “Windows 95”,
Windows 98, Windows 2000.
Release: A release is a minor upgrade. Releases are usually indicated by a change in number after the decimal point. – 3.0 then
3.1, 3.2, etc.
Computer Virus:
Worms and viruses are forms of high-tech maliciousness. A wormis a program that copies itself repeatedly into memory or onto
disk drive until no more space is left. An example is the worm program unleashed by a student at CornellUniversity that traveled
through an e-mail network and shut down thousands of computers around the country.
A virusis a deviant program that attaches itself to computer systems and destroys or corrupts data. It consists of hidden
programming instructions that are buried within applications or system programs. They copy themselves to other programs,
causing havoc. Viruses are passed in two ways:
By diskette: The first way is via an infected diskette, such as one you might get from a friend or a repairperson. It’s also possible
to get a virus from a sales demo disk or even from a shrink-wrapped commercial disk.
By network: The second way is via a network,, as from e-mail or an electronic bulletin board. This is why, when you’re looking
into all the freebie games and other software available online, you should use virus-scanning software to check downloaded files.
The virus usually attaches itself to your hard disk. It might then display annoying messages (“Your PC is stoned – legalize
marijuana”) or cause Ping Pong balls to bounce around your screen and knock away text. It might add garbage to or erase your
files or destroy your system software. It may evade your detection and spread its havoc elsewhere.
Viruses may take several forms. Two traditional viruses are boot sector virus and file viruses. Recent virus is macro virus. Quite
well-known viruses are Stoned, Jerusalem B, Lehigh, Pakistani Brain, and Michelangelo). Some 6000 viruses have been
identified, but only few hundred of them have been found “in the wild,” or in general circulation. Some are intended to be
destructive. Some virus writers do it for the intellectual challenge or to relieve boredom, but others do it for revenge, typically
against an employer.
The fastest-growing virus in history was the World Concept virus or simply Concept virus, which worried people because it was
able to sneak devices by hitching rides on e-mail and other common Internet files. Concept attached itself to documents created
by Microsoft’s popular word processing program, Word 6.0 or higher. The virus doesn’t cause damage, but some destructive
relatives continue to surface.
A variety of virus-fighting programs are available at stores, although you should be sure to specify the viruses you want to protect
against. Antivirus software scans a computer’s hard disk, floppy disks, and main memory to detect viruses, and, sometimes, to
destroy them.
Boot-sector virus
The boot sector is the part of the system software containing most of the instructions for booting, or powering up, the system. The
boot sector virus replaces these boot instructions with some of its own. Once the system is turned on, the virus is loaded into main
memory before the operating system. From there it is in a position to infect other files. Any diskette that is used in the drive of the
computer then becomes infected. When that diskette is moved to another computer, the contagion continues. Examples of boot-
sector viruses: AntCMOS, AntiExe, Form.A, NYB (New York Boot), Ripper, Stoned.Empire.Monkey.
File virus
File viruses attach themselves to executable files-those that actually begin a program. When the program is running, the virus
starts working, trying to get into main memory and infecting other files.
Multipartite virus
A hybrid of the file and boot sector types, the multipartite virus infects both files and boot sectors, which make it, better at
spreading and more difficult to detect. Examples of multipartite viruses are Junkie and Parity Boot.
A type of multipartite virus is the polymorphic virus, which can mutate and change form just as human viruses can. Such viruses
are especially troublesome because they can change their profile, making existing antiviral technology ineffective.
A particularly sneaky multipartite virus is the stealth virus, which can temporarily remove itself from memory to elude capture.
Macro virus
Macro viruses take advantage of a procedure in which miniature programs, known as macros, are embedded inside common data
files, such as those created by e-mail or spreadsheets, which are sent over computer networks. Until recently, such documents
have typically been ignored by antivirus software. Examples of macro viruses are Concept, which attaches to Word documents
and e-mail attachments, and Laroux, which attaches to Excel spreadsheet files. The latest versions of Word and Excel comes with
built in macro virus protection.
Logic bomb
Logic bombs, or simply bombs, differ from other viruses in that they are set to go off at a certain date and time. A disgruntled
programmer for a defense contractor created a bomb in a program that was supposed to go off two months after he left. Designed
to erase an inventory tracking system, the bomb was discovered only by chance.
Trojan horse
The Trojan horse covertly places illegal, destructive instructions in the middle of a legitimate program, such as a computer game.
Once you run the program, the Trojan horse goes to work, doing its damage while you are blissfully unaware. Example is
FormatC.
19
Guarding against Viruses
Each day, viruses are getting more sophisticated and harder to detect. The best protection is t install antivirus software. Antivirus
software is a utility program that scans hard disks, diskettes, and memory to detect viruses. Some programs prevent viruses from
infecting your system, others detect the viruses that have slipped through, and still others remove viruses or institute damage
control. Some of the major antivirus programs are Norton Antivirus, Dr. Solomon’s Antivirus Toolkit, Mcfee Associates Virus
Scan, and Webscan.
CHAPTER THREE
COMPUTER ARCHITECTURE AND DATA REPRESENTATION:
Chapter Contents
3.1 Hierarchical structure of computer system architecture.
3.2 Logical elements
3.3 Number system - Arithmetic
Conversions
o Negative number representation – Signed magnitude – One’s Complement –
Two’s Complement –Floating point number representation.
o Binary arithmetic – Addition, Subtraction, Multiplication,
Division
3.4 Logic gates – AND , OR , NOT , NAND, NOR, XOR, XNOR – truth tables
3.5 EBCDIC, ASCII, UNICODE.
CPU
Data Bus
Control Bus
ROM
Address Bus
RAM
Because of the control unit, the elements of the computer act with and react to one another in very good precision. Depending on
the instruction executed, certain computer components may or may not be used. In one instance, the instruction executed may
involve computations within the ALU, while another simply looks into and displays the contents of some memory location.
Input / Output (I/O)
Execution of Instruction
At the machine level execution of instruction has two phases;
20
Execution phase (E-phase).
Fetch Step
The fetch step locates an instruction in memory and sends it to the control unit. The instruction to be executed is accessed from
the memory by the control unit.
Decode Step
The instruction is decoded and sent to the ALU along with any necessary data.
The instruction is translated into individual commands so the central processor can understand what is to be done.
Relevant data is moved from memory to the register storage area.
The location of the next instruction is identified.
These two steps, in which instructions are obtained and translated, are called instruction cycle (I-cycle) and the time it takes to
execute the first two steps is referred to as I-time.
Execute Phase
The execution phase is made up of two distinct steps:
Execute step
Store step
Execute step
The results of the execution are stored in registers or in the memory.
After a Machine Cycle is completed for one instruction, it will be repeated for the second, instruction, etc.
Store step
The processed data finally stored in the main memory until it moved to secondary storage medium.
The last two steps that produce processing results are the execution cycle (E- cycle) and the time it takes to perform the last two
steps is known as Execution time (E-time). The four steps or the two cycles together are known as Machine Cycle.
In general, during the instruction cycle, the fetch step locates an instruction in memory and sends it to the control unit. During the
decode step, the instruction is decoded and sent to the ALU along with any necessary data. During the execution cycle, the
instruction is executed by the ALU, and the result is stored in the accumulator until needed. The program counter is incremented
to identify the location of the next instruction to be executed, and the instruction-execution sequence of operations is repeated for
the next instruction and continues until the program ends. It may seem like a long process to fetch, decode and execute a single
instruction, but it takes only about 200 milliseconds.
Computer Registers:
A register is a special temporary storage location within the CPU. Registers very quickly accept, store and transfer data and
instructions that are being used immediately. To execute an instruction, the control unit of the CPU retrieves it from main
memory and places it into a register.
The number and types of registers in a CPU vary according to the CPU’s design. There size and number can dramatically affect
the processing power of a computer system. In general, the “larger” the register the greater the processing power. Some personal
computers have general purpose registers that hold only 8 bits: others hold 16 bits: newer microcomputer have 32 – bit registers.
The difference in processing power is due to difference in register size.
Operations for Hypothetical Computer:
Once characteristic in which most system software differs from application software is machine dependency. An application
program is primarily concerned with the solution of some problem, using the computer as a tool; the focus is on the application,
not on the computing system. System programs, on the other hand are intended to support the operation and use of the computer
itself, rather than any particular application; for this reason, they are usually related to the structure of the machine on which they
are to run. For example, assemblers translate mnemonic instructions into machine code; the instruction formats, addressing
modes, etc., are of direct concern in assembler design. Similarly, compilers must generate machine language code, taking into
account such hardware characteristics as the number and use of registers and the machine instructions available. Operating
systems are directly concerned with management of nearly all of the resources of a computing system.
On the other hand, there are some aspects of system software that do not directly depend upon the type of computing system
being supported. For example, the general design and logic of an assembler is basically the same on most computers. Some of the
code optimization techniques used by compilers are independent of the target machine. Likewise the process of linking together
independently assembled subprograms does not usually depend on the computer being used.
21
2. Data Representation
In Computer the data is represented in binary format. Even though we use characters, decimals and graph, internally these things
are represented in binary format. So we will go through the number system. There are different number systems namely decimal,
binary, hexadecimal, etc.
Decimal number system is the normal number system that we use on a day to day basis. It spans from 0 to 9 and then 10 to 99,
etc. This is to the base 10. Hexadecimal number system is to the base 16. It spans from 0 to 9 and then A to E. After that 10 and
so on. The binary system is to the base 2. It spans from 0 to 1 and then 10 and so on.
We can convert from one number system to another. This conversion takes place in the computer all the time. The information
entered in the computer is converted to the binary format. For example, if you enter the decimal 5 this converted into 101 as
binary. If you enter 10 in the decimal format it is converted into 1010 as binary.
Following table gives you an idea of different number systems.
22
3 2 0 1 4
104 103 102 101 100
The digits on the right have a weight of 100 (Units), the second digit has a weight of 101 (Tens), the third digit a weight of 102
(hundreds) and so on. The sum of all units multiplied by their weights is
1 0 1 1 1
2 4
23
2 2
21
20
These weights are 20 (units), 21 (twos), 22 (fours), 23 (eights), and 24 (sixteens). The decimal equivalent of binary equals the sum
of all binary digits multiplied by their weights. The decimal equivalent of the above shown binary number is
Why Binary?
Now why all these program and data need to be converted into binary format? The computer is hardware. You see electronic
devices, magnetic devices and mechanical devices in the computer. Inside the computer, there are integrated circuits with
thousands of transistors. These transistors are made to operate on a two-state. For instance, the two state designs are the cutoff-
saturation states; each transistor is forced to operate at either cutoff or saturation. At the cutoff point the base voltage may be 0. At
the saturation point the base voltage may be 5. This two state operation is universal in digital electronics. By this design, all the
input and output voltages are either HIGH or LOW. Here is how binary numbers come in. low voltage represents binary 0 and
high voltage represents binary 1.
VOLTAGE BINARY
Low 0
High 1
3. Logical Elements
Apart from the arithmetic operations, there are logical operations involved in the processing. The logical operations involve some
elements. These elements are NOT, OR and AND. NOT is the opposite of negation or inversion. Negation of True is False. OR
is another logical element which represents either – or. AND is another logical element which represents two together.
23
In 1854 George Boole invented symbolic logic. This is known today as Boolean algebra. Each variable in Boolean algebra has
either of two values. - True or False. The purpose of this two-state algebra was to solve logic problems. As we saw before the
computers think in terms of binary (high or low) it is appropriate to say logic is the core of computers. To implement this logic
circuits are used. In the logic circuits Gates are used. A Gate is a small circuit with one or more input signals but only one output
signal. Gates are digital circuits (two-state).
There are several gates such as OR, AND, Inverter, etc. Each has symbol to represent them. Let us see them one by one.
Inverter:
A Low input produces a high output, and a high input produces low output. In binary format if the input is 0 the output will be 1
and if the input is 1 then the output will be 0. The table shows the input and output possibilities.
Input Output
0 1
1 0
Following is the symbol for inverter.
Input Output
OR Gates
The OR gates has two or more input signals but only one output signal. If any input signal is high, the output signal is high. If we
have two inputs to this OR gate and any of the two inputs is high then the output will be high. This can be shown in a table below
with all the possible inputs and corresponding outputs.
A B Y (Output) A
0 0 0 Y
0 1 1
bbbbbb
1 0 1
1 1 1
OR GATE OR Gate symbol
AND Gates
The AND Gate has two or more input signals but only one output signal. All the inputs must be high to get a high output. If we
have two inputs to this AND gate and both the inputs are high then the output will be high otherwise the output will be low. All
the possible inputs and outputs are shown in the following table.
A B Y (Output)
0 0 0 A
0 1 0
1 0 0 Y
1 1 1
B
AND GATE AND Gate symbol
Similarly, three input gates and four input gates are available.
Boolean Algebra
Boolean Algebra has signs for the logic representations. Inverter sign is represented as follows.
Inverter Sign
Y
A
Because of the inversion, Y is always the compliment of A.
Y = NOT A
This can be written as Y= A
OR Sign Y = A OR B
AND Sign Y = A. B
24
We can combine two different gates. When we combine like that we get some more logic gates such as NOR, NAND, Exclusive-
OR, Exclusive-NOR, etc.
NOR Gate
NOR Gate is a combination of OR and an inverter. It is a OR gate followed by an inverter. Following figure shows the same.
A A
Y Y
B B
Whatever the output of the OR gate, it will be inverted by the inverter. This is the formation of NOR gate. The sign and the table
is shown below.
Y=A+B A B Y (Output)
0 0 1
NOR Sign 0 1 0
1 0 0
1 1 0
A A
Y Y
Whatever the output of the AND gate, it will be inverted by the inverter. This is the formation of NAND gate. The sign and the
B B
table are shown below.
Y = AB A B Y (Output)
0 0 1
NAND Sign 0 1 1
1 0 1
1 1 0
A B Y (Output)
Y= A XOR B
0 0 0
0 1 1
Y= A B
1 0 1
Ex-OR sign
1 1 0
Y Y = AB + AB
B 25
A
Y
B
A A
Y Y
B B
A B Y (Output)
0 0 1
0 1 0
1 0 0
1 1 1
26
Binary Decimal
110101 53
101111 47
000110 6
1102 is equivalent to 6 in decimal system.
ii) Subtracting 1101 from 10110
10110
-1101
1001
Binary Multiplication
Rules for multiplication of binary numbers are as follows:
0 * 0 = 0
0 * 1 = 0
1 * 0 = 0
1 * 1 = 1
Examples
i) Multiplying 10110 with 1101
10110
1101
10110
00000x
10110xx
10110xxx
100011110
In order to check, let us see the decimal equivalents of these binary numbers.
22 * 13 = 286 which is 1000111102
ii) Multiplying 111 with 101
111
101
111
000x
111xx
100011
Binary Division
Division for binary numbers can be carried out by following same rules as those applicable to decimal system.
Examples
a. Dividing 1000112 by 101
101 100011 111
101
111
101
101
101
0 or 35 + 5 = 7
b.Dividing 111102 by 1102
110 11110 101
110
110
110
0
27
Floating Point Number
Normalized floating point numbers is also a method of representing data. In this method, a real number is expressed as a
combination of a mantissa and exponent. The mantissa is kept as less than 1 and greater than or equal to 0.1 and the exponent is
the power of 10 which multiplies the mantissa.
Let us take an example to make it more clear.
94.75 * 105 is represented as 0.9475E7
where E7 is used for 107
Here, Mantissa = 0.9475
Exponent = 7
While storing numbers, the leading digit in the mantissa is always made non-zero by approximately shifting it and adjusting the
value of the exponent, i.e.
.004642 -- 0.4643 * 10 -2 -- 0.4642E-2
This shifting of the mantissa to the left till its most significant digits is non-zero, is called normalization. It is done to preserve the
maximum number of useful digits. Let us see how arithmetic operations can be done with normalized floating point numbers.
Signed Binary Numbers
The negative decimal numbers are -1, -2, -3 and so on. One way to code these as binary numbers is to convert the magnitude (1,
2, 3 …) to its binary equivalent and prefix the sign. With this approach, -1, -2, -3 become -001, -010, and -011. It’s customary to
use 0 for the + sign and 1 for the –sign. Therefore -001, -010 and -011 are coded as 1001, 1010 and 1011.
The foregoing numbers have the sign bit followed by the magnitude bits. Numbers in this form are called signed binary numbers
or sign-magnitude numbers. For larger decimal numbers you need more than 4 bits. But the idea is still the same: the leading bit
represents the sign and the remaining bits stand for the magnitude.
Example
+7 0000 0000 0000 0111
-7 1000 0000 0000 0111
+25 0000 0000 0001 1001
-25 1000 0000 0001 1001
Complement
Sign –magnitude numbers are easy to understand, but they require too much hardware for addition and subtraction. It has led to
the widespread use of complements for binary arithmetic.
For instance, if
A = 0111
The 1’s complement is
Ā = 1000
The 2’s complement is defined as the new word obtained by adding 1 to 1’s complement. As an equation
A‘ = Ā + 1
Where A ‘ = 2’s complement
Ā = 1’s complement
Here are some examples. If
A = 0111
The 1’s complement is
Ā = 1001
In terms of a binary odometer, the 2’s complement is the next reading after the 1’s complement.
Another example, If
A = 0000 1000
Then
Ā = 1111 0111
And
A ‘ = 1111 1000
28
5. ASCII and UNICODE
Letters, numbers and special characters are represented within the computer system by means of binary coding schemes. That is,
the off/on 0s and 1s are arranged in such a way that they can be made to represent characters, digits or other values. When you
type a word on the key board, the letters are converted into bytes – 8 0s and 1s for each letter. The bytes are represented in the
computer by a combination of 8 transistors, some of which are closed (representing the 0s) and some of which are open
( representing the 1s).
There are many coding schemes. Two common ones are EBCDIC and ASCII-8. Both use 8 bits to form each byte. One newer
coding scheme uses 16 bits.
EBCDIC: Pronounced ‘eb-see-dick’, EBCDIC an acronym for Extended Binary Coded Decimal Interchange Code is used in
Mainframe computers.
ASCII – 8: Pronounced ‘askey’. ASCII stands for American Standard Code for International Interchange and is the binary
code most widely used with microcomputers.
ASCII originally used 7 bits but 0 was added in the left position to provide and eight-bit code, which offers more possible
combinations with which to form characters, such as math symbols and Greek letters. (However although ASCII can handle the
English language well, it cannot handle all the characters of some other languages such as Chinese and Japanese)
UNICODE: A subset of ASCII, Unicode uses two bytes (16 bits) for each character, rather than one byte (8 bits). Instead of
the 256 character combinations of ASCII – 8, Unicode can handle 65,536 character combinations. Thus UNICODE allows almost
all the written languages of the world to be represented using a single character set. (By contrast, 8 – bit ASCII is not capable of
representing even all the combinations of letters and other symbols that are used just with our alphabet, the Roman alphabet –
used in English, Spanish, French, German, Portuguese, Hindi and so on)
Although each Unicode character takes up twice as much memory space and hard disk space as each ASCII character, conversion
to the Unicode standard seems likely. However, because most existing software applications and databases use the 8-bit standard,
the conversion will take time.
ASCII Binary Coding Scheme:
M 0100 1101 Z
CHAPTER 4
DATA COMMUNICATION AND NETWORKS
Chapter Contents
4. Data Communication and Networks
4.1. Basic Concepts
4.2. Types of Networks and Topologies
4.3. Media of the Networks
Chapter Objectives
A network is a collection of related entities. There are different types of networks, such as telephone network, which is a
collection of telephone systems interconnected with each other. Telegraph network, television network, radio network and
computer network are some of them.
Computer Networking
29
Computer networking refers to two or more connected computers that can share a resource such as data, a printer, an internet
connection, applications, or a combination of these. A computer network is a set of cooperative, interconnected autonomous
computers. If we simply interconnect two or more computers with the help of a wire, they are not said to be networked. In order
for the communication to take place, there should be a kind of cooperation between the communicating systems. Network
hardware will provide the necessary interconnection and network software will provide the necessary cooperation. Computer
network is created when several computers and terminal devices are connected together by data communication system. Each
computer in a network can have its own processing capabilities and can share computer hardware, programs, software and data
files.In general, it is a collection of computers and peripheral devices connected by communication links that allow the network
components to work together.
Importance of Networking
1. Resource sharing ( To share hardware such as the server, to share computer CPU, to share databases, to share
application programs and hard disk, Data/information, Memory(storage),Files, Printers etc)
2. To undertake parallel processing
3. High reliability by having alternative sources of supply
4. Money saving
5. Increase system performance
6. Powerful communication medium among widely separated people
Types of Networks
Based on geographical span of coverage, computer networks are broadly classified into three major categories.
1. Local Area Network (LAN)
It is the basic building block of any computer network.
It is confined in a limited geographical area.
Physically limited.
Inexpensive cable media (Co-axial or twisted pair cables).
Used for resource (data and hardware) sharing.
E.g. Lab, School, building, office, campus.
30
Based on span of control, networks are divided into two broad categories:
1. Peer-to-peer Networks
In peer-to-peer networks, all computers are equal - they are peers. Each computer can be a client that requests resources and a
server that provides resources upon request.
2. Client/server networks
In client/server networks, there exist dedicated servers, which only provide resources/services when requested. Client/server
network is characterized by the following:
It has centralized, tighter security. All user accounts are stored in the same database on the server.
The network is highly scalable; you can have tens of thousands of workstations in the network.
Backup is centralized and is done by a person responsible for the job (backup operator).
Needs dedicated server (acts only as a server, but not as a client)
Requires at least one professional administrator.
Specialized networking operating systems are required, such as Windows NT 4.0 server, Windows 2000
server, Novell NetWare, etc.
Types of signals
In communication system, data is transmitted from one point to another by means of electrical signal. There are two types of
signals that can travel over the various transmission media.
1. Analog Signal
- Continuously varying electromagnetic waves that may be propagated over a variety of media
E.g. Wire media, twisted pair and coaxial cable.
2. Digital Signals
- Normally, it comprises only two states.
- It uses separate ON/OFF pulses that create a square rather than a continuous wave.
- Are considered as sequence of voltage pulses that may be transmitted over a wire medium.
- Transmits data faster and more accurately than analog signals.
E.g., a constant positive voltage level may represent binary 1 and a constant negative voltage level may
represent binary 0.
31
Data is transmitted character by character.
Data is transmitted at irregular time interval
A start bit is transmitted directly before each character.
To signify the end of the transmission, 1 or 2 stop bits are transmitted directly after each character.
The start bit and stop bit are always of opposite polarity.
Usually, 0 is the start bit and 1 is the stop bit.
Between the start bit and the stop bits, the data bits are transmitted at uniformly spaced time interval.
Topologies
A topology describes the layout of the cables, computers and other network devices. It describes the way in which the devices of
the network are linked together. There are four most common topologies: Bus, Ring, Star and Mesh.
Advantages
- Easy to implement
- Low cost
Disadvantages
- Limited cable length and workstation
- Difficult to isolate network fault
- Cable fault affects all workstations
Advantage
- Easy to add new workstations
- Centralized control
- Centralized network
- Easy to modify
Disadvantages
- Hubs are expensive
- Hub failure, fails the network
Note:-Creating a simple network for a handful of computers in a single room is usually done most efficiently using a bus topology
because it is simple and easy to install. Larger environments are usually wired in a star because moves, adds, and changes to the
network are more efficient with a physical star than with any of the other topologies.
Physical Media
Although it is possible to use several forms of wireless networking, such as radio and infrared, most networks communicate via
some sort of cable. In this section, we will look at three types of cables:
Coaxial
Twisted-pair
Fiber-optic
Coaxial Cable
Coaxial cable (or coax) contains a centered conductor, made of copper, surrounded by a plastic jacket, with a braided shield over
the jacket. There are two types of coaxial cables:
Thick Ethernet cable or ThickNet. It is also called 10Base5. The 10 refers to the data transfer speed, which is 10 Mbps, and
the 5 refers to the maximum length of a single cable, which is 500m.
Thin Ethernet cable or Thinnet. It is also called 10Base2. The 10 refers to the data transfer speed, which is 10 Mbps, and the
2 refers to the maximum length of a single cable, which is 185m (200m). ThinNet is connected to the computer through BNC
connectors.
With coaxial cable, the signal travels up and down the entire length of the wire. When the signal reaches the end of the wire, it
bounces back down the wire. This creates an echo. These additional signals on the wire make communication impossible. To
prevent this, terminators are placed on each end of the wire to absorb the unwanted echo. One terminator is also connected to a
ground.
Twisted-Pair Cable
Twisted-pair cable consists of multiple, individually insulated wires that are twisted together in pairs.
1. Shielded twisted-pair (STP):-A metallic shield is placed around the twisted pairs.
33
Note; - UTP is commonly used in 10BaseT, star-wired networks.
When electromagnetic signals are conducted on copper wires that are in close proximity (such as inside a cable), some
electromagnetic interference occurs. This interference is called crosstalk. Twisting two wires together as a pair minimizes such
interference and provides some protection against interference from outside sources. This cable type is the most common today. It
is popular for several reasons:
It is cheaper than other types of cabling.
Category 3 (Cat 3) has four twisted-pair (eight wires), with three twists per foot. is acceptable for 10Mbps.
Category 5 (Cat 5) has four twisted-pair (eight wires) and is rated for 100Mbps.
Category 6 (Cat 6) has four twisted-pair (eight wires) and is rated for 1000Mbps.
Fiber-Optic Cable
Because fiber-optic cable transmits digital signals using light pulses, it is immune to EMI (electromagnetic Interference). Light is
carried on either a glass or a plastic core. Glass can carry the signal a greater distance, but plastic costs less.
Fiber-optic cable is suited for data running large distances and without electronics regenerating the signal or for an installation
requiring high security. Fiber-optic is now being used in such applications as gigabit Internet backbones. However, it is difficult
to install and is expensive.
Modem- Modulator/Demodulator
- It lets computers exchange information though telephone lines.
- When transmitting information, the modulator changes the computers digital signal to analog signal.
- When receiving information, the demodulator translates the analog signal back to a digital signal.
Modulator – Digital to Analog
Demodulator – Analog to Digital
The Network Interface Card (NIC) is the expansion card you install in your computer to connect
(interface) your computer to the network. This device provides the physical, electrical, and electronic
connections to the network media. NICs either are an expansion card (the most popular
implementation) or built in to the motherboard of the computer.
Each type of NIC is specific to a topology and a connection type. To determine a NIC's type, review the documentation and
examine the NIC. Even though two NICs look alike, one may be a Token Ring NIC and the other an Ethernet NIC.
The Repeater
A repeater amplifies (or repeats) network signals to extend the maximum reach of a network. Repeaters
receive network signals on one port, amplify them, and repeat them out on the other port. Repeaters can
interconnect different media types but cannot convert protocols.
The Hub
A hub is the central device in a star topology. Most hubs are simple multiport repeaters. That is, they receive
a signal on one port and repeat it to all other ports.
34
The Bridge
A bridge is a network device that logically separates a single network into two segments. The primary use for a bridge is to keep
traffic meant for stations on one segment on that side of the bridge and not let that traffic pass to the other side. Bridges can
improve network performance because traffic is not propagated unnecessarily on all network segments.
The Router
A router is a network device that connects multiple, often dissimilar, network segments into an internet work. The router, once
connected, can make intelligent decisions about how best to get network data to its destination.
A router is more like a special-purpose computer than a simple electronic device. The classic definition of a router is a device that
reads the source and destination address of a packet and forwards it based on the information it gathers about the network.
Routers can make intelligent decisions about the best way to forward packets.
Network Connectors
The type of connector you use depends on the type of network and the type of cable (copper or fiber-optic).
D-type Connectors
The first type of networking connector was the D-type connector. A D-type connector is characterized by its shape.
The Attachment Unit Interface (AUI) connector is a D-type connector used to connect your computer to ThickNet
coaxial cable.
BNC Connectors
Most commonly used with ThinNet coaxial cable, BNC connectors are tube-shaped. A twist-lock mechanism prevents the cable
from disconnecting. You must push the cable's connector onto the connector on the NIC and then twist the connector on the
cable to lock it in place. BNC connectors are most commonly found in 10Base2 Ethernet networks, as well as in ARCNet.
RJ Connectors
RJ-45 connectors are most commonly found on both 10BaseT and Token Ring networks, but they can
be found on any network that uses four-pair, UTP cable. An RJ-11 connector is smaller than an RJ-45
connector, and RJ-11 uses four (or six) wires; the RJ-45 has eight wires housed in its case.
Media Access
With many stations on the same piece of network media, there has to be a way of vie for time on the
cable. This process is called media access, and two of the most popular methods are discussed below.
Carrier Sense/Multiple Access with Collision Detection (CSMA/CD) - this media access technology, used in Ethernet networks,
is probably the most common. When a protocol that uses CSMA/CD has data to transmit, it first senses if a signal is already on
the wire (a carrier), indicating that someone is transmitting currently. If no one else is transmitting, it attempts a transmission and
then listens to hear if someone else tried to transmit at the same time. If someone else transmits at the exact same time, a
condition known as a collision occurs. Both senders "back off" and don't transmit until some random period of time has passed.
They then both retry.
Token passing – this media access method uses a special packet called a token. The first computer turned on creates the token. It
then passes the token on to the next computer. The token passes around the network until a computer that has data to send takes
the token off the network, modifies it, and puts it back on the network along with the data it has to send. Each station between the
sender and the receiver along the network reads the destination address in the token. If the destination address does not match its
own, the station simply sends the package on its way. When the destination station recognizes its address in the destination
address of the token, the NIC copies the data into the station's memory and modifies the token, indicating it has received the data.
The token continues around the network until the original sender receives the token back again. If the original sender has more
data to send, the process repeats itself. If not, the sender modifies the token to indicate that the token is "free" for anyone else to
use. With this method, there are no collisions (as in CSMA/CD networks) because everyone has to have "permission" to transmit
(via the token).
What is Internet?
The Internet is a huge collection of computer networks that can communicate with each other – a network of networks. It is an
umbrella under which many different networks, small or big, freely exchange information. When you connect to the Internet from
office or home, your computer becomes a small part of this giant network.
35
To ensure the delivery of the data to the right computer, each computer on the Internet is given an address. This address scheme is
known as the Domain Name System.
Connectivity
You can connect to the Internet in one of two basic ways, dialing into an Internet service provider's (ISP) computer, or with a
direct connection to an Internet service provider.
To establish a conventional dial-up connection to the Internet, you will need the following:
Since most computers were not similar, they had to share the same language to understand each other. This is what gave birth to
the various protocols. Protocols are the formal rules governing the exchange of information between computers to provide reliable
and efficient transfer of information. Without protocols to guide the orderly exchange of data between points in a network, there
would be chaos, not communication. Detailed protocols are required to precisely define the format in which data and system
messages are to be sent. These also describe how a message is addressed and govern network traffic flow by controlling priority,
routing and sequencing of messages.
When you send a message across the Internet to another user, TCP divides the data into manageable units called packets and
attaches to each packet the information necessary to reassemble the data and check for errors. IP then labels all the packets with a
header containing the address of the destination and sends them on their way.
Once the packets reach their destination, the computer at the receiving end removes the IP header and uses the data that TCP
attached to each packet to make sure none of the packets have been lost or damaged. The packets are then reassembled into the
original message. If the computer discovers a damaged packet, it sends a message to the sending computer asking it to resend the
packet.
You access pages on web servers by using a program called a browser. As soon as you tell your browser what web page you
want to view, it goes to the web server that holds the page and retrieves it for you.
The links contained in web pages can point to areas within the same page, to other pages residing on the same web server, or to
pages sitting on a computer on the other side of the world.
The term web site refers to a collection of one or more web pages on the web. The relationship between Browsers and the web
servers is a client/server relationship. The client (your browser) requests information from the server (the web server containing
the requested information) and the server delivers it.
The World Wide Web (WWW) is a vast collection of documents stored on Internet computers. The web documents contain links
that lead to other web pages and they contain graphics, sound and so on, which open up new possibilities for presenting
information.
WWW uses Hypertext Mark-up language (HTML) to design a web document. WWW has revolutionized the way the world is
accessing the information on the Internet as:
The web is not linear - a user can click on any of the links and jump to the related document.
The web is rich in media elements – it includes text, voice, video, pictures, etc.
The web is interactive - A web user can fill in forms on-line, run programs, select options
Internet Features
Internet offers FTP (File Transfer Protocol). FTP allows a user to transfer data between computers on the Internet. FTP can
send and receive data to/from any distant computer on the Internet from/to the user's computer. FTP provides commands that
allow users to manage files. The FTP applications allow the users to download files from computers connected to the Internet.
Telnet is another popular feature available on the Internet. It is a program that allows one computer to connect to another
computer, anywhere in the world.
36
What is an E-mail? E-Mail implies Electronic Mail. The concept is in many ways similar to traditional postal service.
E-mail is the most widely used feature of the Internet. Using e-mail, a user can send and receive mail through computers to and
from any Internet user.
E-mail can be used transmit text, messages, audio and video clips.
E-Mail allows users to send a message to just one user or a group of users. Large documents can be attached.
Users can read, print, forward, answer or delete a message.
E-mail is much cheaper and faster in comparison to other communication services.
Each E-mail user is assigned a unique address, which is used by the e-mail network to deliver the message.
Email has become an important method of business communication. Used properly it is an extremely efficient and effective form
of communication that can be used to transmit all kinds of electronic data.
price - sending an email costs the same regardless of distance and however many people you send it to
speed - an email should reach its recipient in minutes, or at the most within a few hours
convenience - your message will be stored until the recipient is ready to read it, and you can easily send the same message to
a large number of people
permanent records - a record can be kept of messages and replies, including details of when a message was received
spam - unsolicited email that can overwhelm your email system unless you install a firewall and anti-spam software
email attachments - one of the most common ways computer viruses are spread
Emails being easily be sent to the wrong person accidentally, or forwarded on, as a careless or even libelous remark can be
damaging to your business.
Electronic storage space becoming a problem, particularly where emails with large attachments are widely distributed. One of the
main benefits of using email is that any type of file stored on a computer can be sent as an attachment to an e-mail. For example,
if you have a report that you have created in a word processing package you can send it in its entirety to someone else via
email.Here, an individual needs to have a personal address, commonly known as E-Mail account
Internet explorer
Internet explorer is one of the web browsers that enable us to get information from the web. Internet explorer makes it easier to
get information from the World Wide Web (WWW), whether you are searching for new information or browsing your favorite
web sites. Built-in technology can save you time completing routine web tasks, such as automatically completing web addresses
and forms for you and automatically detecting your network and connection status.
Status Bar
If you wish to use E-mail then you must have an E-mail address (sometimes called an account or an ID). Every E-mail user has a
unique E-mail address. Once you have an E-mail address, Your E-mail messages are stored in your personal (and unique)
electronic mailbox.
37
Every E-mail address has a basic structure as indicated below.
UNIT 5
A "problem" can be defined as a question or situation that presents uncertainty, perplexity, or difficulty. Real life is full of easy and
difficult problems; so is every professional field of endeavor. To succeed in life, as well as in our professions, we should develop the
ability to solve problems. In this unit we will try to clarify the meaning of the term problem solving, identify the steps involved, define
a methodology for problem solving, and see how we can make use of the computer as a tool in the process.
Problem solving uses different kinds of approaches. But the most common are:-
Bottom-up approach
Top-down and bottom-up are strategies of problem solving and knowledge ordering, mostly involving software, and by extension
other humanistic and scientific system theories. In the top down model an overview of the system is formulated, without going
into detail for any part of it. Each part of the system is then refined by designing it in more detail. Each new part may then be
refined again, defining it in yet more detail until the entire specification is detailed enough to validate the model. The top down
model is often designed with the assistance of "dark boxes" that make it easier to bring fulfillment but insufficient and irrelevant
in understanding the elementary mechanisms.
In bottom –up design, first the individual parts of the system are specified in great detail. The parts are then linked together to
form larger components, which are in turn linked until a complete system is formed. This strategy often resembles a "seed"
model, whereby the beginnings are small, but eventually grow in complexity and completeness.
In the software development process, the top-down and bottom-up approaches play a key role. Top-down approaches emphasize
planning and a complete understanding of the system. It is inherent that no coding can begin until a sufficient level of detail has
been reached in the design of at least some part of the system. This, however, delays testing of the ultimate functional units if a
system until significant design is complete. Bottom-up emphasizes coding and early testing, which can begin as soon as the first
module has been specified, This approach, however, runs the risk that modules may be coded without having a cleat idea of how
they link to other parts of the system, and that such kinking may not be as easy as first thought. Re-usability of code is one of the
main benefits of the bottom-up approach.
Top down programming is a programming style, the mainstay of traditional procedural languages, in which design begins by
specifying complex pieces and them dividing them into successively smaller pieces. Eventually, the components are specified
enough to be coded and the program is written. This is the exact opposite if the bottom-up programming approach which is
38
common in object oriented languages such as C++ of Java. The technique for writing a program using top-down methods is to
write a main procedure that names all the major functions it will need. Later, the programming team looks at the requirements of
each of these functions and the process is repeated. These compartmentalized sub-routines eventually will perform actions so
simple they can be easily and concisely coded. When all the various sub-routines have been coded been coded the program is
done.
Top-down programming may complicate testing, since nothing executable will even exist until the end of the project.
All decisions depending on the starting goal of the project and some decisions cannot be made depending on how
specific that description is.
Computers can be programmed to do many complicated tasks at very high speeds. Also, they can store large quantities of
information. Therefore, we can use computers as a tool in problem solving if one or more of the following conditions for a
problem hold true:
5. We expect to use the same method of solution often in the future to solve the same problem with different inputs.
The general problem-solving method outlined in the previous section also applies to problem solving with computers. The
implementation step is somewhat different, how-ever; rather than applying the method of solution to the input data ourselves, we
instruct the computer to do it. Now, the computer can execute the steps in the method of solution and solve the problem.
However, we need to write a program that consists of instructions corresponding to the steps of the solution such that the
computer can interpret and execute them. In developing the program, debugging it, expanding it in the future if necessary, and
using it, we will have to remember certain details of the implementation. Consequently, the program has to be properly
documented. Thus we add another step to the software development method: program documentation.
1. Requirements Specification
2. Analysis
3. Design
4. Implementation
6. Documentation
Analysis
1. Inputs to the problem, their form, and the input media to be used
2. Outputs expected from the solution, their form, and the output media to be used
Provided we have acquired a clear understanding of the problem and have a precise requirements specification at hand, the
analysis phase is usually easy.
Design
The next step is to design a method of solution for the problem. Earlier in this chapter we saw that a method of solution is a series
of steps to be performed in a specific logical order. Another name for a method of solution is an algorithm.
Algorithm: An algorithm is a sequence of a finite number of steps arranged in a specific logical order, which, when executed,
produce the solution for a problem.
Algorithm: is an ordered sequence of unambiguous and well-defined instructions that performs some task and halts in finite time.
2. Unambiguous and well-defined instructions mean that each instruction is clear, do-able, and can be done without difficulty. :
It must not be ambiguous. In most cases we develop an algorithm so that it can be translated into a program to be executed by
computers. Computers cannot cope with ambiguities. Therefore, every step in an algorithm must be clear as to what it is supposed
to do and how many times it is expected to be executed.
3. Correctness: - performs some task. It must be correct and must solve the problem for which it is designed.
4. Halts in finite time (algorithms should terminate): It must execute its steps and terminate in finite time. An
algorithm that never terminates is unacceptable.
In 1966 two researchers, C. Bohm and G. Jacopini, demonstrated that any algorithm can be described using only three control
structures:
Sequence: instructions are executed in order.
Selection: a control structure that asks a true/false question and then selects the text instructions based on the
answer.
Repetition: a control structure that repeats the execution of a block of instructions.
Pseudo Coding:
40
Pseudo Code language is a semiformal, English-like language with a limited vocabulary that can be used to design and describe
algorithms. The main purpose of a pseudo code language is to define the procedural logic of an algorithm in a simple, easy-to-
understand manner for its readers, who may or may not be proficient in computer programming languages. As you will see, a
pseudo code for an algorithm is ultimately implemented as a computer program. A program necessarily contains the syntactical
constraints of the programming language. A pseudo code language is a more appropriate algorithm description language than any
programming language.
Therefore, a pseudo code language must have constructs that correspond to these control structures in its vocabulary. There are no
universally accepted standards for a pseudo code language.
Example
Computing sales tax: pseudo-code the task of computing the final price of an item after in sales tax. Note the three types of
instructions: input (get), process/calculate (=) and output (display).
6. Stop
Variables: price of item, sales tax rate, sales tax, final price
Note that the operations are numbered and each operation is unambiguous and effectively computable. We also extract and list all
variables used in our pseudo code. This will be useful when translating pseudo code in to a programming language.
Pseudo code is a kind of structured English for describing algorithms. It allows the designer to focus on the logic of the algorithm
without being distracted by details of language syntax. At the same time, the pseudo code needs to be complete. IT describes the
entire logic of the algorithm so that implementation becomes a role mechanical task of translation line by line into source code.
In general the vocabulary used in the pseudo code should be the vocabulary of the problem domain, not of the implementation
domain. The pseudo code is a narrative for someone who knows the requirements (problem domain) and is trying to learn how
the solution is organized.
The sequence control structure is a series of steps or statements that are executed in the order in which they are written in an
algorithm.
The four statements in this pseudo code algorithm are executed one after another in the order in which they are written. Sequence
structures are essentially built into computers. Unless we use other control structures, the computer executes all statements in a
program one after another
41
read Product Unit Price
read Count
compute Total Price
print Total Price
Sometimes it is useful to mark the beginning and end of a block of statements in an algorithm. We will use the keywords begin
and end, as in the following example. You should note that the statements in the block are indented to improve readability.
begin
read Product Unit Price
read Count
compute Total Price
print Total Price
end
The selection control structure defines two courses of action, depending on the outcome of a condition. A condition is an
expression that, when evaluated computes to either true or false.
The selection structure requires the use of the keywords if, else, and end_if. The format follows.
if condition
then-part
else
else-part
end_if
The meaning of the selection structure is as follows: If the value computed for condition is true, the statement make up the then-
part are executed. Then the statement that follows the selection structure in the pseudo code will be considered. If condition
evaluates to false, the then-part will be bypassed and the statements in the block called the else part will be executed. The then
part and the else part can each be a single statement or a series of statements. In the later case the statements must be enclosed in
blocks using the keyword begin and end. To indicate the end of a selection structure we will use the keyword end_if.
For example, we will find greatest among two numbers: Let us consider two person’s salary and we want to find out who is
getting more salary. Following is the selection sequence for this problem
if person1_salary is less than person2_salary
begin
Print “person2 salary is more the person1”.
end
else
begin
Print “person1 salary is more than person2”.
end
end_if
The repetition control structure specifies a block of one or more statements that are repeatedly executed until a condition is
satisfied.
A repetition (or iteration) control structure enables us to define loops, which are repeated executions of blocks of statements.
Several forms of repetition control structures can be used in algorithm design. To keep things simple, we will describe only one of
them here: the while repetition structure. The format of the while repetition structure
While condition
loop-body
42
end_while
Here loop-body is a single statement or a block of statements that is executed as long as the condition written after the keyword
while is true. The keyword end_while indicates the end of the repetition structure. The repeated execution of loop-body
terminates when the condition becomes false. Obviously, something in the loop body must change a component of the condition
so that it eventually becomes false and the algorithm control drops out of loop-body. Otherwise, we will have a perpetual loop (or
infinite loop), and the algorithm will never terminate. It is the responsibility of the algorithm designer to make sure that the
algorithm is not caught in a perpetual loop. Following is an example of the while repetition structure.
Set count to 0
print count
end_while
Flow Charts
A flowchart is a graph consisting of geometrical shapes that are connected by flow lines.
The geometrical shapes in a flowchart represent the types of statements in an algorithm. The details of statements are written
inside the shapes. The flow lines show the order in which the statements of an algorithm are executed.
Predefined Process A group of statements that together accomplish one task. Used
extensively when programs are broken intoModules
Connector Can be used to eliminate lengthy flow lines. Its use indicates that one
symbol is connected to another
Flow lines and Used to connect symbols and indicate the sequence of operations. The
Arrowheads flow is assumed to go from top to bottom and from left to right.
Arrowheads are only required when the flow violates the standard
direction
43
Here example for Flow Chart – Total Price of Sales
Start
Input Count
Stop
44
Flowchart for Sequence structure
false true
Condition true
Condition Loop-bod
Else-part Then-part
false
Although, like pseudo coding, flowcharting is useful for algorithm design and representation, it has certain disadvantages that
pseudo coding doesn't have. For large algorithms, flowcharts tend to become excessively large. As a result, they are quite difficult
to read and the algorithm is hard to understand. Also, drawing detailed flowcharts for large algorithms is tedious and time-
consuming. Therefore, it is not recommend using flowcharts as an algorithm design and documentation tool.
Implementation
The next step in the software development method is the implementation of the algorithm in a programming language. During
implementation we translate each step of the algorithm into a statement in that particular language and end up with a computer
program. Therefore, we can define a computer program as follows
A computer program is a sequence of a finite number of statements expressed in a programming language in a specific logical
orders that, when executed; produce the solution for a problem.
To translate the pseudo code algorithm of our example (Finding Total Price), into a C++ program that can be compiled and
executed on a computer; we must know at least a small subset of the C++ language. Once you develop the ability to design
algorithms, writing programs for them is quite easy
Programming Errors
Another challenge that awaits you as a problem solver is program debugging. Debugging is the process of finding and correcting
errors in computer programs. No matter how careful you are as a programmer, most programs you write will contain errors.
Either they won't compile or they won't execute properly. This situation is something that happens very frequently to every
programmer. You should take program debugging as a challenge, develop your debugging skills, and enjoy the process. Program
debugging is another form of problem solving
Design Errors occur during the analysis, design, and implementation phases. We may choose an incorrect method of solution for
the problem to be solved, we may make mistakes in translating an algorithm into a program, or we may design erroneous data for
the program. Design errors are usually difficult to detect. Debugging them requires careful review of problem analysis, algorithm
design, translation, and test data.
Syntax Errors are violations of syntax rules, which define how the elements of a programming language must be written. They
occur during the implementation phase and are detected by the compiler during the compilation process. In fact, another name for
45
syntax errors is compilation errors. If your program contains violations of syntax rules, the compiler issues diagnostic messages.
Depending on how serious the violation is, the diagnostic message may be a warning message or an error message. A warning
message indicates a minor error that may lead to a problem during program execution. These errors do not cause the termination
of the compilation process and may or may not be important. However, some warning diagnostics, if unheeded, may result in
execution errors. Therefore, it is good practice to take warning message seriously and eliminate their causes in the program. If the
syntax violation is serious, the compiler stops the compilation process and produces error messages, telling you about the nature
of the errors and where they are in the program. Because of the explicit help we get from compilers, debugging syntax errors is
relatively easy.
Run-time Errors are detected by the computer while your program is being executed. They are caused by program instructions
that require the computer to do something illegal, such as attempting to store inappropriate data or divide a number by zero. When
a run-time error is encountered, the computer produces an error message and terminates the program execution. You can use these
error messages to debug run-time errors.
After you translate a designed algorithm into a C++ program and compile it, you are ready to run it. In this phase your main
objective is to convince yourself — and eventually your clients — that the program will do what it is expected to do. In other
words, you will want to verify that your program is correct.
Program Verification is the process of ensuring that a program meets user requirements.
One of the techniques that can be used for program verification is Program Testing.
When you begin testing your program, you may come across some run-time errors. Naturally, you debug them and run your
program again. However, even output that seems correct is not a guarantee that your program is completely correct. A program
must be tested using a sufficiently large sample of carefully designed test data sets such that every logical path in the program is
traversed at least once. If your program contains conditional executions of blocks of code, a single test data set may not cause all
program statements to be executed. You must continue to test your program until you are sure that all statements in it are
functioning correctly.
Program Documentation
Now that you have a working, tested program you are tempted to call it quits and look for new challenges. Please don't. For
several reasons, you are not done yet:
You are likely to return to this program sometime in the future to use it again, or you may want to use part of it in
developing the solution for a similar problem.
If you have developed this program for a client's use, he or she will need some information so that in your absence the
program can be used.
If you are working for a company and have developed this program for the company's software library, some other
programmer may be assigned to maintain it or to make additions to it.
You may eventually discover some errors in the program, and you may be required to correct them.
The significance of proper program documentation in the software life cycle cannot be overemphasized. Program documentation
consists of these elements:
46
A user's guide explaining to non programmer users how the program should be used.
The need for good quality programming is greater than ever for the economic production of correct programs. This only comes
from good program design.
1. Reliability: - The program should always do what it is supposed to do and handle all types of exceptional
circumstances.
2. Maintainability: - The program should be easily modified when the need arises.
3. Portability: - The program should be used on different computers with minimum modification.
4. Efficiency: - The program should make optimal use of time and space resources.
How and when companies and organizations use technology are critical to remaining competitive. Computer and
informationsystemsmanagers play a vital role in the technological direction of their organizations. They do everything from
constructing the business plan to overseeing network security to directing Internet operations.These managers plan and coordinate
activities such as installation and upgrading of hardware and software, programming and systemsdesign, development of computer
networks, and implementation of Internet and intranet sites. Generally, they are increasingly involved with the upkeep,
maintenance, and security of networks.
Input of Output of
Processing
Data Informatio
Data
Resources Products
47
W
I
U
g
/
D
C
b
p
,
M
R
H
A
F
m
u
f
S
c
y
l
a
s
v
n
i
o
t
r
e
h
d
1.
6.2 Introduction to Information Systems
6.2.1 Information systems and the managerial End user
I Basic Definitions
Example.
3.
Before going into any details, it is desirable to define some key terms so we can communicate effectively.
Information
- Information is data that has been processed into a form that is meaningful to the recipent and is of real perceived value in current or
prospective decisions.
This defintion stresses the fact that data must be processed in some way to produce information.
It also shows the distinction between data and information
Jones
$ 35,000
$ 12,000
Data is defined as raw facts or observations, typically about physical phenomena or business transactions.
35 units
Western Region
$ 100,000
J.
100 units
Data 12 units
Data
Processing
sales person : J. Jones
Sales Teritory: Western
Region
Current sales:
147
Information
Information is data that has been put into a meaningful and useful context for specific end users. This gives the
information value for specific persons and meets their particular information needs.
- From another perspective, information is defined as: some tangible or intangible entity that reduces uncertainty about some state or
event by inreasing the recipents knowledge.
2. Informtion system
- An information system is a set of people, procedures, and resources that collects, transforms, and disseminates information in an
organization.
- Today's organizations rely on many types of information systems. They include:
Simple manual (Paper- and- pencil) information systems
Informal information systems (Word- of- mouth)
Computer - based information systems that use hardware, software, and people resources to transform data
resources into information products for end users.
Management Information systems
- There is no consensus on the definition of the term MIS.
- MIS is an integrated, user-machine system for providing information to support operations, management, and decision making
functions in an organazation. The system utilizes computer hardware and software, manual procedures, models for analysis,
planning, control and decision making, and a database.
48
4. End user
An end user is any one who uses an information system or the information it produces. This usually applies to most people in an
organization as distinguished from the smaller number of people who are information specialists, such as system analysts or
programmers.
The workforce today consists mainly of workers in service occupations or knowledge workers, that is, people who spend
most of their workday creating, using, and distributing information. The category of knowledge workers includes executives,
managers, and supervisors; professionals such as accountants, engineers, scientists, stockbrokers, and teachers, and staffpersonnel
such as secretaries and clerical office personnel.
These people all make their living using information systems to create, distribute, manage, and use information resources,
which are then used to help them manage the human, financial, material, energy, and other resources involved in their work
responsibilities.
Information, then, is a valuable commodity to knowledge workers, their organization, and society. A major challenge for the
information society is to manage its information resources to benefit all members of society.
A) What is a system?
A system is a group of interrelated components working together toward a common goal by accepting inputs and producing outputs in
an organized transformation process.
Such a system has three basic interacting components or functions: input, processing, and output.
Examples include
* Manufacturing system.
* An Information system
The systems concept can be made even more useful by including two additional components: feedback and control.
Such a system (a system with feedback and control) is sometimes called a cybernetic system, i.e. a self-monitoring, self-
regulating system.
Feedback is data about the performance of a system. For example, data about sales performance is feedback to a sales
manager.
Control is a major system function that monitors and evaluates feedback to determine whether the system is moving
toward the achievement of its goal. It then makes any necessary adjustments to the input and processing components of
the system to ensure that proper output is produced.
The following figure illustrates a generic concept of a system incorporating feedback and control components and
exchanging inputs and outputs with its environmen
Environment
50
Control signals
Processing
System boundary
Other systems
Feedback is frequently included as part of the concept of the control function because of the essential role feedback plays in control.
Positive feedback- a system performing properly generates positive feedback.
Negative feedback- a system whose performance is deteriorating or deviating from the attainment of its goal. In the real
world, performance of most systems tends to deteriorate over time. This characteristic is called entropy – the tendency of a
system to lose its homeostatis, that is, a relatively stable state of equilibrium. Thus, the function of control is to reverse the
entropy and maintain the equilibrium of a system through a variety of corrective actions.
B) Other system characteristics
The figure provided above points out several other characteristics important to understanding information systems.
A system does not exist in a vacuum; rather, it exists and functions in an environment containing other systems.
If a system is one of the components of a larger system, it is called a subsystem, and the larger system is its
environment.
Also, a system is separated from its environment and other systems by its system boundary.
The interconnections and interactions between the subsystems are termed interfaces. Interfaces occur at the boundary
and take the form of inputs and outputs.
The figure also illustrates the concept of an open system, which is a system that exchanges information, material,
energy etc. with its environment.
If a system has the ability to change itself or its environment in order to survive, it is known as an adaptive system.
C) A business as a system
A business firm is an open, adaptive organizational system operating in a business environment. A business consists of the following
interrelated system components:
Input: Economic resources such as people, money, material, machines, land, facilities, energy, and
information are acquired by a business from its environment and used in its system activities.
Processing: Organizational Processes such as marketing, manufacturing, and finance transform input into
output.
Output: goods and services, payments to employees and suppliers, dividends, taxes, and information are all
outputs produced by a business and exchanged with or transferred to its environment.
Feedback: A primary role of information systems is serving as the feedback component of an organizational
system. They provide information to management concerning the performance of the organization.
Control: management is the control component of an organizational system.
- Managers control the operations of a business so that its performance meets organizational goals such as
profitability, market share, and social responsibility.
- Feedback about organizational performance is compared to standards of performance established by
management. Management then makes decisions to adjust performance to meet organizational goals.
D) Information system concepts.
In section 1, we said that an information system is
- A set of people, procedures, and resources
- that collects, transforms, and disseminates information in an organization.
In this section, we said that an information system is a system that
51
- accepts data resources as input, and
- processes them into information as output.
How does an information system accomplish this? What system components and activities are involved?
An information system model
- An information system uses the resources of hardware (machines and media), software (programs and
procedures), and people (specialists and end users) to perform input, processing, output, storage, and control
activities that convert data resources into information products.
Storage of Data
1. People, hardware, software, and data are the four basic resources of information systems.
2. People resources include end users and IS specialists, hardware resources include machines and media, software
resources include both programs and procedures, data resources include data, model, and knowledge bases.
3. Data resources are transformed by information processing activities into a variety of information products for end users.
4. Information processing consists of input, processing, output, storage, and control activities.
Environment: As mentioned before, a business is an open, adaptive system that shares inputs and outputs with other
systems in its environment.
- A business must maintain appropriate resources with other economic, political, and social systems in its
environment.
- This group includes its stakeholders, such as customers, suppliers, competitors, labor unions, financial
institutions, governmental agencies, and the community.
D.1. Information system activities
The basic information processing activities that occur in information systems include:
Input of data resources
- Data about business transactions and other events must be captured and prepared for processing by the basic data
entry activities of recording and editing.
- End users typically record data about transactions on some type of physical medium such as paper form or
enter it directly into a computer system.
- This usually includes a variety of editing activities to assure they have recorded data correctly.
52
Processing of data into information
- Data is manipulated by such activities as calculating, comparing, sorting, classifying, and summarizing.
These activities organize, analyze, and manipulate data, thus converting it into information for end users.
- The quality of any data stored in an information system must also be maintained by a continual process of
correcting and updating activities.
For Example
Data received about a purchase can be
- Added to a running total of sales results,
- Compared to a standard to determine eligibility for a sales discount,
- Sorted in numerical order based on product identification numbers
- Classified into product categories (Such as food and nonfood items)
- Summarized to provide a sales manager with information about various product categories and finally,
- Used to update sales records.
- Information in various forms is transmitted to end users and made available to them in the output activity.
- Common information products are video displays, paper documents, audio responsesthat provide us with
messages, forms, reports, listings, etc.
Storage of data resources.
- storage is a basic system component of information systems
- storage is an IS activity in which data and information are retained in an organized manner for later use.
- Stored data is commonly organized into fields, records, files, and databases.
Control of system performance
- An information system should produce feedback about its input, processing, output, and storage activities.
- This feedback must be monitored and evaluated to determine if the system is meeting established
performance standards.
- Then appropriate system activities must be adjusted so that proper information products are produced for end
users.
D.2. Information System Resources
An information system consists four major resources:
i) Hardware Resources
- The concept of hardware resources includes all physical devices and materials used in information processing.
- It includes machines and media
- Examples
Large mainframe computers, minicomputers microcomputers
Telecommunication networks.
Computer peripherals
ii) Software Resources
- Include all sets of information-processing instructions.
Programs- operating instructions which direct and control hardware
Procedures-information processing instructions needed by people.
Example of software
- System software, such as an operating system program, which manages the operations of a computer system.
- Application software, which are programs that direct processing for a particular use of computers by end
users.
- Procedures - operating instructions for people
iii) People Resources
53
- People are required for the operation of all information system. These resources include:
Specialists- people who develop and operate information systems. They include system analysts,
programmers, and computer operators.
End users- anyone else who uses information systems. These can be accountants, sales persons, engineers,
customers, or managers.
iv) Data Resources
The data resources of information systems are typically organized into:
- Databases- which hold, processed and organized data.
- Model bases- which hold conceptual, mathematical, and logical models that express business relationships,
computational routines, or analytical techniques
- Knowledge bases- which hold knowledge in a variety of forms such as facts about a specific subject area and
rules of inference about various subjects.
Data can take many forms:
Alphanumeric data- composed of numbers and alphabetical and special characters that describe
business transactions and other events and entities.
Text data - consisting of sentences and paragraphs used in written communication.
Image - graphic shapes and figures
Video data - data presented for viewing by a variety of video display devices.
Audio data - the human voice and other sounds.
Tactile data - generated by touch - sensitive materials
Sensor data - provided by a variety of sensors used in the control of physical processes.
Data resources are typically recorded and stored on several types of data media. Examples:
- Paper documents -magnetic disks - magnetic tape
- Optical disks - microfilms - electronic circuit chips
6.3 IS building blocks
Information System Architecture provides a unified frame work into which various peoples with different perspectives can
organize and view the fundamental building blocks of information systems here as table below.
54
4) System Builders’ Perspective: Middleware is a layer of utility software that sites in between application and system
software to transparently integrate differing technologies so that they can interoperate.
Phase 2: Analysis: The analysis phase involves analyzing end-user business requirements and refining project goals into defined
functions and operations of the intended system. A good start is essential and the organization must spend as much time, energy, and
resources as necessary to perform a detailed, accurate analysis.
The three primary activities involved in the analysis phase are:
1) Gather business requirements.
2) Create process diagrams.
3) Perform a buy versus build analysis
Phase 3: Design:The design phase involves describing the desired features and operations of the system including screen layouts,
business rules, process diagrams, pseudo code, and other documentation.
The two primary activities involved in the design phase are:
1) Design the IT infrastructure.
2) Design system models.
Phase 4: Development: The development phase involves taking all of the detailed design documents from the design phase and
transforming them into the actual system.
The two primary activities involved in the development phase are:
1) Develop the IT infrastructure.
2) Develop the database and programs.
Phase 5: Testing:The testing phase involves bringing all the project pieces together into a special testing environment to test for
errors, bugs, and interoperability, in order to verify that the system meets all the business requirements defined in the analysis phase.
The two primary activities involved in the testing phase are:
1) Write the test conditions.
2) Perform the system testing.
Phase 6: Implementation: The implementation phase involves placing the system into production so users can begin to perform
actual business operations with the system.
Phase 7: Maintenance:The maintenance phase involves performing changes, corrections, additions, and upgrades to ensure the
system continues to meet the business goals.
This phase continues for the life of the system because the system must change as the business evolves and its needs change,
demanding constant monitoring, supporting the new system with frequent minor changes (for example, new reports or information
capturing), and reviewing the system to be sure it is moving the organization toward its strategic goals.
55
One of the most well-known notions in the area of Information Systems Development is “Methodology”. The notion of “methodology” was
very vigorous during the 70s and until the end of the 80s. During all this period, a large volume of research work was done, which was
mainly focused on the debate between two opposite schools: the school of the “hard” approach and the school of the “soft” approach to
Information Systems Development.
Trying to present some information about the conceptual abstraction of “methodology”, there are two points of view:
One is to give a definition. In fact, there is no single definition of methodology and, to make things worse, the
existing definitions seem not even to be compatible one to another.
Second is to give some characteristics of a methodology, characteristics that are common to all (or, at least, most of)
the existing methodologies and affect their use.
A system development methodology refers to the framework that is used to structure, plan, and control the process of developing an
information system. A wide variety of such frameworks have evolved over the years, each with its own recognized strengths and
weaknesses. Hence in IS development methodologies we have two basic fame works linear and iterative:
Waterfall:
Framework Type: Linear
Basic Principles:
1. Project is divided into sequential phases, with some overlap and splashback acceptable between phases.
2. Emphasis is on planning, time schedules, target dates, budgets and implementation of an entire system at one time.
3. Tight control is maintained over the life of the project through the use of extensive written documentation, as well as
through formal reviews and approval/signoff by the user and information technology management occurring at the end
of most phases before beginning the next phase.
Strengths:
1. Ideal for supporting less experienced project teams and project managers, or project teams whose composition
fluctuates.
2. The orderly sequence of development steps and strict controls for ensuring the adequacy of documentation and
design reviews helps ensure the quality, reliability, and maintainability of the developed software.
3. Progress of system development is measurable.
4. Conserves resources.
Weaknesses:
1. Inflexible, slow, costly and cumbersome due to significant structure and tight controls.
2. Project progresses forward, with only slight movement backward.
3. Little room for use of iteration, which can reduce manageability if used.
4. Depends upon early identification and specification of requirements, yet users may not be able to clearly define what
they need early in the project.
Prototyping:
Framework Type: Iterative
Basic Principles:
1. Not a stand handling selected portions of a larger, more traditional development methodology
Incremental, Spiral, or Rapid Application Development (RAD)).
2. Attempts to reduce inherent project risk by breaking a project into providing more ease-of-change
during the development process.
3. User is involved throughout the process, which increases the likelihood of user acceptance of the final
implementation.
Strengths:
1. Addresses the inability of many users to specify their information needs, and the difficulty of systems analysts to
understand the user’s environment, by providing the user with a tentative system for experimental purposes at the
earliest possible time.”
2. “Can be used to realistically model important aspects of a system during each phase of the traditional life cycle.”
3. Improves both user participation in system development and communication among project stakeholders.
Weaknesses:
1. Approval process and control is not strict.
2. Requirements may frequently change significantly.
3. Identification of non-functional elements is difficult to document.
56