To search, Click below search items.


All Published Papers Search Service


Implementing System Dynamics Models in Java


C. Caulfield, D. Veal, S. P. Maj


Vol. 11  No. 7  pp. 43-49


For a research project into the value of serious games ? games that teach and educate ? in software engineering and project management education, a game called Simsoft was developed. Two keys parts of Simsoft were the system dynamics engine that captured the fundamental causal relationships of the software project being modelled, and the Java dashboard through which the players entered their project decisions. Java also provided a means of saving the players individual decisions so these could later be analysed and replayed. While there are currently no Java libraries for implementing system dynamic models, a system dynamics model is simply a collection of non-linear differential equations, and open-source Java libraries for these do exist. Therefore, it is possible to implement a system dynamics model in Java and take advantage of the features of a powerful, general purpose programming language. This paper describes how the model behind Simsoft was created using system dynamics modeling tool called iThink and how the model was subsequently implemented in Java using the Apache Commons Mathematics library.


system dynamics, Java, iThink, serious games