Computer Software Overview

By   October 24, 2017

A computer system consists of hardware, the electronic devices capable of computing and manipulating information, and software that carries out predefined instructions to complete a given task. The combination of physical equipment (hardware) and logical instructions (software) gives power and versatility to the modern computing systems.


Software is a collection of computer programs and related data that provide the instruction for telling a computer what to do and how to do it. A software is an interface between user and computer. It is a set of instructions, programs that are used to give command to hardware. It is responsible for controlling, integrating and managing the hardware components of a computer system and for accomplishing specific tasks.

Types of Software

Software can be divided into two major categories.

1. System Software.
2. Application Software. System Software

System software consists of several programs, which are directly responsible for controlling, integrating and managing the individual hardware components of a computer system.

It also provides the interface between the user and component of the computer.

The purpose of system software is to insulate the applications programmer as much as possible from the detail of the particular complex computer being used.

Depending on the functionality, the system software can be further divided into two major categories; system management program and developing software.

1. System Management Program:

It includes an integrated system of programs, which manages the operations of the processor, controls input/output, manages storage resources and provides  various support services. Some common examples of system management programs are operating system, device driver and system utilities.

Operating System:

It  consists of programs , which controls, which controls, coordinates and supervises the activities of the various components of a computer system. Its function is to provide link between the computer hardware and the user.

It performs all internal management functions (disk access, memory management, task scheduling and user interfacing) and ensures systematic functioning of a computer system. It provides  an environment to run the programs. e.g., MS-DOS, windows XP/2000/98, Unix Linux, etc.

The operating system performs the following functions.

  1. It recognises input from keyboard, sends output to the display screen.
  2. It makes sure that programs running at the same time do not interface with each other.
  3. It is also responsible  for security, ensuring that unauthorized users do not access the system.


The Basic Input / Output system (BIOS) is commonly known as System Bios. The BIOS controls various electronic components within the main computer system The  initial function of the BIOS is to initialize system devices such as the RAM, hard disk, CD/DVD drive, video display card and other hardwares. The BIOS sets the machine hardware into a known state that helps the operating system to configure the hardware components. This process is known as Booting Up.

Device Drivers:

A software, which is written with the objective of making a device functional when it is  connected to the computer is called device driver. It is a system software that acts like an interface between the device and the user. Every device, whether it is a printer, monitor, mouse or keyboard has a driver program associated with it for its proper functioning.

  • Device drivers are a set of instructions that introduce our PC to a hardware device.
  • Device drivers are not independent programs, they assists and are assisted by the operating system for the proper functioning.

System Utilities:

These programs perform tasks related to the maintenance of the computer system. These are the packages which are loaded into computer during time of installation of operating system. They are used to support, enhance, expand and secure existing programs and data in the computer system.

System utility mainly consists of the following functions

  1. Disk Compression  It increases the amount of information that can be stored on a hard disk by compressing all information stored on a hard disk. This utility works automatically and the user does not need to be aware of its existence.
  2. Disk  Fragmenters  It  detects computer files whose contents are broken across several locations on the hard disk and moves the fragments to one location to increase efficiency. It can be used to rearrange files and unused space on your hard disk.
  3. Backup Utilities It can make a copy of all information stored on a disk and restore either the entire disk or selected files.
  4. Disk Cleaners It is used to find files that have not been used for a long time. This utility also serves to increase the speed of a slow computer.
  5. Anti-Virus It is the utility which is used to scan computer for viruses and prevent the computer system files from being corrupt.

2. Developing Software

It is a software which provides service required for the development and execution of application software. The programming languages, language translator, loader, linker are  required for the application software development.

Programming Languages

A programming language is a primary interface of a programmer with a computer. A programming language is an artificial language to express computation that can be performed by a computer.

Each language has its own syntax i.e., the set of specific rules and expresses the logical  steps of an algorithm . programming languages are divided into two categories; Low  Level Language (LLL) and High Level Language (HLL).

  1. Low Level Language (LLL) Low level language is divided into two parts
  1. Machine Language It is sometimes, referred to as machine code or object code. It is a collection of binary digits or bits that computer reads and interprets.
  2. Assembly  Language It is used to interface with computer hardware. It uses instructed commands  as substitutions for numbers allowing human to read the code more easily than binary. It uses English –like representation  to write a program.

Medium Level Language

It  serves as the bridge between raw hardware and programming layer of a computer system. It is designed to improve the translated code before it is executed by the processor.

  1. High Level Language (HLL) It is machine independent language and uses translator. It is also called source code. Some commonly used high level languages are C, BASIC, FORTRAN, PASCAL, etc.

Some High Level Languages and Their Application Areas

Language    Year Developer   Application Area Nature
BASIC (Beginner’s All purpose Symbolic Instruction Code) 1964 John G. Kemeny and Thomas E. Kurtz at Dartmouth college in New Hampshire Programming for educational purposes Interpreted
C 1972 Dennis Ritchie at Bell Telephone Labs System programming Compiled
C++ 1983 Bjarne Stroustrup at Bell Labs System Object programming Compiled
COBOL(Common Business Oriented Language) 1959 Grace Hopper Business management, string oriented Compiled
FORTRAN (Formula Translation) 1957 A team of programmers at IBM Calculation Compiled
Java 1995 James Gosling at Sun Microsystems Internet Oriented Programming Compiled and Interpreted
LISP (List Processing) 1958 John Mccarthy at the Massachusetts Institute of Technology (MIT) Artificial intelligence Compiled and Interpreted
Pascal 1970 Niklaus Wirth Education Compiled
ALGOL (Algorithmic Language) 1958 A committee of European and American computer scientists Jointly Scientific Purpose Compiled

Language Translator:

A language translator helps in converting programming languages to machine language. The translated program is called the object code. There are three  different kinds of language translator

  1. Assembler It is used to convert the assembly language into machine language (i.e.,0 or 1), This language consists  of mnemonic codes which are difficult to learn and is machine dependent.
  2. Compiler  It is used to convert the source code (written in high level language) into machine  language. Compiler reads whole source code at a time and trap the errors and inform to programmer. For each high level language, the machine requires a separate compiler.
  3. Interpreter This language processor converts a high level language program into machine language  by converting it line-by-line. If there is any error in any line during execution, it will report it at the same time and cannot resume until the error is rectified.


A linker is a system program that links together several object modules and libraries to form a single and coherent program (executable). The main purpose of linker is to resolve references among files. Linker is used to determine the memory locations that code from each module will occupy and relates its instruction by adjusting absolute references.


Loader is a kind of system software, which is responsible for loading and relocation of the executable program in the main memory. It is a part of operating system that brings an executable file residing on disk into memory and starts its execution process.

Application Software

Application software is a computer software designed to help the user to perform singular or multiple tasks. It is a set of instructions or program designed  for specific uses or applications, that enable the user to interact with a computer . Application software are also called the end-user programs. These programs do the real work for users.

There are two types of application software.

1. General Purpose Software

General purpose software’s  are designed to perform general tasks.

I. Word Processing Software

A word processor is a software program capable of creating, storing and printing of documents. Word processors have the ability to create a document and make changes anywhere in the document. This document can also be saved for modification later on or be opened on any other computer using the same word processor.

Today, the word processor is one of the most frequently used programs or online  services used on a computer system. E.g., Microsoft Word , WordPerfect (Windows only), Appleworks (Mac only), Open Office. Org etc.

II. Presentation software

Presentation is the practice of showing and explaining the contents of a topic  to an audience or learner visually. People , in a variety of settings and situations, use presentation software to make their presentations more interesting and professional. e.g., marketing managers use presentation graphics to present new marketing strategies to their superiors Sales people use this software to demonstrate products and encourage customers to make purchases. Students use it to create high quality class presentations. e.g., Microsoft PowerPoint, Corel presentations, Lotus Freelance Graphics etc.

III. Electronic Spreadsheets

Spreadsheet applications (sometimes referred to simply as spreadsheets) are the computer programs that accepts data in a tabular form and allow you to create and manipulate  spreadsheets electronically. In Spreadsheet Applications, each value exists  in a cell. You can define what type of data is in each cell and how different cells depend on one another. The relationships between cells are called Formulas and the names of the cells are called Labels. E.g., Microsoft Excel, Corel Quattro Pro, Lotus 1-2-3 etc.

IV. Database Management System (DBMS)

A DBMS (Database Management System) refers to the software that is responsible for sorting, maintaining and utilizing a database. It  enables a user to define, create and maintain the database and provide controlled  access on it. A database is a collection of integrated data stored together to serve multiple applications.

Database management system provide several additional features as,

(a)    Remove data redundancy

(b)    Elimination of data inconsistency

(c)    Data sharing

(d)    Data integration

(e)    Data security

e.g., Microsoft Access, Corel Paradox, Lotus Approach etc.

V. Desktop Publishing Software

Desktop publishing software is a tool for graphic designers and non-designers to create visual communications for professional or desktop printing as well as for online or on screen electronic publishing.

Complete Desktop Publishing (DTP) involves the combination of type setting  (choosing font and the text layout), graphic design, Page layout (how it all fits on the page) and printing the document. e.g., Quark Express, Adobe Page Maker, 3B2, Corel Draw, Corel Ventura Illustrator etc.

VI. Graphics  Software

Graphics Software or image editing software is an application program or collection of programs that enables a person to manipulate visual images on a computer system. Most graphics software have the ability to import  and export one or more graphics file formats. Typical graphics software enables data to be plotted as line chart, bar chart and pie chart. e.g., Adobe Photoshop, Pizza, Microsoft Publishes etc.

VII. Multimedia Software

Multimedia includes a combination of text, audio, still images, animation, video or interactivity content forms. The term is used in contrast to media which uses only rudimentary computer display such as text only or traditional forms  of printed or hand produced material.

2. Specific Purpose Software

Specific purpose software are designed to perform specific tasks. This type of application software generally has one purpose to execute.

Some of the specific purpose application software’s  are described below.

I. Inventory Management System and Purchasing System.

It is an attempt to balance inventory needs and requirement to minimize total cost, resulting from obtaining and holding an inventory. Inventory is a list of goods and materials available  in a stock. Inventory management system  is generally used in departmental stores or in an organisation to keep the records of the stock of all the physical resources.

Modern inventory management systems must have the ability to track sales and  available inventory, communicate with suppliers in near real-time, receive and incorporate other data, such as sessional demand.

II. Payroll Management System.

Payroll management system is used by all modern organisations to encompass every employee of the organisation who receives a regular wage or other compensation. All different payment methods are calculated by the payroll software and the appropriate Pay checks are issued.

III. Hotel Management System

Hotel management system refers to the management techniques used in the hotel sector. These can include hotel administration, accounts, billing, marketing, housekeeping, front office or front desk.

IV. Reservation System

A reservation system or central reservation system (CRS) is a computerized system used to store and retrieve information and conduct transactions related to air travel, hotels, car rental, or other activities. It is an application software which is commonly seen at railway reservation offices, this software helps the concerned department to automatically check the availability of the seats or berths of any train and any particular data with incomparable speed.

V. Report Card Generator

It is an application software which is commonly used in schools by the examination department  to prepare and generate the report cards of the students. It performs all possible mathematical calculations and checks whether a student can be promoted to the next class or not. It can also be used to calculate the class wise  ranking of a student.

VI. Accounting software

Accounting software is an application software that records and processes accounting transactions within functional modules such as accounts payable, accounts receivable, payroll and trial balance. It works as an accounting information system.

There are several types of accounting software’s as follows

(a)    Accounts payable Software.

(b)    Bank Reconciliation Software.

(c)    Budget Management Software, etc.

VII. HR Management System

It refers to the systems and processes at the intersection between human resource management (HRM) and information technology. The function of HR department is generally administrative and common to all organisations. e.g., Effective Staff, Cezanne HR etc.

VIII. Attendance System

Attendance system is an application software designed to track and optimize the presence of a person/ student in an organisation or school. Now-a-days, attendance system can be integrated with customer’s existing time/attendance recording devices like Biometrics/ Access cards. Attendance management can be done in two ways

(a)    Biometric Integration

(b)    Manually Attendance Integration

IX. Billing System

It refers to the software that is used to perform the billing process. It handles the tracking of ladled products and services delivered to a customer or set of customers. e.g., Billing Tracker, Killing etc.


  • Visual Basic is an interpreted language.
  • Firmware It is a combination of software and hardware. e.g., ROMs, PROMs and EPROMS.
  • Freeware It is commonly used for copyrighted software that is given away for free by its owner.
  • Pseudo code It is not a programming language. But simply an informal way of describing a program it does not follow  any syntax strictly. In other words. We can say that pseudocode is an outline of a program. Written in a form that can easily be converted into real programming statements.
  • Control Structures It is a statement or block of statements in a programming language that determines the control flow or sequence of execution of other instructions or statements.
  • Looping is a control structure which is used in a program to execute a particular set of statements repeatedly.

One Comment on “Computer Software Overview

Leave a Reply

Your email address will not be published.