Software design (independent of programming language)¶
This section describes the programming language-independent parts of how the abstract description of the modeling framework is realized as computer software. For the current implementation concept in the Python programming language, see here.
As it corresponds closely with the entity-centric view of the abstract framework, object-orientation is our main design principle. All parts of the software are organized in packages, subpackages, modules, and classes.
The only exception are those parts of the software that are written by model end-users to perform actual studies, which will typically be in the form of scripts following a mainly imperative programming style that uses the classes provided by the framework.
Contents: