# Presentation: 725863

## Introduction to OMG’s Model Driven ArchitectureUpdated October 2002

**Written and Presented by**
**Jon Siegel, Ph.D.**
**Vice President, Technology Transfer**
**Object Management Group**
**siegel@omg.org**
**781-444-0404**

**Notes:**
Lecture I: OMG Specification Overview
=================================================== Jon Siegel, Ph.D.
Director, Technology Transfer
Object Management Group Section 1: Introduction to OMG’s Specification Suite
Why Distributed Computing?
Scope and applicability of OMG specs

Section 2: Supporting Analysis and Design
UML: The Unified Modeling Language
The MOF: Meta-Object Facility
XMI: XML Metadata Interchange

Section 3: Object Basics
Introduction to Objects
OMG Interface Definition Language (IDL)

Section 4: CORBA Interoperability Basics
Interoperability via ORB-to-ORB communication
IIOP: OMG’s Standard Protocol
CORBA and non-standard protocols
CORBA, OLE, and COM/DCOM
CORBA, Java, and the Web
Scalable CORBA Servers

Section 5: What’s an ORB
Components of an ORB: 
Client Side
Server Side
Client Stubs and Server Skeletons
The BOA and the POA
DII, DSI, and Interface Repository

Section 6: Introduction to the OMA
The CORBAservices, CORBAfacilities, and CORBAdomains
Using Standard Services in design, implementation, and at runtime
Key Basics: Naming/Trader; Event Services
Business necessities: Transaction and Security Services

Section 7: Overview of OMG
OMG Organization
Who belongs to OMG?
Creating a new OMG specification

## Enterprise IT Must Deal With

_**Technological Factors:**_
**Barriers to Interoperability/Integration**
**Development/Maintenance Obstacles**
**Evolving/Unstable Technology Suite**

_**Business Factors:**_
**Defining/Meeting Business Requirements**
**Complex/Changing Business Processes**
**Shifting Enterprise/Application ****Boundaries**
**Semantic Integration with Customers/Suppliers/Partners**

**Today’s Architecture**

**Legacy**

**OTM**

**Data****Layer**

**Business****Logic**

**Content****Management**

**HTTP**

**DTMF**

**802.11**

**SOAP**

**Notes:**
OMG members work on specifications at member meetings held six times each year in the USA, Europe, and Asia. Last week saw the biggest meeting so far, with over 400 member representatives gathering in Tampa, Florida. 
This meeting saw the first evaluation of submissions to a Domain RFP - in particular, the request for specifications for a Business Object Facility and base business objects. Synchronized with adoptition of a meta-object horizontal CORBA Facility and the Analysis & Design Task Force meta-model, this effort attracted hundreds of interested attendees.
In addition to the Business Object Domain Task Force, other established Domain Task Forces in clude Telecommunication, Finance, Healthcare, Manufacturing, and Electronic Commerce. Emerging areas include Transportation, Geographic Information Systems (in cooperation with the Open Geographic Information Systems Consortium), Defense Simulation, and Aerospace. 
If you're interested in finding out more about this, ask Jon Siegel, chair of OMG's Domain Technology Committee.

## From Design to Deployment

**Support for *****All***** your Business Computing**

## From Design to Deployment

**Support for *****All***** your Business Computing**

## Why Focus on Modeling?

**Why Focus on Modeling?**

***Because Modeling is the only way to ensure that enterprise IT systems deliver the functionality that a business requires, comprehensive and stable, yet able to evolve in a controlled manner as business needs change over time. ***

## Why Focus on Modeling?

***Models built in the Unified Modeling Language (UML) represent exactly what a business application - even a complex, multi-platform integrated application - can do, and record it with a clarity and stability that far exceeds that of the applications themselves. ***

## Why Focus on Modeling?

**Why Focus on Modeling?**

***Based on technology-independent representations of their business functionality and behavior, modeled applications last for decades and maximize IT return on investment.***

## OMG Modeling Support

**MOF: Meta-Object Facility**
**Integrated Repository**
**Standard MetaModel**
**XMI: XML Metadata Interchange**
**Model & MetaModel Interchange **
**XML-Based Format, including DTDs**
**Unified Modeling Language UML 1.4**
**World Standard for A&D**
**Representation for Structure, Dynamics, Deployment**
**CWM: Common Warehouse Metamodel**
**Data Warehousing Integration **
**Record, Table formats; Data Loading & Transformation**

## What is the MOF?

**The MOF defines the dictionary of model elements, as an abstract model called a meta-metamodel**
**This common dictionary enables model exchange from one tool to another**
**The MOF also defines a standard distributed repository**
**A necessary foundation for modeling**

## The MOF Defines...

**CLASSES, with Attributes and Operations at both Object and Class level**
**ASSOCIATIONS support binary links between class instances**
**PACKAGES are collections of related Classes and Associations**
**DATATYPES represent non-object types as Parameters or  Attributes**
**CONSTRAINTS associate semantic restrictions with other elements**

## XMI: XML Metadata Interchange

**OMG-Standardized format for exchange of models (and meta-models)**
**XML-based transport**
**MOF-based schema for compactness without ambiguity**
**Exchange UML models among tools and repository**

## The Metadata Problem

**CWM Addresses a Problem Facing Every Enterprise:**
**Many Databases**
**Many Repositories**
**Many Schemas Describing the “Same” Data**
**Moving Data Requires Manual Schema Transformation**

## CWM Integrates your Data

**Integrates Existing Data Models**
**Maps to Existing Schemas**
**Supports Automated Schema Generation**
**Supports Automated Database Loading**
**The Basis  for Data Mining and OLAP Across the Enterprise**

## Big Software Projects...

**are like Buildings – they have a structure with many interlocking parts**
**You wouldn’t contract to build a skyscraper without seeing plans first:**
**Elevations**
**Interior Views**
**Site Plan**
**Large Software Projects deserve the same treatment**
**Better Time and Cost Estimates; Less Risk**

**Blueprints**
**Floor Plans**
**Structural Analyses**

## UML – a Graphic Language for

**Visualizing**
**Using the standardized graphic UML displays**
**Specifying **
**Semantics to define **
**static structure**
**dynamic behavior**
**model organization**
**Constructing**
**Map UML to Programming Environment and Generate some code Automatically**
**Documenting**
**Every phase of lifecycle from analysis and design through deployment and maintenance**

## UML Diagrams

**Foundation: Structural Diagrams – static structure**
**Class Diagram****	****	****– Component Diagram**
**Object Diagram****	****	****– Deployment Diagram**
**Behavior: Behavioral Diagrams – dynamic behavior**
**Use Case Diagram****	****– Statechart Diagram**
**Sequence Diagram****	****– Activity Diagram**
**Collaboration Diagram**
**Model Management Diagrams – organization**
**Packages****	****	**** – Models**
**Subsystems**

## UML Summary

**The Way the World Does Modeling, with Universal Industry Support**
**Flexible Representation of Static Structure and Dynamic Behavior**
**Diagrams Map to Formally Defined Underlying Model**
**Usable by Every Methodology**
**An OMG Standard**
**Widely Supported Upgrade to UML 2.0 Now Underway**

## New “Next Best Thing”: Web Services

**Clipped from the ebXML Technical Architecture**

## Web Services are EAI!

**For B2B, both client and server must connect to many legacy applications on many legacy middleware platforms**

## What is the Model Driven ArchitectureTM?

**A New Way to Specify and Build Systems**
**Based on Modeling and UML**
**Supports full lifecycle: A&D, implementation, deployment, maintenance, and evolution**
**Builds in Interoperability and Portability**
**Lowers initial cost and maximizes ROI**
**Applies directly to the mix of hardware and software that you face:**
**Programming language****	********  ****Network**
**Operating system ****	****	********  *****Middleware***

## Waves of Middleware Platforms

**CORBA****®****: Vendor, OS- Independent Middleware**
**But not the *****only *****MW. For example:**
**Java/EJB**
**XML/SOAP**
**C#/.Net**
**Web Services (of course)**
**What will be Next Best Thing?**
**Need to preserve value of Software Investment as the infrastructure landscape changes around it**
**Need Portability and Interoperability across HW & SW vendor, operating system, programming language, network, and now *****middleware *****too!**

## MDA: Designed for Business

**Structure is a Spectrum progressing from Modeling at the Top to Code development at the bottom**

## A Sensible Structure:

**Input and Investment concentrate at the business zone at the top**
**Automated tools take over coding IT infrastructure towards the bottom**
**Code draws from libraries written and assembled by the industry’s best minds**
**Remote invocations, hard to program but hardly creative, are programmed by machines, not people**

## Building an MDATM Application

**Platform-****Independent**
**Model**

**Start with a **_***Platform-Independent Model***_** (PIM), in UML and defined at multiple levels.**
**Base level PIM represents *****only***** business functionality and behavior, undistorted by technology details.**
**Next level adds, e.g., general aspects of components or asynch comms.**

**A Detailed Model, ****stating Pre- and Post-****Conditions in OCL, ****and Semantics in ****Action Language**

## Platform-Specific Model

**Platform-****Independent**
**Model**

**MDA tool applies an OMGTM-standard Mapping – formally, a UML Profile – to generate a **_***Platform-Specific Model***_*** *****(PSM) from the PIM. **
**This model, like the PIM, will be very detailed. **
**This step may require hand-editing, depending on the tool and environment**

**OMG Standard Mappings – UML Profiles – Map a PIM to Middleware Technologies**

## Multiple Middleware Models

**Platform-****Independent**
**Model**

**OMG will standardize – and MDA tools will implement – mappings to multiple middleware platforms.**
**Each mapping – formally, a UML *****profile***** – defines the route from an application’s single PIM to a PSM on a target platform. **

**OMG Standard Mappings – UML Profiles – Map a PIM to Middleware Technologies**

## Generate Implementation

**Platform-****Independent**
**Model**

**MDA Tools Generate Application Interfaces, Code, and Other Files from each PSM**

**A PSM contains basically the same information as  an application, but expressed in UML  instead of code.**
**MDA development tools can generate all or most of an application from a PSM: interfaces, templates, configuration files, more. **

## Services & Facilities in MDA

**Bring in Services (Naming, Directory) & Facilities as you Model**
**Produce *****All***** needed file types in final generation step**

## Targeting Multiple Platforms

## MDA Applications Interoperate

**CORBA ****Model A**

**XML/SOAP****Model B**

**Platform-****Independent**
**Model A**

**MDA Tools will ****also generate cross-platform bridging code connecting either instances of a single MDA application, or one application to another. **
**Standard *****Pervasive Services***** – directory, security, more – will also be accessed through bridging code where necessary. **

**XML/SOAP****Impl B**

**Platform-****Independent**
**Model B**

**MDA Tools combine application and platform knowledge to generate bridges**

## MDA in Industry Standards

**OMG (and other) Task Forces standardize Domain (Industry-Specific)  Facilities as PIMs.**
**With implementations on multiple platforms, no technology or platform barriers prevent widespread adoption and use.**
**Interoperate cross-platform with other standard applications. **
**Both PIM and set of PSMs and interface code – on *****every***** mapped platform – become OMG standards.**

## MDA Specifications

**MDA Architecture (Adopted Sept 2001)**
**UML 1.4 (complete) and 2.0 (in process)**
**UML Profiles:**
**Profile for EDOC (complete)**
**Profile for EAI (complete)**
**Profile for CORBA (complete)**
**Profile for EJB (in JCP)**
**Support from XMI, CWM (complete)**
**Pervasive Services (coming)**
**Domain Specifications**

## MDA Benefits

**Full support throughout the application life-cycle **
**Stable, model-based approach maximizes SW ROI**
**Technology-independent representation of business rules**
**Reduced costs from beginning to end**
**Reduced development time for new applications **
**Optimized technical behavior - scalability, robustness, security – via generated code**
**Smooth integration across middleware platform boundaries**
**Rapid inclusion of emerging technologies into existing systems**

## MDA Links

**MDA Central:**
**http://www.omg.org/mda**
**Executive overview:**
**http://www.omg.org/mda/executive_overview.htm**
**OMG White Papers:**
**http://www.omg.org/mda/papers.htm**
**FAQ:**
**http://www.omg.org/mda/faq_mda.htm**
**Specifications:**
**http://www.omg.org/mda/specs.htm**
**Products and Vendors:**
**http://www.omg.org/mda/products_success.htm**
**Presentations:**
**http://www.omg.org/mda/presentations.htm**
**Contact OMG: **
**Email info@omg.org or siegel@omg.org**

## Section 7: Overview of OMG

**OMG Organization**
**Who belongs to OMG?**
**Creating a new OMG specification**

## OMG: Background

**World’s largest software consortium.**
**Founded April 1989 - Twelve Years Old**
**Small staff (25 full time); no internal development.  Offices in U.S.A., Germany, Japan, U.K, Australia, India**
**Home of the Model Driven Architecture and ****MDA-Based Standards, Maximizing IT ROI by Extending Software and Infrastructure Lifetime Across Technology Transitions**

## Worldwide Scope

**Alcatel**
**ACORD**
**Bank of America**
**Bayer**
**BEA Systems**
**Boeing Aircraft**
**Borland**
**Bristol-Myers **
**Compaq**
**CA**

**Daimler-Chrysler**
**Deere & Co.**
**DMSO**
**Eastman Kodak**
**EDS**
**Ericsson**
**Finnish Defence**
**Ford Motor**
**Fujitsu**
**GCHQ**

**General Dyn IS**
**HP**
**Hitachi**
**IBM**
**IONA**
**Lockheed Martin**
**Lucent**
**MedicAlert**
**Mitre**
**Motorola**

**SAP AG**
**Siemens**
**Sprint**
**Sun **
**Telelogic**
**Unisys**
**Vertel**
**W3C**
**WebMD**
**Workflow Mgmt **

**NASA Goddard**
**NEC**
**Nippon T&T**
**NIST**
**Nokia**
**NSA**
**Oracle**
**PrismTech**
**Rational SW**
**Raytheon**

## Meetings, Meetings!

**OMG Specifications are adopted at our meetings**
**Held Five times a year, at member companies’ sites around the world**
**Lasts a week and attracts over 500 people**
**Every subgroup meets; up to 30 simultaneous sessions on some days**
**Dates, locations on the web at ****http://www.omg.org/techprocess/meetings/upcoming.html**
**You’re invited to come as an observer! Just let me know (email: info@omg.org)**

## Adoption Process

**RFI (Request for Information) to establish range of commercially available software.**
**RFP (Request for Proposals) to gather explicit descriptions of available software.**
**Letters of Intent to establish corporate direction.**
**Task Force and End User evaluation & recommendation; simultaneous Business Committee examination.  **
**Board decision based on TC, End User, and BC recommendations.**

## Availability

**Innovative approach for selection of standard interfaces to adopt:**
**1. OMG adopts & publishes MDA PIMs and PSMs, and Implementation Interface Specifications.**
**2. Implementations of the Interface Specifications must be available commercially from OMG Platform, Domain, or Contributing member.**
**3. MDA PIMs and PSMs, and Interface Specifications, are freely available to members and non-members alike.**
**4. MDA PIMs and PSMs, and Interface Specifications chosen from existing products in a competitive selection process.**

## Web: 
Home page: http://www.omg.org
MDA: http://www.omg.org/mda
About OMG:   http://www.omg.org/gettingstarted/gettingstartedindex.htm
Tutorial: http://www.omg.org/gettingstarted/index.htm
Email: siegel@omg.org or info@omg.org
Telephone: 781-444-0404

**Home page: http://www.omg.org**
**MDA: http://www.omg.org/mda**
**About OMG:   ****http://www.omg.org/gettingstarted/gettingstartedindex.htm**
**Tutorial: http://www.omg.org/gettingstarted/index.htm**
**Email: siegel@omg.org or info@omg.org**
**Telephone: 781-444-0404**

**Contact OMG:**

**Notes:**
The future is now: end-users need to integrate information in large distributed networks now, and the proliferation of local area networks only exacerbates the problem.  Cooperative creation and adoption of standards is the only path to avoid confusion within end-users; OMG is trying to drive the process to solve integration problems now.