Introduction To System Dynamics Modelling
Introduction To System Dynamics Modelling
workforce modelling
December 2016
For further information please contact us using the contact form at https://www.healthylondon.org/
Contents
2
Introduction
This pack is designed to introduce elements of systems dynamics modelling and
the basics of using the Stella application to develop workforce models.
The pack is part of a resource library created by the HLP Workforce Programme to
support the Primary Care, Social Care and Mental Health models that have been
developed.
More comprehensive information on how to use Stella, a system dynamics software
package referenced in this guide, can be found on the developers’ website:
http://www.iseesystems.com/
3
01
Workforce Modelling: Context
5
What
What doesmodelling?
is workforce workforce modelling provide?
Workforce modelling is usually applied to support workforce planning to ensure that
five key enablers are in place. For instance, workforce modelling can test current
and future scenarios including new ways of working, new roles, the adoption of new
technology and demographic and societal changes.
Right
People
Right Right
Cost Skills
Workforce
Planning
Right Right
Time Place
Page 6
How to develop a workforce model
Workforce modelling takes existing data and uses it to develop a quantitative
analysis of an organisation’s workforce needs. This pack will explore what is
required to develop a workforce model, and explain the steps required to develop
one. The key points covered include:
• Types of data and assumptions required for a workforce model.
7
Fundamental principles
Workforce modelling is based on the principles of supply and demand. In
simple terms the model compares the current and future supply to expected
demand.
• The elements of the supply function will vary and generally depend on the time
scale that you are looking to map. Key elements include the number of each staff
type, their skills, their availability (‘participation rate’) and longer term factors such
as recruitment, leaver and retirement rates.
• The demand side of the model used by HLP is built by combining the activities that
require time from the workforce.
• Depending on the available data and the objective of the piece of work, network
flow analysis and optimisation techniques including linear programming can be
applied to produce an optimal strategy for using the existing and future workforce.
8
How to build a model
When building a workforce model it is important to follow a well-defined logical
approach. The steps below give a suggested approach to building a workforce
model that can be applied regardless objectives or sector:
Model Further
Model delivery
refinement engagement
9
General hints for building a model
When building any model there are a number of useful points to bear in mind. These apply
to all software packages and will make the model easier to build, revise and correct as and
when this is needed:
• Build the model in sections; if there are errors it will be easier to find them. In Stella these sections can
be modules. Each section should have a readout of the numbers at this stage of the model, this is key
when checking the results to see if they are correct or not.
• If possible, find previous trends to compare your model’s outputs to. If this data doesn’t exist make sure
that you validate the outputs with stakeholders and/or external experts.
• Continually refer back to the key business question to ensure what you are doing will add value.
• Build in flexibility. Just because a segment or filter is not required in the initial iteration, it doesn’t mean
that it will never be needed. It is easier to add this flexibility at the start rather than at the end as it can
mean making significant changes to the model structure.
• Modelling is an iterative process so make sure you continuously revise the model throughout the project
to reflect any new information that you receive.
• In the first instance, build a model that reflects a “no change” scenario. This reduces the number of
assumptions around future ways of working that are required, making the model more accurate. It is also
easier to understand the results of not changing which makes it easier for your results to be validated by
published data sources or your data steering group.
10
Further Information
A more detailed guide, ‘Building Workforce Models’, has been published by HLP
alongside this introduction to system dynamics. In this guide you will find:
11
01
02
Introduction to Stella & System
Dynamics Software
Aim: To share learning and
enable health and social care
organisations to benefit from
the workforce modelling tools
and approach developed by the
London HLP Workforce
Modelling team
London Workforce Programme
13
What are the benefits
By testing different ‘what if’ scenarios, System Dynamics allows users to:
• Understand and analyse risks in different terms (e.g. cost and gaps between supply
and demand)
• Design and test new strategies which can lead to improved outcomes
• Develop more effective structures, approaches and project plans
• Accelerate collective learning about potential behaviour and impacts of complex
systems
• Model and test policy and program design options
• Analyse and improve business processes
• Understand program performance and sustainability
• Facilitate constructive dialogue among stakeholders
• Lead to strategic decisions that are realistically framed and more likely to accomplish
their objectives.
14
What is required when using System Dynamics?
The key requirement of any system dynamics modelling project is having a clearly
defined problem and scope. In most instances, it is not advisable to build ‘general’
models which look at systems more broadly.
Key considerations include:
• Define who is/are the target audience or end user? Strategic or tactical purpose.
• What relationships drive system behaviours? Causal loop diagram (CLD).
• Start with a qualitative diagram of relationships in the system. This is an excellent
means of building consensus on the structure and function of the current system.
• Quantifying these relationships; build the quantitative SD model.
• Flows control rate of change in the system (e.g. appointments per week) whilst stocks
are the accumulations of ‘things’ that can be counted (e.g. GP headcount or FTE).
• Data collection and validation – using assumptions where necessary.
• Refine, test, validate and iterate – this should be a continuous process.
15
What is Stella?
- Stella is a systems dynamics software program produced by ISEE systems
- It follows SD principles and uses stocks and flows to enable the modelling of
systems
- Further information about the tool can be found on the ISEE website:
https://www.iseesystems.com/
- A series of useful example models have been published on the ISEE website and
can be accessed at:
- http://xmile.iseesystems.com/
16
What are ‘Stocks’?
- In Stella, stocks are the primary way for holding the quantities that you want to track.
For example, if you wanted to track the population over time you would use a stock to
hold the population that you are tracking with flows to manage the people coming in
and leaving.
- To insert a stock into Stella use the icon boxed below. This is found in the top left of
the Stella window
- When you click on the stock menu you will see a dropdown appear containing stocks
with alternative functionality. For the purpose of this introduction we will focus on the
standard stocks.
- Three key points to note when using stocks are:
1 - They have memory. Stocks will retain all inflows which means that if an inflow is
cut off then the size of the stock will not decrease unless there is an additional outflow
attached to it.
2 - Always note their units. This helps to avoid confusion throughout a model.
3 - Only flows can be used to modify stocks. These flows are regulated by
converters and connectors.
17
What are ‘Flows’?
Flows are the only way to add to and take away from stocks. To insert a flow into Stella
use the icon boxed below which can be found in the top left of the Stella window.
When you click on the flow, you will see two boxes drop down: one with 2 arrows, one
with a single arrow. The flow with 2 arrows is a bi-flow and is used if population can flow
either way between stocks; the single arrow represents a single direction of flow.
Once inserted, a green icon will appear which can be dragged around the page. Double
click on the icon to bring up the body of the chart. To edit this double click again to bring
up the define graph screen
20
How to run a model: The ‘run specs’
Before a model can be run, the run specs need to be adjusted. This is done from Run >
Run Specs in the toolbar.
21
Example 1 – Connecting Stocks
Example of how to build a simple model:
10 4
100 0 0
22
Example 1 – Connecting Stocks cont’d
Example of how to build a simple model
10 4
100 0 0
23
Example 1 – Connecting Stocks cont’d
Example of how to build a simple model
10 4
100 0 0
24
03
Building a simple
population model
Step 2 – click on the worksheet to place a stock and the following will appear:
Step 3 – Rename the stock by clicking on the text above the stock.
Step 4 – Double click on the stock to bring up the data entry panel.
Step 5 – Select the numeric entry option on the data entry panel.
26
Building a simple model cont’d
Step 9 – Repeat the step above except this time click do not
click on the sheet but instead click on the stock and drag to the
right. This creates an outflow.
27
Building a simple model cont’d
28
Building a simple model cont’d
Step 15 - to connect the flow with the stock, click the connector
icon, then click and hold on the stock and drag down to the
flow.
Step 16 – click on the converter and add the death rate into the
equation box, in this case 0.1.
29
Building a simple model cont’d
Step 17 – set the Deaths flow to equal the death rate multiplied
by the population. Do this by clicking on the flow and setting
the equation box to Death_Rate*Population.
30
Building a simple model cont’d
Step 23 – run the model by clicking the arrow in the bottom left
corner of the screen.
This will update the corresponding charts and tables you have
created.
31