The Role of Simulation in dealing with complexity · The Role of Simulation in dealing with...

Post on 24-Jul-2020

6 views 0 download

Transcript of The Role of Simulation in dealing with complexity · The Role of Simulation in dealing with...

The Role of Simulation in dealing with complexity

Shayne.Flint@anu.edu.au

Research School of Computer Science

College of Engineering and Computer Science

ENGN2219/COMP6719 – 2019

Agenda …

• Thinking about complexity– Dave Snowden’s Cynefin Framework

• Dealing with complexity– System Dynamics– Boyd’s OODA loop

• The role of simulation– Brooks’ Law example

2

Thinking About Complexity…

3

Thinking about complexity …

• The Cynefin sense-making framework– Pronounced “KUN-iv-in” (It’s a Welsh word!)

– Created in 1999 by Dave Snowden– http://cognitive-edge.com

• We require different kinds of thinking for– Obvious (Simple) Systems

– Complicated Systems– Complex Systems

– Chaotic Systems

4

Unpredictable

5

Predictable

The Cynefin Sense-making Framework

6

Pre

dict

able

Unpredictable

The Cynefin Sense-making Framework

Complicated

Simple (obvious)

7

Pre

dict

able

Complex

The Cynefin Sense-making Framework

Complicated

Simple (obvious)

Unp

redi

ctab

le

Chaotic

8

9

10

12

Dealing with Complexity

Dealing with complexity

• Experimentation is at the core – Probe – with safe to run experiments– Sense – what works & what doesn’t– Respond – with emergent practices

• System Dynamics modeling and simulation can help

• We will also look at why Agility is important when dealing with complexity

14

System Dynamics

• An approach to understanding the behavior of complex systems over time– Developed by Jay Forrester at MIT in the 1950’s

– Originally focussed on industrial processes

– Now widely used for policy analysis and design

• Systems are represented using– Causal Loop Diagrams (CLD)

– Stock and Flow Diagrams (SFD)

15

CLD Example – using Exit Mould

16

CLD Example – using Exit Mould

17

SYMPTOMSYMPTOM

Mould on my bathroom tiles

CLD Example – using Exit Mould

18

SYMPTOMSYMPTOM FIXFIX

+

Mould on my bathroom tiles

Apply Exit Mould and wipe down tiles

CLD Example – using Exit Mould

19

SYMPTOMSYMPTOM FIXFIX

+

Mould on my bathroom tiles

Apply Exit Mould and wipe down tiles

-

CLD Example – using Exit Mould

20

SYMPTOMSYMPTOM FIXFIX

UNEXPECTED CONSEQUENCEUNEXPECTED CONSEQUENCE

-

+

+

Mould on my bathroom tiles

Apply Exit Mould and wipe down tiles

delay

CLD Example – using Exit Mould

21

SYMPTOMSYMPTOM FIXFIX

UNEXPECTED CONSEQUENCEUNEXPECTED CONSEQUENCE

-

+

+

Mould on my bathroom tiles

Apply Exit Mould and wipe down tiles

Exit Mould damages grout and tile surface

CLD Example – using Exit Mould

22

SYMPTOMSYMPTOM FIXFIX

UNEXPECTED CONSEQUENCEUNEXPECTED CONSEQUENCEPROBLEMPROBLEM

-

+

+

+

Mould on my bathroom tiles

Apply Exit Mould and wipe down tiles

Exit Mould damages grout and tile surface

Damage encourages growth of deep mould

CLD Example – using Exit Mould

23

SYMPTOMSYMPTOM FIXFIX

UNEXPECTED CONSEQUENCEUNEXPECTED CONSEQUENCEPROBLEMPROBLEM

-

+

+

+

+

Mould on my bathroom tiles

Apply Exit Mould and wipe down tiles

Exit Mould damages grout and tile surface

Damage encourages growth of deep mould

24

“Fixes That Fail”

This is an example of a System Archetype

(a common pattern of behaviour)

Other Fixes that Fail …

• The war on terror

• Building freeways• Borrowing money to pay interest• Cutting maintenance and repair costs

25

Dealing with a staff shortage …

26

SYMPTOMSYMPTOM

Staff Shortage(cannot employ new people)

Dealing with a staff shortage …

27

SYMPTOMSYMPTOM FIXFIX

+

Staff Shortage(cannot employ new people)

Dealing with a staff shortage …

28

SYMPTOMSYMPTOM FIXFIX

+

Increase overtimeStaff Shortage(cannot employ new people)

Dealing with a staff shortage …

29

SYMPTOMSYMPTOM FIXFIX

-

+

Increase overtimeStaff Shortage(cannot employ new people)

Dealing with a staff shortage …

30

SYMPTOMSYMPTOM FIXFIX

UNEXPECTED CONSEQUENCEUNEXPECTED CONSEQUENCE

-

+

+

Increase overtimeStaff Shortage(cannot employ new people)

Dealing with a staff shortage …

31

SYMPTOMSYMPTOM FIXFIX

UNEXPECTED CONSEQUENCEUNEXPECTED CONSEQUENCE

-

+

+

Increase overtime

Physical and mental health issues

Staff Shortage(cannot employ new people)

Dealing with a staff shortage …

32

SYMPTOMSYMPTOM FIXFIX

UNEXPECTED CONSEQUENCEUNEXPECTED CONSEQUENCEPROBLEMPROBLEM

-

+

+

+

Increase overtime

Physical and mental health issues

Staff Shortage(cannot employ new people)

Dealing with a staff shortage …

33

SYMPTOMSYMPTOM FIXFIX

UNEXPECTED CONSEQUENCEUNEXPECTED CONSEQUENCEPROBLEMPROBLEM

-

+

+

+

+

Increase overtime

Physical and mental health issues

Increased sick leave

Staff Shortage(cannot employ new people)

There are many such archetypes …

• System Archetypes describe patterns of behavior that surface in many different domains

• They help us– think about the possible behavior of complex systems

– understand why a complex system behaves the way it does, and

– identify things we can do to change that behavior (ie. the things that work and don’t work).

34

The need for agility

35

John Boyd

• Fighter pilot

• Military, sport and business strategist

36

Boyd’s OODA Loop• A continuous process of learning and change in

competitive environments

37

Speed is the key to success

• Success comes from getting around your OODA loop more quickly than your competitor– Business, Nature, Sport, Politics …

• If your competitor is quicker than you:– Your competitor's behavior will eventually appear chaotic – you will be

confused

– You will make bad decisions - based on ‘Orientation’ and ‘Observations’ that are no longer valid

– You will lose or fail

• Complex systems often evolve rapidly– You need to experiment, learn and act quickly

38

The role of simulation

39

How can simulation help

• We can simulate the behavior of complex systems– eg. System Dynamics Stock & Flow models

• We can do this quickly– In order to get through our OODA loop quickly

• We can run many simulations based on different parameters– That is, we can run a series of different ‘experiments’

– To find out what works & what doesn’t

40

SFD Simulation Example - Brooks’ Law

• Fred Brooks– Turing Award 1999

– Author of “The Mythical Man-Month”

– Author of “No Silver Bullet”

41

SFD Simulation Example - Brooks’ Law

42

“Adding manpower to a late software project makes it later.”

Brooks’ Law

● Note that in his book ‘The Mythical Man-Month’, Brooks says that this law is an ‘outrageous oversimplification’.

● In reality, adding people to a project is a complex problem

● We can explore this problem using System Dynamics and Simulation.

SFD Simulation Example - Brooks’ Law

43

https://insightmaker.com/insight/4648/Clone-of-Brooks-Law

SFD Simulation Example - Brooks’ Law

44

• No new developers at day 100

SFD Simulation Example - Brooks’ Law

45

• 5 new developers at day 100

SFD Simulation Example - Brooks’ Law

46

• 15 new developers at day 100

SFD Simulation Example - Brooks’ Law

47

• 15 new developers at day 100, decreased communications

SFD Simulation Example - Brooks’ Law

• But, how do we reduce communication?– Fewer meetings?

– Restrictions on email use?

– ...

• … and what are the consequences?– More mistakes?

– Duplication of work?

– ...

• Additional complexity …– Need to add these aspects to the model

48

Exploring online SFD simulations

• https://insightmaker.com– Free & Open

– Supports Collaboration

– Huge repository of models you can play with

49

Exploring online SFD simulations

51

https://insightmaker.com/insight/101411/Air-Transport-Causal-Loop-Diagram

Exploring online SFD simulations

52

https://insightmaker.com/insight/7682/Implementing-Chronic-Care-Management

Additional Material …

53

System Dynamics– Wikipedia, “System Dynamics”

• https://en.wikipedia.org/wiki/System_dynamics

– Insight Maker, “Free modeling and simulation in your browser”• https://insightmaker.com

Cynefin Framework– Snowden, “Making Sense of Complexity”, Lean, Agile & Scrum Conference 2013

• https://www.youtube.com/watch?v=y6RfqmTZejU

– O’Sullivan, “Domain Driven Design for Everyone Else”, dev.to• https://dev.to/barryosull/domain-driven-design-for-everyone-else-a9

– Snowden and Boone, “A Leader’s Framework for Decision Making”, Harvard Business Review, Nov 2007

• https://hbr.org/2007/11/a-leaders-framework-for-decision-making

OODA Loops– Adolph, “What lessons can the agile community learn from a maverick fighter pilot?”,

Agile’06• https://ieeexplore.ieee.org/document/1667567/

Additional Material …

54

Fred Brooks– Wikipedia, “Fred Brooks”

• https://en.wikipedia.org/wiki/Fred_Brooks

– Brooks, Fredrick P. (1975). “The Mythical Man-Month: essays in software engineering.” Reading, Massachusetts: Addison-Wesley.

• Amazon

– Brooks, F. P., Jr. (1987). “No Silver Bullet – Essence and Accidents of Software Engineering”. Computer. 20 (4): 10-19

• ACM

Questions ?

55