Object Management Group Information Management Metamodel Project Status June 25, 2008
A Promise . . . This presentation will contain no (well, almost none) undefined TLAs. * * Three-letter acronyms…
Information Management Metadata Overview The World of Data Bases Entity/Rel. Metamodel UML2 Profile ERD The World of Business Relational Metamodel UML2 Profile DB Design The World of Applications Other Metamodels XML Schema Metamodel UML Metamodel LDAP Metamodel UML2 Profile XML Schema UML Diagram LDAP Listing IMM Core Managing it All MOF2 Traceability Metamodel UML2 Profile Trace Map
Context IMM Aligned with Semantics of Business Vocabulary and Rules (SBVR) Ontology Definition Metamodel (ODM) Knowledge Discovery Metamodel (KDM) Core Components IMM Incorporates Existing Common Warehouse Metamodel (CWM) packages Transformations Warehouse processes IMM Optionally may incorporate metamodels for Express Record Structures Object-oriented Databases
Developed ER metamodel IMM Status Developed IMM Core Developed ER metamodel Developed ‘Conceptual’ metamodel for ‘Relational Modeling’ Developed XML Schema Profile Developing examples for IMM core, ER, Relational and XML Schema metamodels Based on ‘EU Rent’ example from SBVR What is next? Review all models Complete examples Align with ISO_IEC_11404 (for data types) Align with ISO 11179 Metadata registries Construct document Submit revision during September OMG meeting
How it all fits together The Zachman Framework The Models SBVR Class of Platform Independent Class of Platform Dependent (Vendor Independent)
Zachman Framework – Version 2 Data constraints Data structure Here we see the latest version of the Zachman Framework (version 2). This was released in Nov 2005 and clears up a number of misconceptions and misunderstandings that have occurred over the years with the original version of the Framework (version 1). The column headings are now more consistent with the interrogatives. The bottom row of each column provides a broad example. For instance the What column is about Resources; the How column is about Functions; the Where column is about Networks; the Who column is about Organizations; the When column is about Timing; and the Why column is about Motivation. The Row naming has changed to more meaning terms. Row 1 is now Scope, with the right axis showing this is of interest to Visionaries in an enterprise; Row 2 is Business of interest to Executive Leaders; Row 3 is now System for Architects; Row 4 is now Technology for Engineers; Row 5 is Components for Implementers; and Row 6 is Operations for Workers. The examples in each cell have changed to be more illustrative, with the terms more relevant that in the original Framework. The result is a more understandable graphic for Business and for IT users of the Framework.
Zachman Framework – Version 2 Audience Model-driven Architecture Models OMG efforts Operations (Maintenance) (Builders) Implementers Architects Engineers (Designers) Executives, Vocabulary, Ontology Environment SBVR Information Management Metamodel, (IMM) “Core Model” Conceptual E/R (I/E, Barker) IMM E/R Class of Platform Independent Model Relational, Object-oriented XML UML, IMM Relational, classes, XML, UML Class of Platform Specific, Vendor Platform Independent Model Vendor Platform specific Model Tablespaces partitions, etc. Programs Here we see the latest version of the Zachman Framework (version 2). This was released in Nov 2005 and clears up a number of misconceptions and misunderstandings that have occurred over the years with the original version of the Framework (version 1). The column headings are now more consistent with the interrogatives. The bottom row of each column provides a broad example. For instance the What column is about Resources; the How column is about Functions; the Where column is about Networks; the Who column is about Organizations; the When column is about Timing; and the Why column is about Motivation. The Row naming has changed to more meaning terms. Row 1 is now Scope, with the right axis showing this is of interest to Visionaries in an enterprise; Row 2 is Business of interest to Executive Leaders; Row 3 is now System for Architects; Row 4 is now Technology for Engineers; Row 5 is Components for Implementers; and Row 6 is Operations for Workers. The examples in each cell have changed to be more illustrative, with the terms more relevant that in the original Framework. The result is a more understandable graphic for Business and for IT users of the Framework.
Semantics of Business Vocabulary and Rules (Row Two) Types of “Models” Semantics of Business Vocabulary and Rules (Row Two) Vocabulary, business rules, business policy Class of Platform Independent (Row Three) Conceptual Entity Relationship models Class of Platform Specific (Row Four) Logical Database Designs Object-oriented Design Models XML Schemata Lightweight Access Directory Protocol
Zachman Framework – Executives Audience OMG efforts Models Model-driven Architexture Business, SBVR Vocabulary, Ontology Environment Architects IMM E/R Conceptual E/R (I/E, Barker) Class of Platform Independent Model Designers IMM Relational, classes, XML (UML) Relational, Object-oriented XML (UML), Class of Platform Specific, Vendor Platform Independent Model Builders Tablespaces partitions, etc. Programs Vendor Platform specific Model Operations, Maintenance Here we see the latest version of the Zachman Framework (version 2). This was released in Nov 2005 and clears up a number of misconceptions and misunderstandings that have occurred over the years with the original version of the Framework (version 1). The column headings are now more consistent with the interrogatives. The bottom row of each column provides a broad example. For instance the What column is about Resources; the How column is about Functions; the Where column is about Networks; the Who column is about Organizations; the When column is about Timing; and the Why column is about Motivation. The Row naming has changed to more meaning terms. Row 1 is now Scope, with the right axis showing this is of interest to Visionaries in an enterprise; Row 2 is Business of interest to Executive Leaders; Row 3 is now System for Architects; Row 4 is now Technology for Engineers; Row 5 is Components for Implementers; and Row 6 is Operations for Workers. The examples in each cell have changed to be more illustrative, with the terms more relevant that in the original Framework. The result is a more understandable graphic for Business and for IT users of the Framework.
Semantics of Business Vocabulary and Rules . . . About the Business’s Language Meaning Concepts Propositions Alethic (must be or may be) Deontic (obligations) Communities Semantic Community Speech Community Expressions Representations of Meaning Zachman, Row Two
Zachman Framework – Architects Audience OMG efforts Models Model-driven Architexture Business, SBVR Vocabulary, Ontology Environment Architects IMM E/R Conceptual E/R (I/E, Barker) Class of Platform Independent Model Designers IMM Relational, classes, XML (UML) Relational, Object-oriented XML (UML), Class of Platform Specific, Vendor Platform Independent Model Builders Tablespaces partitions, etc. Programs Vendor Platform specific Model Operations, Maintenance Here we see the latest version of the Zachman Framework (version 2). This was released in Nov 2005 and clears up a number of misconceptions and misunderstandings that have occurred over the years with the original version of the Framework (version 1). The column headings are now more consistent with the interrogatives. The bottom row of each column provides a broad example. For instance the What column is about Resources; the How column is about Functions; the Where column is about Networks; the Who column is about Organizations; the When column is about Timing; and the Why column is about Motivation. The Row naming has changed to more meaning terms. Row 1 is now Scope, with the right axis showing this is of interest to Visionaries in an enterprise; Row 2 is Business of interest to Executive Leaders; Row 3 is now System for Architects; Row 4 is now Technology for Engineers; Row 5 is Components for Implementers; and Row 6 is Operations for Workers. The examples in each cell have changed to be more illustrative, with the terms more relevant that in the original Framework. The result is a more understandable graphic for Business and for IT users of the Framework.
Class of Platform Independent Models . . . Structured Representation of Business Language Conceptual Entity/Relationship Model Entities – Things of significance to the business Attributes – Characteristics of those things. Alethic assertions of relationships Subject entity Must be/may be Predicate (relationship/role name) Object entity Zachman, Row Three
A Sample Entity/Relationship Model . . . Entities Attributes Of course these are actually “entity types” and “attribute types”, but since all the elements of the metamodel are, by definition “types” rather than “instances”, we can lose the extra word.
Entity Types and Attributes . . . Move role names to other ends By convention, attribute names start with lower case.
A Sample Entity/Relationship Model . . . A property of an entity type is either an attribute or a role Associative Relationship Binary Roles Generalization Relationship
Binary Roles and Relationships . . . Entity type may be connected via
Identifiers . . . Identifiers (attributes + identifiers) (attributes)
Identifiers . . .
Zachman Framework – Engineers (Designers) Audience OMG efforts Models Model-driven Architexture Business, SBVR Vocabulary, Ontology Environment Architects IMM E/R Conceptual E/R (I/E, Barker) Class of Platform Independent Model Designers IMM Relational, classes, XML (UML) Relational, Object-oriented XML (UML), Class of Platform Specific, Vendor Platform Independent Model Builders Tablespaces partitions, etc. Programs Vendor Platform specific Model Operations, Maintenance Here we see the latest version of the Zachman Framework (version 2). This was released in Nov 2005 and clears up a number of misconceptions and misunderstandings that have occurred over the years with the original version of the Framework (version 1). The column headings are now more consistent with the interrogatives. The bottom row of each column provides a broad example. For instance the What column is about Resources; the How column is about Functions; the Where column is about Networks; the Who column is about Organizations; the When column is about Timing; and the Why column is about Motivation. The Row naming has changed to more meaning terms. Row 1 is now Scope, with the right axis showing this is of interest to Visionaries in an enterprise; Row 2 is Business of interest to Executive Leaders; Row 3 is now System for Architects; Row 4 is now Technology for Engineers; Row 5 is Components for Implementers; and Row 6 is Operations for Workers. The examples in each cell have changed to be more illustrative, with the terms more relevant that in the original Framework. The result is a more understandable graphic for Business and for IT users of the Framework.
Class of Platform Dependent Models Relational Database Design Tables, Columns, Primary keys Foreign keys Object-oriented Application Design (UML) Object classes Associations XML Schema Elements Simple and Complex Types Restrictions
Class of Platform Dependent Models Relational Database Design Data Types Tables, Columns, Primary keys Foreign keys Object-oriented Application Design (UML) Object classes Associations XML Schema Elements Simple and Complex Types Restrictions
Eclipse (and SQL 2007) Version of Data Types
The “E/R” Model Version of Data Types . . . SQL 20** Data Types SQL 99 Data Types
Data Type Type Definition The Generic Version . . . Data type Parameter Value Data Type Type Definition Data Type Parameter Party Name Super-type SQL Data Type Predefined Data Type SQL Data Type Constructed Data Type SQL Data Type User Defined Data Type Numerical Data Type Predefined Data Type Exact Numerical Data Type Numerical Data type …
Tables and Columns . . .
Base and Derived Tables . . .
Unique Keys . . .
Foreign Keys . . .
Class of Platform Dependent Models Relational Database Design Tables, Columns, Primary keys Foreign keys Object-oriented Application Design (UML) Object classes Associations XML Schema Elements Simple and Complex Types Restrictions
Object-oriented Application Design (UML) . . . (Next time)
Class of Platform Dependent Models Relational Database Design Tables, Columns, Primary keys Foreign keys Object-oriented Application Design (UML) Object classes Associations XML Schema Elements Simple and Complex Types Restrictions