Title: CS 501: Software Engineering Fall 1999
1CS 501 Software EngineeringFall 1999
Lecture 9 (a) Software Engineering as
Engineering? (b) Computer Systems
2Administration
Talk "Changes in Computer Science Real and
Imagined" The reorganization of computer science
at Cornell and its impact from the undergraduate
point-of-view. Charles Van Loan, chair CS
department Olin 155 Tuesday September 28, 1999
3What is Engineering?
4What is Engineering?
The profession of ... creating cost-effective
solutions ... ... to practical problems ... ...
by applying scientific knowledge ... ... and
established practices ... ... building things ...
5Crafts, Science, Engineering
Science
Production
Professional Engineering
Commercial
Craft
From Shaw and Garlan
6Crafts, Science, Engineering
algorithms data structures
compiler construction
software development methodologies
From Shaw and Garlan
7Software Engineering as Engineering?
? Part craft -- part engineering ? Embryonic
scientific basis ? Evolving body of knowledge ?
Too much flux for the apparatus of a profession
(e.g., accreditation) Example Texas
8Moore's Law
Original version The density of transistors in
an integrated circuit will double every year.
(Gordon Moore, Intel, 1965) Current
version Cost/performance of silicon chips
doubles every 18 months. Planning
assumptions Every year cost/performance of
silicon chips improves 25 cost/performance of
magnetic media improves 30
9Moore's Law and System Design
Design system 1999 Production use
2002 Withdrawn from production
2012 Processor speeds 1 1.9
28 Memory sizes 1 1.9 28 Disk
capacity 1 2.2 51 System
cost 1 0.4 0.01
10Moore's Law and Parkinson's Law
Original Work expands to fill the time
available. (C. Northcote Parkinson) Planning
assumptions (a) Demand will expand to use all
the hardware available. (b) Low prices will
create new demands. (c) Your software will be
used on equipment that you have not envisioned.
11False Assumptions
Unix file system will never exceed 2 Gbytes (232
bytes). AppleTalk networks will never have more
than 256 hosts (28 bits). GPS software will not
last 1024 weeks. Nobody at Dartmouth will ever
earn more than 10,000 per month. etc., etc.,
.....
12Moore's Law and the Long Term
What level?
1965
When?
1999?
13Predicting System Performance
? Mathematical models ? Simulation ? Direct
measurement All require detailed understanding of
the interaction between software and systems.
14Mathematical Models
Queueing theory Good estimates of congestion can
be made for single-server queues with ?
arrivals that are independent, random events
(Poisson process) ? service times that follow
certain families of distributions (e.g., negative
exponential, gamma) Many of the results can be
extended to multi-server queues.
15Behavior of Queues Utilization
mean delay
utilization
1
0
16Utilization Rule of Thumb
When the utilization of any system component
exceeds 30, be prepared for congestion.
17Simulation
Model the system as set of states and
events advance simulated time determine
which events occurred update state and event
list repeat Discrete time simulation Time is
advanced in fixed steps (e.g., 1
millisecond) Next event simulation Time is
advanced to next event Events can be simulated by
random variables (e.g., arrival of next customer,
completion of disk latency)
18Timescale
Operations per second CPU instruction 400,00
0,000 Disk latency 60
read 25,000,000 bytes Network LAN
10,000,000 bytes dial-up modem 6,000
bytes
19Measurements on Operational Systems
? Benchmarks Run system on standard problem
sets, sample inputs, or a simulated load on the
system. ? Instrumentation Clock specific
events.
20Serial and Parallel Processing
Single thread v. multi-thread e.g., Unix
fork Granularity of locks on data e.g., record
locking Network congestion e.g., back-off
algorithms
21Example Performance of Disk Array
Each transaction must wait for specific disk
platter wait for I/O channel signal to move
heads on disk platter wait for I/O
channel pause for disk rotation read data Close
agreement between results from queueing theory,
simulation, and direct measurement (within 15).
22Bouncing Ball Diagrams
Example http//www.cs.cornell.edu/
domain name TCP connection HTTP get
Client Servers
23Reading
Before next class, read and be ready to
discuss Sommerville Chapters 12 and 13 pages
209 to 224.