470 likes | 594 Views
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? . To have a communication medium between business and IT
E N D
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? 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….. 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
The traditional solution Specify a large, normalised E-R or UML Class Model To provide the design for Specific Databases Selected members of the enterprise
Modern Reality is Different OLTP Databases Multiple Target Database Designs OLAP Databases Dimensional Databases Columnar Databases Multiple “Semantic Communities” Multiple Non Relational Target Data Structures XML XSD OWL Unstructured Data And the elephant 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 Adds implementation realities Physical
The Problem When we have only one form of logical model it’s OK to use a logical model as our Enterprise Model So we need to use a model at the Conceptual Level as our Enterprise Model But today, we have many forms of logical model Conceptual EDM Logical EDM Physical ODB WEB DWH WEB
A Conceptual Model ? What’s that? It’s a Semantic Model in the form of a Glossary or Taxonomy or Ontology
SBVR Semantics for Business Vocabulary and Rules The team who brought you UML, BPMN, … Provides us with a standard for such a model
Where did it come from? • The SBVR is a synthesis of four disciplines: • 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 • 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; • 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; • 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 Supertype Concept Broader Concept Expression Representation Meaning Extension Categorisation Scheme ACME Vocabulary Engineering Vocabulary The Engineers ISO Widget Vocabulary Included Glossaries, Taxonomies & Ontologies Sales Vocabulary ACME WIDGETS Related Concept The Salesmen Concept GAAP Vocabulary The Accountants Rules Concepts, Facts and Rules Speech Community Semantic Community Facts Rules Vocabularies Related Concept Concepts
A not-too-deep dive We are focusing on the ‘Vocabulary’ area Basic Elements Communities & Vocabularies
SBVR SEMANTICS FOR BUSINESS VOCABULARY & RULES • The branch of linguistics and logic concerned with meaning. • The meaning of a word, phrase, sentence, or text Wikipedia 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 FACT TYPE RULE links NOUN CONCEPT based on (VERB CONCEPT) FACT TYPE NOUN CONCEPT NOUN CONCEPT RULE CUSTOMER RENTS CAR CUSTOMER CAR CUSTOMER CAN ONLY RENT ONE CAR
Noun Concepts NOUN CONCEPT FACT TYPE ROLE INDIVIDUAL CONCEPT GENERAL CONCEPT Concept in a Fact Concept Instance Type of Concept Car Rental Car MAZDA JPQ 777
Verb Concepts VERB CONCEPT (FACT TYPE) CHARACTERISTIC BINARY FACT TYPE Rents is registered Customer Rents Rental Car Car is registered Rents Rental Car Car Is registered Customer Car
Fact Type Role CAR General Concept Fact Type Fact Type Role Customer Rental Car Rents Ranges Over Fact Type Role General Concept Have same characteristics 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 Role ranges over Individual Concept Object Type (General Concept Fact Type Role Binary Fact Type Characteristic
Concepts Rents Rental Car Person Car Customer Is a MAZDA JPQ 777 Is registered ISO/EIC 1325:2003 Topic Map RDF Triple Rents Person Car Person Car Rents MAZDA JPQ 777
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 CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT
The birth of an Entity CONCEPT CONCEPT CONCEPT CONCEPT CONCEPT Name CONCEPT CONCEPT Definition CONCEPT CONCEPT Attributes CONCEPT CONCEPT CONCEPT Candidate Keys CONCEPT Primary Key CONCEPT CONCEPT Foreign Keys 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 Representation Meaning Extension represents refers to has • 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 Representation Meaning Extension represents refers to has Designation Concept Descriptive Example Definition Note Also The character sequence “driver” Designation of the concept ‘driver’ by the term “driver” Reference Concept ‘driver’. How we think of drivers, what characterizes them The actual drivers of motor vehicles The character sequence “operator of a motor vehicle” Definition of the concept ‘driver’ as “operator of a motor vehicle”
Designations Designation Term Name Non Verbal Designation For General Concepts For Individual Concepts Definition which describes the intension of a concept by stating the superordinate concept and the delimiting characteristics Definitions Description of a concept by enumerating all of its subordinate concepts under one criterion of subdivision Concept Definition Owned Definition Adopted Definition Intensional Definition Extensional Definition Speech Community Characteristic Reference
Namespaces Expression Representation Meaning represents has Fact Type Form Designation Concept is in is in Namespace Is for Vocabulary Namespace Attributive Namespace 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 Characteristic Tyre position is front Tyre position is right Car Model has Name
Subtyping Specialises Generalises Concept Characteristic Incorporates Categorisation Scheme Categorisation Type Segmentation General Concept Multi Faceted Subtyping Simple Subtyping Concept Discriminator Concept Concept Concept Discriminator Concept Concept Concept Concept Concept Concept Concept Concept Concept Discriminator Concept Concept Discriminator Concept Concept Concept
Classification Modelling SBVR insists that the characteristics that discriminate are explicit Value Value Value Value SCHEME SCHEME Value Value TYPE SCHEME Value Value Value Value Fundamental Hierarchy Value Value FT Role Value Value Value SCHEME ROLE SCHEME SCHEME Value FT Role Value Value Fact Type Value SCHEME Value Fact Type Value SCHEME Relationship Hierarchy Value Relationship Subtypes are fact types. Fact Type Roles appear in the Fundamental Hierarchy Fact Type: IP is married to IP For Example “IP is spouse of IP” Fact Type Role : Spouse
Representing a Fact Type Expression Representation Meaning represents has Designation Concept Placeholder “COMPANY appoints OFFICER” Is in COMPANY appoints OFFICER Fact Type Form 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
Even more But that’s for another day!
Context - Communities & Vocabularies is expressed in Language uses incorporates has owns Semantic Community Speech Community Vocabulary unites is used to express Meaning 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
Local and Global ACME Bank consists of Finance Business Unit ACME Common Asset Business Concepts Finance Business Concepts • Credit • Stock • Cash • … • Asset • Building • Equipment • … owned by uses Product Business Concepts • Loan • Swap • Revolving Limit • … Risk Business Unit Party Business Concepts • Party • Organization • Address • … Risk Business Concepts • Exposure • Mortgage • Collateral • … owned by
In an Ideal World Financial Services Industry consists of ACME Bank consists of Regulator X Finance Business Unit ACME Common Reporting Business Concepts • Risk • Revenue • Capital Value • … Asset Business Concepts Finance Business Concepts • Credit • Stock • Cash • … • Asset • Building • Equipment • … owned by ISO uses Product Business Concepts • Loan • Swap • Revolving Limit • … Risk Business Unit ISO 20022 Business Concepts • Payment • Counterparty • Transfer • … Party Business Concepts • Party • Organization • Address • … Risk Business Concepts • Exposure • Mortgage • Collateral • … owned by uses
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 The Business Basis for Data Governance Conceptual SBVR Semantic Model Taxonomy Logical E-R XML OWL NextGen Physical
SBVR & the EDM Knowledge Capture & Dissemination Regulation Risk and Compliance Complex Analytics Data Governance …… OLTP Databases OLAP Databases Dimensional Databases Why? Columnar Databases Shift of Emphasis EDM now a Conceptual Model Business Metadata Technical Metadata Collaborative Modelling XML 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: • Chapter 11 – Business Vocabulary for describing Business Vocabularies • Chapter 12 – Business Vocabulary for describing Business Rules • Chapter 8 – Meaning and Representation Vocabulary • 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”