Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
15 views

Chapter 3 - Computer Software

Uploaded by

tylerjohnwamuuru
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views

Chapter 3 - Computer Software

Uploaded by

tylerjohnwamuuru
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

UCC103 – PRINCIPLES OF COMPUTING

CHAPTER THREE: COMPUTER SOFTWARE

At the end of the chapter the learner shall be able to;


 Explain computer software and the classification of computer software
 Explain system software and the different software in that category and their application and
importance in computing
 Explain application software and the different software in that category such general purpose and
special purpose software
 Explain Ready made software vs tailor made software

3.1. Introduction
Software is simply set of instructions that cause a computer to perform one or more tasks. The set of
instructions is often called a program or, if the set is particularly large and complex, a system. Computers
cannot do any useful work without instructions from software; thus a combination of software and
hardware (the computer) is necessary to do any computerized work. A program must tell the computer
each of a set of tasks to perform, in a framework of logic, such that the computer knows exactly what to
do and when to do it. Data are raw facts and ideas that have not been processed while Information is data
that has been processed so as to be useful to the user

3.2. Classification of software


Software can be broadly classified into
The Software is categorized on the basis of functions into system software and application software

Software

System software Application software

Operating system Service programs General /ready Special/tailor


made applications made applications
(Application
Package)

Utilities Development Communication


programs programs

Intro to Computer – Chapter 4 Software Page 1


3.3. System Software
Systems software: Also called Operating Systems (OS) are programs with associated documentation that
controls the way the computer operates or provide facilities that extend the general capabilities of the
system.

System Software:- Which controls all processing activities and makes sure that the resources and the
power of the computer are used in most efficient manner . The System software can categorized in to
1. Operating System
2. Language Processors (Assemblers, Compilers, Interpreters)
3. Utilities Programs
4. Service Programs - Device Drivers
5. Basic Input Output system (BIOS)

Classification;
1. Operating systems and control programs: a complex program and most important program that runs
on a computer and which controls the operation of a computer. It perform basic tasks, such as
recognizing input from the keyboard, sending output to the display screen, keeping track of files and
directories on the disk, and controlling peripheral devices such as disk drives and printers. In general
the operating system supervises and directs all the software components and the hardware
components. Sophisticated operating system could handle multi-processors, many users and tasks
simultaneously. Examples of computers operating systems are UNIX, Microsoft windows 95/98,
Windows NT, Windows 2000, Windows XP, Windows Vista and Linux.
2. Language Processors
Translators: used to translate programs developed using standard programming languages into
machine language that is understood by the computer.
There are three basic types of translators they are
i. Compilers: - A compiler is a software that will convert the high level instructions into
equivalent Machine level instructions at a time.
ii. Interpreters:- A Interpreter is a software that will convert the high level instructions into
equivalent Machine level instructions step by step.
iii. Assembler:- Assembler is a software that will convert the high level instructions into
equivalent Machine level instructions but here, the input programs are in assembly language.
The output is in machine language.
3. Utilities Programs: systems programs that provides useful service to the users of the computer by
providing facilities for performing common tasks of a routine nature. Common types includes
 Sort: used for sorting data
 Editor: also called text editors are used at a terminal and provide facilities for the creation or
amendment of programs
 File copying: also called media conversion are used to copy data from one medium to another.
 Dump: used to copy the content of the main memory to an external storage device.
 File maintenance: program used to carry out the process of insertion/deletion of records in any
file. It can also make amendments to the standing data contained in a record.
 Tracing and Debugging: used in conjunction with the debugging and testing of application
programs. Tracing involves producing diagnostic information after obeying specified instructions
so that the cycle of operation can traced and errors located. Debugging is the term given to the
process of locating and eliminating errors (bugs) from a program.
 Libraries- commonly used parts or portions of a program which can be called or included in the
programmer’s code without having to recode that portion.

Intro to Computer – Chapter 4 Software Page 2


 Anti-virus applications protect your computer from the damage that can be caused by viruses and
similar programs
 Compression utilities make files smaller for storage (or sending over the Internet) and then return
them to normal size.
 Data recovery utilities attempt to restore data and files that have been damaged or accidentally
deleted.
 Disk defragmenters reorganize the data stored on disks so that it is more efficiently arranged.
 Firewalls prevent outsiders from accessing your computer over a network such as the Internet.
4. Device Drivers (Service Drivers)
These utilities are those software programs which are provided by the manufacturer of various hard
wares to perform specific tasks which are common to all data processing installations. The
commonly available service utilities are:
a) Device Drivers: These are special programs which are used to enhance the capability of
operating systems, so that it can support many input/output devices like mouse, joysticks,
printers etc.
b) Communication programs- refer to programs that make it possible to transmit data.
c) Directory and File management Utilities: These are those software programs which are used to
manage data.
d) Database management systems (DBMS): a software that constructs, expands and maintains a
database. It provides the control interface between the user and the data in a database.
5. BIOS (Basic Input/ Output System)
The BIOS, or basic input/output systems is a type of software that is encoded within the computer's
read-only memory (ROM) chip located on the motherboard. This is to make sure that the BIOS is never
altered and to make sure that it will always be available for the central processing unit to use when the
computer is first turned on.

Functions of the BIOS:


The most important job of the BIOS is to give the microprocessor its first instructions and to load the
operating system when the computer is turned on. It then performs a POST, or Power-On Self Test.
This is an inspection to check that everything in the computer is working and functioning properly.

In addition, there is more than one BIOS in your computer. The one commonly referred to is the main
system BIOS. However, there are other BIOS chips that can be found in many of your computer's
peripherals. The system BIOS activates all of the other BIOS chips.

If everything is found to be working properly during the POST, the BIOS will then try to boot the
computer from the hard drive. This is the process of launching the Operating system so that you can
use many different computer programs, like playing games or surfing the Internet!

When you turn your computer on:


1) The first thing you see is your BIOS working
2) The BIOS checks the CMOS for the settings that you have specified for your operating system
(such as background, font, etc.). CMOS is an acronym for Complementary Metal Oxide
Semiconductor. It is a RAM chip that stores basic information about your computer system and
your configurations.
3) The BIOS will check this to find out the type of hard drive and floppy disks in the computer, how
much memory there is, etc.
4) The BIOS loads interrupt handlers, which are software that act like translators, and the device
drives, which are software identifying hardware components like a keyboard, mouse, hard disk
and floppy disk. It will check the ports to make sure these devices are in tact.
5) The BIOS performs the POST to make sure that everything is working properly.
6) It will display system settings.

3.4 Functions of OS

Intro to Computer – Chapter 4 Software Page 3


Operating System:- Which is set of programs that controls and support hardware and provide various
services which are used for better performance of computer . Operating system hides the hardware from
the user. The major functions of O.S are

3.4.1. Process Management


The CPU executes a large number of programs. While its main concern is the execution of user
programs, the CPU is also needed for other system activities. These activities are called processes. A
process is a program in execution. The operating system is responsible for the following activities in
connection with processes managed.
a) The creation and deletion of both user and system processes
b) The suspension and resumption of processes.
c) The provision of mechanisms for process synchronization
d) The provision of mechanisms for deadlock handling.

3.4.2 Memory Management


Memory is central to the operation of a modern computer system. Memory is a large array of words or
bytes, each with its own address. Interaction is achieved through a sequence of reads or writes of specific
memory address. The CPU fetches from and stores in memory. In order for a program to be executed it
must be mapped to absolute addresses and loaded in to memory. In order to improve both the utilization
of CPU and the speed of the computer's response to its users, several processes must be kept in memory.
The operating system is responsible for the following activities in connection with memory management.
a) Keep track of which parts of memory are currently being used and by whom.
b) Decide which processes are to be loaded into memory when memory space becomes available.
c) Allocate and de-allocate memory space as needed.
d) Secondary Storage Management

3.4.3. Secondary Storage Management


The main purpose of a computer system is to execute programs. These programs, together with the data
they access, must be in main memory during execution. Since the main memory is too small to
permanently accommodate all data and program, the computer system must provide secondary storage to
backup main memory. Most modem computer systems use disks as the primary on-line storage of
information, of both programs and data. The operating system is responsible for the following activities
in connection with disk management
a) Free space management
b) Storage allocation
c) Disk scheduling.

3.4.4 Input Output System – Input/output management


One of the purposes of an operating system is to hide the peculiarities of specific hardware devices from
the user. For example, in UNIX, the peculiarities of Input/Output devices are hidden from the bulk of the
operating system itself by the INPUT/OUTPUT system. The Input/Output system consists of:
a) A buffer caching system
b) A general device driver code
c) Drivers for specific hardware devices.
Only the device driver knows the peculiarities of a specific device.

3.4.5. File Management

Intro to Computer – Chapter 4 Software Page 4


A file is a collection of related information defined by its creator. File management is one of the most
visible services of an operating system. Computers can store information in several different physical
forms; magnetic tape, disk, and drum are the most common forms. Each of these devices has it own
characteristics and physical organization. For convenient use of the computer system, the operating
system provides a uniform logical view of information storage. The operating system abstracts from the
physical properties of its storage devices to define a logical storage unit, the file. Files are mapped, by the
operating system, onto physical devices.

The operating system is responsible for the following activities in connection with file management:
a) The creation and deletion of files
b) The creation and deletion of directory
c) The support of primitives for manipulating files and directories
d) The mapping of files onto disk storage.
e) Backup of files on stable (non volatile) storage.

3.4.6. Protection System – Data Security and Integrity


The various processes in an operating system must be protected from each other’s activities. For that
purpose, various mechanisms which can be used to ensure that the files, memory segment, CPU and
other resources can be operated on only by those processes that have gained proper authorization from
the operating system.

Protection refers to a mechanism for controlling the access of programs, processes, or users to the
resources defined by a computer controls to be imposed, together with some means of enforcement. An
unprotected resource cannot defend against use (or misuse) by an unauthorized or incompetent user.

3.4.7. Command Interpreter System


One of the most important components of an operating system is its command interpreter. The command
interpreter is the primary interface between the user and the rest of the system. Many commands are
given to the operating system by control statements. When a new job is started in a batch system or when
a user logs-in to a time-shared system, a program which reads and interprets control statements is
automatically executed.

Others include;
1) Handling job transactions
2) Co-ordinating and managing peripheral devices
3) Input-Output Management
4) Maintains account of processor time for billing purposes.
5) Maintains Internal clock; Provides data and time services etc.
6) Scheduling of various tasks
7) Establishing and enforcing priorities for different jobs

Operating system concepts:- User programs interact with operating system using set of extended
instructions. These instructions are called “system calls”. These system calls are used to create, delete
and use various software objects that are manages by the Operating systems. The following are common
in any Operating system.
1. Process
2. Files
3. System Calls
4. The shell

Intro to Computer – Chapter 4 Software Page 5


5. Booting Process i. Boot Strap Loader
i. Check Programs
ii. Monitor Program
iii. Basic input/output System (BIOS) Program
iv. Utility Programs
v. File Maintenance Programs

3.5. Types of Operating Systems:


Operating systems are basically capable to do all functions but The way of processing or approach of the
systems may vary from one Operating systems to another.

The Operating systems can be classified as Single user and Multiuser (number of users working on it at a
given point of time) and Multitasking operating systems,
 Single user Operating systems - MSDOS
 Multi-user Operating System - UNIX, Linux etc
 Multitasking Operating System - Windows

3.6. Classification of OS
Basing on the features of the operating systems and the interface provided they can be classified as
 User friendly Operating system :- These Operating systems provide a pleasant and easy to work
environment, they are usually graphical based, where the various options are represented as icons,
menus etc.
Windows operating systems are some of the user friendly Operating systems.

Programming friendly Operating systems:- The programmer is anyone who has fair knowledge about
programming concepts and he is expected to know the computer in a detailed manner. The programmer
much concerned about various utilities, functionalities, flexibility and powerful environment. UNIX,
XENIX,LINUX etc. are some of the character based interfaces which are very powerful and
programming friendly.

3.7. Computer User interface


There are two types of interface that can be provided by the operating system.

Command based Interface


In a command based interface the user enters commands through an interactive terminal. The
commands are entered on a prompt for example the Ms Dos prompt looks like this

Once the commands are entered on the prompt a command line interpreter(CLI) identifies and executes
the commands. A command based interface is quick to operate and very flexible, but the user needs to
learn all the commands and type them in correctly. Examples operating systems that use command
based interface are Ms DOS and UNIX.
Intro to Computer – Chapter 4 Software Page 6
Graphical user interface
A graphical user interface (GUI) allows the user to interact with the system using Windows, Icons,
Menus, and Pointers to control the operating system. Icons represent programs, groups of programs,
folders, devices and files. Instead of typing a command or file name, selection is achieved by moving a
pointer with a mouse and clicking a mouse button. Windows is a Graphical user interface based
operating system.

The GUI has many advantages such as;


a) GUIs are easier for the novice user because they are more intuitive
b) The graphical symbols represent familiar objects such as a garbage bin
c) Only valid options are available to avoid confusing the user
d) No need to memorize commands
e) Help is available online showing the only relevant options

Graphical user interface has some disadvantages such as


a) GUI require more memory
b) They require faster processors and better graphics display
c) For experienced users they appear slow to operate because they require more operations for
simple tasks.

3.8. Application Software


Applications Software allows you to perform a particular task or solve a specific problem. A word
processor is the most widely used example of applications software; it can be used to create a letter or
memo or anything else you need to type. Other examples include games, spreadsheets, tax preparation
programs, typing tutor, etc.

3.8.1. Classification;
1) User application software; Custom software / programs with associated documentations designed and
developed to specifically to carry out particular task.
2) Application packages: Prewritten commercial software purchased in stores most often, personal
computers utilize packaged software.

Application packages are of major importance to small computer-system users who do not have the
necessary resources or expertise to produce their own software.
Advantages includes;
a) Saves programming efforts and expense as the development costs are effectively shared
between the purchasers.

Intro to Computer – Chapter 4 Software Page 7


b) Use gets a well-tried and tested program.
c) Relatively quick implementation results.

Disadvantages
a) Purchaser have no direct control over the package.
b) Packages usually developed to meet general needs and may not be ideal to a particular
customer. Sometimes a lot of customization of the software is required to meet the unique
needs of a customer.

The most important applications software categories included in office suites are described in the table
below:

Software Category Function

Word Processor Provides the tools for entering and revising text, adding graphical
elements, formatting and printing documents.

Spreadsheets Provides the tools for working with numbers and allows you to create
and edit electronic spreadsheets in managing and analyzing information.

Database Management Provides the tools for management of a collection of interrelated facts.
Data can be stored, updated, manipulated, retrieved, and reported in a
variety of ways.

Presentation Graphics Provides the tools for creating graphics that represent data in a visual,
easily understood format.

Communication Provides the tools for connecting one computer with another to enable
Software sending and receiving information and sharing files and resources.

Internet Browser Provides access to the Internet through a service provider by using a
graphical interface.

o General/ready made Software is developed to perform a variety of tasks, usually determined by


use. Such software can be customized by user to achieve specific goals e.g. ms office which is a suit
of programs performing a variety of tasks e.g. word processing for producing documents, database
for storing, retrieving and manipulating data and various calculations on spreadsheets. General
purpose programs are discussed below;

 Word processing applications. Writing tasks previously done on typewriters with considerable
effort can now be easily completed with word-processing software. Documents can be easily
edited and formatted. Revisions can be made by deleting (cutting), inserting, moving (cutting and
pasting), and copying data. Documents can be stored (saved) and opened again for revisions
and/or printing. Many styles and sizes of fonts are available to make the document attractive.
Example: MS Word, Word Pad etc.
 Spreadsheet applications. spreadsheet software permits performance of an almost endless
variety of quantitative tasks such as budgeting, keeping track of inventory, preparing financial
reports, or manipulating numbers in any fashion, such as averaging each of ten departmental
monthly sales over a six-month period. A spreadsheet contains cells, the intersection of rows and
columns. Each cell contains a value keyed in by the user. Cells also contain formulas with many

Intro to Computer – Chapter 4 Software Page 8


capabilities, such as adding, multiplying, dividing, subtracting, averaging, or even counting. An
outstanding feature is a spreadsheet's ability to recalculate automatically. If one were preparing a
budget, for example, and wanted to change a variable such as an increase in salary or a change in
amount of car payments, the formulas would automatically recalculate the affected items and the
totals.. Example: Excel, Lotus1-2-3 etc.
 Database software: A database contains a list of information items that are similar in format
and/or nature. An example is a phone book that lists a name, address, and phone number for each
entry. Once stored in a database, information can be retrieved in several ways, using reports and
queries. For example, all the names listed for a given area code could be printed out and used for
a commercial mailing to that area. Examples of database software is Ms Access, Dbase, Oracle
etc.
 Presentation software: for making slide shows. Allows users to create visual presentation A
speaker may use presentation software to organize a slide show for an audience. Text, graphics,
sound, and movies can easily be included in the presentation. An added feature is that the slide
show may be enhanced by inclusion of handouts with two to six slides printed on a page. The
page may be organized to provide space for notes to be written in by the audience as the
presentation ensues. An example of this is Power Point. Preparation of the software is simplified
by the use of 'wizards' that walk the user through the creation of the presentation.
 Desktop publishing software: This software permits the user to prepare documents by using
both word-processing devices and graphics. Desktop publishing software uses word-processing
software, with all its ease of entering and revising data, and supplements it with sophisticated
visual features that stem from graphics software. For example, one can enhance a printed
message with virtually any kind of illustration, such as drawings, paintings, and photographs. .
Examples of Desktop publishing software is PageMaker, Corel Draw, and Ms Publisher
 Multimedia applications for creating video and music. Allows users to create image, audio,
video etc. Example: Real Player, Media Player etc.
 Activity management programs like calendars and address books

Software Suites
A suite is a collection of related software packages, such as Microsoft Office (which includes Word,
Excel, PowerPoint, etc.) A group of programs that are sold as a package to solve common problems.
Although there are suites for graphics, mathematics and other applications, the most popular are "office
suites." Also known as "productivity suites," they are a set of basic business programs designed with a
uniform user interface and common functions such as spell checking. The primary programs are word
processing, spreadsheet, presentation graphics, database and e-mail, although each suite has its own mix,
and a variety of other programs and utilities may also be included. Some of the programs may be for sale
as individual products

Integrated packages
Software that combines several applications in one program, typically providing at least word processing,
spreadsheet and database management. Presentation graphics, page layout, paint, calendar, address book,
e-mail and other applications may also be included. All programs in an integrated package are accessed
via a common launching pad. Microsoft Works and AppleWorks are two primary examples of integrated
software packages.

o Tailor made/special purpose software Tailor-made computer system refers to computer application
developed by in-house IT personnel or outside software house according to specific user requirements
in a firm. They are developed for given purpose e.g. Payroll system, stock control system etc.

Intro to Computer – Chapter 4 Software Page 9


3.9. Programming Languages
Definition:
A programming language is a formal computer language or constructed language designed to
communicate instructions to a machine, particularly a computer. Programming languages can
be used to create programs to control the behavior of a machine or to express algorithms.

3.9.1 Types of Programming Languages


There are three levels of programming languages;
a) Machine language (low level language)
b) Assembly (or symbolic) language
c) Procedure-oriented language (high level language)

Machine language – First Generation Language


The lowest-level programming language (except for computers that utilize programmable microcode)
Machine languages are the only languages understood by computers. While easily understood by
computers, machine languages are almost impossible for humans to use because they consist entirely of
numbers. It is a programming language in which the instructions are in a form that allows the computer
to perform them immediately, without any further translation being required. Instructions are in the form
of a Binary code also called machine code and are called machine instructions. Commonly referred to as
the First Generation language

Assembly Language – Second Generation Language


Also referred to second generation language. The 1 and 0 in machine language are replaced by with
abbreviations or mnemonic code. It consists of a series of instructions and mnemonics that correspond to
a stream of executable instructions. It is converted into machine code with the help of an assembler.
Common features includes;
 Mnemonic code; used in place of the operation code part of the instruction eg SUB for substract,
which are fairly easy to remember
 Symbolic Addresses which are used in place of actual machine addresses. A programmer can choose
a symbol and use it consistently to refer to one particular item of data. Example FNO to represent
First No.
 The symbolically written program has to be translated into machine language before being used
operationally. A 1 to 1 translation to machine language, ie one symbolic instruction produces one
machine instruction/code.

Advantages of Assembly language over machine language


 It is easy to locate and identify syntax errors, thus it is easy to debug it.
 It is easier to develop a computer application using assembly language in comparison with machine
language
 Assembly language operates very efficiently.

High level language


A Machine independent and a Problem oriented (POL) programming language. High level language is
portable across different machine types (architectures); The machine independence of the high level
languages means that in principle it should be possible to make the same high-level language run on
different machines. It reflects the type of problem solved rather than the features of the machine.

High level languages are more abstract, easier to use and more portable across platforms as compared to
low-level programming languages. A programmer uses variables, arrays or Boolean expressions to
develop the logic to solve a problem. Source programs are written in statements akin to English. A high

Intro to Computer – Chapter 4 Software Page 10


level language code is executed by translating it into the corresponding machine language code with the
help of a compiler or interpreter. High level languages can be classified into the following categories;
 Procedure-oriented languages (third generation)
 Problem-oriented languages (fourth generation)
 Natural languages (fifth generation).

Procedure languages.
High-level languages designed to solve general-purpose problems, example BASIC, COBOL,
FORTRAN, C, C++ and JAVA. They are designed to express the logic and procedure of a problem.
Though the syntax of the languages may be different, they use English-like commands that are easy to
follow. They are portable.

Problem-oriented languages
Problem-oriented languages also known as Fourth Generation Languages (4GL) are used to solve
specific problems and includes query languages, report generators and Application generators which have
simple English like syntax rules. The 4GLs have reduced programming efforts and overall cost of
software development. They use either visual environment or a text environment for program
development similar to that of third-generation languages. A single statement of the 4GL can perform the
same task as multiple line of a third-generation language. It allows a program to just drag and drop from
the toolbar, to create various items like buttons, text boxes, label etc. A program can quickly create a
prototype of the software applications

Natural Languages
Natural languages widely known as fifth generation languages, are designed to make a computer to
behave like an expert and solve problems. The programmer just needs to specify the problem and the
constraints for problem solving. Natural languages such as LISP and PROLOG are mainly used to
develop artificial intelligence and expert systems.

Features of high level language


 Extensive vocabulary of words, symbols and sentences
 Whole sentences are translated into many machine codes instructions
 Portable across different machine types (architectures)
 Libraries of macros and sub-routines can be incorporated
 As they are problem oriented, the programmer is able to work at least to some extent independently of
the machine.
 Have a set of rules that must be obeyed.
 Syntax: the structure of the statements and the grammatical rules governing them. Grammatical
rules that govern the way in which words, symbols, expressions and statements may be formed
and combined.
 Semantics: the meaning of the statements written in the language. The rules that governs its
meaning. – what happens when the program is executed/run most are standardized by ISO/ANSI
to provide an official description of the language

4.9. Chapter Review Questions


1. Which of the following is not General Purpose software?
(a) Stock Control (b) Word Processing (c) Internet software (d) Presentation

2. Which of the following is not part of the Ms. Office suite?

Intro to Computer – Chapter 4 Software Page 11


(a) Ms Word (b) Ms Access (c) Outlook (d) Ms QuickBooks

3. Which of the following is not an operating system


(a) Windows XP (b) Windows Explorer (c) Ms Dos (d) Linux

4. Which of the software below would assist a secretary in preparing a report for an annual general
meeting?
(a) Ms Word (b) Ms Access (c) Outlook (d) Ms QuickBooks

5. Which of the software below would assist a salesman in recording daily sales for different items for
which he needs totals among other analysis?
(a) Ms Word (b) Ms Access (c) Outlook (d) Ms Excel

Intro to Computer – Chapter 4 Software Page 12

You might also like