A set of UML diagrams that describe aspects of the simulation's code architecture.
The top level diagram shows the three basic components of the program, the main app, the simulation, and the user interface, as well as the map data that is used by both the simulation and the user interface. One thing to note here is that the simulation does not directly refer to any code in the user interface and can be run without one.
A component diagram of the simulation architecture. The intransient references from the simulation component to the other components means that those components are saved/loaded with the simulation, where as a transient reference means that the component is not saved/loaded.
A class diagram of the Unit class, the parent class of all agents and stateful objects in the simulated world. This diagram focuses on common component objects and inheritance to all the child classes of Unit.
A class diagram of the Person class, representing an individual person in the simulated world. The diagram shows the main component and subcomponent objects of a Person.
An activity diagram of a clock pulse thread moving through a person's mind object. This represents the decision making process of a person's AI for performing tasks and determining new tasks and missions.