Hi everybody
System dynamics studies complexity.
One method of studying complexity is to make complex things
LOOK simple as one of the objective of SD is understanding how
things happen.
I am new to SD and have started recently to build my first model.
After a while I decided to learn by creating the simplest model
imaginable while having still some real world meaning.
It was not easy because it takes time to make things simple.
After a while I got a model with about 25 variables and constant.
Even then I found that with a very simple model It looked complicated and
I wondered how it would look with hundreds of variables and felt like
working toward an improbable result.
I decided to stay at that level of simplicity and to work with it using every
possible tools of the software I was using, trying to get understanding
and to verify how it was working.
After another while during which I learned a lot I found that the best way
to understand the behaviour of the model was to work toward extreme
readability, simplicity and instantaneous understanding to the extreme
point that everything became evident.
Besides having completely explicit variable names I avoid having more than two
arrows going into one variable. 95 % of the time, the equation has the four possibility
A+B or A*B or A-B or A/B. I then put the variables on the sketch so that it represents
the equation: With C= A+B I put the variable A and B just besides.
With A*B I put them one underneath the other no matter the order multiplication
being symetric. With A-B I put the A to the left of the B slightly underneath and
with A/B I put the A to the left of the B slightly on top.
While not putting more then ten variables in a view I can visually see whats going on
without having to click on the variable to look at its equation loosing sight of the
rest of the sketch. If I need more then two arrows, like special functions needing more
then two entries, I name the variables so that one can guess the
equation without having to click on the variable
This way I reduce the number of bugs and increase behaviour understanding.
It is easier to relate the behaviour of C = A/B from the behaviour of A and B then
the behaviour of C = ((A+B)*C) + D from the behaviour of A,B,C and D.
Of course the model had to be expanded to 5 or 6 views and the number of variables
increased to 40.
These practices are necessary because I am a beginner and I may not need it
anymore in the future. But right now I have not found any other way to progress in
my work.
Being in business I steal time every now and then to work with SD and of course
I can be disturbed any time by the telephone with a subject miles away from SD.
It is here that readability and simplicity is mandatory for me if I want to go back
to my work without loosing time.
I tried to search the mailing list for readability and found nothing.
I am sure that there are good practices to simplify modeling and readability
and not wanting to reinvent the wheel does anybody know of books
adressing that subject?
Thank you and best regards.
J.J. Laublé.
From: "ALLOCAR SRASBOURG" <allocar-strasbourg@wanadoo.fr>
Looking for readability and simplicity
-
- Junior Member
- Posts: 6
- Joined: Fri Mar 29, 2002 3:39 am
-
- Newbie
- Posts: 1
- Joined: Fri Mar 29, 2002 3:39 am
Looking for readability and simplicity
>From the pen of: ALLOCAR SRASBOURG
> After another while during which I learned a lot I found that the best way
> to understand the behaviour of the model was to work toward extreme
> readability, simplicity and instantaneous understanding to the extreme
> point that everything became evident.
Jean-Jacques, it may be helpful to think of the model as the embodiment of what
ever equations are required to address the problem or question at hand.
That may be few or many equations.
The interface of the model (be that for ease of input or for reading
output) can be designed for readability and simplicity. Without knowing
the context for your modeling (or for your post), Ill guess that most
people do not need to see the details of the model itself. If they do ask
to see the details, Ill guess they are prepared for details.
Bill Braun
From: "Bill Braun" <medprac@hlthsys.com>
> After another while during which I learned a lot I found that the best way
> to understand the behaviour of the model was to work toward extreme
> readability, simplicity and instantaneous understanding to the extreme
> point that everything became evident.
Jean-Jacques, it may be helpful to think of the model as the embodiment of what
ever equations are required to address the problem or question at hand.
That may be few or many equations.
The interface of the model (be that for ease of input or for reading
output) can be designed for readability and simplicity. Without knowing
the context for your modeling (or for your post), Ill guess that most
people do not need to see the details of the model itself. If they do ask
to see the details, Ill guess they are prepared for details.
Bill Braun
From: "Bill Braun" <medprac@hlthsys.com>