Lecture 2: Classifications of Computer Software
Lecture 2: Classifications of Computer Software
2.1. Introduction
In our previous lesson we discussed a computer as a system and looked at its major components:
The hardware and Software. In this second lesson of a module we will discuss computer
Software in particular, we make an attempt to classify computer software’s before a detailed
discussion follow in the next lessons. From the previous discussion we saw that a computer
software (Or simply software), or program, is a set of instructions that enables a computer to
perform specific tasks, as opposed to the physical components of the system (hardware).
In computers, software is loaded into RAM and executed in the central processing unit. At the
lowest level, software consists of a machine language specific to an individual processor. A
machine language consists of groups of binary values (0s and 1s) signifying processor
instructions, which change the state of the computer from its preceding state. A software is
usually written in high-level programming languages that are easier and more efficient for
humans to use than machine language. High-level languages are compiled or interpreted into
machine language object code. Software may also be written in an assembly language which
may use symbols. Assembly language must be assembled into object code via an assembler.
i). Assembler: These programs are used to translate the symbolic instruction codes of
programs written in an assembler language into machine language instructions.
ii). Compiler: These are programs used to compile high-level language statements (source
programs) to machine language programs.
iii). Interpreter: These are programs used to translate and execute each program statement one
at a time, instead of first producing a complete machine language program, like compilers
and assemblers.
c) Utility programs
These are programs used to perform a specific task in maintaining and managing a computer
system. These programs can be purchased as stand alone product or embedded in the operating
system. Some of the utility programs include: Security utilities: These are utility programs used
to protect computer system e.g. antivirus Disk defragmenters: These are utility programs used to
reorganize files and unused space in the disk to enable the programs to run faster.
Diagnostic utilities: These are utility programs used to compile technical information and make
recommendation fixing any errors detected.
Screen savers: These are utility programs used to display a constantly moving image whenever
the system is idle.
File manager: These are utility programs used to copy, delete, move and rename files.
Uninstaller: These are utility programs used to remove installed programs and their associated
files.
Back up utility: This is a utility program used to copy all or selected files from one hard disk to
another hard disk or other media.
Disk scanner: This is a utility program used to detect and correct problems in the hard disk as
well as removing unnecessary files from the hard disk.
d) Library programs
These consist of a collection of resources (pre-written code and subroutines) used to develop
software. These programs contain code and data and are used to provide services to other
programs such as interface, printing, network code and even the graphic engines of computer
games. Most programming language have library programs that can be imported by
programmers when developing the source code.
These are application softwares that have several features and so can be used in a variety of
applications. They are also referred to as off-the-shelf (OTS). These softwares are often cheap,
readily available in the market, are well tested and have well documented user support.
b) Special purpose software
This is a software used for specific purpose or specific task. These softwares have fewer features
meant for a specific task. Examples:
• Payroll software
• Stock control software
• Garden design software
• Kitchen design software
2.6. Summary
In this topic we have discussed types of computer software. We have seen that computer
software cab be classified into two basic categories: system software and application software.
The system software is mainly used to operate, control and extend the processing capabilities of
the computer. System software can be further classified into operating system, language
translators, utility programs and library programs. The application software are programs used to
perform a specific task for the user(s).
The application software can be classified into general purpose, special purpose and bespoke
softwares. For each category an attempt has been made to give specific examples.
Rajaranan, V.2003. Fundamentals of Computers. 3rd edition. New Delhi: Prentice Hall.
http://en.wikibooks.org/wiki/Aevel_Computing/AQA/Computer_Components, _The_
Stored_Program_Concept_and_the_Internet/Fundamentals_of_Computer_Systems /Classificat
ion_of_software