Model-Driven Architecture (MDA) and Data Warehouse Design

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

The Fast Guide to Model Driven Architecture

Model-Driven Data Warehousing

Model-Driven Architecture: Vision, Standards And Emerging Technologies

Model-driven secure system development framework

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

CIM to PIM Transformation: A criteria Based Evaluation

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

A Case Study on Model Driven Data Integration for Data Centric Software Development

Automatic Generation Between UML and Code. Fande Kong and Liang Zhang Computer Science department

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

MDA based approach towards Design of Database for Banking System

Information Management Metamodel

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

Open Source egovernment Reference Architecture Osera.modeldriven.org. Copyright 2006 Data Access Technologies, Inc. Slide 1

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

All you need are models Anneke Kleppe, Klasse Objecten

Applying MDA and universal data models for data warehouse modeling

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

INTEROPERABILITY IN DATA WAREHOUSES

Designing a Semantic Repository

Tool Support for Model Checking of Web application designs *

Business Rule Standards -- Interoperability and Portability

INNOVATOR. The integrated tool suite for business process and software engineering

A Hybrid Model Driven Development Framework for the Multidimensional Modeling of Data Warehouses

Applying MDA in Developing Intermediary Service for Data Retrieval

Comparative Analysis of Data warehouse Design Approaches from Security Perspectives

MDA Game Design for Video Game Development by Genre

Java Metadata Interface and Data Warehousing

Business Process Modeling and Standardization

Model Driven Interoperability through Semantic Annotations using SoaML and ODM

The Impact of the Computational Independent Model for Enterprise Information System Development

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

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

MDA Overview OMG. Enterprise Architect UML 2 Case Tool by Sparx Systems by Sparx Systems

Model Driven and Service Oriented Enterprise Integration---The Method, Framework and Platform

What is Enterprise Architect? Enterprise Architect is a visual platform for designing and constructing software systems, for business process

MDE FOR BPM A Systematic Review

Integration and Reuse of Heterogeneous Information Hetero-Homogeneous Data Warehouse Modeling in the CWM

Project VIDE Challenges of Executable Modelling of Business Applications

Enhanced Model Driven Architecture Software Development Life Cycle with Synchronized and Consistent Mapping

EXPLAINING DATA WAREHOUSE DATA TO BUSINESS USERS - A MODEL-BASED APPROACH TO BUSINESS METADATA

Development of Tool Extensions with MOFLON

Foundations of Model-Driven Software Engineering

Clarifying a vision on certification of MDA tools

An Agent Based Etl System: Towards an Automatic Code Generation

What is a metamodel: the OMG s metamodeling infrastructure

Determining Preferences from Semantic Metadata in OLAP Reporting Tool

From Business World to Software World: Deriving Class Diagrams from Business Process Models

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

Comparison of Model-Driven Architecture and Software Factories in the Context of Model-Driven Development

A Software Development Platform for SOA

OMG s Second Workshop on Web Services. Orchestrating Web Services from a UML Development Platform

MDA Transformations Applied to Web Application Development 1

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

Web Services - Consultant s View. From IT Stategy to IT Architecture. Agenda. Introduction

DSS based on Data Warehouse

Published by: PIONEER RESEARCH & DEVELOPMENT GROUP ( 1

Enabling Better Business Intelligence and Information Architecture With SAP PowerDesigner Software

TOWARDS A FRAMEWORK INCORPORATING FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTS FOR DATAWAREHOUSE CONCEPTUAL DESIGN

Generating Aspect Code from UML Models

WHITE PAPER DATA GOVERNANCE ENTERPRISE MODEL MANAGEMENT

Agile Modeling and Design of Service-Oriented Component Architecture

Who Is The OMG? Object Management Group factoids:

Amit Sheth & Ajith Ranabahu, Presented by Mohammad Hossein Danesh

ALIGNING ENTERPRISE ARCHITECTURE AND IT INVESTMENTS WITH CORPORATE GOALS

Model-Driven Development: A Metamodeling Foundation

OMG SOA Workshop - Burlingame Oct 16-19, 2006 Integrating BPM and SOA Using MDA A Case Study

Business Model Interoperability using Enterprise Model Integration

Metadata Management for Data Warehouse Projects

Metamodels and Modeling Multiple Kinds of Information Systems

Enterprise Architecture Review

Introduction to Datawarehousing

Training Management System for Aircraft Engineering: indexing and retrieval of Corporate Learning Object

MDA Journal A BPT COLUMN. David S. Frankel. Introduction. May 2004

Model driven architecture: Principles and practice

MDA When a major software industry trend meets our toolset, implemented since By Philippe Desfray VP for R&D

JOURNAL OF OBJECT TECHNOLOGY

Generating the PIM Behavioral Model from the CIM using QVT

CDC UNIFIED PROCESS PRACTICES GUIDE

BUILDING OLAP TOOLS OVER LARGE DATABASES

Filtering the Web to Feed Data Warehouses

mdwfs Model-driven Schema Translation for Integrating Heterogeneous Geospatial Data

Model based testing of Datawarehouse

A UML 2 Profile for Business Process Modelling *

Revel8or: Model Driven Capacity Planning Tool Suite

Bridging BPM and MDE: On the Integration of BiZZdesigner and OptimalJ

Enterprise Architecture at Work

The BPM to UML activity diagram transformation using XSLT

SOA and BPO SOA orchestration with flow. Jason Huggins Subject Matter Expert - Uniface

Product data quality in the vaccine industry, a Model-Driven Architecture for interoperability between information systems

Business Performance Management Standards

Next-generation model-driven development

The UML 2.0 meta model

MDA Journal A BPT COLUMN. David S. Frankel. January Until February. David Frankel

SDWM: An Enhanced Spatial Data Warehouse Metamodel

Databases in Organizations

How to Model Aspect-Oriented Web Services

Semantic-enabled Software Engineering and Development

Practical meta data solutions for the large data warehouse

Transcription:

Paper to seminar Business Intelligence Model-Driven Architecture (MDA) and Data Warehouse Design Prof. Dr. Marc Scholl, Prof. Dr. Harald Reiterer, Assistant Svetlana Mansmann Written by Eduard Schibrowski (01/506856)

Table of Contents: 1. Definition and concept of Model Driven Architecture 3 1.1 Key concepts of the MDA Framework 3 1.1.1 PIM (platform-independent model) 3 1.1.2 PSM (platform-specific model) 3 1.1.3 CIM (computation-independent model) 3 1.2 Short Framework description 4 2. The core of the MDA concept. 5 2.1 UML The Unified Modelling Language 5 2.2 MOF - Meta Object Facility 6 2.3 XMI - XML Metadata Interchange 6 3. CWM Common Warehouse Metamodel 7 3.1 From the general MDA to the more specific CWM Metamodel 7 3.2 CWM Model Driven Architecture 8 4. Benefits of the MDA DW Framework 11 5. References: 12

1. Definition and concept of Model Driven Architecture The concept of Model Driven Architecture was introduced by OMG (Object Management Group) as an approach to system specification and interoperability and is inspired by the use of several formal models. One of the most accepted definitions of MDA is the one published in the paper Applying MDA to the Development of Data Warehouses, written by Jose-Norberto Mazón, Juan Trujillo, Manuel Serrano and Mario Piattini which refers to MDA as a standard framework for software development that addresses the complete life cycle of designing, deploying, integrating, and managing applications by using models in software development. 1 1.1 Key concepts of the MDA Framework The key concepts of the MDA architecture are in fact the default view points on a system specified by the MDA: computation independent, platform independent and a platform specific. In MDA, platform-independent models (PIMs) are initially expressed in a platformindependent modelling language, such as UML. The platform-independent model is subsequently translated to a platform-specific model (PSM) by mapping the PIM to some implementation language or platform (Java) using formal rules. 1.1.1 PIM (platform-independent model) A PIM has a sufficient degree of independence so as to enable its mapping to one or more platforms. This is commonly achieved by defining a set of services in a way that abstracts out technical details. That means that PIM doesn t contain any information specific to the platform or the technology that is used to realise it. Other models then specify a realization of these services in a platform specific manner. 1.1.2 PSM (platform-specific model) A PSM combines the specifications in the PIM with the details required to stipulate how a system uses a particular type of platform. If the PSM does not include all of the details necessary to produce an implementation of that platform it is considered abstract (meaning that it relies on other explicit or implicit models which do contain the necessary details). 1.1.3 CIM (computation-independent model) A CIM is also often referred to as a business or domain model because it uses a vocabulary that is familiar to the subject matter experts. It presents exactly what the system is expected to do, but hides all information technology related specifications to 1 Jose-Norberto Mazon, Juan Trujillo, Manuel Serrano, Mario Piattini: Applying MDA to the development of data warehouses, in DOLAP '05: Proceedings of the 8th ACM international workshop on Data warehousing and OLAP. 2005, page 58

remain independent of how that system will be (or currently is) implemented. The CIM plays an important role in bridging the gap which typically exists between these domain experts and the information technologists responsible for implementing the system. In an MDA specification the CIM requirements should be traceable to the PIM and PSM constructs that implement them (and vice-versa). 1.2 Short Framework description The requirements of the system are addressed in a CIM. Afterwards, this CIM is refined into a PIM (normally this refinement is done by hand. Then, this PIM can be automatically transformed into different PSMs. Finally, code is generated from each PSM in order to obtain the final software product. In the picture below we can see how different models interact: 2 As we can observe, the core issue is the transformation between PIM and SPM. While the transformation between CIM and PIM is still done by hand, the PIM PSM transformation is an automatic process in continuously development. Furthermore, the Object Management Group defines MOF2 (Meta Object Facility) Query/View/Transformation (QVT), an approach for expressing model transformations. I will discus in more detail about the PIM PSM automatic transformation, in the context of the development of data warehousing. But before proceeding into the core of the Model Driven Architecture with the focus on CWM (Common Warehouse Metamodel), I would like to highlight at this point the twofold vision of the development of MDA. This consists of a short and a long term vision, delimited by the level of abstraction and automatisation of the (CIM PIM, PIM - PSM) transformation processes. 2 Jose-Norberto Mazon, Juan Trujillo, Manuel Serrano, Mario Piattini: Applying MDA to the development of data warehouses, in DOLAP '05: Proceedings of the 8th ACM international workshop on Data warehousing and OLAP. 2005, page 59

The near term vision (i.e., nearly seamless interoperability, based on formal PIM-PSM translations and shared metadata) is achievable right now. The supporting technologies are largely specified and implementations are currently being built by a number of organizations. The long-term vision (i.e., the wide spread deployment of AOMs, as an evolution of the MDA), on the other hand, is still being conceptualized. 3 2. The core of the MDA concept. A keyword in describing the concept of MDA is interoperability. This is the reason why, it is interesting to see how this problem was solved in the past. For a very long time, interoperability had been based largely on CORBA (Common Object Request Broker Architecture) standards and services. Heterogeneous software systems interoperate at the level of standard component interfaces. CORBA wraps program code into a bundle containing information about the capabilities of the code inside and how to call it. The resulting wrapped objects can then be called from other programs (or CORBA objects) across a network. On the other hand the MDA solves the problem of interoperability by using conceptualized (formal) system models. That s why, the key to successful integration and interoperability lies in the intelligent use and management of metadata across all applications, platforms, tools, and databases. This can be realised through the use of the MDA standards or technologies: UML, MOF, XMI and CWM. These technologies are used to describe PIMs. In the next section of this chapter I will introduce each of these standards, with one exception: an entire chapter will be dedicated to CWM, as the standard for modelling metadata in a warehousing environment. Given the importance of CWM, the last chapter will be dedicated to the benefits of applying MDA to DW development. 2.1 UML The Unified Modelling Language UML is a general-purpose modeling language that includes a standardized graphical notation used to create an abstract model of a system. UML addresses the modelling of architecture, objects, interactions between objects, data modelling aspects of the application life cycle, as well as the design aspects of component based development including construction and assembly. 4 3 J. Poole: Model-driven architecture: Vision, standards and emerging technologies, in ECOOP 2001: Workshop on Adaptive Object-Models and Metamodeling. 2001. 4 Joaquin Miller and Jishnu Mukerji Model-driven architecture: Document number ormsc/2001-07-01 Architecture Board ORMSC

At this point may be important to notice that UML represents the notational basis for definition of CWM, but CWM also extends a subset of the core UML metamodel with data warehousing concepts. The capacity of visual UML models to automatic translate to other languages facilitates the interchange of CWM models in various platforms and tool independent formats (translation of a CWM relational model into SQL DDL statements). 2.2 MOF - Meta Object Facility The Meta Object Facility (MOF), an adopted OMG standard, (latest revision MOF 1.4) provides a metadata management framework, and a set of metadata services to enable the development and interoperability of model and metadata driven systems. A number of technologies standardized by OMG, including UML, MOF, CWM, SPEM, XMI, and various UML profiles, use MOF and MOF derived technologies (specifically XMI and more recently JMI which are mappings of MOF to XML and Java respectively) for metadata-driven interchange and metadata manipulation. 5 In other words, MOF is another OMG standard originated in UML, defining a common, abstract language for the specification of metamodels. It defines the essential elements, syntax, and structure of metamodels that are used to construct object-oriented models of discrete systems. MOF serves as a bridge between the CWM and UML metamodels. The Meta-Object Facility (MOF) technology provides a model repository that can be used to specify and manipulate models, thus encouraging consistency in manipulating models in all phases of the use of MDA. 6 2.3 XMI - XML Metadata Interchange XMI is a standard interchange mechanism used between various tools, repositories and Middleware. XMI can also be used to automatically produce XML DTDs from UML and MOF models. MOF-based metamodels are translated to XML Document Type Definitions (DTDs) and models are translated into XML Documents that are consistent with their corresponding DTDs. The XMI technology represents the world of modelling (UML), metadata (MOF and XML) and middleware (UML profiles for Java, EJB, IDL, etc.) In essence XMI adds modeling and Architecture to the world of XML. 5 Meta Object Facility (MOF) 2.0 Core Specification, http://www.omg.org/docs/ptc/04-10-15.pdf 6 Joaquin Miller, Jishnu Mukerji, MDA Guide Version1.0.1, omg/2003-06-01, http://doc.omg.org/formal/02-04-03

3. CWM Common Warehouse Metamodel 3.1 From the general MDA to the more specific CWM Metamodel Analogous with the general MDA in the more specific approach of the CWM model architecture we also distinguish between Platform independent (in the left rectangle) and a Platform Dependent perspective (the right side of the picture) comprising technical details for implementation. 7 The Common Warehouse Metamodel (CWM) is a specification for modeling metadata for relational, non-relational, multi-dimensional, and most other objects found in a data warehousing environment. CWM provides objects that describe where the data came from and when and how the data has been created. Metadata shared between products is formulated in terms of data models that are consistent with one or more CWM metamodels. A product exports metadata by formulating a model of its internal metadata structures in a format prescribed by CWM. Similarly, a product imports metadata by consuming a CWM-compliant model and mapping it to its internal metadata. 7 Dr. Daniel T. Chang, IBM Database Technology Institute, CWM: Model Driven Architecture, UML Forum/Tokyo, 3/21/01

3.2 CWM Model Driven Architecture In the previous sections we could consider the Model Driven Architecture from three view points: computational independent, platform independent and platform specific. In addition to these viewpoints the DW system architecture introduces several layers of abstraction, and each layer represents a part of the SW that must be designed. Briefly these layers are: - source layer: which defines internal and external data sources - integration layer: mapping between data sources and the DW - DW layer: structure of the data warehouse repository - customisation layer: middleware used by user applications to access the DW - application layer: tools that allow analyse data from DW by the end user. At each level of abstraction, here viewpoints, every of the five layer play an important role in the general consideration of the architecture. 8 Model Driven Data Warehouse (MDDW) represents the approach developed for aligning the design of DWs with the general MDA paradigm. This approach is based on the Common Warehouse Metamodel (CWM). CWM is a platform-independent metamodel definition for interchanging DW specifications between different platforms and tools. Basically, CWM provides a set of metamodels that are comprehensive enough to model an entire DW including data sources, ETL processes, MD modelling, relational implementation of a DW, and so on.). 8 Jose-Norberto Mazon, Juan Trujillo, Manuel Serrano, Mario Piattini: Applying MDA to the development of data warehouses, in DOLAP '05: Proceedings of the 8th ACM international workshop on Data warehousing and OLAP. 2005, page 58

The Common Warehouse Metamodel consists of: - a common metamodel of the data warehousing and business intelligence domain - a platform-independent metamodel definition - an XML-based inter-change format for metadata - a mapping to a platform-independent API specification (CORBA IDL) - tools that standardize on CWM which can readily share metadata via CWMcompliant XML files 9 The left picture provides an overview of the Metamodel with five levels, from top to bottom: Management, Analysis, Resource, Foundation and Object Model An interesting point at this stage of discussion is the transformation of MD PIM into MD PSM and code. For this purpose we outline a UML profile that contains the necessary stereotypes in order to carry out conceptual MD modelling successfully. The main features of the considered MD modelling are the many-to-many relationships between facts and one specific dimension, degenerated dimensions, multiple classification and alternative path hierarchies, and the non strict and complete hierarchies. 10 The structural properties of MD modelling are represented by an UML class diagram in which the information is organized into facts and dimensions. These facts and dimensions are represented by fact and dimension classes respectively. 9 Dr. Daniel T. Chang, IBM Database Technology Institute, CWM: Model Driven Architecture, UML Forum/Tokyo, 3/21/01 10 idem

Universität Konstanz FB Informatik und Informationswissenschaft Bachelor Information Engineering 11 The upper image illustrates the described process of transformation, passing through the three levels of abstraction until the code is generated. I have to specify that there are no new UML design models in the MDA DW architecture (alternatives to class or state diagrams), but the existing ones are enriched with convention specifications for the more specific field of Data Warehousing. 11 Jose-Norberto Mazon, Juan Trujillo, Manuel Serrano, Mario Piattini: Applying MDA to the development of data warehouses, in DOLAP '05: Proceedings of the 8th ACM international workshop on Data warehousing and OLAP. 2005, page 59

4. Benefits of the MDA DW Framework 12 Universität Konstanz FB Informatik und Informationswissenschaft Bachelor Information Engineering Considering the facts described in section three of this paper we can conclude that the whole development of a data warehouse is structured into an integrated framework with five layers and three viewpoints. There is an impetuous necessity to discuss the advantages of such a framework by highlighting the reasons for his appliance further development. Obviously the main benefit is that the DW is automatically generated from PIM s resulting in a cost decrease and improvement of productivity. Other important benefits deserve to be taken into consideration: - Business Perspective focus on developing conceptual models for each layer, and shifting attention from logical and technical decisions. This improves the way of solving problems and concentrates on the business needs. - Portability The PIM s can be automatically transformed in PSM s for different DW technologies. - Integration and interoperability - Using MDA transformations, concepts from one platform can be converted into concepts used in another platform in an automatic way. - Reusability this is in fact the same concept like the one applied in every object oriented software development that means that once a transformation is developed, we can use it in every instance of PIM s. - Adaptability - if new DW technologies arise for certain parts of the developed DW, then we do not have to change the whole DW. Since the PIM is platform independent, it is still valid, and DW developers have only to concern about the transformation between the old PIM and the new PSM. - Support for system evolution the changes in the technology doesn t represent a menace any more. The changes in the requirements are reflected in the change of CIM and PIM. These changes are automatically overtaken in PSM and visible in the DW. 12 Inspired from: Jose-Norberto Mazon, Juan Trujillo, Manuel Serrano, Mario Piattini: Applying MDA to the development of data warehouses, in DOLAP '05: Proceedings of the 8th ACM international workshop on Data warehousing and OLAP. 2005

Universität Konstanz FB Informatik und Informationswissenschaft Bachelor Information Engineering 5. References: 1. http://www.cwmforum.org/paperpresent.htm 2. http://www-128.ibm.com/developerworks/rational/library/3100.html 3. http://www.omg.org/ 4. http://www.wiley.com/legacy/compbooks/poole/cwm_guide/patterns.html 5. http://www.omg.org/mda/presentations.htm 6. Meta Object Facility (MOF) 2.0 Core Specification, http://www.omg.org/docs/ptc/04-10-15.pdf 7. Jose-Norberto Mazon, Juan Trujillo, Manuel Serrano, Mario Piattini: Applying MDA to the development of data warehouses, in DOLAP '05: Proceedings of the 8th ACM international workshop on Data warehousing and OLAP. 2005 8. J. Poole: Model-driven architecture: Vision, standards and emerging technologies, in ECOOP 2001: Workshop on Adaptive Object-Models and Metamodeling. 2001 9. Joaquin Miller and Jishnu Mukerji Model-driven architecture: Document number ormsc/2001-07-01 Architecture Board ORMSC 10. Joaquin Miller, Jishnu Mukerji, MDA Guide Version1.0.1, omg/2003-06-01, http://doc.omg.org/formal/02-04-03 11. John Poole, Hyperion Solutions Corporation: Model Driven Data Warehousing Integrate.2003, Burlingame, CA 12. Dr. Daniel T. Chang, IBM Database Technology Institute, CWM: Model Driven Architecture, UML Forum/Tokyo, 3/21/01 13. Frank Truyen: The Fast Guide to Model Driven Architecture, The Basics of Model Driven Architecture, Cephas Consulting Corp, January 2006.