Common Warehouse Metamodel (CWM): Extending UML for Data Warehousing and Business Intelligence



Similar documents
Common Warehouse Metamodel (CWM): Extending UML for Data Warehousing and Business Intelligence

Model-Driven Data Warehousing

Model-Driven Architecture: Vision, Standards And Emerging Technologies

Information Management Metamodel

Java Metadata Interface and Data Warehousing

A Model-based Software Architecture for XML Data and Metadata Integration in Data Warehouse Systems

Data-Warehouse-, Data-Mining- und OLAP-Technologien

Overview. Stakes. Context. Model-Based Development of Safety-Critical Systems

Databases in Organizations

<Insert Picture Here> Extending Hyperion BI with the Oracle BI Server

Practical meta data solutions for the large data warehouse

SEARCH The National Consortium for Justice Information and Statistics. Model-driven Development of NIEM Information Exchange Package Documentation

Talend Metadata Manager. Reduce Risk and Friction in your Information Supply Chain

ODBIS: Towards a Platform for On-Demand Business Intelligence Services

Towards a Common Metamodel for the Development of Web Applications

SDWM: An Enhanced Spatial Data Warehouse Metamodel

Using UML to Construct a Model Driven Solution for Unified Access to Disparate Data

Generating Aspect Code from UML Models

Establish and maintain Center of Excellence (CoE) around Data Architecture

Business Performance Management Standards

ORACLE OLAP. Oracle OLAP is embedded in the Oracle Database kernel and runs in the same database process

Organization of DSLE part. Overview of DSLE. Model driven software engineering. Engineering. Tooling. Topics:

Microsoft Data Warehouse in Depth

Tools for MDA Software Development: Evaluation Criteria and Set of Desirable Features

Data Warehousing Systems: Foundations and Architectures

Data Warehouse Overview. Srini Rengarajan

Super-Charged Oracle Business Intelligence with Essbase and SmartView

Meta Data Management for Business Intelligence Solutions. IBM s Strategy. Data Management Solutions White Paper

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe. Slide 29-1

Turning your Warehouse Data into Business Intelligence: Reporting Trends and Visibility Michael Armanious; Vice President Sales and Marketing Datex,

Oracle BI 11g R1: Build Repositories

Data Modeling Basics

Development of Tool Extensions with MOFLON

Creating Hybrid Relational-Multidimensional Data Models using OBIEE and Essbase by Mark Rittman and Venkatakrishnan J

Enabling Better Business Intelligence and Information Architecture With SAP Sybase PowerDesigner Software

Enabling Better Business Intelligence and Information Architecture With SAP PowerDesigner Software

OBIEE 11g Data Modeling Best Practices

OLAP. Business Intelligence OLAP definition & application Multidimensional data representation

Building Views and Charts in Requests Introduction to Answers views and charts Creating and editing charts Performing common view tasks

Oracle OLAP What's All This About?

Oracle Business Intelligence Foundation Suite 11g Essentials Exam Study Guide

The Oracle Enterprise Data Warehouse (EDW)

What is a metamodel: the OMG s metamodeling infrastructure

How To Model Data For Business Intelligence (Bi)

Course DSS. Business Intelligence: Data Warehousing, Data Acquisition, Data Mining, Business Analytics, and Visualization

IAF Business Intelligence Solutions Make the Most of Your Business Intelligence. White Paper November 2002

AN ONTOLOGICAL APPROACH TO WEB APPLICATION DESIGN USING W2000 METHODOLOGY

BUSINESSOBJECTS DATA INTEGRATOR

Paper DM10 SAS & Clinical Data Repository Karthikeyan Chidambaram

Structure of Presentation. The Role of Programming in Informatics Curricula. Concepts of Informatics 2. Concepts of Informatics 1

Data Modeling in the Age of Big Data

Developing in the MDA Object Management Group Page 1

Model Driven Interoperability through Semantic Annotations using SoaML and ODM

Data Mining Standards

A Service-oriented Architecture for Business Intelligence

Concepts of Database Management Seventh Edition. Chapter 9 Database Management Approaches

Chapter 5 Business Intelligence: Data Warehousing, Data Acquisition, Data Mining, Business Analytics, and Visualization

Data warehouse and Business Intelligence Collateral

Metamodels and Modeling Multiple Kinds of Information Systems

SQL Server 2012 Business Intelligence Boot Camp

Oracle Warehouse Builder 10g

Improving your Data Warehouse s IQ

SAS Business Intelligence Online Training

The Benefits of Data Modeling in Business Intelligence

Building Cubes and Analyzing Data using Oracle OLAP 11g

F4: DW Architecture and Lifecycle. Erik Perjons, DSV, SU/KTH Data warehouse

Information Management & Data Governance

Metadata Management for Data Warehouse Projects

Implementing Data Models and Reports with Microsoft SQL Server

Motivation Definitions EAI Architectures Elements Integration Technologies. Part I. EAI: Foundations, Concepts, and Architectures

Data warehousing/dimensional modeling/ SAP BW 7.3 Concepts

Tool Support for Model Checking of Web application designs *

Vendor briefing Business Intelligence and Analytics Platforms Gartner 15 capabilities

SAP Business Objects BO BI 4.1

CONCEPTUALIZING BUSINESS INTELLIGENCE ARCHITECTURE MOHAMMAD SHARIAT, Florida A&M University ROSCOE HIGHTOWER, JR., Florida A&M University

DATA GOVERNANCE AND DATA QUALITY

Big Data Analytics with IBM Cognos BI Dynamic Query IBM Redbooks Solution Guide

BUSINESSOBJECTS DATA INTEGRATOR

Lection 3-4 WAREHOUSING

BUILDING OLAP TOOLS OVER LARGE DATABASES

Metadata Application Understanding Software Migration

Bringing Business Objects into ETL Technology

Metadata Strategies: your guide through the data jungle Achim Granzen EMEA Technology Strategist

CDC UNIFIED PROCESS PRACTICES GUIDE

DSS based on Data Warehouse

BIG DATA COURSE 1 DATA QUALITY STRATEGIES - CUSTOMIZED TRAINING OUTLINE. Prepared by:

Implementing Data Models and Reports with Microsoft SQL Server 20466C; 5 Days

Transcription:

Common Warehouse Metamodel (CWM): Extending UML for Data Warehousing and Business Intelligence OMG First Workshop on UML in the.com Enterprise: Modeling CORBA, Components, XML/XMI and Metadata November 6-9, 2000, Palm Springs, CA

Speakers Daniel T. Chang IBM (dtchang@us.ibm.com) John D. Poole Hyperion Solutions (john_poole@hyperion.com)

Objectives Overview of CWM concepts Use of UML by CWM UML lessons learned from CWM Discuss moving forward

Where to find my modified slides and notes... http://www.cwmforum.org/ http://www.omg.org/uml A ballot lock box down in Florida!

What is CWM? A complete specification of syntax and semantics that Data Warehousing and Business Intelligence tools can leverage to successfully interchange shared metadata A language or framework for specifiying the external representation of data warehouse metadata for purposes of interchange

CWM Provides... A standard language for defining the structure and semantics of metadata in a formal way (MOF / UML / OCL) A standard interchange mechanism for sharing metadata defined in the standard language (XML / XMI ) A standard specification (interface) for access to, and discovery of, the metadata defined in the standard language (IDL for now, normative Java API with JSR-40)

Management Warehouse Process Warehouse Operation Analysis Transformation OLAP Data Mining Information Visualization Business Nomenclature Resource Object (UML) Relational Record Multi Dimensional XML Foundation Business Information Data Types Expressions Keys Index Type Mapping Software Deployment UML 1.3 (Foundation, Behavioral_Elements, Model_Management)

CWM Design Rationale MOF is the modeling language (syntax+semantics) UML is the modeling notation UML is the also the base metamodel XMI is the interchange mechanism

CWM Design Rationale Extend the UML metamodel with Data Warehousing and Business Intelligence domain objects Standardize on MOF semantics Yields a MOF-compliant metamodel (M2 level) for constructing DW & BI models of data (metadata) Effectively defines a UML-aligned notation for specifying DW & BI metadata

UML as Modeling Notation Structure and typing in UML (versus MOF) Notational conventions and usage OCL for precise modeling

Structural issues: Association Classes Association classes: Defined by UML but not permitted by MOF CWM has a number of places where Association Classes would ve been useful (to attach attributes to certain M:M associations) We seemed to be able to get by using Classes

/namespace 0..1 Schema /namespace 0..1 /ownedelement * / ownedelement * Dimension Cube isvirtual : Boolean / cubedimas soc : CubeDimAssoc / cuberegion : CubeRegion 1 * CubeDimAssoc / dimension : Dimension / cube : Cube / calchierarchy : Hierarchy * 1 istime : Boolean ismeasure : Boolean / hierarchy : Hierarchy / memberselection : Mem berselection / cub edimassoc : CubeD imassoc / displaydefault : Hierarchy 1 * calchierarchy displaydefault 0..1 1 1 0..1 0..1 Hierarchy / dimension : Dimension / cubedimass oc : CubeDimAssoc * * CubeRegion isreadonly : Boolean isfullyrealized : Boolean / mem berselgrp : MemberSelGrp / cube : Cube 1 * MemberSelGrp / memberselection : MemberSelection / cuberegion : CubeRegion * 1..* * MemberSelection / dimension : Dimension / memberselgrp : MemberSelGrp

/dimension 1 Dimension istime : Boolean ismeas ure : Boolean / hierarchy : Hierarchy / memberselection : Mem berselection / cubedimassoc : CubeDimAs soc / displaydefault : Hierarchy defaulteddimension 0..1 1 /memberselection * Level / hierarchylevelassoc : HierarchyLevelAssoc currentlevel 1 * Hierarchy / dimension : Dimension / cubedimassoc : CubeDimAssoc 0..1 displaydefault LevelBasedHierarchy / hierarchylevelassoc : HierarchyLevelAssoc ValueBasedHierarchy / structuremap : StructureMap / immediateparent : StructureMap 1 0..1 0..1 {ordered} * HierarchyLevelAssoc * immediateparent 0..1 * / levelbasedhierarchy : LevelBasedHierarchy / currentlevel : Level / structuremap : StructureMap / li stofvalues : Stru ctu remap / im mediateparent : StructureMap 0..1 * StructureMap / hierarchylevelassoc : HierarchyLevelAssoc / valuebasedhierarchy : ValueBasedHierarchy 0..1 0..1 0..1 0..1 listofvalues immediateparent

Structural Issues: References MOF allows the specification of references UML has no notational support for references Arguably an implementation issue, but CWM metamodel is a MOF metamodel Notationally, we represented references as derived attributes (i.e., an attribute computed from a related association) / + attribute name, <<reference>> stereotype

Di mension istime : Boolean ismeasure : Boolean <<reference>> / hierarchy : Hierarchy <<reference>> / memberselection : MemberSelection <<reference>> / cubedimassoc : CubeDimAssoc <<reference>> / displaydefault : Hierarchy defaulteddimension 0..1 1 * Hierarchy / dimension : Dimension / cubedimassoc : CubeDimAssoc 0..1 displaydefault

Structural Issues: Assoc. Subclassing Association subclassing not supported by Rose Associations inherited from UML metamodel Namespace/ownedElement Owner/feature We would ve liked to have been able to subclass these in some cases (restrict extent) Used OCL constraints on association ends instead Note: This is a tool issue, not a MOF/UML issue

Typing: Inheritance of UML Type System Both MOF and UML have type systems (an alignment issue) CWM was compelled to use/extend the UML type system, rather than the MOF type system, because of inheritance from UML metamodel

Use of OCL for Precise Metamodeling Extensive use of OCL throughout all of the CWM metamodels In some cases, compensate for MOF/UML/Tool dissonance (e.g., constraints on association ends) Need for some specialized collection operations (e.g., transitive closure) Where to store? (e.g., Rose Documentation pane)

UML as Base Metamodel Packaging structure and modularity Core metamodel and extended metamodels Representing instances Traversal of modeling abstraction hierarchy

Package Structure & Modularity UML 1.3 metamodel is rather course grained and tightly coupled (i.e., has many package dependencies) We tried to compensate in CWM through: Use of a flat, namespace hierarchy Use of <<metamodel>> stereotype to specialize UML Package CWMX extensions: Minimal dependencies

Package Structure & Modularity org.omg UML CWM Foundation <<metamodel>> DataTypes <<metamodel>> TypeMapping <<metamodel>> KeysIndexes <<metamodel>> Expressions <<metamodel>> BusinessInformation <<metamodel>> SoftwareDeployment Resource <<metamodel>> Relational <<metamodel>> Record <<metamodel>> Multidimensional <<metamodel>> XML Analysis <<metamodel>> Transformation <<metamodel>> Olap <<metamodel>> BusinessNomenclature <<metamodel>> DataMining <<metamodel>> InformationVisualization Management <<metamodel>> WarehouseProcess <<metamodel>> WarehouseOperation CWMX

Core Metamodels & Extended Metamodels CWM core metamodels extend UML core metamodel packages: Foundation (Core, Data_Types) Behavioral_Elements::Common_Behavior Model_Management Use inherited UML Extensibility Mechanisms (TaggedValue, Stereotype, Constraint) to extend M1 CWM models (without extending CWM)

Core Metamodels & Extended Metamodels CWMX (extension package) Vendor-specific metamodels that directly extend core CWM metamodels Fairly easy to extend the core CWM by introducing custom technology metamodels (facilitates interchange) An argument in favor of the create a new metamodel approach versus the UML profile approach?

Representing Instances UML::Behavioral_Elements::Common_Behavior Representations of Instance (Object, DataValue), AttributeLink (slot) and Classifier-Instance association CWM introduces the concept of Extent (a collection of instances -- e.g., a Relational RowSet)

Representing Instances Object-Oriented Resource Instance feature : Attribute attribute : Class : Object : AttributeLink : Extent : DataValue value

Representing Instances Relational Resource Instance feat ure : Column att ribute : BaseTable : Row : AttributeLink : RowSet : ColumnValue value

Representing Instances Multdimensional Resource Instance fe ature : Attribute attribute : Dimension : Memb er : AttributeLink : Mem berset : MemberValue val ue

Traversal of Modeling Abstraction Layers With CWM, it is possible to span the modeling hierarchy (M2 through M0) in a single XMI document: M2: tags describing metadata M1: contents of the M2 tags M0: linked content of M1 instances

Traversal of Modeling Abstraction Layers It is also possible to interchange a single CWM model that spans conceptual, logical and physical boundaries (plus instances!) using the CWM Transformation metamodel: Conept. Model Logical Model Physical (Resource) Model Instances

Traversal of Modeling Abstraction Layers The CWM Transformation Metamodel derives its power and flexibility by the way it references core elements of the UML metamodel: ClassifierMap FeatureMap ClassifierFeatureMap

UML Tools UML conformance issues Rose Profile for UML / MOF Metadata repositories Metadata bridges/adapters/toolkits

Rose Profile for MOF Two-way mapping between Rose s interpretation/implementation of UML, and the MOF Resolves the overall dissonance between Rose, UML and MOF (at least to the extent that it assists us in generating interfaces and servers from MOF-compliant metamodels) Based on UML Profile for MOF

Follow-on Discussion Points UML and MOF alignment A major problem area for CWM UML 2.0: Physical Metamodel to be replaced by MOF Need to ensure that this does indeed resolve the alignment issues between MOF and UML

Follow-on Discussion Points UML Profiles Creation of new metamodels (CWM) versus definition of UML Profiles New metamodels facilitate interchangeable metadata (necessarily the case with profiles?) Proliferation of new metamodels: New notations Proliferation of new profiles: New dialects of the same notation

Follow-on Discussion Points Object Constraint Language Need to be able to include OCL statements as part of a UML model Need to be able to harvest OCL from model automatically and submit to a model checker OMG specification issues (OCL is considered normative but we have no way of checking if OCL is valid)

Follow-on Discussion Points Dynamic systems and dynamic object models MOF reflection CWM extends into DW / BI domain Patterns for construction Variation points (stability) Patterns for interchange Push / pull paradigm Request / response paradigm

Follow-on Discussion Points Concept of parameterized transformations Effectively supported by CWM Transformation metamodel Complete spectrum from black box to white box transformations

CWM Information Sources OMG home page CWM link CWM Forum home page Other misc. info (presentations, papers, links) http://www.cwmforum.org/ OMG UML home page http://www.omg.org/uml

Java Community Process Related Efforts Java Metadata Interface (JMI) Java OLAP Interface (JOLAP) Java Data Mining API (JDMAPI) (http://java.sun.com/aboutjava/communityprocess/)

Summary Brief overview of CWM CWM and UML UML as Modeling Language UML as Base Metamodel UML Tools Issues Information Sources