Steve Allworth – Breathing Life into the Enterprise Data Model

advertisement
Breathing Life into the
Enterprise Data Model
An Enterprise Business Vocabulary and Rules,
based in SVBR, fits the bill
Steve Allworth
Why do we build an Enterprise Data Model?
In short..
To have a representation of the business as a set of inter-related business
concepts that are agreed across the enterprise. The concepts must be readily
translated into IT implementations
To have a communication medium between business and IT
To achieve a single agreed definition and structure of data across the enterprise
To minimise redundancy and optimise re-use
etc…..etc…..
The traditional solution
Selected members
of the enterprise
Specify a large,
normalised E-R or
UML Class Model
To provide the
design for Specific
Databases
Modern Reality is Different
OLTP Databases
Multiple
OLAP Databases
Target
DimensionalDatabase
Databases
Columnar Databases
Designs
Multiple
“Semantic
Communities”
XML Multiple Non
Relational
XSD Data
Target
OWL Structures
And Unstructured
the elephant Data
in the room
Unfortunately the Traditional EDM:Doesn’t allow for multiple communities
Does not capture the full subtlety of the meaning of business concepts
Overuses normalisation – forces a structural answer focused on DB design
Inadequate for today’s technical requirements (target data areas)
Imposes the chosen entity structure on ‘non technical’ use of the model ie data
governance teams
Remember Layers of Model Abstraction?
Conceptual
Adds Meaning
Logical
Adds structure
Physical
Adds implementation realities
The Problem
Conceptual
EDM
When we have only one form of
So
Butwe
today,
need
we
toit’s
have
use
model
logical
model
OKamany
to
useforms
aat theof
Conceptual
logicalmodel
model
Level
as Enterprise
our Enterprise
logical
as our
Model
Model
Logical
EDM
Physical
WEB
DWH
ODB
WEB
A Conceptual Model ?
What’s that?
It’s a Semantic
Model in the form
of a
Glossary
or
Taxonomy
or
Ontology
SBVR
The team who
brought you UML,
BPMN, …
Semantics for
Business
Vocabulary and
Rules
Provides us with a standard for such a model
Where did it come from?
The SBVR is a synthesis of four disciplines:
1. terminology and vocabulary: the foundation for SBVR is ISO TC 37 (Terminology and Language and other Content
Resources) and terminology standards ISO 704 and 1087
2. fact-oriented modeling with interpretation in formal logic: the precision of formal logic was added to ISO 1087-1
concepts, designations, and concept relations by fact-oriented modelling, which delivers precise meanings for SBVR
Vocabulary and Behavioural Guidance that enables them to be transformed into IT system designs without losing or
changing the business semantics;
3. linguistics and linguistic annotation of natural language grammar: target natural language grammar structures
(external to SBVR) were provided by linguistics, ISO TC 37/SC 4 “Linguistic Representation” standards, and de-facto
industry standards as input to the design of SBVR semantic formulations, which provided the basis for a future rich
multilingual natural language notation for SBVR;
4. business practice of vocabulary and business rules: practical applicability of SBVR in organizations was provided by
hundreds of collective man-years experience in business consultancy applying vocabulary and business rule approaches
to the needs of organizations.
SBVR – Key Ideas
Communities
Representation & Meaning
ACME
Vocabulary
ACME WIDGETS
The Engineers
Engineering
Vocabulary
ISO Widget
Included Vocabulary
The Salesmen
Sales
Vocabulary
Speech Community
Represent
ation
Meaning
Extension
GAAP
Vocabulary
The Accountants
Semantic
Community
Expression
Vocabularies
Glossaries, Taxonomies & Ontologies
Supertype
Concept
Rules
Facts
Concepts
Concepts,
Facts and
Rules
Broader
Concept
Categorisation
Scheme
Related
Concept
Concept
Rules
Related
Concept
A not-too-deep dive
We are focusing on
the ‘Vocabulary’ area
Basic Elements
Communities & Vocabularies
SBVR
SEMANTICS FOR BUSINESS VOCABULARY & RULES
Wikipedia
1. The branch of linguistics and logic concerned with meaning.
2. The meaning of a word, phrase, sentence, or text
OK, So its about meaning
What is meant by a word, sign, statement, or
description; what someone intends to express or
what someone understands
Meaning
Unit of knowledge created by a unique
combination of characteristics
Concept
There is more,
but not today
(Question,
Proposition)
Concept
Concept
CONCEPT
NOUN
CONCEPT
FACT TYPE
links
NOUN
CONCEPT
CUSTOMER
(VERB
CONCEPT)
RULE
based on
CUSTOMER
FACT TYPE
RENTS CAR
CUSTOMER CAN
RULE
ONLY RENT ONE CAR
NOUNCAR
CONCEPT
Noun Concepts
NOUN
CONCEPT
INDIVIDUAL
CONCEPT
Concept Instance
MAZDA JPQ 777
GENERAL
CONCEPT
FACT TYPE
ROLE
Type of Concept
Concept in a Fact
Car
Rental Car
Verb Concepts
VERB
CONCEPT
(FACT TYPE)
BINARY FACT
TYPE
CHARACTERISTIC
Rents
is registered
Car
Car
is registered
Is registered
Customer
Customer
Rents
Rents
Rental Car
Rental Car
Car
Fact Type Role
CAR
General Concept
Fact Type
Fact Type Role
Customer Rents Rental Car
Fact Type Role
Ranges Over
Have same characteristics
General Concept
General Concept can
have extra characteristic
which says it fills the fact
type role
Concepts
specialises
generalises
Concept
Noun Concept
Verb Concept (Fact Type)
is in
ranges
over
Individual
Concept
Object Type
(General Concept
Role
Fact Type Role
Binary Fact
Type
Characteristic
Concepts
Rents
Person
Customer
Rental Car
Car
Is a
MAZDA
JPQ 777
ISO/EIC 1325:2003 Topic Map
Person
Rents
Car
RDF Triple
Person
MAZDA
JPQ 777
Is registered
Rents
Car
How does it help us model
CONCEPT
CONCEPT
CONCEPT
CONCEPT
CONCEPT
CONCEPT
CONCEPT
CONCEPT
CONCEPT
CONCEPT
CONCEPT
CONCEPT
CONCEPT
CONCEPT
CONCEPT
CONCEPT
CONCEPT
CONCEPT
CONCEPT
CONCEPT
CONCEPT
CONCEPT
CONCEPT
CONCEPT
The birth of an Entity
CONCEPT
CONCEPT
Name
CONCEPT
CONCEPT
CONCEPT
Definition
CONCEPT
CONCEPT
CONCEPT
CONCEPT
Attributes
CONCEPT
Candidate
Keys
CONCEPT
CONCEPT
Primary Key
CONCEPT
Foreign Keys
CONCEPT
CONCEPT
CONCEPT
CONCEPT
From the unformed soup of concepts
Through the magic of normalisation
SBVR & E-R
SBVR abstracts E-R + also makes the modelling more precise
1. It provides the semantic layer for defining the elements of an entity
Name
Definition
Primary Key(s)
Relationships (& FK)
Attributes
2. It provides the context within which the entity is valid
Meaning and Representation
Expression
has
Representation
represents
Meaning
refers to
Extension
•
Expression: things used to communicate (e.g., sounds, text, diagrams, gestures),
but apart from their meaning — one expression can have many meanings
•
Representation: the connection between expression and a meaning. Each
representation ties one expression to one meaning
•
Meaning: what is meant by a word (a concept) or by a statement (a proposition) –
how we think about things
•
Extension: the things to which meanings refer, which can be anything
Meaning and Representation
Expression
has
Representation
represents
Meaning
refers to
Extension
Designation
Concept
Descriptive
Example
Definition
Also
The character
sequence
“driver”
The character
sequence
“operator of a
motor vehicle”
Designation of the
concept ‘driver’ by
the term “driver”
Definition of the
concept ‘driver’ as
“operator of a motor
vehicle”
Note
Reference
Concept ‘driver’.
How we think of
drivers, what
characterizes them
The actual drivers
of motor vehicles
Designations
Designation
Term
For General Concepts
Name
Non Verbal Designation
For Individual Concepts
Definition which describes the intension
of a concept by stating the
superordinate concept and the
delimiting characteristics
Definitions
Concept
Description of a concept by
enumerating all of its
subordinate concepts under
one criterion of subdivision
Definition
Owned Definition
Adopted Definition
Speech Community
Intensional Definition
Characteristic
Reference
Extensional Definition
Namespaces
Expression
has
Fact Type Form
Representation
represents
Meaning
Designation
is in
is in
Concept
Namespace
Vocabulary
Namespace
Attributive
Namespace
Is for
Concept has an Attribute
Concept described by an Attribute
Attribute of Concept
Reference Schemes - Keys
is for
Reference Scheme
Concept
uses
uses
Fact Type Role
Car Model has Name
Characteristic
Tyre position is front
Tyre position is right
Subtyping
Specialises
Generalises
Concept
Categorisation Scheme
Characteristic
Incorporates
Categorisation Type
Segmentation
General Concept
Multi Faceted Subtyping
Simple Subtyping
Concept
Concept
Concept
Discriminator
Concept
Concept
Concept Concept
Concept
Concept
Discriminator
Concept
Concept
Concept
Concept
Discriminator
Concept
Concept
Concept
Discriminator
Concept
Concept
Classification Modelling
SBVR insists that the characteristics that discriminate are explicit
Value
TYPE
SCHEME
Fundamental Hierarchy
SCHEME
Value
Value
Value
Value
ROLE
SCHEME
Relationship Hierarchy
Value
Value
SCHEME
FT
Role
Value
SCHEME
FT
Value
Role SCHEME
Value
Value
Value
Value
Value
Fact Type
Value
Fact Type
Relationship Subtypes are fact types.
Fact Type Roles appear in the Fundamental Hierarchy
For Example “IP is spouse of IP”
Fact Type: IP is married to IP
Fact Type Role : Spouse
Representing a Fact Type
Expression
has
Representation
represents
Meaning
Designation
Concept
Placeholder
“COMPANY appoints OFFICER”
Is in
Fact Type
Form
COMPANY appoints OFFICER
Fact Type
Country Code identifies Country
Sentential
Form
Noun Form
Country Code
Fact: Company appoints Officer
Expression
Representation
Meaning
Rule: EU Rent
must appoint at
least 3 Officers
There’s a bit more to it 
Even more
But that’s for another day!
Phew, that’s deep enough, lets move to another subject!
Context - Communities & Vocabularies
Language
is expressed in
uses
has
Semantic Community
unites
incorporates
owns
Speech Community
Meaning
Vocabulary
is used to express
Body of Shared Meanings
•
Semantic communities group people striving for a shared understanding of a domain
•
Speech communities create vocabularies to express the understanding of the
domain in a certain language
•
Vocabularies contain entries that are used to express the meaning
Speech Community & Vocabulary
Speech Community
Vocabulary
Sharing Vocabularies
Local and Global
ACME Bank
consists of
ACME Common
•
Asset
Business ••
Concepts •
Asset
Building
Equipment
…
Product •
•
Business •
Concepts
Loan
Swap
Revolving
Limit
…
•
Party
•
Business •
Concepts •
Party
Organization
Address
…
•
Finance
Business Unit
Finance •
•
Business •
Concepts •
Credit
Stock
Cash
…
owned by
uses
Risk
Business Unit
•
Risk
•
Business •
Concepts •
Exposure
Mortgage
Collateral
…
owned by
In an Ideal World
Financial Services Industry
consists of
ACME Bank
consists of
ACME Common
•
Asset
Business ••
Concepts •
Asset
Building
Equipment
…
Product •
•
Business •
Concepts
Loan
Swap
Revolving
Limit
…
•
Party
•
Business •
Concepts •
Party
Organization
Address
…
•
Regulator X
Finance
Business Unit
Finance •
•
Business •
Concepts •
Credit
Stock
Cash
…
Reporting •
Business ••
Concepts
•
owned by
ISO
uses
Risk
Business Unit
•
Risk
•
Business •
Concepts •
Exposure
Mortgage
Collateral
…
Risk
Revenue
Capital
Value
…
ISO 20022•
Business ••
Concepts •
owned by
uses
Payment
Counterparty
Transfer
…
Vocabularies can reflect specific business rules applying to a speech community
Semantic Model
So we have a semantic basis for defining an ER or any other structure
Conceptual
The Business
for Data Governance
SBVR
SemanticBasis
Model
Taxonomy
Logical
E-R
Physical
XML
OWL
NextGen
SBVR & the EDM
Knowledge Capture & Dissemination
Regulation Risk and Compliance
Complex Analytics
Data Governance
……
Why?
EDM
Business
Metadata
OLTP Databases
OLAP Databases
Dimensional Databases
Columnar Databases
now a Conceptual Model
Shift of Emphasis Technical
Metadata
XML
Collaborative
Modelling
XSD
OWL
Describing Concepts, Facts (& Rules)
Unstructured Data
Example
National E-Health Transition Authority
Clinical Knowledge Manager
http://dcm.nehta.org.au/ckm/
The SBVR Specification
www.omg.org/spec/SBVR/1.0/
Suggested reading order:
1.
Chapter 11 – Business Vocabulary for describing Business
Vocabularies
1.
Chapter 12 – Business Vocabulary for describing Business Rules
1.
Chapter 8 – Meaning and Representation Vocabulary
1.
Annex E – EU-Rent example
Tooling
Tools focusing on Business Rules
Open Source
http://sbeaver.sourceforge.net/about/tools.php
http://sourceforge.net/projects/orm
Commercial
http://rulexpress.editme.com/
http://www.businesssemantics.com/BusienssSemanticsLtd/products.htm
Tooling
Gartner:
“Cool Vendor in
Enterprise Information
Management”
Questions ?
WWW.OZEMANTICS.COM.AU
Download