1sspdsspd models & paradigms another look at systems modelling

33
1 SSPDSSPD Models & Paradigms Another look at systems modelling

Upload: abner-eaton

Post on 17-Jan-2018

216 views

Category:

Documents


0 download

DESCRIPTION

3SSPD 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

TRANSCRIPT

Page 1: 1SSPDSSPD Models & Paradigms Another look at systems modelling

1SSPDSSPD

Models & Paradigms

Another look at systems modelling

Page 2: 1SSPDSSPD Models & Paradigms Another look at systems modelling

2SSPD

Paradigm Shift

Page 3: 1SSPDSSPD Models & Paradigms Another look at systems modelling

3SSPD

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

Page 4: 1SSPDSSPD Models & Paradigms Another look at systems modelling

4SSPD

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.

Page 5: 1SSPDSSPD Models & Paradigms Another look at systems modelling

5SSPD

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

Page 6: 1SSPDSSPD Models & Paradigms Another look at systems modelling

6SSPD

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.

Page 7: 1SSPDSSPD Models & Paradigms Another look at systems modelling

7SSPD

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

Page 8: 1SSPDSSPD Models & Paradigms Another look at systems modelling

8SSPD

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.

Page 9: 1SSPDSSPD Models & Paradigms Another look at systems modelling

9SSPD

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.

Page 10: 1SSPDSSPD Models & Paradigms Another look at systems modelling

10SSPD

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.

Page 11: 1SSPDSSPD Models & Paradigms Another look at systems modelling

11SSPD

Towards a Solution?• Get rid of the pointy-haired boss and his

dysfunctional decomposition

Page 12: 1SSPDSSPD Models & Paradigms Another look at systems modelling

12SSPD

Page 13: 1SSPDSSPD Models & Paradigms Another look at systems modelling

13SSPD

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?

Page 14: 1SSPDSSPD Models & Paradigms Another look at systems modelling

14SSPD

Some Jargon• Model• Reality• Abstraction• Simulation• Real world

Page 15: 1SSPDSSPD Models & Paradigms Another look at systems modelling

15SSPD

What is a System• The system to be developed is nothing more

than a finite state machine which simulates the workings of a given real-world domain.

• Because it is finite & static it necessarily omits detail and is founded on abstractions & assumptions

• There is an uncertainty principle involved here

Page 16: 1SSPDSSPD Models & Paradigms Another look at systems modelling

16SSPD

Nature of a Model• A model is a representation of a real-

world.• It is this model which is realised to bring

about the working system• Hence, if the model is wrong, so is the

resultant system

Page 17: 1SSPDSSPD Models & Paradigms Another look at systems modelling

17SSPD

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.

Page 18: 1SSPDSSPD Models & Paradigms Another look at systems modelling

18SSPD

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.

Page 19: 1SSPDSSPD Models & Paradigms Another look at systems modelling

19SSPD

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.

Page 20: 1SSPDSSPD Models & Paradigms Another look at systems modelling

20SSPD

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)

Page 21: 1SSPDSSPD Models & Paradigms Another look at systems modelling

21SSPD

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

Page 22: 1SSPDSSPD Models & Paradigms Another look at systems modelling

22SSPD

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

Page 23: 1SSPDSSPD Models & Paradigms Another look at systems modelling

23SSPD

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

Page 24: 1SSPDSSPD Models & Paradigms Another look at systems modelling

24SSPD

Systems Modelling?

• So how do we model a system accurately without losing information?

Page 25: 1SSPDSSPD Models & Paradigms Another look at systems modelling

25SSPD

We Don’t Know

• Anyone fancy doing a PhD?

Page 26: 1SSPDSSPD Models & Paradigms Another look at systems modelling

26SSPD

Page 27: 1SSPDSSPD Models & Paradigms Another look at systems modelling

27SSPD

The Jackson Approach• In my opinion, Jackson’s approach is a

major step towards an accurate model.• Consider the following:

Page 28: 1SSPDSSPD Models & Paradigms Another look at systems modelling

28SSPD

“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.”

Page 29: 1SSPDSSPD Models & Paradigms Another look at systems modelling

29SSPD

“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.”

Page 30: 1SSPDSSPD Models & Paradigms Another look at systems modelling

30SSPD

“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.”

Page 31: 1SSPDSSPD Models & Paradigms Another look at systems modelling

31SSPD

“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.

Page 32: 1SSPDSSPD Models & Paradigms Another look at systems modelling

32SSPD

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

Page 33: 1SSPDSSPD Models & Paradigms Another look at systems modelling

33SSPD