The modelling of a part, or domain, of the external world with which a class of systems (possibly an individual system) will interact. The domain, which is often called the application domain or problem domain, contains the entities that are referred to by the information processed in a class of systems. A domain may include, for instance, natural phenomena, human artefacts, organizational functions, and information structures. Examples of domains are air traffic control, currency dealing, telecommunication switching, and supermarkets.
The purpose of a domain model is to enhance understanding of the structure and behaviour of the domain, and of the requirements for systems that are to be embedded in it; a model could be said to provide the basic semantics for a class of systems. Domain modelling may have two benefits:
that may be difficult in the face of commercial competitive pressures.