Software - FSU Computer Science Department

Download Report

Transcript Software - FSU Computer Science Department

Chapter 3
Software Solutions for Personal
and Professional gain
 Software from Conception to
Installation and Beyond
 System Software
 Application Software
 Smart Software: AI
Please discontinue use of cell
phone and turn off ringer
Succeeding with Technology
Trends
 There is a shift from a hardware view of
computing to software & services
"Ten years out, in terms of actual
hardware costs you can almost think of
hardware as being free -- I'm not
saying it will be absolutely free -- but in
terms of the power of the servers, the
power of the network will not be a
limiting factor," Gates said, referring to
networked computers and advances in
the speed of the Internet.
Succeeding with Technology
3.1
Software from Conception
to Installation and Beyond
Succeeding with Technology
Recall…2 Types of Software
 System Software
controls the
hardware and runs
the computer
system.
Succeeding with Technology
 Application
Software provides
services for people.
How Software Works
 Software consists of a
number of files at least
one of which is
“executable”.
 Executable File: stores
computer instructions in
binary machine language.
http://www.mozilla.com/firefox/
Succeeding with Technology
Programming Languages
 A programming language is the primary tool of
computer programmers, providing English-like
commands for writing software that is translated into
the detailed step-by-step instructions executed by the
processor.
A Programming Statement in C++
cout << "\nPlease Enter The Password:";
Syntax: a set of rules that describe how
programming statements and commands
should be written.
Succeeding with Technology
Programming Process
Source Code
void main()
{
Password.cpp
char password[200] = "opensaysme";
char input[200];
while(strcmp(password, input)) {
clrscr();
cout << "\nPlease Enter The Password:";
cin >> input;
Compiler
}
}
cout << "\nWelcome, Oh Great One!\n";
exit(1);
Object (Executable) Code
10011011000111010110111
Succeeding with Technology
Password.exe
The Program
Commercial software
You only get the "Executable Code".
It impossible to translate executable
code back to the original "Source
Code".
EXECUTABLE FILE VIEWED WITH MICROSOFT WORD
Æ ‹ÇL éŽ èJi j é
€=W½L t"è5i j Sÿ ìÄJ j jmh
ÿ5ؾL éQ jRj èº YYéG -Z „Ä
ƒè t HH …/ è
é% j j h/ é
SèÔ Yè&m „Àj t~‹5ÅJ h[ SÿÖ‹=dÅJ Pÿ×j h\ SÿÖPÿ×j h_ SÿÖPÿ×j hY SÿÖPÿ×h+ SÿÖ‹ðh @
jüV‰ ŽL ÿ tÅJ hÕ hÔ Vj £ ŽL èÒf Sèùc ƒÄ ë h+ Sÿ ÅJ Pÿ dÅJ Sè » Yj Xég
ÿu è Y ¶ÀéV
fƒÿ tfƒÿ …D
h
+ Sÿ ÅJ é
€= ŽL tj{Sÿ ¼ÄJ ¡0ŽL …À „
Pÿ €ÀJ é
ƒÿ{ …ÿ Sè
Yéõ î
„¼ ƒî
„ƒ î
tpNNtZNNt$îš
… j j h+ Sÿ ÅJ Pèh ë?j j Sèz– ƒÄ
…À „• €=ÇL „ˆ èDg j Sÿ ìÄJ ëxhtÞK SjèrŸ ƒÄ
ëfWèT é þÿÿh+ Sÿ ÅJ ‹ðVÿ xÅJ …ÀtBhÕ hÔ Vj èpe ƒÄ ë h+ Sÿ ÅJ ;øt Pÿ xÅJ …Àt j j hÉ Sÿ ðÄJ 3À_^[]Â
U‹ìQ¡ ŽL ‹ ŽL SVW3ÿ!}ü;Á‹Øw ‹Ùÿ ðÁJ + ŽL ‹,ŽL
…Ûw …Év,jd3Ò^÷ö‹ø…ÿu G‹Ã3ÒkÀd÷÷‹ð…öuj ^‹Á3ÒkÀd÷ö‰Eü;ûrM9Mür €% ŽL j{ÿu ÿ ¼ÄJ ‹Ã‹5¸ÄJ j
Succeeding with Technology
Software Copyrights and Licenses
Copyright: defines exclusive rights
legally granted to the owner.
Software License: Defines
permissions, right, and restrictions
provided to the person who
purchases a copy of the software.
 Single User/Multi-user
Succeeding with Technology
Succeeding with Technology
Freeware, Open-Source, and
Alternative Licensing
Public Domain
Open Source
Uncompiled code available for
programmers to modify at will (Linux)
Creative Commons License
Allows the creator of the intellectual
property to specify the terms of the
license.
http://creativecommons.org/
Succeeding with Technology
Off-the-shelf Software
 Off-the-shelf software is massproduced software designed for
use by the general public.
 Shareware
Marketed under a "try before
you buy" philosophy
12
Succeeding with Technology
Custom-designed software
 Custom Designed software, either in-house
developed, or contracted, is software
designed to solve a unique and specific
problem.
 Companies will
sometimes market
their custom
software to others in
the industry
https://renderman.pixar.com/
13
Succeeding with Technology
1
Installing Software
 Installed from distribution
disks or downloaded
 Observe system
requirements
 Run the setup program
(setup.exe or .dmg and
.app on Apple)
2
3
4
Succeeding with Technology
Installing Downloaded
Software
 www.download.com
 File Compression
 Self-Installing
 Self-extracting (.exe)
 Manual-extracting (.zip)
Succeeding with Technology
Alien Flux 1.3
Downloads:
54
Publisher:
Puppy Games
Date added:
July 7, 2003
File size:
5.79MB; Clock this
download
License:
Free to try; $19.95 to buy
Minimum
requirements:
Windows
95/98/Me/NT/2000/XP
Uninstaller
included?:
Yes
Limitations:
5 levels
Screenshot:
View screenshot
3.2
System Software
Helping the machine operate
effectively and efficiently
Key Terms
• Operating system
• Command-based
user interface
• Graphical User Interface
Succeeding with Technology
•
•
•
•
Booting
Multitasking
Open-source software
Utility programs
The Operating System
 The software that controls the computer’s
use of its hardware.
 Acts as an interface between application
software and hardware.
Applications
Operating
System
17
Succeeding with Technology
Operating System Functions
• Manages Processor Resources
• Manages Memory (RAM)
• Manages Storage and I/O
• Manages Peripheral Devices
•Uses device drivers
• Provides a Common User Interface
Multitasking
is the
processors
ability to run
more than
one program
at once.
•Graphical User Interface
• Provides Applications with
Hardware Independence
How is this related to
Microsoft’s
monopoly and many,
many lawsuits?
18
Succeeding with Technology
Operating System Types
• Single Computer, Single User
• Single Computer, Multiple Users
• Multiple Computers (Network)
• Special Purpose Computers
19
Succeeding with Technology
User Interfaces
 Command-based
Interface
Ssh demo?
Succeeding with Technology
 Graphical User
Interface (GUI)
Succeeding with Technology
www.microsoft.com/windowsvista
Succeeding with Technology
Apple OS X
Succeeding with Technology
Linux
Succeeding with Technology
Windows Pocket PC & Smartphone
Succeeding with Technology
Utility Programs (the other system software)
 Programs designed to
assist the machine in
running smoothly,
securely, and
efficiently.
 Virus Detection
 Spam and Pop-up
blockers
 Adware & Spyware
protection
 Defragmentation
 Windows Cleaners
 Programs that assist
us in maintaining
and manipulating
system resources.
 File Compression
(WinZip)
 File and Disk
Management & Backup
 CD/DVD Burners
27
Succeeding with Technology
3.3
Application Software
Helping peaople operate
effectively and efficiently
Key Terms
•
•
•
•
Word Processing
Spreadsheet Applications
Presentation Graphics
Database management
Succeeding with Technology
• Personal Information management
• Software Suites
Traditional Productivity Software
 Word Processing: Document
production
 Spreadsheet: Numeric
analysis software often used
for carrying out “what if”
scenarios.
 Database: For managing and
querying data records
 Presentation: For developing
supportive visual aides to
accompany a presentation.
29
Succeeding with Technology
35
Software Suite
 A software suite
is a collection of
application
software
packages sold
together.
Succeeding with Technology
Personal Information
Management (PIM) Software




Calendar/Appointments
To-do List
Address Book/Contacts
Information in PIMs
can be shared
between users over a
network.
Succeeding with Technology
Personal Information
Management (PIM) Software




Calendar/Appointments
To-do List
Address Book/Contacts
Information in PIMs
can be shared
between users over a
network.
Succeeding with Technology
Additional Application
Software for Individuals

Audio/Video


Graphics/Image Processing


PIM, Project Management, Inventory Systems, Voice Recognition
Home


Action, Arcade, Casino, Strategy, Simulation, Sports, Board,
Multiplayer
Business


Browsers, Email, Chat, Web Phones, WebCam, Utilities, NetMeeting
Games


Image Editing, Flash Animation, 3d m
Internet/Communication


Media Players, Rippers, Encoders, Music and Video
Recorders/Editors
PIM (Outlook), Food.Bev, Geneology, Hobbies, Health/Nutrition, Home
Inventory
Education
…and many others listed at www.download.com
Succeeding with Technology
3.4
Smart Software: AI
Key Terms
•
•
•
•
Word Processing
Spreadsheet Applications
Presentation Graphics
Database management
Succeeding with Technology
• Personal Information management
• Software Suites
Artificial Intelligence
 AI refers to the science and engineering of
creating computer systems that simulate human
thought and behavior.
Succeeding with Technology
Turing Test
“A human judge engages in a
natural language conversation
with two other parties, one
human, the other a machine; if
the judge cannot reliably tell
which is which, then the
machine is said to pass the
test.”
Succeeding with Technology
Conventional AI




Expert Systems
Case-based Reasoning
Bayesian Networks
Behavior-based AI
Succeeding with Technology
Automotive Diagnostics
Computational
Intelligence
 Neural Networks
 Fuzzy Systems
 Evolutionary
Computation
Succeeding with Technology
AI Applications
 Robotics
 Computer Vision
 Natural Language
Processing
 Speech Recognition




Handwriting Recognition
Face Recognition
Intelligent Agents
Artificial Creativity
Succeeding with Technology
Succeeding with Technology
Virtual Reality
 Computer-simulated environment that can
be manipulated by the user.
Succeeding with Technology
Chapter 3 Questions?
Don’t forget to turn
your phone on!!
Succeeding with Technology