Chapter 3
Software
What is software?
Relationship between
hardware and software
Different types of software
Different Computer Languages
BY: Computer Science Department
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
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
Major types of software
 Application Software
 System Software
 Communication Software
 Utility Program
BY: Computer Science Department
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
Application Software
 Word-processing
 Spread sheet
 Database
 Graphic software
 Personal Assistance software
 Educational software
 Entertainment software
BY: Computer Science Department
MS Access
BY: Computer Science Department
Graphic Software
BY: Computer Science Department
Personal Assistant
BY: Computer Science Department
Educational Software
BY: Computer Science Department
Entertainment software
BY: Computer Science Department
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
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
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
Types of System Software
Operating system
Programming language
software
BY: Computer Science Department
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
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
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
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
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
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
Communication software
 Enables transfer of data
and programs from one
computer system to
another.
BY: Computer Science Department
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
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
Quality and reliability
 Software reliability considers the
errors, faults, and failures related to
the creation and operation of
software.
BY: Computer Science Department
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
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
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
THANK YOU !!!
End of the session
BY: Computer Science Department

Chapter 3 Software.ppt

  • 1.
    Chapter 3 Software What issoftware? 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 Softwareand 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 ofsoftware  Application Software  System Software  Communication Software  Utility Program BY: Computer Science Department
  • 5.
    Application Software  Itallows 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
  • 7.
    MS Access BY: ComputerScience Department
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
    Subtypes of applicationsoftware  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 briefdescription 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  Isa 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 SystemSoftware Operating system Programming language software BY: Computer Science Department
  • 16.
    Operating System  Operatingsystem 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  Thedata 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 Programminglanguage  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 Programminglanguage  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 Programminglanguage  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  Enablestransfer of data and programs from one computer system to another. BY: Computer Science Department
  • 23.
    Utility program  Ithelp 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 softwareperforming  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 issueof 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 licensegives 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 rightsfor 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
  • 29.
    THANK YOU !!! Endof the session BY: Computer Science Department