Integrating Behavioural and Simulation Modelling

Discrete event simulation has grown up as a practical technique for estimating the quantitative behaviour of systems where measurement is impractical. It is also used to understand the functional behaviour of such systems. This paper presents an approach to understanding the correctness of the behaviour of discrete event simulation models, using a technique from concurrency, Milner's Calculus of Communicating Systems (CCS), and deriving their behavioural properties without resorting to simulation. It is shown that a common framework based on the process view of models can be constructed, using a hierarchical graphical modelling language (Extended Activity Diagrams). This language maps onto the major constructs of the DEMOS discrete event simulation language and their equivalent CCS models. A graphically driven tool is presented, which generates models to use simulation to answer performance questions (what is the throughput under a certain load) and functional techniques to answer behavioural questions (will the system behave as expected under certain assumptions), with an example of its application to a typical model.