Upload
juniper-watts
View
214
Download
0
Embed Size (px)
Citation preview
Metadata Tools and Methods
Chris Nelson
Metanet Conference 2 April 2001
Agenda
• UML
• CWM
• OMG/MDA
• Registries and Repositories
Unified Modeling Language - UML
• The UML is a graphical language created for• specifying• visualizing• constructing• documenting
• the artifacts of software systems.• It is based on the object-oriented paradigms
(encapsulation,inheritance,polymorphism, instantiation)
• A large “toolbox”:• Use Cases, Different views, Class diagrams, Interaction
Diagrams, State Machines, etc.
UML Goals
• Define an easy-to-learn, but semantically rich visual modeling language.
• Unify the Booch, OMT, and Objectory modeling languages.• Include ideas from other modeling languages.• Incorporate industry best practices.• Address contemporary software development issues
– scale, distribution, concurrency, executability, etc.• Provide flexibility for applying different processes.• Enable model interchange and define repository interfaces
(XMI).• Communicate knowledge: requester <-> developer.
Why (Meta)Model?
• Understand and describe the problem domain• Help others understand the problem domain by using the
same language• Define a vocabulary for the elements in the problem
domain• Manage complexity by raising the level of abstraction at
which we think and design• Civil, Mechanical and hardware engineers have been
adept at this for much longer than us• Metamodels are used in the domain of modeling
middleware and type systems (UML, IDL, CWM…)
Role of UML, MOF, XMI
• Understand, analyze and design software using UML
• Design and integrate tools, middleware and applications in a flexible manner using MOF
– Across previous islands of information
• Interchange metadata and objects using XML across platforms in a loosely coupled manner (XMI)
• Interchange metadata and objects using IDL across platforms across languages (MOF2IDL, JMI…)
• A unifying model driven architecture
CWM
• Why do we need CWM?• What is CWM?• How can it be used by
NSI’s?
Data Warehousing/Business Intelligence
Metadata management and integration
• is the number one integration problem in data warehousing and business intelligence:
• Data warehousing and business intelligence often involve the use of a variety of tools, each with its own definition and format for metadata.
• Creating, sharing and managing the metadata for these tools is time consuming and error prone.
Common Warehouse Metamodel CWM
• Scope– Data Warehouse lifecycle metadata management
• Contributors: IBM, Unisys, NCR, Hyperion, Oracle, Genesis, UBS, Dimension EDI...
– Metamodel
– Generated XML DTDs
– Generated MOF - IDL mappings
– Generated XML document
• Adopted by OMG in June 2000 (Oslo)
• CWM Interoperability showcase in Dec 2000
What is CWM?
– A Model-based architecture for Data Warehouse interchange.
– A common specification that defines, in UML, the structure and semantics of the metadata in data warehousing and business intelligence.
– A common specification that defines, in XML, the interchange format and, in IDL, the access API of such shared metadata.
The CWM Metamodel
WarehouseProcess
WarehouseOperation
Transformation
XMLRecordMulti
DimensionalRelational
BusinessInformation
SoftwareDeployment
UML 1.3(Foundation, Behavioral_Elements, Model_Management)
Management
Resource
Analysis
Object(UML)
Foundation
OLAPData
MiningInformation
VisualizationBusiness
Nomenclature
DataTypes
ExpressionsKeysIndex
TypeMapping
Why UML interchange?– Why not XML DTD or XML Schema?
• XML DTD– Primitive data model: no inheritance, no operations, no
associations, no constraints– Only string data types
• XML Schema– Same primitive data model as above– Richer data types
– UML
• Rich object-oriented model with associations and constraints
• Extensible data types: CORBA (MOF), etc.
Model Driven Architecture
• OMG initiative– The Problem We Face: Middleware
Proliferation
• Formalise and standardise models
• Can be implemented using different technologies– CORBA
– XML
– EJB
MDA and Domains
• Could have a statistical domain
• ADM SiG exists and can be used to formalise models
• Does Metanet want to develop a statistical metamodel– Similar in concept to CWM
– Could use CWM as a base
Metadata Registries and Repositories
• Registry stores the metadata about data in a repository
• Registry objects and associations represent the metadata model
• The registry object “points” to the data (URL)• Central registries can be used for query purposes –
e.g. get list of statistical data sets for transport by land between Belgium and Italy for 1993-2000
Registry Access
Statistical Database
NSI A
Registry Interface
Registry
2
Registry
1
Registry Interface
application application (e.g.Servlet)
Browser
Statistical Database
NSI B
Registry Standards
• OASIS– Draft standard submitted by NIST
• ebXML– Electronic business XML– Based on OASIS model
ebXML Registry Model
ebXML – Example Registry Method
ebXML Registry XML