Title: SOFTWARE
1SOFTWARE
2Agenda
- The Stored Program Concept
- Software as Control
- Software as Simulation
3The Stored Program Concept
1 2 3 4 5 6 7 8 9 10 11 12 13 14
15 16 17
Get 17If zero, go to 10Get 16Put into 10Get
15Subtract 1If zero, go to 10Put into 15Go
to 5StopAdd 1Put into 17If zero, go to
10Go to 15Get 14-5
Commands or instructions for a CPU are stored as
data sequentially in packages called
programs. This allows rapid access to programs
as well as the ability to create or generate them
at will by changing the data Some programs
write other programs (these are called
compilers), while other programs can even modify
themselves. Having programs as data makes them
very portable and so long as the CPU can
interpret the instructions, programs can move
into and out of and even between computers
4Software as Control
- Instructions determine the flow of action of
the CPU. - The instructions dont have to be purely
mathematical. - Some can control equipment (printers, screens,
eg.)
Compute
5Software Controls Software, Too
- Software can control other items of software
- In addition to compilers that create other
software, an operating system controls other
programs (and data). - These control programs differ in the kinds of
resources they control and the human interface
for human intervention.
6(Computer) Operating System
Operating System (DOS, Linux Windows Unix, etc.)
Inter-face(text orGUI)
This is also a system resource
System Resources Files, i/o devices, storage
devices, communication lines, memory, time
This is an operating system for a computer. But
if the resources are not computer resources, its
still an operating system, simulating according
to some set of rules or plan
7Software as Simulation
- Because software is really expression of control,
to the extent that software can control an
environment or situation and its resources, it
can simulate activities within that environment - Software can thus make a general purpose computer
look like any specific computer.
8A simulation
Humans can provide input to control simulation
or they can just be participants in the simulated
environment
Human Interaction Primary Input
General PurposeComputer
Control State-ments Describing New Situation
Software
Primary (Data) and Secondary (Device) Outputs
9Layers of Software
Application Software
Operating System
Software that Controls Humans
Software that Controls Devices
Hardware
Resources, including Data
10Software upon Software
Any Software
Give me service! I want this and this and this.
I want results!!
Here are the results! I dont care what you do
with them!!
Some Other Software
The black box principle
Question What does this remind you of?????
11Software Flexibility
- Because of the black box principle, software can
be used to bundle (i.e., control) other software - Thus new bundles can be created, and reused.
- If these bundles are commonly referred to
business concepts, they are called objects - An entire programming method exists to take
advantage of this bundling principle, called
Object Oriented Programming.
12Types of Software
- System controllers Operating systems
- Software generators Compilers, languages
- Virtual environments Simulators
- Personal software Productivity tools
- Data management Database managers
- High-level command at a time Script
- Hardware interpreters Drivers
- Operating environments Shells
13Software People
- Software builders programmers
- Programmers who work on systems system
programmers - Programmers who work on problems
programmer/analysts - Programmers who work on user applications
application programmers
14Systems People
- High on need for achievement
- Low on social needs
- Probably more introverted than users
- Rational
- Judgmental
- Somewhat intuitive and artistic too, though
- Thinking rather than feeling
15Time for a Joke
- (Basis) Three people, a system manager, a systems
analyst and a programmer are driving through the
mountains. - (Crisis) Suddenly at the top of the pass, the
brakes fail - (Thesis) The car narrowly misses falling off the
mountain and comes to a stop against a big tree
swaying over a precipice. They are in trouble! - (Problem) How to get out of trouble.
16- System Manager Look at the cars operating
manual and see what it says about keeping a car
from falling off a mountain possibly shutting
down the car - Systems Analyst Examine the cars specifications
to see what might have failed to cause the
braking problem. - Programmer..