Institute of Communication Networks and Computer Engineering (IKR)
IKR Simulation Library - Design and Application
Most simulation libraries focus on implementation issues rather
than using abstractions from the problem domain. There is a semantic
gap between the low-level abstractions they offer, such as process
classes, and the problem-oriented abstractions the user wants. Also,
most systems don't offer support for hierarchical systems. This makes
it difficult to implement reusable submodels and components that can
be further refined as the design evolves, which is an essential
features for simulating complex systems.
The IKR Simulation Library is a flexible general purpose library
for the simulation of complex hierarchical systems. The library is
implemented in C++ and JAVA and uses high-level abstractions that are
closely related to the problem domain. Therefore, users can easily map
their simulation models to actual simulation programs. The library can
be easily extended by taking advantage of C++/JAVA language
concepts. It uses few basic abstractions and emphasizes a clean
software architecture. The library supports hierarchical decomposition
of simulation models into submodels and model components. Model
components are strictly encapsulated and communicate with each other
using a handshake protocol. This offers the ability to highly reuse
standardized model components and quickly create or modify a
simulation model using a `plug-and-play' approach.
Based on the Summary of Hartmut Kocher's PhD thesis