Applying MDA Standards to bring the A to SOA - OMG · Applying MDA Standards to bring the A to SOA...

34
OMG Workshop on MDA, SOA and Web Services, March 2006 Adaptive, Inc. | North America: +1 (888) 399-4621 | Europe: +44 1202 491240 | [email protected] | www.adaptive.com Applying MDA Standards to bring the Applying MDA Standards to bring the Applying MDA Standards to bring the Applying MDA Standards to bring the A to SOA A to SOA A to SOA A to SOA Pete Rivett, CTO Adaptive [email protected]

Transcript of Applying MDA Standards to bring the A to SOA - OMG · Applying MDA Standards to bring the A to SOA...

OMG Workshop on MDA, SOA and Web Services, March 2006

Adaptive, Inc. | North America: +1 (888) 399-4621 | Europe: +44 1202 491240 | [email protected] | www.adaptive.com

Applying MDA Standards to bring the Applying MDA Standards to bring the Applying MDA Standards to bring the Applying MDA Standards to bring the A to SOAA to SOAA to SOAA to SOA

Pete Rivett, CTO [email protected]

2Copyright © 2006 Adaptive, Inc.

Outline

! The SOA ‘platform’

! Why SOA needs MDA

! OMG technical standards supporting SOA

! OMG’s SOA Special Interest Group

3Copyright © 2006 Adaptive, Inc.

SOA Needs Planning and Architecture

! Fallacy: A bottom-up approach to SOA is good enoughA Web Service here, a Web Service there, and pretty soon you have an SOA. Build enough Web Services, and make sure they are secure and managed, and that's all you need to do to build an SOA.

Counterpoint: The best approach to building an SOA is to combine a bottom-up approach of building Services that solve integration problems with a top-down, architectural approach that provides process-driven Services that enable business agility.

Jason Bloomberg, ZapThink , 08-05-2004

4Copyright © 2006 Adaptive, Inc.

SOA ≠ Web Services

! SOA does not require use of web services– CORBA– REST/http

! Use of web services does not by itself give SOA

5Copyright © 2006 Adaptive, Inc.

Web Services Platform Jungle

For full chart see innoQ.com

6Copyright © 2006 Adaptive, Inc.

Platform Jungle contd

! Lots of standards

! Interdependencies between them

! Many still under development

! Usable stacks (combinations of proprietary and standards) forced by vendors

! In addition to all this is Enterprise Service Buses etc.

This is exactly the situation that MDA was designed for

7Copyright © 2006 Adaptive, Inc.

Enterprise Service Bus

! Just one platform type for deploying SOA

! In reality, most large corporations will have several

! An ESB is made up of the following parts:– Service Interface Points (SIP) where the service connects to the bus.

– Mediation services that switch protocols, and transform, enrich, route, distribute, monitor and correlate messages.

– A Registry that contains metadata definitions of all the services connected to the ESB to enable registration, discovery and deployment of the services.

! And has 4 deployment patterns that reflect different levels of autonomy and control :– global– directly connected– brokered– federated

8Copyright © 2006 Adaptive, Inc.

MDA Archetype

! Focus the investment on the model

! Then generate/deploy to a platform– Whether completely automated or not

! And remember that ‘Platform’ is a relative term

9Copyright © 2006 Adaptive, Inc.

MDA for SOA- Beyond Platform Independence

! Business traceability and alignment– Services in the context of the business/enterprise architecture

! Change and complexity management

! Development tool independence

! Models are easier to communicate and manage than XML files

10Copyright © 2006 Adaptive, Inc.

Pulling it all together

SOA EDABPM

EA/Business Models

ImplementationStacks

MDA

11Copyright © 2006 Adaptive, Inc.

Not just OMG View

“SOA Metamodel” from ZapThink

12Copyright © 2006 Adaptive, Inc.

SOA Layers

13Copyright © 2006 Adaptive, Inc.

Relevant OMG Standards- MDA

! Meta Object Facility (MOF)– Metamodel foundation

! XML Metadata Interchange (XMI)– Model interchange

! MOF Versioning– Model management

! MOF Queries Views and Transformations (QVT)– Transformation of models

! MOF Model to Text Transformation (M2T)– Generation of artifacts (code/XML)

14Copyright © 2006 Adaptive, Inc.

Relevant OMG Modeling Standards- Technical Content

! Unified Modeling Language (UML)– Architecture and design of services/internals– General purpose modeling language (via profiles)

! Reusable Asset Specification (RAS)– Packaging of reusable assets for retrieval, usage and deployment

! Common Warehouse Metamodel (CWM)– Service payloads (information content) and mapping to enterprise data storage

! Ontology Definition Metamodel (ODM)– Semantics of information for interoperability

! Knowledge Discovery Metamodel (KDM)– Models of the enterprise systems to which services typically map

! Software Process Engineering Metamodel (SPEM)– Modeling the SOA development process

15Copyright © 2006 Adaptive, Inc.

RAS

! Packaging of artifacts for reuse

! Manifest for:– Classification (finding)– Usage for a context– Variations for a context

! Independent of what’s being reused

! Manifest and artifacts may be in a Zip file or the artifacts may be external (e.g. a CM system)

! Two flavors of interchange for manifest– XML Schema (legacy)– MOF/XMI

16Copyright © 2006 Adaptive, Inc.

RAS Profiles

! Details for specific types of asset

! Spec includes a Component Profile and a Web Service Profile

! Options for a Profile:– New metamodel (or Schema) that extends the RAS metamodel– Reference to a UML Profile– Reference to a MOF Metamodel

17Copyright © 2006 Adaptive, Inc.

Default Web Service RAS Profile

18Copyright © 2006 Adaptive, Inc.

WarehouseProcess

WarehouseOperation

Transformation

XMLRecord-Oriented

MultiDimensionalRelational

BusinessInformation

SoftwareDeployment

ObjectModel(Core, Behavioral, Relationships, Instance)

WarehouseManagement

Resources

Analysis

Object-Oriented

(ObjectModel)

Foundation

OLAP Data Mining

InformationVisualization

BusinessNomenclature

DataTypes Expressions Keys

IndexType

Mapping

CWM Metamodel

19Copyright © 2006 Adaptive, Inc.

1

*

ViewisReadOnly : BooleancheckOption : BooleanqueryExpression : QueryExpression

QueryColumnSetquery : QueryExpression

{ordered}

{ordered}

TableisTemporary : BooleantemporaryScope : String/ trigger : TriggerisSystem : Boolean

SQLSimpleTypecharac terM aximumLength : Integercharac terOctetLength : Integernumeri cPrecis ion : Integernumeri cPrecis ionR adi x : Integernumeri cScale : IntegerdateTimePr eci sion : Integ er

SQLDistinctTypelength : Integerprecision : Integerscale : Integer/ sqlSimpleType : SQLSimpleType

1*

sqlSimpleType

1

sqlDistinctType

*ColumnSet

SQLDataTypetypeNumber : Integer

Columnprecision : Integerscale : IntegerisNullable : NullableTypelength : IntegercollationName : StringcharacterSetName : String/ optionScopeColumnSet : NamedColumnSet/ referencedTableType : SQLStructuredType

*

0..1 /feature

*/owner

0..1

/type

1

/structuralFeature*

CatalogdefaultCharacterSetName : StringdefaultCollationName : String

Schema *

0..1/ownedElement

* /namespace

0..1

NamedColumnSet/ optionScopeColumn : Column/ type : SQLStructur edType/ usingTrigger : Trigger

0..1

*

/namespace

0..1

/ownedElement*

Class DataType

Package

Feature

...

ClassifierisAbstract : Boolean/ feature : Feature

n0..1

n

{ordered}

owner0..1

StructuralFeature

changeability : C hangeableKindmultiplic ity : Multiplicityordering : Orderi ngKi ndtargetScope : ScopeKind/ type : Cl assifier

1ntype

1n

Namespace

ModelElementname : Namevisibility : VisibilityKind...

0..1

n

0..1

ownedEl ement

n

AttributeinitialValue : Expression

Relational Bigger Picture

20Copyright © 2006 Adaptive, Inc.

XML and OLAP Scenario

21Copyright © 2006 Adaptive, Inc.

Information Management Metamodel (IMM) Outline of requirements

! Leverage latest modeling standards– MOF2 Metamodel– UML2 Profile where appropriate for visual modeling

! Modular structure

! Inclusive of CWM 1.x scope (with migration)

! XML Schema metamodel and profile

! Relational metamodel and profile

! Record metamodel and profile

! Data modeling notation mapping for IDEF1X and IE

! Reconciliation of persistent and programming language structures

! Address issues deferred from CWM 1.1

22Copyright © 2006 Adaptive, Inc.

Knowledge �dimensions� in KDM

UI “things”

Data “things”Structural “things”

Behavior “things”Code “things”

Conceptual architecture

Domain model

Requirements,Features,Use Cases Approximates modeling

world from the ground up

Based on Architecture Views

Language-independent KDM

repository

Java

extension

extends

C++extension

extends

Cobol

extension

extends

C++

extension

extends

Language-aware KDM Tool

readsuses

KDM

Constraints aredefined in Core KDM package:All language-specific extensionsare uniform

integratesCobol KDM Tool 1uses

Cobol KDM Tool 2

uses

C++ KDM Tool

uses

Java KDM Tool

uses

Transformation Tool

Language-independent KDM Tool

analyst

modifies

24Copyright © 2006 Adaptive, Inc.

Where KDM adds value?

! Architectural context for – Understanding software– Modularization, untangling “hairballs”– Discovering reusable components– Inventory, estimations of effort– Modernization

! Architecture management– Before modernization– After modernization

! Application Portfolio Management

! Information exchange between vendors

25Copyright © 2006 Adaptive, Inc.

Modernization Scenarios MatrixModernization Scenarios MatrixModernization Scenarios MatrixModernization Scenarios Matrix

XI. Reusable Software Assets / Component Reuse

XII. Model-Driven Architecture Transformation

X. Application Package Selection & Deployment

IX. Data Warehouse Deployment

VIII. Application & Data Architecture Consolidation

VII. Data Architecture Migration

VI. Services Oriented Architecture Transformation

V. Non-Invasive Application Integration

IV. Platform Migration

III. Language-to-Language Conversion

II. Application Improvement

I. Application Portfolio Management

Check BoxModernization Scenario

26Copyright © 2006 Adaptive, Inc.

Structure of KDM packages

Core

SourceBundle

Data Code Actions

LogicalRunTime

UI

Build

Conceptual ScenarioEnvironment

SourceRef

Storage

27Copyright © 2006 Adaptive, Inc.

SPEM Example � Use Cases

28Copyright © 2006 Adaptive, Inc.

SPEM Example - Activities

29Copyright © 2006 Adaptive, Inc.

OMG SOA SIG

! Working Group meeting Dec 2005

! Chartered as SIG in Feb 2006

! Working to identify and prioritize gaps in existing OMG standards and build a roadmap

! Standards only adopted through existing OMG task forces

! Questionnaire available to get your input– on paper– online http://www.surveymonkey.com/s.asp?u=590891913913

30Copyright © 2006 Adaptive, Inc.

SOA SIG Charter

The SOA SIG provides a forum for discussion of SOA definition, methodologies, models, and both business and technical implications.

Primary goals:

! To support an MDA approach to SOA that links architectural, business and technology views of services, including Business Process Management (BPM) and Event-Driven Architecture (EDA).

! Identify and foster development of OMG modeling standards for SOA that integrate with and complement standards developed by other organizations such as W3C, Open Group and OASIS.

! To improve awareness and understanding of SOA by OMG members.

! To coordinate SOA related efforts within OMG.

See www.omg.org/soa

31Copyright © 2006 Adaptive, Inc.

Draft Gap AnalysisDraft Gap AnalysisDraft Gap AnalysisDraft Gap Analysis

! Research RFPs being issued by RC DSIG

! RFP for Service Policy metamodel?

! RFP for Service ‘Contract’ metamodel?

! SOA Governance–Policy, Contract, Regulatory Compliance

! Use of Archimate

! Cross metamodel means to model traceability

! BPDM and BMI as examples

! Mapping of Services to business functions/processes and components

! Covered by SOA metamodel?

! SOA Metrics RFP–Reuse/extend ADM Metrics Package

! ESB (Enterprise Service Bus) ?

! Focus on complete Life Cycle of a Service –Model, develop, manage and monitor–Metrics (service availability, performance, maturity, SLA…)

!Architecture and topology of SOA middleware potentially including ESB

! White paper on SOA Framework mapped to OMG standards (MDA and others)

! RFP(s) for SOA Metamodel–Use of MDA standards (UML, MOF, XMI, CWM/IMM)

! RFP for UML Profile for Web Services (review of IBM’s UML profile for software services)

! SML?

! Modeling approach (Service Oriented Modeling) –SOA Framework mapped to MDA, other OMG stds.–SOA Metamodel –Service Modeling Language (SML – a flavour of UML and BPMN)?

Opportunity for OMG SIGGap

32Copyright © 2006 Adaptive, Inc.

Draft Gap Analysis, cont�dDraft Gap Analysis, cont�dDraft Gap Analysis, cont�dDraft Gap Analysis, cont�d

!Mapping PIM > PSM for web services! Way to model web service functionality and policy independent of WS* platform languages

! RFP for SOA Registry/Repository metamodel– Use/extend UDDI – RAS, EDOC

! Standard Service RegistryRepository model

! Gap between service development and service registration and deployment

! Mapping to SCA

! Mapping to CBA?

! SOA Relationship with SCA, SDO

! SOA Relationship with CBA (component-based Architecture)

! Work with Ontology SIG

! WSMO (Web Service Modeling Ontology Metamodel)–Service reasoner metamodel?

! Service Semantics (Service Ontologies)– Semantic reasoner

! Event Metamodel?

! Pub-Sub metamodel? (OMG EAI metamodel)

! Causality relationship metamodel

! Agent SIG?

! Other sources like W3C?

! Correlation/mapping to EDA–Events that trigger Service execution–Causality relation with Events

-Sense and respond

! Service relationship with Agents–Agent part of Sense and Respond?

Opportunity for OMG SIGGap

33Copyright © 2006 Adaptive, Inc.

Is OMG too late to the party?

“Yes but no but…”

! There is a lot already there generically with MDA standards– at business and technical levels

! The SOA Platform is still very fragile and evolving– (ironically to become more like CORBA!)– initiatives such as SCA still emerging

! The SOA Reference Model (OASIS) is only just completing

! Consensus over best practice for modeling SOAs is still emerging– especially with respect to business alignment

! A lot more work is still needed with respect to service metadata– Contracts, policies, semantics

! So only now is sufficient maturity emerging with SOA to start developing SOA-specific modeling standards

– OMG is not a research organization

34Copyright © 2006 Adaptive, Inc.

Summary

! SOA is the best argument there is for MDA

! OMG already has a large number of standards addressing the needs of SOA

! It has established a SOA SIG to address SOA specifics