Queuing models or discrete event models have a long tradition in a wide variety of sciences. In engineering, workflow management and several other disciplines, discrete event modelling is nearly synonymous with simulation. From the point of view of discrete event simulation, a model is a representation of a system ‘in terms of its entities and their attributes, sets, events, activities, and delays’ (Kheir 1988: 98). The notion of a system as ‘a collection of entities that interact together over time to accomplish a set of goals or objectives’ (Kheir 1988: 98) is quite common (see, for example, Bunge 1979), but the role of the ‘event’ as ‘an instantaneous occurrence in time that alters the state of the system’ is not central in all the other approaches to simulation introduced in this book. Differential equation models are continuoustime models, and system dynamics and microanalytical simulation models proceed in discrete and equidistant time steps, as is the case in difference equation models and in the modelling approaches presented in later chapters. Of course, these time steps are instantaneous occurrences in time that alter the state of the system, but since they are equidistant, there is nothing special about them. At each time step event all the system’s state variables are changed, and the same state transition functions are applied. In discrete event modelling, events usually change only part of the system’s state, in many cases just one or very few of the state variables of the system, leaving all other state variables of the system constant.
As in the rest of this book, the components of a system are called entities, and these are represented by model objects, and have properties that are represented by object attributes. The system state is defined by the values