Models & Paradigms

advertisement
Models & Paradigms
Another look at systems modelling
SSPDSSPD
1
Paradigm Shift
SSPD
2
Not Just Jackson
• There is growing awareness of the need
for change in the software process
• Large studies indicate that software
process is a feedback loop
• Estimated that in every system there is
one implicit assumption for every 10
LOC
SSPD
3
Modelling Reality
• The system and the domain in which it
is to reside form an infinite universe.
• Our understanding of these must be
finite
• The finished system must also be finite
 we must construct a model of the
infinity.
SSPD
4
Modelling Problems
• But to reduce infinity to the finite
requires abstraction and thus omission
of detail
• It is here that our assumptions come in
• e.g., let’s assume that all dates can be
represented in this system by two digits.
• Or, we know that this system will not be
used fifteen years from now
SSPD
5
Dynamic Environment
• We said previously that dynamic
environment creates problems…
• …it can also cause our domain to
change...
• …thus rendering our model (and hence
our system) invalid.
SSPD
6
What to Do?
• Much effort is being spent on
understanding & improving the software
process
• But attention has not been focused on
system design methods and
methodology
• Hence: a certain difficulty
SSPD
7
Difficulty?
• Now recognised that software process
is not linear (as assumed by waterfall
model)
• But that later stages inform earlier
ones…
• …that is, as more is learnt, earlier
assumptions are challenged and
understanding is refined.
SSPD
8
So What?
• Well, traditional methods hinder this
process…
• …because the system architecture is
built upon foundations…
• ...resulting from very large assumptions
about the system and its domain…
• when we understand them the least.
SSPD
9
Feedback = Problem
• But feedback from later stages causes
us to challenge our earlier
assumptions…
• …which might make our entire system
design sub-optimal, a bit flaky or even
untenable
• Hence: plan to throw one away.
SSPD
10
Towards a Solution?
• Get rid of the pointy-haired boss and his
dysfunctional decomposition
SSPD
11
SSPD
12
So how do we model?
• Is there a way to construct a model that
reduces the scope for errors caused by
our assumptions and finite
understanding?
SSPD
13
Some Jargon
•
•
•
•
•
Model
Reality
Abstraction
Simulation
Real world
SSPD
14
What is a System
• The system to be developed is nothing
more than a finite state machine which
simulates the workings of a given realworld domain.
• Because it is finite & static it necessarily
omits detail and is founded on
abstractions & assumptions
• There is an uncertainty principle
involved here
SSPD
15
Nature of a Model
• A model is a representation of a realworld.
• It is this model which is realised to bring
about the working system
• Hence, if the model is wrong, so is the
resultant system
SSPD
16
Nature of the Model
• A model is necessarily an abstraction
because…
• …it is only possible to make an exact
representation of a reality with a model
that is exactly as complex and detailed
as the original…
• …i.e, we replace the real-world with a
carbon copy. Back to square one.
SSPD
17
Conundrum
• So, there is a dichotomy.
• Leaving out information can lead to loss
of quality
• But we must leave out something else
we can’t produce a model.
SSPD
18
Compact Disc Analogy
• Consider the compact disc.
• Uses digital sampling to approximate a
sound wave.
• By sampling at a rate of 44.1Khz at a
resolution of 16 bits we get
• A recording with a dynamic range of
approx 96dB and a maximum frequency
of 22050Hz.
SSPD
19
Consequences
• Dynamic range of human ear is about
120db (which requires 20bit resolution)
• Lose sounds above 22.05KHz even
though experiments show an effect on
the human auditory system by sounds
greater than this (old analogue tapes
could typically reproduce 25Khz)
SSPD
20
Good Enough?
•
•
•
•
But CD deemed to be ‘good enough’
What about compression?
1 second of CD audio requires:
44100 x 16bits x 2(stereo channels) =
172.27Kbytes
• = 10.09Mbytes per minute
SSPD
21
Mini Disc & MPEG-3
• How do mini-discs get the ‘same’ sound
into such a small space?
• How does MPEG-3 compress audio to
about 10% of its size without us noticing
the difference?
• We make assumptions and abstractions
SSPD
22
Compression Model
• These audio compression techniques
utilise psychoacoustic phenomena to
delete information which our auditory
system does not ‘hear’.
• But these are based on sound empirical
observations and mathematical
techniques
SSPD
23
Systems Modelling?
• So how do we model a system
accurately without losing information?
SSPD
24
We Don’t Know
• Anyone fancy doing a PhD?
SSPD
25
SSPD
26
The Jackson Approach
• In my opinion, Jackson’s approach is a
major step towards an accurate model.
• Consider the following:
SSPD
27
“If you want to understand some aspect of the
Universe, it helps if you simplify it as much as
possible, and include only those properties
and characteristics that are essential to
understanding. If you want to determine how
an object drops, you don’t concern yourself
with whether it is new or old, is red or green,
has an odour or not. You eliminate those
things and thus do not needlessly complicate
matters.”
SSPD
28
“Now, as you wish to know more and more
about any phenomenon, or as a phenomenon
becomes more complex, you need more and
more elaborate equations, more and more
detailed programming, and you end up with a
computerized simulation that is harder and
harder to grasp.”
SSPD
29
“Can’t you form a simulation of the
simulation?” asked Hummin. “You would go
down another degree.”
“In that case, you would have to eliminate
some characteristic of the phenomenon
which you want to include and your system
becomes useless. The LPS - that is ‘the least
possible simulation’ - gains in complexity
faster than the object being simulated does
and, eventually, the simulation catches up
with the phenomenon.”
SSPD
30
“Thus, it was established thousands of years
ago that the Universe as a whole, in its full
complexity, cannot be represented by any
simulation smaller than itself.”
“In other words, you can’t get any picture of
the Universe as a whole except by studying
all the Universe.”
Hari Seldon talking to Hummin,
from Prelude to Foundation,
by Isaac Asimov.
SSPD
31
Macbeth!
• Aaarrghhh! What can we do?
Tomorrow, and tomorrow, and tomorrow, creeps in
this petty pace from day to day to the last syllable of
recorded time, and all our yesterdays have lighted
fools the way to dusty death. Out, out, brief candle!
Life's but a walking shadow, a poor player that struts
and frets his hour upon the stage and then is heard
no more: it is a tale told by an idiot, full of sound and
fury, signifying nothing.
Macbeth, V:v
SSPD
32
SSPD
33
Download