Software Basics
Software Basics
The Ghost in the
Machine
4
 2001 Prentice Hall
4.2
Chapter Outline
•
Processing with Programs
•
Software Applications: Tools for 
Users
•
System Software: The 
Hardware-Software Connection
•
The User Interface: The 
Human-Machine Connection
•
Tomorrow’s User Interfaces
“All 
experience 
shows 
technological 
changes 
profoundly 
transform 
political and 
social 
relationships.”
John von Neumann
 2001 Prentice Hall
4.3
Processing with Programs
Software programs are:
– stored in memory 
– a set of instructions that tell a 
computer what to do
– designed to solve problems
 2001 Prentice Hall
4.4
Food for Thought
• Combine 2 slightly beaten eggs with 1 tsp
vanilla extract, ½ tsp cinnamon,  cup milk
• Dip 6 slices of bread in mixture
• Fry in small amount of butter until golden 
brown
• Serve bread with maple syrup, sugar, or
tart jelly
Suzanne’s French Toast
Fantastique:
 2001 Prentice Hall
4.5
A Fast, Stupid Machine
Computers:
– Have limited capabilities
– Can only do basic 
mathematics and logical 
comparisons
– Must be instructed with
programs what to do
 2001 Prentice Hall
4.6
The Language of
Computers
• Programmers begin with an algorithm,
which is:
– A set of step-by-step instructions (written in
a natural language, e.g., English)
• Algorithms are ambiguous, error-prone
generalities
• Algorithms are translated into the
vocabulary of a programming language
 2001 Prentice Hall
4.7
Programming Languages
Bridge the gap
Human
language
Numeric code
COBOL, BASIC, and C+
+
 2001 Prentice Hall
4.8
Software Applications:
Tools for Users
Software applications include:
–
Consumer software
–
Integrated software
–
Vertical-market and custom software
 2001 Prentice Hall
4.9
Consumer Applications
• Consumer software differs from other
types (music CDs, videos, etc.) based 
on:
–
Documentation
–
Upgrade options
–
Compatibility
–
Warranty
–
Extent of ownership/license
 2001 Prentice Hall
4.10
Documentation
Documentation
includes:
– Printed
tutorial
and
reference manuals
that explain how to use the software
–
On-line manuals
and
help screens
which offer immediate help to the user
 2001 Prentice Hall
4.11
Upgrades
• Newer releases often have additional
features and fewer bugs
• Upgrades allow you to pay a fee to
get the latest software version
 2001 Prentice Hall
4.12
Compatibility
• Compatibility
allows software to
function properly
with the hardware,
operating system,
and peripherals
• Programs written
for one type of
computer system
may not work on
another
 2001 Prentice Hall
4.13
Warranty
• Software manufacturers limit their
liability for software problems by
selling their software “as is”
• Error-free software does not exist
Buyer Beware!
 2001 Prentice Hall
4.14
Ownership/Licensing
• Three categories:
–
Purchased
software grants you a license to
use the software as the software company 
tells you
–
Shareware
software is free for the trying,
but a nominal fee is to be paid to the 
programmer if you continue to use it
–
Public domain
software is legally free and
cannot be owned or licensed
 2001 Prentice Hall
4.15
Integrated Applications and
Suites:
Software Bundles
• Multipurpose software includes
most of these modules:
– Word processing
– Database
– Spreadsheet
– Graphics
– Telecommunications
 2001 Prentice Hall
4.16
Integrated Software:
Advantages
•
Costs less
than buying the
applications individually
• Data is
easily transferred
between modules
• Commands used in each
module are usually the same
• Usually there is a
seamless
integration
of the modules
 2001 Prentice Hall
4.17
Vertical-Market and
Custom Software
• Job-specific software:
– Medical billings
– Library cataloging
–
Restaurant management
–
Single-client software needs
 2001 Prentice Hall
4.18
What the Operating System
Does
• The operating system controls:
– Communication with peripherals
– Coordination of concurrent processing
– Memory management
– Monitoring of resources and security
– Management of  programs and data
– Coordinating network communications
 2001 Prentice Hall
4.19
Utility Programs
– repairing damaged files
– making it easy for users to copy files 
from one storage device to another
– translating files so different
software can read them
– guarding against viruses
Utility software controls tasks such
as:
 2001 Prentice Hall
4.20
Where the Operating System
Lives
• Others include only part
of it in ROM
– The remaining system is
loaded into memory 
(booting)
• Most of the time it
works behind the scenes
• Some computers store
their operating system
in ROM
 2001 Prentice Hall
4.21
The User Interface:
The Human-Machine Connection
The user interface is what
the user sees on the screen
Two major user interface
types:
–
Character-based
interface
–
Graphical user
interface (GUI)
 2001 Prentice Hall
4.22
A Character-Based Interface:
MS-DOS
• This is a disk operating system in
which the user interacts using 
characters
– letters
– numbers
– symbols
 2001 Prentice Hall
4.23
A Character-Based User
Interface:
MS-DOS
• MS-DOS™ is the most widely used
general-purpose operating system
• Features include:
– Command-line interface (commands
are typed)
– Menu-driven interface (commands are
chosen from on-screen lists)
 2001 Prentice Hall
4.24
Graphical User Interfaces:
Macintosh
• This is a disk operating system in
which the user interacts with the 
computer by using a pointing device 
(e.g. a mouse) 
• As early as 1984, the
Macintosh™ computer
was designed with this
interface in mind
 2001 Prentice Hall
4.25
Graphical User Interfaces:
Windows
• Windows 95
and 98 are 
similar in many 
ways to the 
Mac OS
• Several versions
of Windows exist 
for business and 
home users
 2001 Prentice Hall
4.26
Why WIMP Won
W
indows,
I
cons,
M
enus, and
P
ointing devices
• They’re intuitive
• They’re consistent
• They’re forgiving
• They’re protective
• They’re flexible
 2001 Prentice Hall
4.27
Multiple User Operating
Systems: UNIX and Linux
•
UNIX
was developed at Bell Labs
before personal computers were 
available
•
Linux
was created by Linus Torvalds
and continues to be a work-in-progress
– Linux is free for anyone to use or improve
 2001 Prentice Hall
4.28
•
UNIX
remains a dominant Internet
operating system for Internet servers.
Multiple User Operating
Systems: UNIX and Linux
• These systems allow a timesharing
computer to communicate with
several other computers or terminals
at once.
 2001 Prentice Hall
4.29
Hardware & Software
Platforms
• Windows 9x(ME)
• Windows 2000
• Windows CE
• Palm OS
• IBM’s OS/2
• Mac OS/9
• Mac OS/X
• UNIX & Linux
• BeOS
 2001 Prentice Hall
4.30
Rules of Thumb
Consumer Concepts
Before you buy:
– Join a user group or
talk with other
computer
and software owners
– Allow for “extras”
– Determine what you
can afford
 2001 Prentice Hall
4.31
Rules of Thumb:
Consumer Concepts
• What kind of tasks
you will be doing
• If your computer can
be customized to fit
your needs (such as
video editing)
• How much computer
power you need
Consider:
• If the processor can
handle your 
demands
• If you will be able to
upgrade
 2001 Prentice Hall
4.32
Rules of Thumb:
Consumer Concepts
• If you need a high-
speed modem or 
network connection
• Whether portability or
permanent connection 
of peripherals is 
important
• Which kind of user
interface will help you 
do your work easier
Consider:
• If you should have the
same machine as 
those you work with
• If you are buying from
a reputable company
• What kind of support is
available
 2001 Prentice Hall
4.33
Tomorrow’s User
Interfaces
– Make individual applications
obsolete
– Support natural languages
(talk to the machine and it
talks back)
– Include artificial intelligence
and agents that fit our needs
– Be based on virtual reality
(data in three-dimensional
physical space)
Future interfaces will probably: