Software
What is a Software?
Software is a collection of instructions, data, or computer programs that
are used to run machines and carry out particular activities. It is the
antithesis of hardware, which refers to a computer’s external components.
A device’s running programs, scripts, and applications are collectively
referred to as “software” in this context.
In a computer system, the software is basically a set of instructions or
commands that tell a computer what to do. In other words, the software is a
computer program that provides a set of instructions to execute a user’s
commands and tell the computer what to do. For example like MS-
Word, MS-Excel, PowerPoint, etc.
Types of Software
It is a collection of data that is given to the computer to complete a
particular task. The chart below describes the types of software:
1. System Software
i. Operating System
ii. Utility Software
iii. Device Driver
2. Application Software
i. General Purpose Software (commercial off the shelf)
ii. Customize Software (Tailor made software)
System Software
System software is software that directly operates the computer
hardware and provides the basic functionality to the users as well as to the
other software to operate smoothly. Or in other words, system software
basically controls a computer’s internal functioning and also controls
hardware devices such as monitors, printers, and storage devices, etc. It is
like an interface between hardware and user applications, it helps them to
communicate with each other because hardware understands machine
language(i.e. 1 or 0) whereas user applications are work in human-readable
languages like English, Hindi, German, etc. so system software converts the
human-readable language into machine language and vice versa.
Types of System Software
It has three subtypes which are:
i. Operating System: It is the main program of a computer system.
When the computer system ON it is the first software that loads into the
computer’s memory. Basically, it manages all the resources such
as computer memory, CPU, printer, hard disk, etc., and provides an
interface to the user, which helps the user to interact with the computer
system. It also provides various services to other computer software.
Examples: Linux, Apple macOS, Microsoft Windows, etc.
[Link] Driver: is a program or software that controls a device and
helps that device to perform its functions. Every device like a printer,
mouse, modem, etc. needs a driver to connect with the computer
system eternally. So, when you connect a new device with your
computer system, first you need to install the driver of that device so
that your operating system knows how to control or manage that
device.
Examples: Printer Driver, Graphics Card Driver, Network Interface Card
(NIC) Driver, USB Controller Driver, audio Drivers etc
iii. Utility software: is used to support the computer infrastructure. It is
designed to analyze, configure, optimize and maintains the system, and
take care of its requirements as well. For example, antivirus, disk
fragmenter, memory tester, disk repair, disk cleaners, registry cleaners,
disk space analyzer, etc.
Features of System Software
Let us discuss some of the features of System Software:
System Software is closer to the computer system.
System Software is written in a low-level language in general.
System software is difficult to design and understand.
System software is fast in speed (working speed).
System software is less interactive for the users in comparison to
application
software.
Application Software
Software that performs special functions or provides functions that are
much more than the basic operation of the computer is known
as application software. Or in other words, application software is designed
to perform a specific task for end-users. It is a product or a program that is
designed only to fulfill end-users’ requirements. It includes word
processors, spreadsheets, database management, inventory, payroll
programs, etc.
Types of Application Software
There are different types of application software and those are:
[Link] Purpose Software /Commercial Off-The-Shelf (COTS)
General-purpose software is designed to perform a wide range of everyday
tasks that are commonly required by individuals, businesses, and
organizations. These applications are ready-made, widely available, and
intended for mass use. Users can purchase or download them easily, and
they usually do not require any modification for general use.
Key Features:
Mass produced and available to a large number of users.
Cost-effective compared to custom software.
Easy to install and use with minimal configuration.
Broad functionality covering many needs (e.g., writing, calculating,
presenting, designing).
Frequent updates and support provided by software companies.
Available as standalone programs or as part of software suites.
Interoperability with other common software through file sharing
formats (e.g., .docx, .xlsx, .pptx).
Examples:
Word Processing Applications:
(e.g., Microsoft Word, Google Docs) – Used for creating reports,
memos, contracts, and letters.
Spreadsheet Applications:
(e.g., Microsoft Excel, Google Sheets) – Used for accounting, budgeting,
commission calculation, and stock control.
Database Applications:
(e.g., Microsoft Access, MySQL Workbench) – Used for maintaining
records like customer data, sales tracking, and appointments.
Desktop Publishing Applications:
(e.g., Adobe InDesign, Microsoft Publisher) – Used for creating
brochures, flyers, posters, business cards.
Presentation Software:
(e.g., Microsoft PowerPoint, Canva, Google Slides) – Used for preparing
slideshows for meetings, training, or sales pitches.
Graphics Applications:
(e.g., Adobe Photoshop, CorelDRAW) – Used for editing and creating
images, logos, and advertising material.
Web Design Applications:
(e.g., Adobe Dreamweaver, WordPress, Wix) – Used for building and
maintaining personal or professional websites.
ii. Customized Software / specified application software /tailor-made
software
Customized software is designed and developed specifically for a
particular organization or individual based on their exact requirements. It
focuses only on the necessary features demanded by the client and
avoids unnecessary functionalities, making it more efficient and
specialized for their work.
Key Features:
Specifically built to meet unique requirements.
Exclusive ownership often remains with the client.
More expensive than off-the-shelf software due to the personalized
development process.
Greater flexibility to add or change features according to the client's
evolving needs.
High security as it's not publicly available and can be protected with
strict access controls.
Longer development time compared to ready-made software.
Support and maintenance are typically handled directly by the
developer or specialized IT teams.
Examples:
Railway Reservation System
A system created specifically for a railway company to manage ticket
bookings, seat availability, and schedules.
Airline Reservation System
Custom platforms for airlines to handle passenger bookings, check-ins,
and flight information.
Invoice Management System
Customized tools for businesses to generate, track, and manage
invoices based on their specific formats and needs.
Cosis
is an integrated digital platform developed by the College of Business
Education (CBE) in Tanzania to streamline and enhance the
management of student-related academic and administrative
activities.
Ajira Portal
The Ajira Portal Mobile App is a program that enables qualified
Tanzanians to apply for available job vacancies in the Public Service.
e-Mrejesho: eMrejesho is a platform that enables citizens to submit &
track Complaints.
NIC Kiganjani: NIC Kiganjani is first reliable insurance mobile app in
Tanzania under National insurance corporation of Tanzania LTD,
promises to deliver more insurance services and more directly on your
hand
e-Mkutano: eMikutano is a full-featured video conferencing platform,
that enables to conduct meeting through the internet anywhere and
anytime.
e-Office: A digital office management system that supports file
movement, tracking, and efficient document management.
GePG (Government e-Payment Gateway): This is an application
that enable users to Enquire, Assess, and Pay Government Bills
through Mobile Push Service.
TAUSI :It enables individuals and businesses to apply for licenses,
permits, land plots, rental houses, and make levy payments without
the need to visit government offices in person.
Difference between General Purpose Software and Custom
Software
Customized
Aspect General Purpose Software Software
is a compilation of programs
Definition is a specific program that
which are grouped together
are advanced for a goal in
in order to provide publicly
a department or in a
with different tools in the
company.
same group.
Cost Cost of Packaged software is While custom software’s
cost is higher than
packaged software since
low.
custom software are made
for a specific purpose.
Whereas custom software
User- are easy or simple to use
is hard to use because
Friendly because these software
these software are custom-
Interface have an easy interface.
built or customized.
Whereas it’s measures of
It’s measures of success is
Measures of success is to provide
market sharing and
Success satisfaction and
profitability.
acceptance to user.
While it’s bench-marking is
Bench- It’s bench-marking is poor
good due to it’s benchmark
Marking due to it’s size ability.
data available.
It is present in the market to While it is not commercially
Availability everybody for buying and available, it is exclusive to
using. third parties.
But custom software can
Modification can’t be modified. be modified or changed if
there is need.
Features of Application Software
Let us discuss some of the features of Application Software:
An important feature of application software is it performs more
specialized tasks like word processing, spreadsheets, email, etc.
Mostly, the size of the software is big, so it requires more storage space.
Application software is more interactive for the users, so it is easy to use
and design.
The application software is easy to design and understand.
Application software is written in a high-level language in general.
Difference Between System Software and Application Software
System Software Application Software
It is designed to manage the
It is designed to fulfill the
resources of the computer system,
requirements of the user for
like memory and process
performing specific tasks.
management, etc.
Written in a low-level language. Written in a high-level language.
Less interactive for the users. More interactive for the users.
System software plays vital role for Application software is not so
the effective functioning of a important for the functioning of the
system. system, as it is task specific.
It is independent of the application
It needs system software to run.
software to run.