The complexity of the systems we try to simulate still increases. Even with computers more and more powerful, humans have difficulties to manage this complexity. The only way we know to apprehend the complexity of a system is to divide it and consider the parts individually. Hence, for a long time, systems have been considered as a composition of elements. Rapidly, we found that some components in different systems are similar and sometimes even identical. So, when designing a simulation model, why not reuse a component from another model ?

For simulation, different kinds of software are proposed. There is general purpose simulation software, which is not restrained to a specific kind of problem, and dedicated simulation software used for a particular kind of system. Usually, specific software is relatively easy to learn, whereas general software is more complicated. To allow non experts in simulation to use such software, libraries are developed including components designed for a particular kind of problem. Normally, non experts can more easily understand and use them.

Those are the reasons of our interest in the design of reusable components in visual simulation. It allows to increase the productivity of simulation models and offers a real opportunity for non experts to use generic simulation software such as the Visual Simulation Environment (VSE).

In this report, we present how it is possible to design reusable model components with object-oriented, component-based and discrete-event simulation software like VSE. We detail the design of two libraries of components.

  • "Spot" library, that provides components for the movement of dynamic objects in a layout (blueprint, map, drawing...), considering priority, authorization and interference rules.

  • "Clock" library, that provides a class for representing and manipulating dates in the Gregorian calendar. Components are also provided to control and display the simulation clock in this calendar.

We first present the objectives of our study. Then, successively, the object-oriented approach, discrete-event simulation and software reuse are introduced. Finally, the study is detailed, explaining the two designed libraries.

Copyright (c) 1999-2016 - Bruno Bachelet - -
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation. See this license for more details (