SoftwareReleaseProjectCausal loop example given by van Zijderveld (MARVEL) |
This information is part of the Business Simulation Library (BSL). Please support this work and ► donate.
In 2007 Erik J.A. van Zijderveld introduced what he coined a "Method to Analyse Relations between Variables using Enriched Loops (MARVEL)" [24]. He made the following observations:
In the diagram, the thickness of an arrow indicates the strengh of impact whereas length and number of "barriers" at their tips indicate the speed of impact propagation. These attributes are assigned qualitatively using weak, average, strong, very strong to rank strengths and low, average, high, very high to rank speeds.
The model diagram below illustrates how such a model can be built using the →CausalLoop
package. Impact relations between variables are encoded using the →ProportionalityDelayed
component with global parameters for strength (wk, av, st, vs
) and speed (v1, v2, v3, v4
) in place, the latter being transformed to delay times, which are inversely related to speed.
In accordance with the MARVEL version there are four control or intervention points, which can be turned on or off for a simulation run:
c1
: budget control with setpoint = 0.8
c2
: mandate control with setpoint = 0.7
c3
: management knowledge level control with setpoint = 0.5
c4
: management quality control with setpoint = 0.6
These controls mean that whenever there is a deviation between setpoint
and actual level of the variable under control, then corrective action will be taken, i.e. a flow to the stock, in order to erradicate the deviation within the chosen adjustment time, whcih is set to 1 yr
for all controls.
There are three main performance goals: cost effectiveness (costs), production quality (quality), and software usage (usage). In this example the normalized stock values pertaining to the goals are simply mapped upon the linear scale [0,1]
. The graph blow shows the development for these performance indicators over a period of 10 years with just the budget control (c1
) activated.
In order to better combare different scenarios we can use a weighted average performance and calculate the mean over the simulation period (→totalPerformance
). Using this measure we can compare different combinations of interventions and it turns out that a combination of c3
and c4
shows best average performance albeit withouth considering the control effort (see Notes).
wCost |
Value: 1 Type: Real Description: Weigth for cost performance |
---|---|
wQuality |
Value: 1 Type: Real Description: Weigth for quality performance |
wUsage |
Value: 1 Type: Real Description: Weigth for usage performance |
wk |
Value: 0.2 Type: Real Description: Weak influence |
av |
Value: 0.5 Type: Real Description: Average influence |
st |
Value: 1 Type: Real Description: Strong influence |
vs |
Value: 1.2 Type: Real Description: Very strong influence |
v4 |
Value: 7889238 Type: Time (s) Description: Very high speed |
v3 |
Value: 15778476 Type: Time (s) Description: High speed |
v2 |
Value: 31556952 Type: Time (s) Description: Average speed |
v1 |
Value: 94670856 Type: Time (s) Description: Low speed |
c1ActiveQ |
Value: true Type: Boolean Description: = true, to activate the budget control |
c2ActiveQ |
Value: false Type: Boolean Description: = true, to activate the clear mandate control |
c3ActiveQ |
Value: false Type: Boolean Description: = true, to activate the management knowledge level control |
c4ActiveQ |
Value: false Type: Boolean Description: = true, to activate the management quality control |
modelOutput |
Type: DataOutPort Description: The model's performance output |
---|
modelSettings |
Type: ModelSettings Description: Setting important global variables within a model |
|
---|---|---|
lab1 |
Type: MatFlowIndicator Description: Directional indicator for material flows in a diagram |
|
lab2 |
Type: MatFlowIndicator Description: Directional indicator for material flows in a diagram |
|
lab3 |
Type: MatFlowIndicator Description: Directional indicator for material flows in a diagram |
|
lab4 |
Type: MatFlowIndicator Description: Directional indicator for material flows in a diagram |
|
lab5 |
Type: MatFlowIndicator Description: Directional indicator for material flows in a diagram |
|
lab7 |
Type: MatFlowIndicator Description: Directional indicator for material flows in a diagram |
|
lab8 |
Type: MatFlowIndicator Description: Directional indicator for material flows in a diagram |
|
lab9 |
Type: MatFlowIndicator Description: Directional indicator for material flows in a diagram |
|
lab10 |
Type: MatFlowIndicator Description: Directional indicator for material flows in a diagram |
|
lab11 |
Type: MatFlowIndicator Description: Directional indicator for material flows in a diagram |
|
lab12 |
Type: MatFlowIndicator Description: Directional indicator for material flows in a diagram |
|
lab13 |
Type: MatFlowIndicator Description: Directional indicator for material flows in a diagram |
|
budget |
Type: SimpleInformationLevel Description: Available budget |
|
externalResources |
Type: SimpleInformationLevel Description: Available external resources |
|
clearMandate |
Type: SimpleInformationLevel Description: Clear mandate assignment |
|
partiesInvolved |
Type: SimpleInformationLevel Description: Number of parties involved |
|
decisionSpeed |
Type: SimpleInformationLevel Description: Speed of decision making |
|
adHocDesignDecisions |
Type: SimpleInformationLevel Description: Number of adhoc design decisions |
|
designQuality |
Type: SimpleInformationLevel Description: Quality of software design |
|
swQuality |
Type: SimpleInformationLevel Description: Software quality |
|
swAcceptance |
Type: SimpleInformationLevel Description: Software acceptance |
|
swUsage |
Type: SimpleInformationLevel Description: Software usage |
|
prodQuality |
Type: SimpleInformationLevel Description: Quality of production |
|
prodEfficiency |
Type: SimpleInformationLevel Description: Production efficiency |
|
costs |
Type: SimpleInformationLevel Description: Costs |
|
costEffectiveness |
Type: SimpleInformationLevel Description: Cost effectiveness |
|
changePressure |
Type: SimpleInformationLevel Description: Need to change |
|
mgtKnowledgeLevel |
Type: SimpleInformationLevel Description: Management knowledge level |
|
decisionQuality |
Type: SimpleInformationLevel Description: Quality of decisions made |
|
swMgtOrgCapacity |
Type: SimpleInformationLevel Description: Software management organization capacity |
|
employees |
Type: SimpleInformationLevel Description: Number of employees |
|
swResistance |
Type: SimpleInformationLevel Description: Resistance against software |
|
mgtQuality |
Type: SimpleInformationLevel Description: Management quality |
|
r1 |
Type: ProportionalityDelayed Description: External resrouces >> clear mandate |
|
r2 |
Type: ProportionalityDelayed Description: External resources >> management knowledge level |
|
r3 |
Type: ProportionalityDelayed Description: External resources >> management quality |
|
r4 |
Type: ProportionalityDelayed Description: External resources >> software management organization capacity |
|
r5 |
Type: ProportionalityDelayed Description: Budget >> external resources |
|
r6 |
Type: ProportionalityDelayed Description: Clear mandate >> number of parties involved |
|
r7 |
Type: ProportionalityDelayed Description: Costs >> cost effectiveness |
|
r8 |
Type: ProportionalityDelayed Description: Decision quality >> design quality |
|
r9 |
Type: ProportionalityDelayed Description: Decision speed >> number of ad hoc design decisions |
|
r10 |
Type: ProportionalityDelayed Description: Design quality >> software quality |
|
r11 |
Type: ProportionalityDelayed Description: Management knowledge level >> decision quality |
|
r12 |
Type: ProportionalityDelayed Description: Management quality >> resistance against software |
|
r13 |
Type: ProportionalityDelayed Description: Management quality >> software usage |
|
r14 |
Type: ProportionalityDelayed Description: Change pressure >> budget |
|
r15 |
Type: ProportionalityDelayed Description: Number of ad hoc design decisions >> design quality |
|
r16 |
Type: ProportionalityDelayed Description: Number of employees >> costs |
|
r17 |
Type: ProportionalityDelayed Description: Number of employees >> resistance against software |
|
r18 |
Type: ProportionalityDelayed Description: Number of parties involved >> decision speed |
|
r19 |
Type: ProportionalityDelayed Description: Production efficiency >> costs |
|
r20 |
Type: ProportionalityDelayed Description: Production quality >> cost effectiveness |
|
r21 |
Type: ProportionalityDelayed Description: Software acceptance >> software usage |
|
r22 |
Type: ProportionalityDelayed Description: Number of parties involved >> design quality |
|
r23 |
Type: ProportionalityDelayed Description: Software management organization capacity >> software quality |
|
r24 |
Type: ProportionalityDelayed Description: Software quality >> software acceptance |
|
r25 |
Type: ProportionalityDelayed Description: Software usage >> number of employees |
|
r26 |
Type: ProportionalityDelayed Description: Software usage >> productive efficiency |
|
r27 |
Type: ProportionalityDelayed Description: Software usage >> production quality |
|
r28 |
Type: ProportionalityDelayed Description: Production quality >> change pressure |
|
r29 |
Type: ProportionalityDelayed Description: Software usage >> resistance against software |
|
r30 |
Type: ProportionalityDelayed Description: resistance against software >> software acceptance |
|
r31 |
Type: ProportionalityDelayed Description: Software management organization capacity >> number of employees |
|
c1 |
Type: SimpleControl Description: Directly influencing a stock to keep it at setpoint value |
|
c2 |
Type: SimpleControl Description: Directly influencing a stock to keep it at setpoint value |
|
c3 |
Type: SimpleControl Description: Directly influencing a stock to keep it at setpoint value |
|
c4 |
Type: SimpleControl Description: Directly influencing a stock to keep it at setpoint value |
|
usage |
Type: Performance Description: Evaluation of a stock on a [0,1] scale |
|
quality |
Type: Performance Description: Evaluation of a stock on a [0,1] scale |
|
cost |
Type: Performance Description: Evaluation of a stock on a [0,1] scale |
|
totalPerformance |
Type: AccumulatedPerformance Description: Mean weighted-average performance from startTime to currentTime |