instances of the things in R. Applied to our
purposes, R is the collection of all enterprises, and
actors, transactions etc. from R. A conceptual model
of an R is called a C. In our case, C is the notion of
enterprise ontology, as defined by the -theory
(Dietz, 2006). Thus, such a model consists of
transaction kinds, actor roles, and the connections
between them. Next, every M is a conceptual model
of a particular enterprise m, as well as an instance of
C (by definition). In our case, this means that every
M is an ontological enterprise model according to
the -theory. Guizzardi requires that the mapping
from R to C, and consequently, from every m to its
corresponding M, satisfies the qualities of
truthfulness and appropriateness. Truthfulness refers
to the extent to which the concepts of the ontology
are able to represent phenomena in reality in a
truthful way for all stakeholders (Krogstie, 2000).
The ontological appropriateness quality (Krogstie,
2000) refers to how well and useful the ontology
supports understanding and shared reasoning
between stakeholders. A lack of truthfulness renders
a model expressed in the ontology useless. A lack of
appropriateness renders a model less valuable.
Because we know that our US ontology (which
is the notion of enterprise ontology according to the
-theory) has the C4-ness qualities, it is possible to
design a high quality modeling language L, in which
enterprise ontological models can be expressed. So,
L comprises the diagrams, tables, and other model
representations of DEMO. The specification (S) of
the ontological model of an enterprise (M) in L is
called the DEMO model of the enterprise. For every
(DEMO) model M there is one and only one
specification S in L. Every specification S is
interpreted as one and only one (DEMO model) M.
Put differently, S is equivalent to one and only one
specific DEMO model, and vice versa.
We have also developed an XML-based
language, called DMOL (DEMO Modeling
Language) of which the metamodel is isomorphic to
the metamodel of L. Specifications in our L are
automatically transformed into DMOL
specifications, after a specification S in L has been
input into the DEMO processor. This process is
model translation, not programming. Subsequently,
the DEMO processor (Section 4) can execute the
specification and make it operational.
In order to arrive at high quality specification
languages, Guizzardi (2005) postulates a cardinality
law that guarantees that anomalies such as construct
excess and construct overload are eliminated:
m : M : S = 1 : 1 : 1 [Cardinality law]
It states that for every phenomenon m (in our
case: an enterprise), there is one and only one model
M (in our case: the enterprise ontological, i.e. the
DEMO, model of the enterprise). Next, every model
M is represented by one and only one specification S
in L (in our case: the specification of the DEMO
model in the DEMO language, later on transformed
into DMOL). Conversely, every model specification
in L represents one and only one model M (in our
case: one DEMO model). Guizzardi states that if the
cardinality law applies to the US ontology C and the
language L, then there are valuable advantages;
lucidity, ontological clarity and the elimination of
construct overload and construct excess. Every
model M can directly be mapped to a specification
S, which is a straightforward process. This applies
also to the atomic model elements and relations of C
and the language primitives and constructs of L.
4 THE DEMO PROCESSOR
The DEMO processor (the OS software engine in fig
2), executes (reads, writes, constructs, destroys)
DMOL (XML DEMO Modeling Language)
representations of the four DEMO aspect models
;
the Construction Model, the Process Model, the
Action Model, and the State Model (cf. (Dietz,
2006)).
The DEMO model that executes a model is an
EIS. The implementation is precisely in line with
section 3, meaning that any DEMO model is
equivalent - isomorphic to the software of the EIS of
the enterprise and also isomorphic to the enterprise
producing a production instance. The essence is that
the ontological model is the executable software.
4.1 Operation
The DEMO processor executes the enterprise model
dynamically and delivers simulation results for
model validation and production. Dynamic
simulation means that any changes of the dynamic
state of the enterprise over time are immediately
reflected in equivalent dynamic state changes of the
model under execution, vice versa.
At any moment the model under execution can
be rendered as an DMOL XML file with full state
information and temporarily stored in a model
Here we use the term ‘model’ also for a ‘specification
expressed in a language’. From the context is clear what is
meant.
ICSOFT 2012 - 7th International Conference on Software Paradigm Trends
208