• 検索結果がありません。

情報連携を実現するモデルベース手法のためのUML/SysMLについて

N/A
N/A
Protected

Academic year: 2021

シェア "情報連携を実現するモデルベース手法のためのUML/SysMLについて"

Copied!
55
0
0

読み込み中.... (全文を見る)

全文

(1)

情報連携を実現するモデルベース手法

のためのUML/SysMLについて

2013-07-11

オージス総研

米野 巌視

(2)

かんたんな自己紹介

• オージス総研について

– 大阪ガス株式会社の100%出資の情報子会社

– 主に情報システムの構築、運用サービスを提供

– 1990年代よりオブジェクト指向の普及に力を入れる

• 私について

– 1995年頃より、主に金融や通信など情報システムを対象

に、オブジェクト指向のソフトウェア開発や教育に従事

– 2005年頃より、車載システムや自動搬送システムなど、

組み込みシステムが対象のオブジェクト指向開発に従事

(3)

本日の内容

• なぜモデルベースか

– モデルベース手法による情報連携の実現の利点を簡単

にまとめる

• UMLとSysML

– UMLとSysMLについて、情報を定義するのに必要な部分

に絞って説明する

• 課題と展望

– モデルベース手法による情報連携の実現の課題と展望

について簡単にまとめる

(4)

なぜモデルベースか

(5)

データと情報

• 何の値?

45, 44, 2.5, 1.0, 47, 35, 57.8, 52.7

39, 37, 2.5, 1.0, 47, 34, 53.8, 49.2

43.1, 41.0, 2.5, 1.0, 47, 35, 57.8, 52.7

(6)

データと情報

• 値の単位は…

45, 44, 2.5, 1.0, 47, 35, 57.8, 52.7

39, 37, 2.5, 1.0, 47, 34, 53.8, 49.2

43.1, 41.0, 2.5, 1.0, 47, 35, 57.8, 52.7

単位: MJ 単位: KPa

(7)

データと情報

• 値の名前は…

45, 44, 2.5, 1.0, 47, 35, 57.8, 52.7

39, 37, 2.5, 1.0, 47, 34, 53.8, 49.2

43.1, 41.0, 2.5, 1.0, 47, 35, 57.8, 52.7

単位: MJ 単位: KPa ウォッベ 指数 燃焼速度 圧力 熱量

(8)

データと情報

• …ガス事業者が供給する都市ガスの特性(熱量等)

45, 44, 2.5, 1.0, 47, 35, 57.8, 52.7

39, 37, 2.5, 1.0, 47, 34, 53.8, 49.2

43.1, 41.0, 2.5, 1.0, 47, 35, 57.8, 52.7

単位: MJ 単位: KPa ウォッベ 指数 燃焼速度 圧力 熱量 最低ウォッベ指数 最高ウォッベ指数 最低燃焼速度 最高燃焼速度 最低圧力 最高圧力 最低熱量 標準熱量

大阪ガス(13A)

大多喜ガス(13A地区)

大多喜ガス(12A地区)

データは解釈の仕方がわからなければ

意味をなさない

(9)

データと情報

• データと情報の関係

情報

データ

 事実,事象,事物,過程,着想などの対象物に関して知り得たこと

 概念を含む

 一定の文脈中で特定の意味をもつ

(JIS X 0001 – 1994 の定義より)

 情報の表現

 伝達,解釈又は処理に適するように形式化されたもの

 再度情報として解釈できる

(JIS X 0001 – 1994 の定義より)

同じ情報

でも技術が異なれば

違うデータ

利用している技術ごとに異なるルール

(10)

モデルベース ― 情報のモデル化

• 技術的な詳細を隠蔽

– 表現形式 (データ) に依存しない「情報」を定義

• 情報の相互連携

– データ間の相互変換から、モデルを介した相互変換へ

ここをモデルとして定義

データ

(11)

モデルベースのメリット

• わかりやすい

– 技術的な詳細を扱う必要がない

• 異なる技術・表現形式のデータを透過的に扱える

– 情報のモデルを介してデータ交換ができる

• さまざまなデータに柔軟に対応できる

– モデル(情報)とデータ間の変換ルールを決めればよい

• 情報(データの解釈)を共通化できる

– 誰でも同じ解釈ができる

(12)

UMLとSysML

(13)

OMGのモデリング言語

UML

SysML

基礎となる概念

オブジェクト指向

システム工学

モデルの要素

オブジェクト

(「クラス」、「インスタンス仕様」)

ブロック

(「ブロック」、「インスタンス仕様」)

モデルの種類

離散

離散 + 連続

主な用途

ソフトウェア設計

ビジネスモデル(業務)の記述

システム設計

関連する規格

ISO19505-1 (UML Part1),

ISO19505-2 (UML Part2)

ISO 10303-233 (STEP AP233)

応用例

SEMI Standard

ISA-95

OOSEM (INCOSE)

記述できるもの

論理構造

相互作用

手続き

状態

(概念上の)物理構造

(機能に関する)要求

論理構造

相互作用

手続き、または制御

状態

要求

(14)

OMGのモデルベース

• MDA (Model Driven Architecture) とモデリング言語

MDAのモデル種類

Computation Independent

Model (CIM)

Platform Independent

Model (PIM)

Platform Specific Model

(PSM)

コンセプトのモデル

問題領域を記述

ソリューションのモデル

(技術的詳細を含まない)

実装仕様のモデル

(技術的詳細を含む)

言語の適用範囲

UML

Sy

sML

変換

変換

高次な情報

低次な情報

(15)

UMLとは

• オブジェクト指向の汎用モデリング言語

• 特徴

– ソフトウェア工学を中心に幅広く利用されている

– さまざまな分野のモデリング言語の基盤となっている

• SysML: システム工学

• BPMN: ビジネスプロセス

• SoaML: SOA (Service-Oriented Architecture)

(16)

UMLで記述できるモデル

図の名前 主な要素 主な用途 視点 クラス図 クラス、関連、汎化 オブジェクト(データや処理)の型の記述 構造 オブジェクト図 インスタンス仕様、リンク オブジェクト(データや処理)の関係の例示 構造 コンポジット構造図 パート、ポート、コネクター オブジェクトの内部構造の記述 構造 パッケージ図 パッケージ、依存関係 モデル要素の分類の記述 構造 ユースケース図 ユースケース、アクター システムの機能の記述 機能 アクティビティ図 アクション、フロー 処理や制御の流れや手順の記述 振る舞い ステートマシン図 状態、遷移 オブジェクトの状態の変化の記述 振る舞い コミュニケーション図 ライフライン、メッセージ オブジェクト間の相互作用の記述 振る舞い シーケンス図 ライフライン、メッセージ オブジェクト間の通信順序の記述 振る舞い タイミング図 ライフライン、状態 状態間の関係の例示 振る舞い 相互作用概要図 相互作用、フロー 制御の全体像の記述 振る舞い コンポーネント図 コンポーネント、コネクター ファイル等、物理的なモジュールの記述 構造 配置図 ノード、関連 物理的なモジュールの割り当ての記述 構造 プロファイル図 ステレオタイプ、メタクラス UMLをカスタマイズする際の定義(特殊用途) 構造

UML

(17)

情報の定義

• 同じ種類の情報であれば同じ項目(要素)を持つ

– 同じ種類の情報は、表にまとめることができる

ガス事業者

MJ

MJ

KP

a

KP

a

大阪ガス

45

44

2.5

1.0

47

35

57.8 52.7 13A

上越市ガス水道局

43.1 41.0 2.5

1.0

47

35

57.8 52.7 13A

大多喜ガス(13A地区)

45

44

2.5

1.0

47

35

57.8 52.7 13A

大多喜ガス(12A地区)

39

37

2.5

1.0

47

34

53.8 49.2 12A

表: ガス事業者別の「熱量等」(供給ガスの仕様)の例

UML

(18)

情報の定義

• クラス ― 情報の種類

– クラス図に定義

クラス名(情報の名前)

プロパティ(情報の要素)

プロパティ名(情報の要素の名前)

プロパティの型(情報の要素の種類)

クラス

可視性(要素の公開レベル)

UML

可視性の種類 + (public): 外部に公開 # (protected): 継承したクラスに公開

(19)

情報の定義

• データ型 ― 値の種類

– クラス図に定義

– プロパティの型などの種類を定義

– UMLの既定のデータ型

• Boolean:

真偽値

• Integer:

整数

• Real:

実数

• String:

文字列

• UnlimitedNatural:

自然数(無限大∞は「*」記号で記述)

• データ型の定義の例

データ型を表す約束事

データ型の名前

UML

(20)

情報の定義

• 複数の情報で共通する項目(要素)

– 共通する要素は、別の情報の要素として扱う

ガス事業者

MJ

MJ

KP

a

KP

a

大阪ガス

45

44

2.5

1.0

47

35

57.8 52.7 13A

上越市ガス水道局

43.1 41.0 2.5

1.0

47

35

57.8 52.7 13A

大多喜ガス(13A地区)

45

44

2.5

1.0

47

35

57.8 52.7 13A

大多喜ガス(12A地区)

39

37

2.5

1.0

47

34

53.8 49.2 12A

表: ガス事業者別の「熱量等」(供給ガスの仕様)の例

(各ガス事業者の「一般ガス供給約款」より作成)

ガスグループごとに

共通する部分

UML

(21)

情報の定義

• 関連 ― 情報の関係

– クラス図に定義

1

プロパティ名(情報の要素の名前)

多重度(関連先の要素の数)

関連(情報の関係)

別の情報として定義した

共通部分

可視性(要素の公開レベル)

UML

多重度の書き方

下限値

..

上限値

一般的な多重度

「0..1」

「1..1」または「1」

「0..*」または「*」

(22)

関連の種類

• 関連の種類

– 合成集約

• 関連先が関連元の要素で他と共有しない関係

– 集約

• 関連先が関連元の要素で他と共有する関係

– 関連

• 上記以外の関係

• 関連の方向

– 双方向

• 関連元、関連先のどちらからもアクセスする

– 一方向

• 関連元からしかアクセスしない

UML

関連元

関連先

関連元

関連先

関連元

関連先

関連元

関連先

関連元

関連先

関連元

関連先

または

関連元

関連先

または

(23)

情報の定義

• 関連の表示

– 関連はプロパティとして表示できる

UML

(プロパティとして表示した関連)

(同じ「燃焼性」というプロパティ)

(24)

情報の定義

• 装置などの情報

– ガスメーターの事例

配管のガス圧が低下した場合 大量のガスが流れた場合

異常時

復帰

ガス遮断

検針

通常時の機能

安全対策の機能

自動的に

作動

人による

操作

画像出典: 大阪ガスLPG株式会社 ― ガスの検針・配達 (http://www.oglpg.co.jp/service/kenshin.html)

UML

(25)

情報の定義

• 状態 ― 情報が持つ動作や振る舞い

– ステートマシン図に定義

状態

遷移(状態から別の状態への変化)

エフェクト(遷移に伴う挙動)

トリガ(遷移が起こる条件)

開始状態(開始時の状態を指定)

UML

(26)

情報の定義

• 操作 ― 情報が持つ動作や振る舞い

– クラス図に定義

クラス

操作(情報が持つ動作や振る舞い)

操作の引数(この場合、なし)

操作名(動作や振る舞いの名前)

可視性(動作や振る舞いの公開レベル)

UML

(27)

情報の定義

• 都市ガスの供給設備と防災対策

画像出典: 都市ガスの安定供給 ― 大阪ガス (http://www.osakagas.co.jp/safety/1-supply.html)

UML

(28)

情報の定義

• 汎化 ― 情報の分類

– クラス図に定義

汎化(情報の分類上の関係)

(ある情報に共通する部分)

(一部の情報に固有な部分)

一般的な整圧器

の情報の定義

特殊な整圧器の

情報の定義

UML

(29)

情報の定義

• 汎化と継承

– 継承

• サブタイプの情報がスーパータイプの情報の要素を引き継ぐこと

各情報はそれぞれ異なる値を持つ

整圧器の 実際の情報 遠隔遮断整圧器 の実際の情報

遠隔遮断整圧器の情報は、整圧器の要素

UML

(30)

情報の内部構造の定義

• パート、ポート、コネクター ― 情報の要素と関係

– コンポジット構造図に定義

UML

クラス(情報の種類)

パート(情報の要素)

ポート(要素をつなぐ要素)

コネクター(要素の関係)

クラス図では、パートは合成関係、

ポートはプロパティとして表示される

(31)

情報の定義

• 参考: 都市ガス供給設備のクラス図

(32)

情報の定義

• 参考: 都市ガス供給設備のコンポジット構造図

(33)

SysMLとは

• システム工学分野に特化したモデリング言語

• 特徴

– UMLを簡略化し、システム工学として不足している部分を

追加・拡張

– STEP AP233(システム工学)がベース

– STEPとの相互接続性を考慮

SysML

(34)
(35)

SysMLで記述できるモデル

図の名前 主な要素 主な用途 視点 要求図 要求、依存関係 要求とその関係の記述 構造 ブロック定義図 ブロック、関連 システム要素(データや機能、装置など)の型の記述 構造 内部ブロック図 プロパティ、ポート、コネクター システム要素の内部構造の記述 構造 パラメトリック図 制約ブロック 、コネクター システム要素間の制約の記述 構造 パッケージ図 パッケージ、依存関係 モデル要素の分類の記述 構造 ユースケース図 ユースケース、アクター システムの機能の記述 振る舞い アクティビティ図 アクティビティ、フロー 処理や制御の流れや手順の記述 振る舞い シーケンス図 ライフライン、メッセージ オブジェクト間の通信順序の記述 振る舞い ステートマシン図 状態、遷移 オブジェクトの状態の変化の記述 振る舞い

SysML

(36)

UMLの図との対応

SysML

UML

変更点

要求図

クラス図

クラス図を元に追加

ブロック定義図

クラス図

一部表記を変更

内部ブロック図

コンポジット構造図

一部表記を変更

パラメトリック図

コンポジット構造図

用途を限定

パッケージ図

パッケージ図

なし

ユースケース図

ユースケース図

なし

アクティビティ図

アクティビティ図

連続性に対応

シーケンス図

シーケンス図

なし

ステートマシン図

ステートマシン図

なし

SysML

(37)

情報の定義

• ブロック ― 情報の種類

– ブロック定義図に定義

ブロック名(情報の名前)

プロパティ(情報の要素)

ブロックを表す約束事

1

プロパティ名(情報の要素の名前)

プロパティの型(情報の要素の種類)

多重度(情報の要素の数)

ブロック(情報の種類)

SysML

UMLとの対応 P21

(38)

情報の定義

• 値型 ― 値の種類

– ブロック定義図に定義

– プロパティの型などの種類を定義

– 値型が表す「量の種類(次元)」と「単位」も定義できる

• SI単位系が参考情報(non-normative)として規定されている

– SysMLの既定の値型

• Boolean:

真偽値

• Complex:

複素数

• Integer:

整数

• Number:

Complex, Integer, Real の総称

• Real:

実数

• String:

文字列

(39)

情報の定義

• 値型の定義の例

値の名前

値型を表す約束事

単位を表す約束事

量の種類を表す約束事

※1

量の種類の名前

単位名

単位が扱う量の種類

SysML

UMLとの対応 P19

(40)

情報の定義

• 制約ブロック ― 情報に対するルールや法則

– ブロック定義図に定義

SysML

制約名(ルールや法則の名前)

制約パラメーター(ルールや法則の持つ変数)

制約ブロックを表す約束事

制約ブロック(ルールや法則)

制約(ルールや法則の実態)

UMLとの対応 P21

(41)

関連の種類

• 関連の種類

– パート関連

• 関連先が関連元の要素で他と共有しない関係

– 共有関連

• 関連先が関連元の要素で他と共有する関係

– 参照関連

• 上記以外の関係

• 関連の方向

– 双方向

• 関連元、関連先のどちらからもアクセスする

– 一方向

• 関連元からしかアクセスしない

SysML

関連元

関連先

関連元

関連先

関連元

関連先

関連元

関連先

関連元

関連先

(42)

UMLとの違い

• プロパティの種類(区別して表示できる)

– parts: パート関連のプロパティ

– references: パート関連以外の関連のプロパティ

– values: 値型のプロパティ

– ports: 他のブロックと相互作用するポートのプロパティ

– parameters: 制約ブロックの制約パラメーター

– properties: 上記すべての種類の総称

共有関連のプロパティ

プロパティの種類名

値型のプロパティ

SysML

(43)

情報の定義

• 状態 ― 情報が持つ動作や振る舞い

– ステートマシン図に定義

状態

遷移(状態から別の状態への変化)

エフェクト(遷移に伴う挙動)

トリガ(遷移が起こる条件)

開始状態(開始時の状態を指定)

SysML

UMLとの対応 P25

(44)

情報の定義

• 操作 ― 情報が持つ動作や振る舞い

– ブロック定義図に定義

操作(情報が持つ動作や振る舞い)

操作の引数(この場合、なし)

操作名(動作や振る舞いの名前)

SysML

UMLとの対応 P26

(45)

情報の定義

• 汎化 ― 情報の分類

– ブロック定義図に定義

汎化(情報の分類上の関係)

(ある情報に共通する部分)

(一部の情報に固有な部分)

一般的な整圧器

の情報の定義

特殊な整圧器の

情報の定義

SysML

UMLとの対応 P28

(46)

情報の内部構造の定義

• プロパティ、ポート、コネネクター ― 要素と関係

– 内部ブロック図に定義

SysML

ブロック(情報の種類)

プロパティ(情報の要素)

ポート(要素をつなぐ部分)

コネクター(要素の関係)

ポートで情報のやり取りがされ

る場合、情報の流れる方向を

矢印で図示する

UMLとの対応 P30

(47)

情報の定義

• 参考: 都市ガス供給設備のブロック定義図

SysML

UMLとの対応 P31

(48)

情報の定義

• 参考: 都市ガス供給設備の内部ブロック図

SysML

UMLとの対応 P32

(49)

UMLとSysMLのまとめ

情報の定義

UML

SysML

種類

クラス

18 ブロック

37

要素

プロパティ

18 プロパティ

37

値の種類

データ型

19 値型、量の種類、単位

38

関係

関連

21 関連

37

動作や振る

舞い

状態

25 状態

43

操作

26 操作

44

分類

汎化

28 汎化

45

内部構造

パート、ポート、コネクター

30 プロパティ、ポート、コネク

ター

46

その他

― 制約ブロック

40

(50)

課題と期待

(51)

どの情報まで扱うのか?

• ナレッジマネジメントにおける情報の階層例

David McCandless , Hierarchy Of Visual Understanding?を参考に作成 関連した要素 断片化した要素 組織化された情報 適用された知識

データ

情報

知識

卓識

組織化の深化 (意味の深化?)

固有の知見・ノウハウ

一般的な知見・ノウハウ

基礎・常識

解釈の例

情報以前

独自性が高い

独自性が低い

(52)

モデリング&シミュレーション (M&S)

• モデリングとシミュレーションは補完しあう関係

– シミュレーションにはモデルが必要

– モデルの評価にはシミュレーションが有効

MILS

モデル

シミュレー

ション

(Model In the Loop Simulation)

OMGのモデリング言語とシミュレーション

UML

fUML

UMLモデルを実行するための仕様

SysML

SyM

シミュレーションが可能な物理モデリング言語ModelicaとSysMLを連

(53)

ツールチェーン ― モデルの連携と活用

• UMLとSysMLのツールチェーンの例

※1

SysMLツールチェーン

UMLツールチェーン

UML

SysML

モデリング

ツール

Modlica

シミュレー

ション ツール

CAD/CAM/

CAE

UML

モデリング

ツール

fUML

UML

シミュレー

ション ツール

SysML

AP233

AP2xx

Modelica

SyM

(54)

モデルベースの活用例

• NASAの事例

– SysMLモデルの活用

出典: Modeling Failure Modes with SysML, NASA, 2012-04

(55)

ご清聴ありがとうございました

オージス総研

組み込みソリューション第一部

米野 巌視

参照

関連したドキュメント

以上の結果について、キーワード全体の関連 を図に示したのが図8および図9である。図8

テキストマイニング は,大量の構 造化されていないテキスト情報を様々な観点から

実際, クラス C の多様体については, ここでは 詳細には述べないが, 代数 reduction をはじめ類似のいくつかの方法を 組み合わせてその構造を組織的に研究することができる

名刺の裏面に、個人用携帯電話番号、会社ロゴなどの重要な情

層の項目 MaaS 提供にあたっての目的 データ連携を行う上でのルール MaaS に関連するプレイヤー ビジネスとしての MaaS MaaS

各テーマ領域ではすべての変数につきできるだけ連続変量に表現してある。そのため

SFP冷却停止の可能性との情報があるな か、この情報が最も重要な情報と考えて

汚染水処理設備,貯留設備及び関連設備を構成する機器は, 「実用発電用原子炉及びその