Ontologien zur Erstellung und Verbreitung von Unternehmensmodellen Anforderungen, Herausforderungen,...

Preview:

Citation preview

Ontologien zur Erstellung und Verbreitung von Unternehmensmodellen

Anforderungen, Herausforderungen, Erfolgsfaktoren

Ulrich Frank

http://www.uni-koblenz.de/~iwi

Überblick

Unternehmensmodellierung mit MEMO

Ebenen von Unternehmensontologien

Offene Probleme der

Unternehmensmodellierung

Kritische Anmerkungen zur Ontologieforschung

Hinweise für eine erfolgreiche

Ontologieforschung in der Wirtschaftsinformatik

Motivation: Vermeidung von Mehrarbeit und Friktionen durch gemeinsame Sprache

Berater

Geschäftsführer

#include "mm_jsapi.h"/* Every implementation of a Javascript function must have this signature */JSBoolcomputeSum(JSContext *cx, JSObject *obj, unsigned int argc, jsval *argv, jsval *rval){

long a, b, sum;/* Make sure the right

number of arguments were passed in */if (argc != 2)

return JS_FALSE;

Programmierer

MEMO: Adaptierbare Methode

Methode Struktur Vorgehensweise+=

MEMO-KernMakroprozess

generischer Bezugsrahmen

Mikroprozess

Ziele

Modellierungssprachen

Adaption(z.B.: E-Commerce)

angepasster Bezugsrahmen

erweiterte/modifizierte/neue Modellierungssprachen

angepasster Makroprozess

angepasster Mikroprozess

angepasste Ziele

Bewertungskriterien

Der MEMO-Bezugsrahmen

PersonalTechnologie

PlattformAnwendung

WertketteWertsystem

Organisations-struktur

MitarbeiterBetriebsmittel

SGE Wettbewerbs-fähigkeit

AufgabeProzess

Operative Ziele

ArchitekturObjektmodell

TransaktionWorkflow

AnforderungMetrikP

ersp

ektiv

en

Strategie

Organisation

Informations-system

AspekteRessource Struktur Prozess Ziel

PersonalTechnologie

PlattformAnwendung

WertketteWertsystem

Organisations-struktur

MitarbeiterBetriebsmittel

SGE Wettbewerbs-fähigkeit

AufgabeProzess

Operative Ziele

ArchitekturObjektmodell

TransaktionWorkflow

AnforderungMetrikP

ersp

ektiv

en

Strategie

Organisation

Informations-system

AspekteRessource Struktur Prozess Ziel

http://www.visio.com /

Visio Corporation

http://205.185.183.34/htm l/a.htm l

Product Inform ation

http://205.185.183.34/htm l/i.htm l

Technology Briefs

http://205.185.183.34/htm l/i5.htm l

Technology BriefsBusiness Diagram m ing

http://www.visio.com /SCRIPTS/visio.exe

visio.exe

http://205.185.183.34/htm l/j.htm l

Case Studies

http://205.185.183.34/htm l/j3.htm l

Johnson Controls Inc.

http://205.185.183.34/htm l/j1.htm l

AMOCO Corporation

http://205.185.183.34/htm l/g.htm l

Visio Solutions Library

http://205.185.183.34/htm l/g3.htm l

Engineering

http://205.185.183.34/htm l/g6.htm l

Insurance and Law

http://205.185.183.34/htm l/g5.htm l

Inform ation System s

m ailto:webm aster@ visio.com

webm aster@ visio.com

http://www.visio.com /surveys/vssurv.htm

Download VisioQuickTour Dem o

Type

+m ultiplic ity : Multiplic ity

TypeExpression

+referncedTypes() : List of Type

Prim itive Type

+details : Uninterpreted

Value

-value : Uninterpreted

M odelElem ent Responsibility TaggedValue

Expression

Class UseCase

State

BehaviorInstance

1..n

0..n

references

{im plic it}

0..1

0..n

/characteristic

Instance0..n

0..1

0..n

0..1

0..1

0..n

actions

0..1

0..n

state instance

0..n

0..n

roles

Auftragsbearbeitung in Baustoffgrosshandel (1)

Auftrageingegangen

Lieferfähgikeit klären

Logistik klären

<Sachbearbeiter>

<Fuhrparkleiter>Start

Menge nicht verfügbar

Menge verfügbar

Kunden informieren

<Sachbearbeiter>

Auftrag abgelehnt

Stop

Auslieferung an Wunschtermin nicht

möglich

Auslieferung möglich

Auftrag ablehnen

<Sachbearbeiter>

Auftrag bestätigen

<Sachbearbeiter>

Auftragsbearbeitung in Baustoffgrosshandel (2)

Lieferfähgikeit klären

Logistik klären

<Sachbearbeiter>

<Fuhrparkleiter>Auftrag

eingegangen

Start

Menge nicht verfügbar

Menge verfügbar

Auslieferung an Wunschtermin nicht

möglich

Auslieferung möglich

AND

Auftrag bestätigen

<Sachbearbeiter>

OR

Auftrag ablehnen

<Sachbearbeiter>

Ausschnitt eines Objektmodells in MEMO-OML

Procure-mentAct

SalesOrder

Container

Company

Customer

AbstractPerson

AbstractOrder

Supplierpart of

1,* 1,*

1,* 1,*

acts asby

1,* 1,*

with

1,* 1,* ••

••

acts as

0,1

0,1

Person

MarketSegment

defined for offered as

0,*1,10,* 1,1 1,1

DeliverItem

SegmentItem

OrderItempart of

0,* 1,1

sold as

0,*assigned to

0,*assigned to

1,1

Product 0,*assigned to

0,1 produces

0,* 1,1

Metamodell der MEMO-OML (Ausschnitt)

ObjectModelGenericClass

InteractionLink

BasicAttribute

ClassFeature

BasicService

AssociationLink

BasicInteraction

DeferredInteraction

Attribute

RedefinedAttribute

C1

Spezialisierungen dürfen nicht zyklisch seinC1

part of

1,* 1,1

specialised from

0,* 0,*

features

1,1 0,*

linked via

0,* 1,1

MultiplicityA1,1

RedefinedInteraction

selects

0,*0,*

cont

ext f

or

0,*

0,*

Only InputSpecs that are assignedto BasicProcessType(s) can selectBasic-Service(s).

Str

ateg

y

I

nfor

mat

ion

Sys

tem

specifies

0,*1,1

specifies

0,1 1,1

includ

e1,

1

0,*

uses

1,10,*

specifies0,1

1,1

spec

ifies

0,1

1,1

triggers

0,1

1,*

triggers

1,*

0,1

consists of

0,1 0,*

0,11,*

InputOutputSpec

OutputSpec

probability: real

ProcessTypeInputSpec

ComplexProcessTypeBasicProcessType

ProcessUse

EventType

ContextOfProcessUse

OutputUse

InputOutputUse

InputUse

Position AggregatedUnit

OrganisationalUnit

takes place in

1,1 0,*

responsible for

1,*

0,*

uses

0,* 1,1

uses

0,*1,1

composed of

An Event must notbe isolated.

No cyclicdecomposition ofProcessType(s)

ValueChain

Activity

PrimaryActivity SupportingActivity

part

of

1,1

0,*

0,*

supports

1,*

BasicService

GenericClass

AbstractClass Class

part

of

1,1

0,*

Metamodell der MEMO-OrgML (Ausschnitt)

Integration der Sprachen durchgemeinsame Konzepte

MEMO-OrgML

MEMO-OML

MEMO-SML

InputOutputSpec

ComplexProcessType

OutputSpec

Real

PositionAggregated

Unit

specifies1,1 0,*

composed of

1,*0,*

A0,1

probability

Organisa-tionalUnit

composed of

1,* 0,1

responsib

le for

1,*0,*

ProcessTypecontext for0,1 0,*

ValueChain

incl

ude

s1,

11,

*

Activity

specifies

0,*

0,*

GenericClassBasicServicepart of

0,1 0,*

Die MEMO-Spracharchitektur

Meta-Metamodell

Instanz von

Objektmodelle als Rekonstruktionen

Integriertes Objektmodell

diverse dedizierte Werkzeuge

Sichten auf

Metamodelle

MEMO-OML MEMO-OrgML MEMO-SML

Ebenen von Unternehmensontologien

Grundlegende Konzepte

Generische Anwendungskonzepte

Speziellere Konzepte Elektronischer Zahlungsverkehr

Prozesskosten

Preisbildungs-mechanismus

Prototypische Instanz

Klasse

Ereignis Generalisierung

ZustandAusnahme

AggregationSpezialisierung

Ressource

Rolle Organisationseinheit

Strategie

Geschäftsprozess

Workflow

Wertkette

Offene Probleme der Unternehmensmodellierung

Grenzen der Formalisierbarkeit

Unterscheidung von Abstraktionsebenen

Spezialisierung vs. Instanzierung

Spezialisierung von Prozesstypen

Semantische Friktionen zwischen Modellierung und Implementierung

Grenzen (?) der Formalisierbarkeit

zahlreiche Begriffe, die sich gegen funktional äquivalente Formalisierung sperren (intentionale Semantik, nicht überschaubare Varianz ...)

Beispiele:Wettbewerbsfähigkeit

Kundenorientierung

...

Gefahr: begriffsverzerrende Vereinfachungen

Beschränkung auf sinnvoll formalisierbare Begriffe als Alternative?

Unterscheidung von Abstraktionsebenen

gängige Unterscheidung in Meta- und Objektebene nicht immer hinreichend

alltagsweltlicher Sprachgebrauch durch Überladung von Begriffen (Abstraktionsebenen) gekennzeichnet

zusätzliches Problem: Systementwicklung sieht i.d.R. nur zwei Abstraktionsebenen vor

Beispiel: Modellierung von ProduktenProduct

Name: String Description: String

Home_Electronics

Weight: RealE_Consumption: Real...

TV

Screen_Type: S_TypeScreen_Size: Real...

CD_Player

Range: IntegerOptical: Boolean...

Product B Product C

Product I

Product D Product E Product F Product G

Product H

- introduction of new product type implies modification of schema/code

- configurations of products not possible

+ product specific semantics

+ use of generalization allows for additional abstraction

Levels of Abstraction (1)

Meta

Type

Initialized Product Type

language to define product types

product type

particular product type

instance of

instance of

Meta

Type

Initialized Product Type

language to define product types

product type

particular product type

includesProduct_Type

Name: String Description: String

Feature_Type

Name: StringType: String1,1 0,*

instance of

instance of

Levels of Abstraction (1)

Levels of Abstraction (1)

Meta

Type

Initialized Product Type

language to define product types

product type

particular product type

instance of

instance of

TV

Length_Unit: StringWidth_Unit: StringHeight_Unit: StringHeight: RealWidth: RealLength: Realname: StringScreen_Size: RealFrequency: Integer

Levels of Abstraction (1)

Meta

Type

Initialized Product Type

language to define product types

product type

particular product type

TV

Length_Unit: StringWidth_Unit: StringHeight_Unit: StringHeight: RealWidth: RealLength: Realname: StringScreen_Size: RealFrequency: Integer

instance of

instance of

different levels of abstraction

Levels of Abstraction (1)

Meta

Type

Initialized Product Type

language to define product types

product type

particular product type

instance of

instance of

TV

Length_Unit: ‚cm‘Width_Unit: ‚cm‘Height_Unit: ‚cm‘Height: 55Width: 80Length: 52name: Sony TS-88Screen_Size: 60Frequency: 100

Levels of Abstraction (1)

Meta

Type

Initialized Product Type

language to define product types

product type

particular product type

instance of

instance of

redundant

TV

Length_Unit: ‚cm‘Width_Unit: ‚cm‘Height_Unit: ‚cm‘Height: 55Width: 80Length: 52name: Sony TS-88Screen_Size: 60Frequency: 100

Levels of Abstraction (2)

Product Type

Specialized Type

product type

product type

specialized from

Levels of Abstraction (2)

Product Type

Specialized Type

product type

product type

specialized from

Internet-TV

Length_Unit: StringWidth_Unit: StringHeight_Unit: StringHeight: RealWidth: RealLength: Realname: StringScreen_Size: RealFrequency: IntegerOS: String

Levels of Abstraction (3)

Initialized Product Type

Cloned Type

product type

product type

‚cloned‘ from

Levels of Abstraction (3)

Initialized Product Type

Cloned Type

product type

product type

‚cloned‘ from

TV

Length_Unit: ‚cm‘Width_Unit: ‚cm‘Height_Unit: ‚cm‘Height: 55Width: 80Length: 52name: Sony T-88Screen_Size: 60Frequency: 50

Levels of Abstraction (4)

Initialized Product Type

Particular Product Instance

product type

particular instance

‚instance‘ of

Levels of Abstraction (4)

Initialized Product Type

Particular Product Instance

product type

particular instance

‚instance‘ of

TV

Length_Unit: ‚cm‘Width_Unit: ‚cm‘Height_Unit: ‚cm‘Height: 55Width: 80Length: 52name: Sony TS-88Screen_Size: 60Frequency: 100Serial: ‚AV-7392C‘

Problem

domain suggests multiple levels of abstraction

in some cases conflict between instantiation and specialisation relationships

common system architectures allow for two layers (schema, instance) only

Consequences

no perfect solution feasible

instead: overloading of existing layers

Spezialisierung vs. Instanzierung

Differenzierung umgangssprachlich diffus: in beiden Fällen häufig „is a“

formal allerdings eindeutig unterscheidbar

Problem: mitunter beides benötigt, Konzepte aber nicht orthogonal

Abstraction 1: Generalisation

identify common properties of a set of classes

define superclass using these properties

Example: GenericProcess

startsAt: Time

EndsAt: Time

OrderManagement

scheduledFor: Time

CheckIn

priority: Integer

Generalisation - Evaluation

+ fosters re-use of concepts within subclasses

+ corresponds to a common way to organize knowledge

- restricted to the introduction of concepts that can be specialized from existing ones

- hence, lacks flexibility required for continous growth of knowledge within a KMS

Abstraction 2: Metaconcepts

define the concepts needed to specify a type

Example:

ProcessType

averageDur: Integer

maxDur: Integer

BasicProcessType AggProcessType

composed of

Instantiation - Evaluation

+ allows for introducing new concepts as instances of metaconcepts

+ corresponds to a specialized language

- does not allow for the re-use of knowledge about features of instances

- requires more levels of abstraction than usually available

Spezialisierung von Prozesstypen

wichtiges Konzept zur Förderung von Wiederverwendbarkeit und Wartbarkeit

einige Vorschläge zur Spezifikation von Spezialisierung in der Literatur

aber: bisher keine überzeugende Lösung

Order arrived

Determine ability to deliver

Determine

logistics

<Clerk>

<Head of logistics>

Start

Amount not

available

Amount available

Inform Customer

<Clerk>

Order denied

Stop

Delivery at requested date

not possible

Delivery possible

Deny order

<Clerk>

Confirm order

<Clerk>

Friktion zwischen Modellierungs- und Implementierungssprachen – Beispiel: Spezialisierung

Generalisierung/Spezialisierung

scheinbar intuitives Konzept

aber: keine einheitliche Semantik

Alltagsweltliches Verständnis weicht in mitunter subtiler Weise von formaler Semantik bei Programmier- oder Datenbanksprachen ab.

Vor allem: Semantik gängiger Programmiersprachen unterscheidet sich zum Teil erheblich vom Alltagsverständnis

Generalisierungshierarchie - Beispiel

Person

Dozent

Student

Programmierer

Mitarbeiter

Wieso ist diese Generalisierung problematisch?

PersonStudent

Dozent

Programmierer

Mitarbeiter

Studentischer Programmierer

Studentischer Mitarbeiter

ProgrammierenderStudentische

rMitarbeiter

Mehrfachvererbung

Was ist hier problematisch?

Problemursache

Kontra-Intuitive Semantik von Generalisierung/ Spezialisierung in gängigen Programmiersprachen:

Ein Objekt gehört immer genau einer (und nur einer) Klasse an

Alltagsweltliche Bedeutung: Klassenzugehörigkeit kann mit dem Kontext variieren.

Extensionale Klassenbegriffe in der Mathematik (Mengenlehre) oder Teilgebieten der Informatik (z.B. Datenbanken) erlauben ebenfalls, dass ein Objekt gleichzeitig mehreren Klassen zugehört.

Kritische Anmerkungen zur Ontologieforschung

das Sprachparadoxon

isoliert: in der Informatik weitgehend losgelöst von der (Referenz-) Modellierung

unzureichende Profilierung gegenüber alternativen Ansätzen (vor allem: Sprachen)

zentrales Problem: mangelnde Zielorientierung

ergo: keine überzeugenden Maßstäbe für Qualität und Erfolgskontrolle

Fazit: Erfolgsfaktoren für die Ontologieforschung

Kritik an Unzulänglichkeiten der Begriffsbildung in Fachdisziplinen, insbesondere im Bereich der konzeptionellen Modellierung

aber auch: Präsentation leistungsfähiger Lösungen

Ziele der Ontologieformulierung explizit machen, Ergebnisse daran messen

offener Wettbewerb alternativer Ontologiesprachen (impliziert kritischen, nachvollziehbaren Vergleich)

Recommended