Skip to content
Enterprise Modeling

Enterprise Modeling with DEMO
Part 1: Overview

In earlier blogs I explained about the operation of an enterprise. In this blog I will outline the how we can model this operation – the construction of an enterprise – with DEMO. Before we can start modelling, I need to explain the difference between the model as a whole, a model aspect, and a view. This blog focusses on the overview of the different views on a DEMO model, while details will follow in some following blogs.

Model, Aspect and View

A model is a representation and simplification of some system, typically to explain or study some aspects of the original system. A model is physical, e.g., a scale model of a ship or building, or abstract, e.g., the mathematical model of our solar system or the one used for weather predictions. An abstract model is also called a conceptual model, and consists of elements (typically denoted as boxes and alike) and relationships (typically denoted as arrows). The main element in DEMO is the transactor role, while the initiation link is an example of a relationship in DEMO.

In physical (scale) models, one often leaves out certain parts in order to focus on some aspects. For example, to study the aero dynamics of a (scale) car, one does not need a full interior. In conceptual models, such as the drawing of a house, one can also highlight or hide certain aspects. For example, the construction builder needs a drawing containing all relevant measurements, while the electrician needs a diagram of where the cables should be, and the customer mainly wants an impression of the exterior.

Three aspects on (almost) the same house: floor plan with measurements (left), artist impression of exterior (middle), and a detailed circuit diagram (right). Pictures generated by ChatGPT.

To study a model, one can define aspects or perspectives: they define what someone is interested in, to provide a focus. An aspect can be expressed in one or more view(s). In DEMO, four aspects are defined: Cooperation, Process, Facts and Action, that will be detailed below.

A view is a particular diagram or table that highlights certain parts of a model within some aspect. For example, for the electrician, multiple diagrams may be needed to highlight the required cables for different floors of the house. In fact, any diagram shown so far, is a view on some model. The same element in a model can be visualized in multiple views – and even in different ways (see Note A). DEMO uses both diagrams and tables for views.

DEMO model aspects

DEMO provides an abstraction of the construction of an enterprise. As the construction of an enterprise is its operation, a DEMO model shows the operation of an enterprise. A DEMO model is an integrated whole of product, responsibility, process, information and business rules. To provide different views for different stakeholders, DEMO defines four different aspects to or perspectives on an enterprise:

DEMO model aspects
  • The Cooperation aspect shows the products and responsibilities and their relationships;
  • The Process aspect shows the detailed relationships between transaction kinds;
  • The Fact aspect is the semantic model, showing information as fact types and their relationships; and
  • The Action aspect provides guidance for actors in performing acts, expressed as business rules and work instructions.

In following blogs I will detail each aspect in terms of the elements and relationships that are highlighted as well as the diagrams and/or tables these are expressed in.

Benefits of a DEMO model

In contrast to other modelling languages – such as BPMN, UML, or SBVR – that typically focus on one or a few aspects – e.g., process, data, or business rules – DEMO captures the whole in an integrated way. This ensures that the process model is compatible with the information or data model and that all relevant data is defined to be able to execute the business rules.

Moreover, DEMO comes with a procedure to ensure the created model is valid, and provides a set of reference models to kick start your modeling efforts. More about that in a future blog.

Notes

A. Some tools only support the notion of a diagram. These are called drawing tools, such as PowerPoint, Visio, and draw.io. Other tools make the distinction between a model and a view, where the model can be seen as the collection of elements and relationship, typically stored in some repository, and the views are the diagrams created by ‘dragging’ elements onto a canvas. Such repository-based tools include Sparx EA and Archi.

    Latest articles

    Discussion

    Comments (0)

    Leave a Reply

    Your email address will not be published. Required fields are marked *