A system is complex if it is characterised by many components that interact dynamically giving rise to a number of hierarchical levels. The interactions in turn, give rise to common kinds of behaviours across different types of systems and scales. Therefore, the interaction of the many parts at high levels of complexity produces emergent behaviour, one that cannot be predicted from the behaviour of the different components in isolation.[2]

In reality, nearly every system is open with respect to at least one of the entities matter, energy and/or information. Therefore, for modelling purposes it will be difficult to determine where the system ends. A viable strategy may consist in constructing a model that contains as few elements as possible while still allowing correct decisions about the further evolution of the system or the actions to be taken.[3]