超入門 システム開発モデリング言語 sysml … › files › 000048310.pdf2...

30
超入門 システム開発モデリング言語 SysMLとGSN(D-Case) 株式会社チェンジビジョン 平鍋健児 1

Upload: others

Post on 06-Jul-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

超入門

システム開発モデリング言語 SysMLとGSN(D-Case)

株式会社チェンジビジョン

平鍋健児

1

Page 2: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

2

≪講演概要≫

システム開発の中で、「モデリング」の占める役割はますます大きくなってきました。

本セッションでは、その中でも、システム全体をモデリングするSysML、および、安全性やセキュrリティの分野で使われて始めた D-Case(GSN)について、入門的な内容をお話します。

Page 3: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

3

自己紹介 ㈱永和システムマネジメント

–福井市(本社)、上野東京(支社)

– Ruby と Agileを使ったシステム開発

株式会社チェンジビジョン –福井市(開発部)、上野東京(本社)

– astah* (旧:JUDE) の開発

平鍋健児 – UML+マインドマップエディタ astah*の開発

–要求開発アライアンス、理事

–翻訳、XP関連書籍、『リーン開発の本質』 『IMPACT MAPPING』等多数。

–著書『アジャイル開発とスクラム』、『要求開発』 『ソフトウェア開発に役立つマインドマップ』

Page 4: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

モデリング技術を概観する

4

Page 5: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

5

情報システム 組込みシステム

メカCAD ECAD

制御

ソフトウェア

UML (離散系/

情報系) Simulink(連続系/制御系)

UML,ER, DFD,BPMN.. (データ,プロセス,..)

システムのモデリング言語

SysML(要求、構造、振舞、制約) SysML(統合系)

システム/SoS

SysML(要求、構造、振舞、制約)

アシュランス

GSN(D-Case) 保証議論

SafeML(安全+設計情報)

SCDL (ISO26262の

安全コンセプト)

2

4

3

1

Page 6: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

SysML (Systems Modeling Language

MBSEの言語)

6

1

Page 7: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

SysMLの4つの柱

7 http://www.omgsysml.org/より引用

1. 構造 2. 振る舞い

4. パラメトリック 3. 要求

Page 8: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

SysMLとUML

8

分類 UML SysML

要求 ー 要求図

振る舞い

ユースケース図 ユースケース図

アクティビティ図 アクティビティ図(拡張)

ステートマシン図 ステートマシン図

シーケンス図 シーケンス図

コミュニケーション図 ー

相互作用概要図 ー

タイミング図 ー

構造

パッケージ図 パッケージ図

クラス図 ブロック定義図

オブジェクト図 ー

合成構造図 内部ブロック図

コンポーネント図 ー

配置図 ー

パラメトリック ー パラメトリック図

SysMLは、UMLよりコンパクト

Page 9: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

SysMLを使ったRTCベースの ロボットアプリケーション開発 : 事例ケースタディとデモ

平鍋健児(Change Vision, Inc) 安藤慶昭(産総研)

一昨年OMGで発表された事例。 http://www.slideshare.net/hiranabe/using-sysml-in-an-roboti-application

Page 10: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

自律ロボットを遠隔操作し、2つの動き (Spiral と Back-and-

Forth) をさせる。Operatorは自律

モードとデモモード切り替えることができる。

ハードウェアアーキテクチャはあらかじめ決まっている。PCを乗せたRoombaを、Wi-Fi通信で、Kinectを使ってモードスイッチする。

問題記述

kinect

Operator Controller PC

Receiver PC

Roomba

Wi-Fi

Page 11: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

req [コア要求(問題文)]

Page 12: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

req [Robotへの要求]

Page 13: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

uc [デモユースケース]

Page 14: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

bdd [コンテキスト図]

Page 15: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

bdd [システム概要]

Page 16: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

ibd [デモシステム]

Page 17: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

ibd [controller物理構造]

Page 18: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

問題 1

• SysML の4つの柱は、

1.構造

2.振る舞い

3.要求

4.パラメトリック

18

Page 19: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

Assurance Case GSN/D-Case

(Goal Structuring Notation ゴール指向で議論を記述)

19

2

Page 20: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

20

Page 21: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

DEOS Process DEOS: The Open Groupで標準化

21 出典: DEOS協会 http://deos.or.jp/technology/process-j.html

Page 22: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

GSNの記法と例

Page 23: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

GSN(D-Case)

• ある「主張」を行うための議論構造をグラフィカルに表現した図(Goal Structuring Notation)

• ヨーク大学 Tim Kelly の研究。

• セーフティケースを記述する手法として利用される。

• ノードとして、「ゴール」(主張)、「戦略」、「コンテキスト」、「ソリューション」(証拠)、などがある。

• ゴールをサブゴールに分割し、ソリューション(証拠)と結んで立証する。

• Safety 以外にも Dependability やSecurity を Assure する用途に使えるので、 「Assurance Case」と総称する。

• D-Case: GSNを拡張し、デペンダビリティケースを表現する、DEOSで開発された記法

Page 24: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

セキュリティにGSNを利用する例

24 Copyright (C) 2014 Change Vision Corporation. All Rights Reserved.

• DHS(米国国土安全保障省)のリソース

Page 25: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

GSNによるセキュリティ(1)

25

Page 26: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

GSNによるセキュリティ(2)

26

Page 27: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

問題 2

• GSN(D-Case) において、前提となる知識や標準、外部文書を指し示すノードは何か?

1. ゴール(Goal)

2. 戦略 (Strategy)

3. 文脈 (Context)

4. 証拠(Evidence/Solution)

27

Page 28: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

Are You Modeling?

(現代モデリング技術の情報源)

28

Page 29: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

29 http://areyoumodeling.com

Page 30: 超入門 システム開発モデリング言語 SysML … › files › 000048310.pdf2 ≪講演概要≫ システム開発の中で、「モデリング」の占める役割はます

30 http://ja.areyoumodeling.com