Computer Software
Computer Software
(Computer Software)
1
COMPUTER SOFTWARE
• How to differentiate between hardware and software?
• Machine language is a
lowest level language.
User Requirement
Developer Spec.
Planning
Design
Implementation
• Concept & Feasibility:
Will this software be useful, means think of a feasibility.
How much money will be required to develop this complex
software. What will be the benefit of development. Is cost
is higher than benefit.
• User Requirement:
Next phase is requirement gathering of user.
In this phase questionnaire is asking from the potential
user, what type of features, processing they need.
• Developer Specification:
In which language you will be writing this software, tools
etc.
• Planning:
In planning phase, what is the nature of this s/w,
how many work force is required? How many
resources required, and how much time is required.
• Design:
For a large scale, complex software, you don’t write
a single program, you divide it in many small
modules and develop individually before that design.
• Implementation:
Final phase is implementation or coding.
MAJOR TYPES OF SOFTWARE
• Two major types of software:
– System software
– Application software
SYSTEM & APPLICATION SOFTWARE
• System software are doing the task in the background,
which user can not see.
System Software
Application Software
System software are programs that ..
• Control the overall operation of the computer.
– Operating system
• Firmware
• Utilities
• Language Translators
• Device Drivers
OPERATING SYSTEM
• Operating System are working in background.
• Example:
– How the files are transferring from memory to hard disk.
– How you see images on screen.
– When you type on keyboard, they produce results.
– When microprocessor performs any particular task.
• Types of OS:
– Windows, Mac OS, Unix, Linux.
– Solaris, MS DOS, CPM, VMS.
FIRMWARE
• Firmware is software that is embedded in a piece
of hardware.
• Example:
– ROM (when computer is turned on, it’s the first
program that always executes.)
– On IBM-compatible PC’s, the startup program is known
as BIOS.
– BIOS loads operation system into main memory.
UTILITIES
• Utility software is system software designed to help analyze,
configure, optimize or maintain a computer.
• Example:
– Anti virus software
– Data compression software
– Disk optimization software
– Disk backup software
LANGUAGE TRANSLATORS
• Language translators are programs that take code in high
level language and translate it into a low-level language
that is easily understood by microprocessor.
Source code
Compiler Interpreter
Object code
Hardware
DEVICE DRIVERS
• Device drivers connect software to hardware.
• Scientific/Engineering/Graphics Software
• Business Software
• Productivity Software
• Entertainment Software
• Educational Software
INTERFACE HARDWARE - USER
End user
System software
• operating system: OS Application SW
• support: system utilities
System SW
• development: compilers
Computer-
Application software hardware
• packages
• own development
APPLICATION SOFTWARE
CLASSIFICATION ACCORDING
TO THE MODE
Classification According to the
Mode
• Interactive-mode
– The user runs the program on the computer and keeps
on interacting with the computer while the program runs
– Example: Word processor
• Batch-mode
– The user starts the program and the computer processes
the provided data and produces results without any
further intervention of/from the user
– Example: Payroll
CLASSIFICATION ACCORDING
TO APPLICATION AREA
• We classify application software in 5 different
areas:
• Scientific/Engineering/Graphics Software
• Business Software
• Productivity Software
• Entertainment Software
• Educational Software
Scientific/Engineering/Graphics Apps
• Key feature: Intense floating-point calculations
• Scientific/engineering/mathematical apps
– Computers initially were designed just to run them
– Generally designed for specialists
– Rudimentary UI’s (Not a user friendly interface)
– Many run in batch mode
Scientific SW
• Simulation of natural systems
– Deforestation and effect on green-house gases
• Key requirements:
– Reliability
– Security
– Ability to handle 1000’s of transactions, simultaneously
ERP (Enterprise Resource Planning) SW
• Very large scale, complex & expensive SW
• Ties together all key activities & major systems of an
organization into a single SW system
• Key benefit: Optimization of the business processes
of an organization as a single system instead of
many loosely-related stand-alone systems
• Example: SAP, Oracle, PeopleSoft, Baan
DSS (Decision Support Systems) SW
• Sometimes also called “expert systems”
• Popular productivity SW
– Word Processing -- Spreadsheets
– Presentations -- Databases
Word Processors
• Probably the most popular productivity app
• Automation
– Automatic end-of-line soft carriage return
– Style sheets
– Table of contents & index
– Spelling & grammar checking
• Desktop publishing
Web Page Development SW
• Web pages can be developed using a simple plain-
text editor like the “notepad”, but more efficient,
easy-to-use HTML editors can make the process
quicker
• Automation
– Recalculations
– Charts
Presentation Development SW
• Used to prepare multimedia material for lectures &
presentations to display key points, graphics,
animation, or video with the help of multimedia
projectors
• Have replaced acetate films (slides) that were used
with over-head projectors
• Key advantage over acetate slides:
– Easy to modify
– Can be sent electronically
– Its multimedia nature makes it more interesting for the
audience
Overhead Projector
Small-Scale Databases SW (1)
• Easy to use applications designed for efficient
storage and fast and easy retrieval of data
• User Interface
– Consistent
– Configurable
– Adapts to the users need
• Example:
MS Word, MS Excel etc.
• Custom-built Software
You have to find someone who can develop it for
you.
These software are built for a particular
organization to fulfill the needs of the particular
organization
• Example:
Payroll system, Inventory Control, Library system etc.
DIFFERENCE
• Another thing that distinguish shrink wrapped
software from custom built software is delivery
time is longer in custom built software and they
are expensive.
WHO OWNS SOFTWARE?
• When we buy a SW package, we do not really
buy it. We just buy a license that allows us to
use it, the ownership stays with the maker.
• Software Licenses:
• Example:
MS Windows, MAC OS, MS office s/w package, Adobe
Photoshop, Norton Anti-virus.
TYPES OF PROPRIETARY LICENSES
• Single-User License
• Multi-User License
– For an organization, used by 5 people and can be
installed on 5 computers
• Site License
FREEWARE SOFTWARE LICENSE
• Also known as “Public Domain Software”.
• Examples:
Linux, LaTeX, Chrome, Opera, Netscape
Navigator, Internet Explorer Web Browsers.
OPEN-SOURCE SOFTWARE LICENSE
• When you purchased a SW you get it in machine
language form (machine code), and to modify
machine code it’s a complex and difficult task.
• Example:
Apache Web Server, MySQL
SHAREWARE SOFTWARE LICENSE
• Authors say use it for free of cost.
• Authors say if you are satisfied then please pay
us some money.
• Example:
WinZip, Download Accelerator, PDF to Word
Converts etc.
TRAILWARE
• Is similar to shareware but difference is that the
SW is usable for a short period of time only.