Prof. Dr.-Ing. Jan Himmelspach

Professoren / Dozenten


  • Studiengangsleiter Angewandte Informatik/Software Engineering (M.Sc.)
  • Professur für Softwareentwicklung


  • stellv. Ombudsmann Forschung


  • Softwareentwicklung (komponentenbasiert, effiziente Algorithmen)
  • Modellierung (Modelle, Sprachen, ...)
  • Simulation (Berechnung, Experimente, Software, ...)


  • JAMES II (Open Source Framework for Modeling and Simulation)


  • Analytische Informationssysteme
  • Automatentheorie und formale Sprachen
  • Datenbanken und Business Intelligence
  • Einführung in die Programmierung
  • Einführung in die objektorientierte Programmierung
  • Gestaltung von Informationssystemen
  • Modellierung und Simulation
  • Praxis der Softwareentwicklung
  • Projektmanagement
  • Software Engineering
  • Unternehmensmodellierung
  • Systemmodellierung

Betreute Bachelorarbeiten (exemplarisch):

  • The integration of software to compute BioPEPA models in JAMES II
  • Fallstudie zum Reengineering von ausführbarem Code über objektorientierte Spezifikationen in UML am Beispiel des Spiels "Duke Nukem"
  • Eine Testumgebung für Algorithmen zum Tracking sich bewegender Objekte
  • Data-Mining Methoden in der Simulation
  • Model checking of models in JAMES II by using LoLA
  • Ein Vergleich unterschiedlicher Netzwerkkommunikationsbibliotheken für verteiltes Rechnen in Simulationssoftware basierend auf Java
  • Efficient parallel computation of cellular automata

Betreute Masterarbeiten (exemplarisch):

  • Exemplarische Migration einer klassischen Client-Server-Architektur zu einer reaktiven Microservices-Architektur mit asynchron angebundenem Webclient
  • Analyse und Simulation im Rahmen modellbasierter Entwicklung am Beispiel zukünftiger Türsteuerungssysteme für zivile Passagierflugzeuge
  • Simulation of load balancing algorithms for discrete event simulations
  • Ein Rahmenwerk für die Erstellung von parallel-verteilten Simulationsalgorithmen in JAMES II
  • Coupling Autominder and James
  • Komponentenbasierte Modellierung in der Systembiologie
  • Implementation und Evaluierung einer Umgebung zur parallelen Simulation am Beispiel eines Simulators für Beta-Binders in JAMES II
  • Aggregation verteilter Simulationsdaten
  • Entwicklung eines flexiblen Komponentenbaukastens für Lehr-/Lernsysteme
  • ExML - ein Austauschformat für valide Experimentbeschreibungen zum Austausch zwischen verschiedenen Simulationssystemen
  • Entwicklung einer Methodik zur automatisierten Gestaltung von Luftraumsektorisierungen in der Flugsicherung
  • Selektive Instrumentierung von Modellen in JAMES II
  • Parameteroptimierung und Sensitivitätsanalyse in James II
  • Effizientes Speichern und Lesen von Trajektorien während der Berechnung einer Simulation
  • Ein Werkzeug für die Erstellung und Migration von Testdaten
  • Arbeitsabläufe in der Modellierung und Simulation
  • Parallele Optimierung von Simulationsmodellen
  • Web-basiertes visuelles Monitoring von JAMES II Simulationen
  • Integration einer Simulations-Engine in eine komponentenbasierte eLearning-Architektur am Beispiel der Entwicklung eines simulationsbasierten Geographie-Lernspiels


  • Promotion an der Universität Rostock, Fakultät für Elektrotechnik und Informatik, zum Dr.-Ing. (2007)
  • Abschluss als Diplom-Informatiker (2003)

Akademische Ausbildung:

  • Promotion an der Universität Rostock

Tätigkeiten in der Wirtschaft:

  • IT Unternehmensberatung [Softwareentwicklung] (2013-2015)
  • Unternehmensarchitektur bei einer Versicherung (2015-2016)

Tätigkeiten in der Lehre:

  • Universität Rostock (2003-2013)


  • Diverse Fachzeitschriften (TOMACS, Simulation, SimPat, ...)
  • Diverse Fachkonferenzen (Winter Simulation Conference, PADS, TMS/DEVS, ...)
  • Mitglied des technischen Programmkommitees der SimuTools 2017


  • GI e.V.


A. Uhrmacher, R. Ewald, J. Himmelspach, M. Jeschke, M. John, S. Leye, C. Maus, M. Röhl

One Modelling Formalism & Simulator is not enough! ‐ A Perspective for Computational Biology Based on JAMES II (2008)

In Proceedings of the the 1st FMSB Workshop; J Fisher(Ed): Springer-Verlag, Cambridge, UK; 123- 138

Diverse modelling formalisms are applied in Computational Biology. Some describe the biological system in a continuous manner, others focus on discrete-event systems, or on a combination of continuous and discrete descriptions. Similarly, there are many simulators that support different formalisms and execution types (e.g. sequential, parallel-distributed) of one and the same model. The latter is often done to increase efficiency, sometimes at the cost of accuracy and level of detail. James II has been developed to support different modelling formalisms and different simulators and their combinations. It is based on a plug-in concept which enables developers to integrate spatial and non-spatial modelling formalisms (e.g. stochastic pi calculus, Beta binders, Devs, space- pi), simulation algorithms (e.g. variants of Gillespie’s algorithms (including Tau Leaping and Next Subvolume Method),space- pi simulator, parallel Beta binders simulator) and supporting technologies (e.g. partitioning algorithms, data collection mechanisms, data structures, random number generators) into an existing framework. This eases method development and result evaluation in applied modelling and simulation as well as in modelling and simulation research.

One Modelling Formalism & Simulator is not enough! ‐ A Perspective for Computational Biology Based on JAMES II


M. Oertel, J. Himmelspach, A. Martens

Teaching and Training System plus Modeling and Simulation -a Plugin Based Approach (2008)

In Proceedings of the Tenth International Conference on Computer Modeling and Simulation; D Al-Dabass(Ed): IEEE Computer Society Press, Los Alamitos, CA, USA; 475- 480

Teaching and training simulation systems are usually developed ad hoc and are in most cases not carefully engineered. This leads to a situation, where neither teaching and training content, nor parts of the implemented systems can be re-used. The approach described in this paper is based on the idea of "leftplug-in"right of components. The framework JaBIT (Java Based Intelligent Tutoring) provides for a set of core components which can be used for implementing a teaching and training system. In combination with the modeling and simulation system JAMES II (Java based Agent Modeling Environment for Simulation II a JAva based Multipurpose Environment for Simulation), also modeling and simulation components can be used for development of teaching and training systems. The JaBIT framework and the combination of the framework with JAMES II "leftplug\textquoterightn simulate"right mechanism are described in the paper.

Teaching and Training System plus Modeling and Simulation -a Plugin Based Approach


J. Himmelspach, R. Ewald, A. Uhrmacher

A flexible and scalable experimentation layer for JAMES II (2008)

In Proceedings of the 2008 Winter Simulation Conference; S Mason, R Hill, L Moench, O Rose(Ed): Institute of Electrical and Electronics Engineers, Inc, Piscataway, New Jersey; 827- 835

Modeling and simulation frameworks for use in different application domains, throughout the complete development process, and in different hardware environments need to be highly scalable. For achieving an efficient execution, different simulation algorithms and data structures must be provided to compute a concrete model on a concrete platform efficiently. The support of parallel simulation techniques becomes increasingly important in this context, which is due to the growing availability of multi-core processors and network-based computers. This leads to more complex simulation systems that are harder to configure correctly. We present an experimentation layer for the modeling and simulation framework JAMES II. It greatly facilitates the configuration and usage of the system for a user and supports distributed optimization, on-demand observation, and various distributed and non-distributed scenarios.

A flexible and scalable experimentation layer for JAMES II


S. Leye, J. Himmelspach, M. Jeschke, R. Ewald, A. Uhrmacher

A grid-inspired mechanism for coarse-grained experiment execution (2008)

In Proceedings of the 12th IEEE International Symposium on Distributed Simulation and Real-Time Applications; D Roberts, A El Saddik, A Ferscha(Ed): IEEE Computer Society Press, Los Alamitos, CA, USA; 7- 16

Stochastic simulations may require many replications until their results are statistically significant. Each replication corresponds to a standalone simulation job, so that these can be computed in parallel. This paper presents a grid-inspired approach to distribute such independent jobsover a set of computing resources that host simulation services, all of which are managed by a central master service. Our method is fully integrated with alternative ways of distributed simulation in JAMES II, hides all execution details from the user, and supports the coarse-grained parallel execution of any sequential simulator available in JAMES II. A thorough performance analysis of the new execution mode illustrates its efficiency.

A grid-inspired mechanism for coarse-grained experiment execution


R. Ewald, J. Himmelspach, A. Uhrmacher

An Algorithm Selection Approach for Simulation Systems (2008)

In 22nd Workshop on Principles of Advanced and Distributed Simulation; F Quaglia, J Liu(Ed): IEEE Computer Society Press, Piscataway, NJ; 91- 98

No simulation algorithm will deliver best performance under all circumstances, so simulation systems often offer execution alternatives to choose from. This leads to another problem: how is the user supposed to know which algorithm to select? The need for an automated selection mechanism is often neglected, as many simulation systems are focused on specific applications or modeling formalisms and therefore have a limited number of expert users. In general-purpose simulation systems like JAMES II, an ’intelligent’ selection mechanism could help to increase the overall performance, especially when users have limited knowledge of the underlying algorithms and their implementation(s)(which is almost always the case). We describe an approach to integrate algorithm selection methods with such systems. Its effectiveness is illustrated in conjunction with the ’plug ’n simulate’ approach of JAMES II.

An Algorithm Selection Approach for Simulation Systems


J. Himmelspach, M. Röhl, R. Ewald, A. Uhrmacher

Plug’n Simulate: Scalability as a key requirement for SOA-based M & S? (2008)

In Workshop on Net-Centric Modeling & Simulation; web published(Ed), Marseille, France


R. Ewald, J. Rössel, J. Himmelspach, A. Uhrmacher

A plug-in - based architecture for random number generation in simulation systems (2008)

In Proceedings of the 2008 Winter Simulation Conference; S Mason, R Hill, L Moench, O Rose(Ed): Institute of Electrical and Electronics Engineers, Inc, Piscataway, New Jersey; 836- 844

Simulations often depend heavily on random numbers, yet the impact of random number generators is recognized seldom. The generation of random numbers for simulations is not trivial, as the quality of each algorithm depends on the simulation scenario. Therefore, simulation environments for large-scale experimentation with safety-critical models require a reliable mechanism to cope with this aspect. We show how to address this problem by realizing a random number generation architecture for a general-purpose simulation system. It provides various random number generators (RNGs), probability distributions, and RNG tests. It is open to future additions, which allows the assessment of new generators in a simulation context and the re-validation of past simulation studies. We present a short example that illustrates why the features of such an architecture are essential for getting valid results.

A plug-in - based architecture for random number generation in simulation systems


A. Martens, J. Himmelspach, R. Ewald

Modeling, Simulation and Games (2008)

In Workshop Proceedings der Tagungen Mensch und Computer 2008, Delfi 2008 und Cognitive Design 2008; U Lucke, M Kindsmüller, S Fischer, M Herczeg, S Seehusen(Ed): Logos Verlag, Berlin; 349- 354


J. Himmelspach, M. Röhl, A. Uhrmacher

Component based models and simulation experiments for multi-agent systems in JAMES II (2008)

In Working Notes of the 6th International Workshop AT2AI-6: From Agent Theory to Agent Implementation. Workshop at the Seventh International Conference on Autonomous Agents and Multiagent Systems AAAMAS 2008; B Jung, F Michel, A Ricci, Petta, Paolo(Ed), Estoril, Portugal; 83- 92

The architecture of the modelling and simulation framework James II facilitates its reuse for a broad range of applications, including agent-based modelling and simulation. Simulation studies can be done by using component based models, which may have been defined in an external IDE and saved in an standardized way. We created a customisable middleware for James II, which can be easily extended to read various experiments and models from different sources, to dynamically instrument the created structures, to execute models on different hardware infrastructures efficiently, to store simulation data into diverse data sinks, which can be used to create specialised IDEs, and which can be fully integrated into other applications.

Component based models and simulation experiments for multi-agent systems in JAMES II


A. Martens, J. Himmelspach, R. Ewald

Spiele und Simulation (2008)

In Proceedings of the E-Learning-Baltics - eLBa 2008; S Hambach, A Martens, B Urban(Ed): Fraunhofer IRB Verlag, Rostock, Deutschland; 53- 62