This document discusses software and its relationship to hardware. It defines software as a sequence of instructions that can be understood by a computer. It notes that both hardware and software are necessary for a computer to function, and that the same hardware can be used to perform different tasks depending on the software. The document outlines the major types of software, including application software, system software, communication software, and utility programs. It provides examples and definitions of different applications and system software types.
1. Chapter 3
Software
What is software?
Relationship between
hardware and software
Different types of software
Different Computer Languages
BY: Computer Science Department
2. What is software?
A sequence of instructions, written
language, which can be understood
by a computer.
A term refers to the set of computer
programs procedures, and associated
documents, which describe the
programs, and how they are to be
used.
BY: Computer Science Department
3. Relationship between Software and
Hardware
Both hardware & software are necessary
for a computer to do useful job. Both are
complementary to each other.
The same hardware can be loaded with
different software to make a computer
system perform different types of jobs.
Except for upgrades, hardware is
normally a one-time expense, whereas
software is a continuing expense.
BY: Computer Science Department
4. Major types of software
Application Software
System Software
Communication Software
Utility Program
BY: Computer Science Department
5. Application Software
It allows end users to accomplish one or
more specific (non-computer related)
tasks. Typical applications include
industrial automation, business
software, educational software, medical
software, databases, and computer
games. Businesses are probably the
biggest users of application software, but
almost every field of human activity now
uses some form of application software.
BY: Computer Science Department
6. Application Software
Word-processing
Spread sheet
Database
Graphic software
Personal Assistance software
Educational software
Entertainment software
BY: Computer Science Department
12. Subtypes of application software
Enterprise software
Enterprise infrastructure software
Information worker software
Content access software
Educational software
Simulation software
Media development software
Product engineering software
BY: Computer Science Department
13. Assignment
Write the brief description of each
application software with their example's
Enterprise software
Enterprise infrastructure software
Information worker software
Content access software
Educational software
Simulation software
Media development software
Product engineering software
BY: Computer Science Department
14. System software
Is a set of one or more program, designed to
control the operation and extend the
processing capability of a computer system.
Supports the development of other application
program
Support the execution of other application
software.
Monitors the effective use of various hardware
resources, such as CPU, memory, peripherals,
etc.
Communicates with and controls the operation
of peripheral devices, such as printer, disk, etc.
BY: Computer Science Department
15. Types of System Software
Operating system
Programming language
software
BY: Computer Science Department
16. Operating System
Operating system is the most important
component of the computer’s software
system that manages and coordinates the
overall operations of the computer.
Operating system acts as a host for
application software. By handling the details
of the computer’s hardware operations, it
eases the burden of the application software.
Generally, it is the operating system that
loads the application software themselves to
the RAM. It helps to store and retrieve data
from the storage media.
BY: Computer Science Department
17. Operating System
The data might be processed by a given
application software but the storing of it onto
or the retrieving of it from the disc is all
carried out by the operating system.
Operating system offers lots of services for the
application software and the user. From mobile
phones and handheld computers to the
supercomputers almost all computers have an
operating system
Common contemporary operating systems
include Microsoft Windows, Mac OS X, Linux
and Solaris. Microsoft Windows is a widely used
operating system in the microcomputer. Linux
is run on PC. Linux and UNIX are all free
software. It is also a multitasking as well as a
multi-user operating system.
BY: Computer Science Department
18. Programming Language Software
Programming language software usually
provides tools to assist a programmer in
writing computer programs and software
using different programming languages in a
more convenient way.
The tools include text editors, compilers,
interpreters, linkers, debuggers, and so on.
An Integrated development environment
(IDE) merges those tools into a software
bundle, and a programmer may not need to
type multiple commands for compiling,
interpreter, debugging, tracing, and etc.,
because the IDE usually has an advanced
graphical user interface, or GUI.
BY: Computer Science Department
19. Types of Programming language
Machine language - a machine
language is a set of machine
instructions which consists of
zeros and ones. A machine
instruction contains two parts an
operation code (op code) and an
address.
BY: Computer Science Department
20. Types of Programming language
Low-level Languages - is a
programming language which uses
mnemonics to write in program Low-
level languages are machine
dependent.
BY: Computer Science Department
21. Types of Programming language
High-level language
T r a n s l a t o r l a n g u a g e
Compiler - are transformed into an executable form before
running. There are two types of compilation:
Intermediate representations When a language is compiled to
an intermediate representation, that representation can be
optimized or saved for later execution without the need to re-
read the source file. When the intermediate representation is
saved it is often represented as bytecode.
Machine code generation Some compilers compile source code
directly into machine code. Virtual machines that execute
bytecode directly or transform it further into machine code have
blurred the once clear distinction between intermediate
representations and truly compiled languages
Tran slat or -t r a n s l a t e d i n t o a l o w - l e v e l p r o g r a m m i n g
l a n g u a g e f o r w h i c h n a t i v e c o d e c o m p i l e r s a r e a l r e a d y
w i d e l y a v a i l a b l e .
Interpreter – it read and then executed directly, with no
BY: Computer Science Department
22. Communication software
Enables transfer of data
and programs from one
computer system to
another.
BY: Computer Science Department
23. Utility program
It help users in system maintenance
tasks and in performing tasks of
routine nature.
Formatting hard disks or floppy disks
Taking back-up of files stored or hard
disk
Sorting of the records stored in a file in a
particular order.
Common examples are Disc defragmenter,
Disc checker, Disc cleaner, etc.
BY: Computer Science Department
24. Three layers software performing
Platform software - often comes
bundled with the computer, it includes
the firmware, device drivers, an
operating system, and typically a
graphical user interface which, in
total, allow a user to interact with the
computer and its peripherals
(associated equipment)
Application software
User-written software - tailors systems
to meet the users’ specific needs.
BY: Computer Science Department
25. Quality and reliability
Software reliability considers the
errors, faults, and failures related to
the creation and operation of
software.
BY: Computer Science Department
26. Patents
The issue of software patents is
controversial. Some believe that they
hinder software development, while
others argue that software patents
provide an important incentive to spur
software innovation. See software patent
debate.
BY: Computer Science Department
27. License
Software license gives the user the right to
use the software in the licensed
environment; some software comes with the
license when purchased off the shelf, or an
OEM license when bundled with hardware.
Other software comes with a free software
license, granting the recipient the rights to
modify and redistribute the software.
Software can also be in the form of
freeware or shareware. See also License
Management.
BY: Computer Science Department
28. Ethics and rights for software users
Being a new part of society, the idea of what
rights users of software should have is not
very developed. Some, such as the free
software community, believe that software
users should be free to modify and
redistribute the software they use. They argue
that these rights are necessary so that each
individual can control their computer, and so
that everyone can cooperate, if they choose, to
work together as a community and control the
direction that software progresses in. Others
believe that software authors should have the
power to say what rights the user will get.
BY: Computer Science Department