Computer Software
Computer Software
Definition of Software
Software is the set of instructions that tell/inform the computer what to do. These instructions are also called
programs. The process of writing (or coding) programs is called programming, and individuals who perform
this task are called programmers. Software not only directs the computer to manage its internal resources, but
also enables the user to tailor a computer system to provide specific business value.
Some software come pre-installed with your computer while other software may be given to you, or you may
buy them. Software usually comes on CD-ROMS but sometimes you can download software from the Internet.
Once you have the software, you install it on your machine. The software is then ready to use.
Classification of Software
Computer software can be classified into three main groups. These are:
1. Purpose
2. Acquisition
3. End User License
A. System Software
Systems software control and support the computer system and its information-processing activities. Systems
software also facilitate the programming, testing, and debugging of computer programs.
Examples
• Operating Systems • • Performance monitors • Programming Languages
Utility Programs Security monitors
• Networking software •
a) Operating Systems
Control the use of the hardware, software, and data resources of a computer system. They serve primarily as
intermediaries between computer hardware and application programs.
Types of OS
• Windows e.g. 95, 98, XP, Vista, 7 and 8. • • Unix
Macintosh e.g. Mac OS X • OS/2 (IBM)
• Linux e.g. Ubuntu, SuSE, Fedora, Debian • JavaOS
• Mobile OSs
o Android o Symbian
o Windows Phone
1
b) Utility programs
Supports the operations, management, and users of a computer system. They help analyze, configure, optimize
and maintain a computer. They perform tasks such as copying, sorting records, checking the integrity of disks
and creating directories and subdirectories. They also restore accidentally erased files, manage memory usage,
and redirect output.
Examples
• Antivirus: - Scan and delete computer viruses.
• Backup: - Copies information from disks to another location that can be restored later. •
Data Compression: - Minimizes the size of files.
• Disk Checkers: - Scans and analyses storage.
• Disk Cleaners: - Locates unnecessary files and deletes them to free space.
• Disk Defragmenters: - Detect, locate and assemble broken files.
• File Managers: - Delete, rename, copies, catalogues, moves and merges files.
• Cryptographic: - Encrypts data/information.
• Screen Savers: - Prevent burn-in on screens. For entertainment.
• Firewalls: - Prevent outsiders from accessing user’s computer over a network such as the Internet.
c) Performance monitors
Monitor the processing of jobs on a computer system. They monitor computer system performance and produce
reports containing detailed statistics relating to the use of system resources, such as processor, memory,
input/output devices, and system and application programs.
d) Security monitors
Monitor the use of a computer system and protect it and its resources from unauthorized use, fraud, or
destruction. Such programs provide the computer security needed to allow only authorized users access to the
system.
e) Networking Software
Help establish communication between two or more computers. Enable data exchange and security.
Examples
• CISCO LANSpy Network Scanner LANDesk
f) Programming Languages
Communicates instructions for a computer to execute. Programming languages are grouped
into: Machine Language: - Code is in Binary Digits
Low Level (Assembly) Languages: - Code is in mnemonics. Symbolic representation of machine code.
High-level languages: - Use normal human language. Problem oriented in manner. e.g. 4th Generation
Languages: - Used in real time processing. Use menus and prompts. e.g. C 5th Generation Languages: -
Used to write Artificial Intelligence program e.g. PROLOG
Language Translators
Compilers: - Reads a program in high level languages and translates it into low level languages
(assembly language).
Assemblers: - Translate assembly language into machine/object code.
Interpreters: - Read, translate and execute programs line by line.
Loaders: - Load programs into memory. Prepares programs for execution.
Linkers: - Links objects from compilers into a single executable program.
2
Use of Programming Languages
Programming languages are used to develop:
• Application/Programs • Computer drivers and other hardware
• Artificial Intelligence interfaces
• Databases • Web pages
• Games • Scripts
Examples
• Java • Perl
• JavaScript • PHP
• Ada • Prolog
• BASIC • Python
•C B. Application Software •R
• C++ • Jscript • Ruby
• C# • LaTeX • SAS
• COBOL • Lisp • SQL
• dBase • Lynx • Unix Shell • VBScript •
• Fortran • MATLAB • MySQL Visual Basic • XML
• Objective-C • Pascal
Application software is a set of computer instructions that provide a more specific functionality to a user. That
functionality may be broad, such as general word processing, or narrow, such as an organization’s payroll
program. An application program applies a computer to a certain need.
a. Word Processors
Word processing software allows the user to manipulate text. A typical word processing software package
consists of an integrated set of programs including an editor program, a formatting program, a print program, a
dictionary, a thesaurus, a grammar checker, a mailing list program, and integrated graphics, charting, and
drawing programs. Being WYSIWYG editors, word processors display the text material on the screen exactly
as it will look on the final printed page
Examples
• MS Word • Libre Office • Word Pad • Note Pad
b. Spreadsheets
Computer spreadsheet software allows the user to manipulate numbers. A spreadsheet program transforms a
computer screen into a ledger sheet, or a grid of coded rows and columns. Users can enter numeric or textual
data into each grid location, called a cell. In addition, a formula can be entered into a cell to obtain a calculated
answer displayed in that cell’s location.
With spreadsheets, users can also develop and use macros, which are sequences of commands that can be
executed with just one simple instruction.
Examples
• MS Excel • • Quick Books • • Apple Numbers •
Lotus 1–2-3 Quatro Pro Open Office
3
c. Data management
Data management software supports the storage, retrieval, and manipulation of related data. There are two basic
types of data management software:
i. Simple filing programs patterned after traditional, manual data-filing techniques, and ii. Database
management programs that take advantage of a computer’s extremely fast and accurate ability to
store and retrieve data in primary and secondary storage.
Examples
• MS Access • DB 2
• MySQL d. Desktop Publishing • SQL Server
• Oracle
• Filemake Pro
Allow photographs, diagrams, and other images to be combined with text, including several different fonts, to
produce a finished, camera-ready document. Creates newsletters, banners, brochures and business cards among
others.
Examples
• Adobe PageMaker • MS • MS Publisher • CorelDraw
Word e. Graphics • Illustrator • Photoshop
Graphic software allows the user to create, store, and display or print charts, graphs, maps, and drawings. They
enable users to absorb more information more quickly and to spot relationships and trends in data more easily.
f. Multimedia
Multimedia software combine at least two media formats for input or output of data. These media include audio
(sound), voice, animation, video, text, graphics, and images.
Examples
• RealPlayer Communications
• VLC
• Windows Media Player g. • Jet Audio • Ashampoo • Nero
Allow for interconnection of computers in order to share or relate information through use of communications
channels. Technologies such as dedicated or public cables, telephone lines, satellite relay systems, or
microwave circuits are employed.
Communication software establish and relinquish electronic links, code and decode data transmissions, verify
transmission errors and correct them automatically, and check for and handle transmission interruptions.
4
Examples
• AOL Instant Messenger
• Skype
• Viber
• MS Net Meeting
• CU-See-Me
h. Speech-Recognition Software
Two categories of speech-recognition software are available today: discrete speech and continuous speech.
Discrete speech recognition: - Interpret only one word at a time, so users must place distinct pauses between
words.
Continuous speech recognition: - Interpret a continuing stream of words. The software must understand the
context of a word to determine its correct spelling, and be able to overcome accents and interpret words very
quickly.
i. Internet Browsers
Enable user to surf the internet/web.
Examples
• Internet Explorer • Mozilla Firefox • Safari
• Opera Mini • Google Chrome • Torch
j. Activity Management
They enable scheduling of tasks and tracking the progress/performance of workers (employees and employers).
Examples
• Calendars
• Address Books
• Timetables
• Project Management Software
2. Classification According to Acquisition
Application software includes proprietary application software and off-the-shelf application software.
5
3. Classification According to End User License
An End User License Agreement (EULA) is a contract between the licensor (seller) and the purchaser
(buyer), establishing the buyer’s right to use the software. The license defines ways the copy may be used
and any automatic rights of the buyer such as distribution of copyrighted material, library lending, giving,
rentals and resale of legally purchased software to others.
Examples
CLASS EXAMPLES
Licensed (Copyright) OS e.g. Windows, Mac OS
Antivirus e.g. Kaspersky
Open Source (Copyleft) Most GNU software e.g. GNU C++
Programming languages: PHP, Python, Perl.
OSs e.g. Linux
Freeware Media Players e.g. VLC
Browsers e.g. Mozilla, Chrome
Antiviruses e.g. Avira, AVG
Shareware Download Managers: e.g. IDM