Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property...

38
BMSD 2012 - slide 1 © 2012 Jan L.G. Dietz Enterprise Ontology driven Software Generation Jan L.G. Dietz Keynote Lecture BMSD 2012

Transcript of Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property...

Page 1: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 1 © 2012 Jan L.G. Dietz

Enterprise Ontology

driven

Software Generation

Jan L.G. Dietz

Keynote Lecture BMSD 2012

Page 2: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 2 © 2012 Jan L.G. Dietz

Model Driven Engineering System Design (τ-theory) Enterprise Ontology (ψ-theory) The DEMO Processor Conclusions

Outline

Page 3: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 3 © 2012 Jan L.G. Dietz

Model Driven Engineering System Design (τ-theory) Enterprise Ontology (ψ-theory) The DEMO Processor Conclusions

Outline

Page 4: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 4 © 2012 Jan L.G. Dietz

What is Model Driven Engineering?

Model-driven engineering (MDE) is a software development methodology which focuses on creating and exploiting domain models (that is abstract representations of the knowledge and activities that govern a particular application domain), rather than on the computing (or algorithmic) concepts. The MDE approach is meant to increase productivity by • maximizing compatibility between systems (via reuse of

standardized models) •  simplifying the process of design (via models of recurring design

patterns in the application domain), and •  promoting communication between individuals and teams working

on the system (via a standardization of the terminology and the best practices used in the application domain).

MD

E

Page 5: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 5 © 2012 Jan L.G. Dietz

How must MDE be understood?

•  Regardless the way in which you apply MDE, you have to cope with the intrinsic characteristics of system design.

•  So, let us have a look at what system design is about, as understood in the τ-theory.

•  To start with, let us recall the important and fundamental differences between the function perspective and the construction perspective on systems.

MD

E

Page 6: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 6 © 2012 Jan L.G. Dietz

Model Driven Engineering System Design (τ-theory) Enterprise Ontology (ψ-theory) The DEMO Processor Conclusions

Outline

Page 7: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 7 © 2012 Jan L.G. Dietz

τ (is pronounced as TAO): Technology - Architecture - Ontology The τ -theory is rooted in systemics, ontology, and design theory. It explains the process of system design. It clarifies the notion of technology, architecture and ontology.

The τ-theory Th

e τ-

theo

ry

Page 8: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 8 © 2012 Jan L.G. Dietz

About construction (1)

The construction of a system is something objective. A system is its construction. Because constructional models of systems show ‘openly’ their construction, they are called white-box models. System ontology regards the, implementation independent, essence of a system’s construction. Examples: A DEMO model of an enterprise’s organization A BPMN model of a work flow A UML Object Diagram of a software system

The τ-

theo

ry

Page 9: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 9 © 2012 Jan L.G. Dietz

About construction (2)

car

chassis wheels motor lamps

constructional (de)composition!

the mechanic's perspective!"

construction :"the components and their"

interaction relationships""

operation :"the manifestation of the"

construction in the course of time"

The τ-

theo

ry

Page 10: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 10 © 2012 Jan L.G. Dietz

About function (1)

The function of a system is something subjective. It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of the beholder. Because functional models of systems ‘hide’ their construction, they are called black-box models. Examples: An economic model of an enterprise’s business An IDEF0 model of a work flow A DFD of a software system

The τ-

theo

ry

Page 11: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 11 © 2012 Jan L.G. Dietz

About function (2)

car

lightingsystem

powersystem

steeringsystem

brakesystem

functional (de)composition!

the driver's perspective!"

function :"relationship between"

input and output""

behavior :"the manifestation of the"

function in the course of time"

The τ-

theo

ry

Page 12: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 12 © 2012 Jan L.G. Dietz

OBJECT SYSTEM OBJECT SYSTEM

USING SYSTEM

object system construction

using system construction

ontology ontology

reve

rse

engi

neer

ing

engineering

object system function

functional principles

architecture

construction

design

function

design

functional requirements

constructional requirements

technology technology

constructional principles

implem

entation

implem

entation

The Generic System Development Process Th

e τ-

theo

ry

Page 13: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 13 © 2012 Jan L.G. Dietz

What goes wrong with MDE?

•  MDE is unable to deliver using system models (domain models) from which correct functional requirements can be determined. Hence, it is impossible to validate these requirements objectively.

•  The models produced during the system development process are not formally defined. Hence, it is impossible to verify these models, that is to check them against each other.

The τ-

theo

ry

Page 14: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 14 © 2012 Jan L.G. Dietz

Validation

•  Validation answers the question �Will I build the right system?�

•  To answer the question, you have to check the given requirements with the ‘real needs’ of the users.

•  Although it seems to be a good idea to have the users validate the system, it is not, because they do not know their ‘real needs’.

•  The only way out is to start requirements engineering from the enterprise ontological model of the using system (the domain model).

inte

llect

ual m

anag

eabi

lity

Page 15: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 15 © 2012 Jan L.G. Dietz

Verification

•  Verification answers the question �Did I build the system in the right way?�

•  To answer the question, you have to make sure that every model of the system is a correct ‘successor’ of the previous model, starting from the (ontological) domain model.

•  This can only be achieved if the models are formally defined, which is mostly not the case.

•  Moreover, functional models can, by nature, never be formalized.

inte

llect

ual m

anag

eabi

lity

Page 16: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 16 © 2012 Jan L.G. Dietz

OBJECT SYSTEM OBJECT SYSTEM

USING SYSTEM

object system construction

using system construction

domain model model

engineering

object system function

construction

design

function

design

The persistent errors of MDE Th

e τ-

theo

ry

error 1 error 2

error 3

Page 17: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 17 © 2012 Jan L.G. Dietz

Model Driven Engineering System Design (τ-theory) Enterprise Ontology (ψ-theory) The DEMO Processor Conclusions

Outline

Page 18: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 18 © 2012 Jan L.G. Dietz

ψ (is pronounced as PSI): Performance in Social Interaction The ψ -theory is rooted in semiotics, language philosophy, systemics, and social action theory. It explains the construction and operation of organizations. It defines the notion of enterprise ontology.

The ψ-theory Th

e ψ

-the

ory

Page 19: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 19 © 2012 Jan L.G. Dietz

The ψ-theory (1)

•  The operating principle of organizations is that human beings enter into and comply with commitments regarding the production of things. They do so in communication, and against a shared background of cultural norms and values.

•  Commitments occur in processes that follow the universal transaction pattern. This is a structure of coordination acts, concerning one production fact, between two actors. One is the initiator (consumer) and the other one the executor (producer).

•  An organization is a network of actors and transactions. Every actor has a particular authority, assigned on the basis of competence. Actors are assumed to exercise their authority with responsibility.

The ψ

-the

ory

Page 20: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 20 © 2012 Jan L.G. Dietz

Examples of coordination acts

Alicia: I’d like to have a bouquet of red tulips

Alicia : request : Celestine : order 387 is fulfilled

Celestine: Just a moment

Celestine : promise : Alicia : order 387 is fulfilled

Celestine: Here you are

Celestine : state : Alicia : order 387 is fulfilled

Alicia: Thanks

Alicia : accept : Celestine : order 387 is fulfilled

proposition

result

The ψ

-the

ory

Page 21: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 21 © 2012 Jan L.G. Dietz

The ψ-theory (2) Th

e ψ

-the

ory

performa

informa

forma

medium

formulate thought

interpret thought

perceive sentence

utter sentence

(social understanding)

expose commitment

evoke commitment

(cognitive understanding)

(notational understanding)

signals signals

Page 22: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 22 © 2012 Jan L.G. Dietz

The basic transaction pattern

fact is requested

fact is promised

fact is stated

fact is accepted

fact is produced

<initial status>

consumer producer

The ψ

-the

ory

Page 23: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 23 © 2012 Jan L.G. Dietz

transaction process

order phase

execution phase

result phase

In the order phase, the actors discuss the fact to

be produced, and try to come to agreement

In the result phase, the actors discuss the fact

that has been produced, and try to come to

agreement

In the execution phase, the executor produces

some fact

Asking for flowers Booking a hotel room

Applying for membership Booking a car rental

Receiving the flowers Having stayed in he hotel Having become member

Having rented a car

Creating Deciding Judging

The transaction process

Page 24: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 24 © 2012 Jan L.G. Dietz

The standard transaction pattern

qt qt

dc dc

rq rq

pm pm

ac ac

rj rj

sp sp

rq: request pm: promise

dc: decline qt: quit

?

st st

st: state ac: accept

rj: reject sp: stop

promise

request

quit

stop

state

accept

initiator

decline

reject

executorinitiator executor

Page 25: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 25 © 2012 Jan L.G. Dietz

Alicia: Thanks

Celestine: Here you are

Celestine: Just a moment

Non-verbal and tacit communication

Alicia: I’d like to have a bouquet of red tulips

Alicia : request : Celestine : order 387 is fulfilled

< tacit act >

Celestine : promise : Alicia : order 387 is fulfilled

< handing over the bouquet >

Celestine : state : Alicia : order 387 is fulfilled

< tacit act >

Alicia : accept : Celestine : order 387 is fulfilled

proposition

result

The ψ

-the

ory

Page 26: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 26 © 2012 Jan L.G. Dietz

promise

request

quit

stop

state

accept

initiator

decline

revokepromise

revokerequest

revokeacceptance

revokestatement

executorexecutor

allow

allow

refuse

refuse

initiator

allow

refuse

allow

refuse

executorinitiator

reject

initiator executor initiator executor

The universal transaction process Th

e ψ

-the

ory

Page 27: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 27 © 2012 Jan L.G. Dietz

initiator executor

Every (elementary) actor role is the executor of exactly one transaction kind, and initiator of 0, 1 or more transaction kinds.

Next to the process interpretation of the transaction symbol, there is the state interpretation:

it represents a production bank (containing production facts) and a coordination bank (containing coordination facts)

promise

request

quit

stop

state

accept

initiator

decline

revokepromise

revokerequest

revokeacceptance

revokestatement

executorexecutor

allow

allow

refuse

refuse

initiator

allow

refuse

allow

refuse

executorinitiator

reject

initiator executor initiator executor

The ψ

-the

ory The building block of organizations

Page 28: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 28 © 2012 Jan L.G. Dietz

A business process is a tree of transactions

Note. Component transactions may also be carried out in parallel

The ψ

-the

ory

Page 29: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 29 © 2012 Jan L.G. Dietz

The ψ-theory (3)

The three human abilities also apply to production:

Performa

The ability to perform original production acts, such as to create (manufacture, transport, observe), decide, and judge.

Informa

The ability to perform informational production acts, such as to remember, recall, and compute.

Forma

The ability to perform documental production acts, such as to store, retrieve, transmit, and copy sentences and documents.

The ψ

-the

ory

Page 30: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 30 © 2012 Jan L.G. Dietz

The essential model (1)

B-organization

I-organization

D-organization

FM

CM

PM

AM

Fact ModelProcess Model

Construction Model

Action Model

The essential model of an enterprise is the

ontological model of its B-organization

creating deciding judging

remembering recalling computing

storing retrieving transmitting copying

The ψ

-the

ory

Page 31: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 31 © 2012 Jan L.G. Dietz

The essential model (2)

actors transactions

business processes business events

business objects business facts

PRODUCT PROCESS

work instructions business rules

FM

CM

PM

AM

Page 32: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 32 © 2012 Jan L.G. Dietz

Model Driven Engineering System Design (τ-theory) Enterprise Ontology (ψ-theory) The DEMO Processor Conclusions

Outline

Page 33: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 33 © 2012 Jan L.G. Dietz

DEMO is the pioneering methodology of Enterprise Engineering. Enterprise Engineering is the emerging discipline that addresses changes (of all kinds) in enterprises in an integrated way. The paradigm of Enterprise Engineering is that enterprises are designed systems, and thus can be re-designed and re-engineered in order to bring about changes as and when needed. Every Enterprise Information System is some implementation of the essential model (DEMO model) of some enterprise.

DEMO: Design and Engineering Methodology for Organizations

DEM

OP

Page 34: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 34 © 2012 Jan L.G. Dietz

DEMOP – modeling mode D

EMO

P

DEMOP

parsing & building

DMOL (XML) model

repository

final model DEMO model

edit model start

validate model

Page 35: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 35 © 2012 Jan L.G. Dietz

DEMOP – production mode D

EMO

P

DEMO Processor

parsing & building &

aggregation

DMOL (XML) production instances

rendering operational

actors

DEMO model start

DMOL (XML) model

repository

generate instance

Page 36: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 36 © 2012 Jan L.G. Dietz

Model Driven Engineering System Design (τ-theory) Enterprise Ontology (ψ-theory) The DEMO Processor Conclusions

Outline

Page 37: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 37 © 2012 Jan L.G. Dietz

Conclusions

•  Current approaches to MDE are quite error prone.

•  Because of its being fully rooted in the ψ-theory, DEMO delivers coherent, consistent and comprehensive ‘domain models’.

•  DEMOP eliminates three crucial kinds of design errors: •  Function design errors •  Construction design errors •  Implementation design errors

•  DEMOP shows what the next generation ‘ERP’ might be.

Conc

lusi

ons

Page 38: Enterprise Ontology driven Software Generation 2012 keynote JD.pdf · It is not a system property but a relationship between a system and a stakeholder. Function is in the eye of

BMSD 2012 - slide 38 © 2012 Jan L.G. Dietz

[email protected]

[email protected]

www.ciaonetwork.org

www.ee-institute.com