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: