rm-odp 概要

61
オープン分散処理標準(RM-ODP)の 概要と使い方 ビューファイブ LLC [http://www.view5.co.jp/] 田中

Upload: akira-tanaka

Post on 28-May-2015

548 views

Category:

Documents


0 download

DESCRIPTION

数年前に作成したスライドで、modeling forum の発表で使った版だと思います。

TRANSCRIPT

Page 1: RM-ODP 概要

オープン分散処理標準(RM-ODP)の概要と使い方

ビューファイブ LLC

[http://www.view5.co.jp/]

田中 明

Page 2: RM-ODP 概要

本日お話する内容

• オープン分散処理標準RM-ODPについて– 概要

– Enterprise Language 他

• RM-ODPの使い方– UMLツール

• 関連する標準・オープンソースプロジェクト– OMGビジネスモデリング標準

– Eclipse Modeling Project

• まとめ

2

Page 3: RM-ODP 概要

RM-ODPについて

• ISO/IECとITU-T共通の国際標準

– Reference Model for Open Distributed Processing

– オープンな分散処理システムを記述するための枠組み(参照モデル)

• 主な規定内容– 基本概念群: Object, Abstraction, Action, Role, …

– ビューポイント概念: Viewpoint, Viewpoint Specification

– ビューポイント言語: Enterprise, Information, Computational, Engineering, Technology

– オープンな分散処理システムにおける分散透過性(Transparencies)

– オープンな分散処理システムに必要な共通機能(ODP functions)

• 利用分野– 相互運用性を備える分散システムのアーキテクチャ・仕様規定

– 大規模または複雑なシステム(ビューポイントの考え方導入が必要なシステム)

• その他の特徴– 特定の記法・開発方法論に依存しない(中立)

3

Page 4: RM-ODP 概要

RM-ODPについて

• 標準・勧告

– RM-ODP Part 1 – Overview and guide to use

– RM-ODP Part 2 – Foundation: 基盤

– RM-ODP Part 3 – Architecture: アーキテクチャ

– RM-ODP Part 4 – Architectural Semantics

– RM-ODP Enterprise Language: エンタプライズ言語

– Use of UML for ODP system specifications: UML利用

– その他: ODP IDL, Trading function, Naming Framework, …

• 関連する言葉– Enterprise Architecture

– メタモデル

– CORBA & UML (Infrastructure, Superstructure)

• 関連情報 (現時点で最も充実しているエントリポイント)

– www.rm-odp.net

4

Page 5: RM-ODP 概要

標準の入手方法

• www.rm-odp.netに情報が集約されてはいますが– ISOからダウンロード(Freely Available Standards:Part 1-4)

• http://standards.iso.org/ittf/PubliclyAvailableStandards/index.html

– ITU-Tから(free)ダウンロード

• http://www.itu.int/itu-t/recommendations/index.aspx?ser=X

• RM-ODP関連は勧告X.900番代にあります

• 現在開発中のものはリストになく、新しいものには購入費用の発生するものもあります(例:改訂版のPart2/Part3)

– Joaquin Miller氏の ODPサイト(HTML: Part 2-3, Enterprise Language)

• http://www.joaquin.net/ODP/index.html

– それ以外に「SC7/WG19の活動に正規の形で参加する」という選択肢もあります。

5

Page 6: RM-ODP 概要

6

htt

p:/

/ww

w.it

u.in

t/it

u-t

/rec

om

men

dat

ion

s/in

dex

.asp

x?se

r=X

Page 7: RM-ODP 概要

7

Part 2 (Foundation)の概要

• オープン分散処理システムのモデル化に必要な基本的な概念を規定

• Part 3(Architecture)やEnterprise Language等の基盤

Page 8: RM-ODP 概要

基本解釈概念

8

Part2 Concepts

Basic Interpretation Concepts

Basic Linguistic Concepts

Basic Modeling Concepts

Specification Concepts

Structuring Concepts

Conformance Concepts

Organizational Concepts

Properties of systems and objects

Naming Concepts

Concepts for Behaviour

Management Concepts

基本解釈概念

基本言語概念

基本モデル化概念

仕様概念

構造化概念

適合性概念

組織(化)概念

属性概念

名称概念

振る舞い概念

管理概念

エンティティ (entity)命題 (proposition)抽象化 (abstraction)原子性 (atomicity)システム (system)アーキテクチャ (architecture)

Page 9: RM-ODP 概要

基本言語概念

9

Part2 Concepts

Basic Interpretation Concepts

Basic Linguistic Concepts

Basic Modeling Concepts

Specification Concepts

Structuring Concepts

Conformance Concepts

Organizational Concepts

Properties of systems and objects

Naming Concepts

Concepts for Behaviour

Management Concepts

基本解釈概念

基本言語概念

基本モデル化概念

仕様概念

構造化概念

適合性概念

組織(化)概念

属性概念

名称概念

振る舞い概念

管理概念

言葉 (term)文章 (sentence)モデル(model)*仕様(specification)*記法(notation)*

Page 10: RM-ODP 概要

基本モデル化概念

10

Part2 Concepts

Basic Interpretation Concepts

Basic Linguistic Concepts

Basic Modeling Concepts

Specification Concepts

Structuring Concepts

Conformance Concepts

Organizational Concepts

Properties of systems and objects

Naming Concepts

Concepts for Behaviour

Management Concepts

基本解釈概念

基本言語概念

基本モデル化概念

仕様概念

構造化概念

適合性概念

組織(化)概念

属性概念

名称概念

振る舞い概念

管理概念

オブジェクト (object)(オブジェクトの)環境動作 (action)イベント(event)インタフェース (活動 (activity)(オブジェクトの)振る舞い (behavior (of anobject))(オブジェクトの)状態 (state (of an object))通信 (communication)空間的位置 (location in space)時間的位置 (location in time)相互動作点 (interaction point)関係(relation)*関連(relationship)*

Page 11: RM-ODP 概要

仕様概念

11

Part2 Concepts

Basic Interpretation Concepts

Basic Linguistic Concepts

Basic Modeling Concepts

Specification Concepts

Structuring Concepts

Conformance Concepts

Organizational Concepts

Properties of systems and objects

Naming Concepts

Concepts for Behaviour

Management Concepts

基本解釈概念

基本言語概念

基本モデル化概念

仕様概念

構造化概念

適合性概念

組織(化)概念

属性概念

名称概念

振る舞い概念

管理概念

複合 (composition)複合オブジェクト (composite object)逆複合 (decomposition)振る舞い互換性 (behavioural compatibility)相互運用性(interoperability)*詳細化 (refinement)トレース (trace)<X>パターン*型・タイプ (type (of an <X>))クラス (class (of an <X>s))サブタイプ/スーパータイプ (subtype/supertype)サブクラス/スーパークラス (subclass/superclass)<X> テンプレート (<X> template)アクションシグニチャ(action signature)*インタフェースシグニチャ (interface signature)( <X> テンプレートの)実体化 (instantiation (of an<X> template))ロール・役割 (Role)( <X> の)生成 (creation (of an <X>))( <X> の)導入 (introduction (of an <X>))( <X> の)削除 (deletion (of an <X>))(タイプの)インスタンス( <X> の)テンプレート型 (template type (of an <X>))( <X> の)テンプレートクラス (template class (of an<X>))導出クラス/親クラス (derived class/base class)コンポーネント(component)*(コンポーネントの)コンテナ(container)*不変値(invariant)事前条件(precondition)事後条件(postcondition)

Page 12: RM-ODP 概要

構造化概念(組織(化)概念)

12

Part2 Concepts

Basic Interpretation Concepts

Basic Linguistic Concepts

Basic Modeling Concepts

Specification Concepts

Structuring Concepts

Conformance Concepts

Organizational Concepts

Properties of systems and objects

Naming Concepts

Concepts for Behaviour

Management Concepts

基本解釈概念

基本言語概念

基本モデル化概念

仕様概念

構造化概念

適合性概念

組織(化)概念

属性概念

名称概念

振る舞い概念

管理概念

<X> グループ (<X>-group)(オブジェクトの)構成 (configuration (of an object))<X>領域 (<X>-domain)副領域(subdomain)エポック (epoch)参照点 (reference point)適合性点 (conformance point)

Page 13: RM-ODP 概要

構造化概念(属性概念)

13

Part2 Concepts

Basic Interpretation Concepts

Basic Linguistic Concepts

Basic Modeling Concepts

Specification Concepts

Structuring Concepts

Conformance Concepts

Organizational Concepts

Properties of systems and objects

Naming Concepts

Concepts for Behaviour

Management Concepts

基本解釈概念

基本言語概念

基本モデル化概念

仕様概念

構造化概念

適合性概念

組織(化)概念

属性概念

名称概念

振る舞い概念

管理概念

透過性概念分散透過性 (distribution transparencies)

ポリシー概念契約 (contract)サービス品質 (quality of service)環境との契約(environment contract)義務 (obligations)許可(permission)禁止(prohibition)規則(rule)ポリシー (policy)ポリシー宣言(policy declaration)*ポリシー値(policy value)*ポリシーエンベロップ(policy envelop)*ポ リ シ ー 設 定 振 る 舞 い ( policy settingbehaviour)*

時間的属性永続 (persistence)*等時性 (isochronicity)

Page 14: RM-ODP 概要

構造化概念(名称概念)

14

Part2 Concepts

Basic Interpretation Concepts

Basic Linguistic Concepts

Basic Modeling Concepts

Specification Concepts

Structuring Concepts

Conformance Concepts

Organizational Concepts

Properties of systems and objects

Naming Concepts

Concepts for Behaviour

Management Concepts

基本解釈概念

基本言語概念

基本モデル化概念

仕様概念

構造化概念

適合性概念

組織(化)概念

属性概念

名称概念

振る舞い概念

管理概念

名前・名称 (name)識別子 (identifier)名称空間(name space)名称付与文脈(naming context)名称付与動作(naming action)名称付与領域(naming domain)名称付与グラフ(naming graph)名称解決(name resolution)

Page 15: RM-ODP 概要

構造化概念(振る舞い概念 (活動構造))

15

Part2 Concepts

Basic Interpretation Concepts

Basic Linguistic Concepts

Basic Modeling Concepts

Specification Concepts

Structuring Concepts

Conformance Concepts

Organizational Concepts

Properties of systems and objects

Naming Concepts

Concepts for Behaviour

Management Concepts

基本解釈概念

基本言語概念

基本モデル化概念

仕様概念

構造化概念

適合性概念

組織(化)概念

属性概念

名称概念

振る舞い概念

管理概念

(動作の)鎖 (chain (of actions))スレッド (thread)接合動作 (joining action)分割動作 (dividing action)

フォーク動作 (forking action)スポーン動作 (spawn action)

開始動作(head action)サブ活動 (subactivity)確立の振る舞い (establishing behaviour)有効振る舞い (enabled behaviour)契約的文脈 (contractual context)リエゾン (liaison)終了の振る舞い (terminating behaviour)サービス起動側オブジェクト (initiating object)応答側オブジェクト (responding object)(通信に関する)生産者オブジェクト (producer object)(通信に関する)消費者オブジェクト (consumer object)クライアントオブジェクト (client object)サーバーオブジェクト (server object)結合振る舞い (binding behaviour)結合 (binding)結合事前条件 (binding precondition)結合解除 (unbinding behaviour)トレーディング (trading)障害 (failure)誤り (error)失敗 (fault)安定性 (stability)

Page 16: RM-ODP 概要

構造化概念(管理概念)

16

Part2 Concepts

Basic Interpretation Concepts

Basic Linguistic Concepts

Basic Modeling Concepts

Specification Concepts

Structuring Concepts

Conformance Concepts

Organizational Concepts

Properties of systems and objects

Naming Concepts

Concepts for Behaviour

Management Concepts

基本解釈概念

基本言語概念

基本モデル化概念

仕様概念

構造化概念

適合性概念

組織(化)概念

属性概念

名称概念

振る舞い概念

管理概念

アプリケーション管理 (application management)通信管理 (communication management)管理情報 (management information)管理される役割 (managed role)管理する役割 (managing role)管理通知 (management notification)

Page 17: RM-ODP 概要

適合性概念

17

Part2 Concepts

Basic Interpretation Concepts

Basic Linguistic Concepts

Basic Modeling Concepts

Specification Concepts

Structuring Concepts

Conformance Concepts

Organizational Concepts

Properties of systems and objects

Naming Concepts

Concepts for Behaviour

Management Concepts

基本解釈概念

基本言語概念

基本モデル化概念

仕様概念

構造化概念

適合性概念

組織(化)概念

属性概念

名称概念

振る舞い概念

管理概念

参照点のクラスProgrammatic reference pointPerceptual reference pointInterworking reference pointInterchange reference point

構成変更Portability *Migratability *

Page 18: RM-ODP 概要

18

Part 3 (Architecture)の概要

• Part 2で規定した概念に基づきODPシステムをどのように記述するかを定義する。– 枠組み(Framework)

– 標準ビューポイントとビューポイント言語(Viewpoints)• 相関(Correspondence)

– 共通機能(ODP functions)

– 分散透過性(Transparencies)

• ODP仕様と言う場合、普通はPart 3で導入されるビューポイント仕様(モデル)のセットを指す。

Page 19: RM-ODP 概要

19

• ビューポイントの必要性– 複雑さ克服の原則は「分割して統治する」。分散処理の記述は層構造で整理できない。

• システムを分割記述するために「5つの視点」を導入– Enterprise viewpoint

• ODPシステムとその環境に対する視点で、そのシステムの目的、スコープ、ポリシーに関する

– Information viewpoint• ODPシステムとその環境に対する視点で、情報の意味と情報の処理に関する

– Computational viewpoint• ODPシステムとその環境に対する視点で、システムを機能的に分割し、インタフェースにより相互動作するオブジェクトとする

– Engineering viewpoint• ODPシステムとその環境に対する視点で、システムのオブジェクト間の相互動作を支援するメカニズムと機能に関する

– Technology viewpoint• ODPシステムとその環境に対する視点で、システムのテクノロジ選択に関する

– 視点は相互独立。しかし、同じ対象を記述するため、ビューポイント仕様間の整合性確保が必要(Correspondence:相関)。

Viewpoints

Page 20: RM-ODP 概要

Enterprise language

• RM-ODP Part 3: – エンタプライズ仕様はODPシステムの目的、スコープそしてポリシーを記述

– 定義されている概念:Communityと <X>-Federationのみ。

• エンタプライズ言語標準(ISO/IEC 15414 | X.911):– Part 3のエンタプライズ言語を詳細化及び拡張しODPシステムのエンタプライズビューポイント仕様をより詳細・広範囲にわたり記述できるようにする(標準の目的)

– 所有者、利用者、開発者、維持担当者などを含むODPシステムの関係者にとって意味ある形でODPシステムの目的、スコープそしてポリシーを規定するための用語や構造化規則を提供

20

Page 21: RM-ODP 概要

10..* 0..*

Rolefiller

Enterprise Language主要概念

21

Policy Contract

Community

Objective Process

Step

ActionBehaviourRoleEnterpriseObjectCommunityObject

InterfaceRole

Resource

Actor

Artefact

0..*

0..*

0..*

0..*

0..*

0..*

0..*

0..*1 1

1

1

1 1

0..1

1

1..*

1..*

1..*1..*

0..1

0..*0..1

1..*

1..* 1..*

1..*

1..*

0..1

0..1

1..* 1..*

11

specifier

specifier

specifier

specifier

refinement

abstractionmember

identifier

refiner refinement

fulfiller

abstraction

abstraction

refinement

graph

detail

achiever

Page 22: RM-ODP 概要

Information language

• 情報(オブジェクト)の意味と処理– 不変スキーマ(Invariant schema)

• 一つ以上の情報オブジェクトに対して常に真となるべき述語群。述語はオブジェクトの状態と状態遷移を制約。

• UMLではClass図(Class、属性、関連等)+OCL制約記述で表現

– 静的スキーマ(Static schema)

• ある時点での一つ以上の情報オブジェクトの状態についての仕様で、不変スキーマの制約を受ける。

• UMLではObject図で表現

– 動的スキーマ(Dynamic schema)

• 一つ以上の情報オブジェクトの認められる状態遷移についての仕様で、不変スキーマの制約を受ける。

• UMLではState Machineで表現

22

Page 23: RM-ODP 概要

23

Computational language

• インタフェースを通して相互動作するオブジェクトやコンポーネントの世界(CORBAではApplication Objects)を記述

– Computational Objects• Binding Object

– 相互動作(interaction)

• シグナル(signal)

• フロー(flow)

• 操作(operation)– Announcement/Interrogation

– インタフェース(interface)とシグニチャ(signature)

• シグナルインタフェース(シグニチャ)(signal interface (signature))

• ストリームインタフェース(シグニチャ)(stream interface (signature))

• 操作インタフェース(シグニチャ)(operation interface (signature))

• 分散透過性を記述

– 分散透過性スキーマ

Page 24: RM-ODP 概要

24

Engineering language

• Computational Viewpointの世界を実現するためのメカニズム群– Engineering Viewpointでは分散を意識し、分散を見えなくする機能を実現する

• 複製、トランザクション、セキュリティ 等

• いわゆるミドルウェアの機能に近い

– インフラのための共通の枠組み• チャネル

• フェデレーション(連邦)

• インタセプタ

• ノード/カプセル/クラスタ構造 等

Page 25: RM-ODP 概要

25

Technology language

• 実装(具体的なソフトウェア・ハードウェア)に関するビューポイント

– Technology Object (例:PC/サーバ、LAN、OS、ミドルウェア、CPU等)

– Implementable Standard (例:POSIX、SQL等)

– IXIT (実装に対する追加的テスト情報)

– Implementation (例:社内での採用技術選択プロセス)

• 基本的にTechnology ObjectはEngineering Objectを実現

Page 26: RM-ODP 概要

相関仕様

• ビューポイント仕様間の相関

• Part 3とEnterprise Languageに基本的な規定はあるが、必要に応じカスタマイズ。

• 相関仕様を記述する二つのビューポイント仕様

– Enterprise and Information

– Information and Computational

– Enterprise and Computational

– Information and Computational

– Enterprise and Engineering

– Computational and Engineering

– Engineering and Technology

26

Page 27: RM-ODP 概要

27

ODP Functions

• オープン分散処理を実現するため必要な機能群を識別– Management系

• Node, object, cluster, capsule

– Coordination系• Event notification, checkpoint/recovery, group, replication, migration, …

– Repository系• Storage, type, trading, relocation, …

– Security系• Access control, audit, authentication, …

• CORBA Object Servicesに相当

• Web Services(WS-*)においても類似機能有

Page 28: RM-ODP 概要

分散透過性(Transparencies)

• 分散透過性の種類– アクセス(access)– 障害(failure)– 位置(location)– 移動(migration)– 再配置(relocation)– 複製(replication)– トランザクション(transaction)

• 透過性– 対象(例:位置)の存在を意識する必要がない

• ビューポイント– コンピュテーショナルビューポイントの特性として指定– アクセスと位置の二つは最低限備わっていることが必要– 指定値が異なるとコンピュテーショナル仕様も異なるものとなる– ODP機能とエンジニアリングビューポイントの機構で実現

28

Page 29: RM-ODP 概要

RM-ODPの使い方

ODPシステム仕様の書き方(サンプル)

29

Page 30: RM-ODP 概要

Use of UML for ODP system specifications について

• RM-ODPに基づくモデル・仕様をUMLを用いて記述するための規定– RM-ODPは記法独立では?

• 当時(UML以前)ISOに標準記法が無かったことが大きな理由

• UMLが国際標準となったため標準化を開始

– 規定内容• RM-ODP(Enterprise Language含)用UML Profile規定

• UML利用者にはRM-ODPの枠組みに基づく仕様記述手段を提供

• ODP利用者にはUMLという共通記法を用いたODP記述手段を提供

– 実現できること• ビューポイント仕様及びそれらの間の相関仕様の共通記法による記述が可能

• 関係者間での意思疎通・コミュニケーションに大きく寄与できる

• (将来的には)モデル駆動開発のインプットデータとして取り扱える

– 幾つかのUML Tools用にProfileデータを提供• 標準を開発したメンバが関与しデータを作成

• MagicDraw, Enterprise Architect, PatternWeaver

30

Page 31: RM-ODP 概要

RM-ODP支援UMLツール

• UMLツールとRM-ODP追加機能– MagicDraw (No Magic, Inc http://www.magicdraw.com/)

31

http://www.magicdraw.com/uml4odp_pluginより

Page 32: RM-ODP 概要

例:診療所ODPシステム仕様

32

Page 33: RM-ODP 概要

診療所エンタプライズ仕様

33

診療所(E仕様)には三つのコミュニティが含まれ、その一つの予約管理コミュニティをこれから詳細化

Page 34: RM-ODP 概要

予約管理コミュニティ

34

コミュニティ構成要素の概要を示す

Page 35: RM-ODP 概要

予約管理コミュニティーのロール

35

予約管理コミュニティではこのようなロールの存在を想定してモデルを作成

Page 36: RM-ODP 概要

予約管理コミュニティーのオブジェクト

36

予約管理コミュニティーにおけるオブジェクトとロールの割り当て関係を示す

Page 37: RM-ODP 概要

37

ネット予約プロセスネットで予約を取る場合の業務フローに相当

Page 38: RM-ODP 概要

インフォメーション仕様に含まれる要素

• 診療所インフォメーション仕様

38

Page 39: RM-ODP 概要

不変スキーマ

39

情報オブジェクトとその関連等を規定

Page 40: RM-ODP 概要

動的スキーマ

40

IV_Objectの状態遷移を記述

Page 41: RM-ODP 概要

静的スキーマ

41

Page 42: RM-ODP 概要

コンピュテーショナル仕様に含まれる要素

• 診療所コンピュテーショナル仕様

– 構成と分散透過性スキーマ規定

– 機能要素(コンピュテーショナルオブジェクト)構成

– オブジェクト・インタフェース・シグニチャ規定

– オブジェクト間のインタラクション規定

– 利用する共通機能(ODP機能)

42

Page 43: RM-ODP 概要

診療所コンピュテーショナル仕様

43

UML4ODPはTAGを利用分散透過性スキーマ規定例

インタフェースとシグニチャの規定

オブジェクト(コンポーネント)の規定

データタイプの規定

Page 44: RM-ODP 概要

機能要素構成の概要

44

例えばこのような構成を想定

Page 45: RM-ODP 概要

オブジェクト・インタフェース・シグニチャ規定例

45

オブジェクトはUML Componentに対応付けられ、インタフェースはUML Portに対応付けシグニチャはUML Interfaceに対応付ける

Page 46: RM-ODP 概要

オブジェクト間のインタラクション記述例

46

オブジェクト間のインタラクション(オブジェクトの振る舞い)記述にはUMLのダイアグラムを利用

Page 47: RM-ODP 概要

エンジニアリング仕様に含まれる要素

• 診療所エンジニアリング仕様

– ノード・BEO構成

– チャネル構成

47

Page 48: RM-ODP 概要

ノード・チャネル・BEO構成記述例

48

コンピュテーショナル仕様の機能を、どんなノード構成で、どのノードにどんなBEOを配置するか記述

Page 49: RM-ODP 概要

ODP機能

• ODP機能はその殆どがエンジニアリングの世界に所属

• ODP機能を実現するエンジニアリングオブジェクトをどのノードのどのCapsule/Clusterに配置するかを記述

49

c) repository functions:1) storage function;2) information organization function;3) relocation function;4) type repository function;5) trading function+*.

d) security functions:1) access control function;2) security audit function;3) authentication function;4) integrity function;5) confidentiality function;6) non-repudiation function;7) key management function.

a) management functions:1) node management function+;2) object management function+;3) cluster management function+;4) capsule management function+;

b) coordination functions:1) event notification function;2) checkpointing and recovery function;3) deactivation and reactivation function;4) group function;5) replication function;6) migration function;7) engineering interface reference tracking function+;8) transaction function.

Page 50: RM-ODP 概要

テクノロジ仕様に含まれる要素

• 診療所テクノロジ仕様

– テクノロジオブジェクト構成

– 実現標準

– IXIT(付加的テスト情報)

50

Page 51: RM-ODP 概要

テクノロジオブジェクト構成記述例

51

ノード・ネットワーク構成とノード内のオブジェクト構成(次のスライド)あり下の図はノード・ネットワーク構成のみ

Page 52: RM-ODP 概要

実現標準記述例

52

実装が必要な標準について各要素(TV_Object)ごとに記述

Page 53: RM-ODP 概要

相関仕様に含まれる要素

• 診療所相関仕様

– エンタプライズとインフォメーション間

– エンタプライズとコンピュテーショナル間

– エンタプライズとエンジニアリング間

– インフォメーションとコンピュテーショナル間

– コンピュテーショナルとエンジニアリング間

– エンジニアリングとテクノロジ間

• 相関(Correspondence)はビューポイント仕様間の関連付けを行うことで

仕様の完成度を上げるためのものであり、例えばコンピュテーショナルからエンジニアリングへとモデル変換するためのものではない– 利用出来るケースもあるかもしれないが

53

Page 54: RM-ODP 概要

相関仕様記述例(Enterprise-Information)

54

予約について、エンタプライズとインフォメーションで、①作成される予約インスタンスは対応関係があり、②予約登録ステップは予約リクエスト発行と予約作成済の組み合わせに対応

Page 55: RM-ODP 概要

55

Page 56: RM-ODP 概要

参考:仕様作成手順例

• RM-ODPは特定の開発方法論を持たず。– 従って、標準的な仕様作成手順は存在しない。

– そうはいっても、何か参考になるものが欲しい場合がある。

• 2008年夏に解散した(財)情報処理相互運用技術協会(INTAP)のオープンシステムモデリング技術委員会で以前参考になる資料を作成。– 「UMLによるODPシステム記述ガイド」(平成19年度活動成果)

– Google Group: “INTAP ODP Alumni” に掲載

• http://groups.google.com/group/intap-odp-alumni

56

Page 57: RM-ODP 概要

OMGビジネスモデリング標準群との関連

• OMGのBusiness Modeling and Integration (BMI) DTFは各種ビジネスモデリング標準を開発– Business Motivation Model (BMM)– Semantics of Business Vocabulary and Rules (SBVR)– Business Model and Notation (BPMN)– Production Rules Representation (PRR)– Business Process Maturity Model (BPMM)– Workflow Management Facility

• これらはRM-ODP Enterprise Languageの領域に相当

• 今後の考えられる共存形態(個人的見解)– Enterprise LanguageのObjective記述にBMMを利用可能– Enterprise LanguageのProcess記述にBPMNを利用可能– Enterprise LanguageのPolicy記述にSBVRが利用可能(かもしれない)?

57

Page 58: RM-ODP 概要

Eclipse Modeling Projectとの関連

• Eclipse Modeling Project– Eclipse を利用したモデルベース開発(MDSD)プラットフォーム群– RM-ODPと直接対応するものがある?→ NO– ではどんな関連があるか

• Eclipse Modeling Projectは、EMF(Eclipse Modeling Framework)に基づくプロジェクトが中心

• EMFはMOF(OMGのメタメタモデル標準)のサブセット実装で、直接メタモデルに基づいたモデル作成を行う

• RM-ODPのViewpoint Languagesはメタモデル相当であり、関連を持たせることが可能となる (UML Profileとの対応付け可能)

– 具体的には何が可能か• GMF系を用いたグラフィカルモデリングツール• Xtextを用いたテキストベースのモデリングツール• これらを利用するとeclipse環境でODPシステム仕様を記述出来、その結果となるモデルデータ(XMI文書など)を、モデル変換(ATLやQVT)やテキスト変換(XpandやQVT)を行うやはりeclipse環境のツール群へ自然な形で引き渡すことが出来る

58

Page 59: RM-ODP 概要

参考: RM-ODP 仕様記述例(Xtext)

59

Page 60: RM-ODP 概要

RM-ODPの使い方のまとめ

• UMLツールにPluginを組込むことで国際標準に基づくシステム仕様記述が可能– 概念

– 記法(UML/UML Profile)

– 関係者間のコミュニケーションギャップを狭めることに貢献• 同じ言葉(語彙)と記法で会話が出来る

– データ交換• 同じツール間は直接、異なるツール間も export によりデータ交換可能

– 電子データとして、システム仕様の蓄積・分析・解析・(部分的)再利用など活用が期待できる

• OMGビジネスモデリング仕様(BMM/BPMN等)との併用可能

• Eclipse Modeling Projectとの連携(MDSDツールチェーン)も期待

60

Page 61: RM-ODP 概要

• ご清聴どうも有り難うございました。

• ご質問があればお願いします。

61

Open Distributed Processing