Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
UMLだけじゃない、もやもやを解消するモデリング技術の紹介その1: GSN
Search
toshinoritakai
October 23, 2019
Technology
0
830
UMLだけじゃない、もやもやを解消するモデリング技術の紹介 その1: GSN
安全性の論証などに使われるモデリング言語GSN(Goal-Structuring Notation、ゴール構造化表現)を紹介します。
toshinoritakai
October 23, 2019
Tweet
Share
More Decks by toshinoritakai
See All by toshinoritakai
Continuous modeling supports from business analysis to systems engineering in IoT development
toshinoritakai
0
220
モデルベースシステムズエンジニアリングの活用
toshinoritakai
1
940
ものづくりにおける GSN/D-Case による安全論証と合意
toshinoritakai
0
280
数理議論学に基づく仕様書の不整合解消支援
toshinoritakai
1
500
リバースエンジニアリングにおけるSysMLの可能性
toshinoritakai
2
1.3k
Other Decks in Technology
See All in Technology
開発効率と信頼性を両立する Ubieのプラットフォームエンジニアリング
teru0x1
0
140
AIにどこまで任せる?実務で使える(かもしれない)AIエージェント設計の考え方
har1101
3
1k
JSX - 歴史を振り返り、⾯⽩がって、エモくなろう
pal4de
2
110
Digitization部 紹介資料
sansan33
PRO
1
4.2k
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.2k
"SaaS is Dead" は本当か!? 生成AI時代の医療 Vertical SaaS のリアル
kakehashi
PRO
3
190
OCI Oracle Database Services新機能アップデート(2025/03-2025/05)
oracle4engineer
PRO
1
140
Rubyで作る論理回路シミュレータの設計の話 - Kashiwa.rb #12
kozy4324
1
220
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
280
宇宙パトロール ルル子から考える LT設計のコツ
masakiokuda
2
100
Eight Engineering Unit 紹介資料
sansan33
PRO
0
3.4k
生成AIをテストプロセスに活用し"よう"としている話 #jasstnano
makky_tyuyan
0
150
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
5.6k
The World Runs on Bad Software
bkeepers
PRO
68
11k
Product Roadmaps are Hard
iamctodd
PRO
53
11k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
650
Building a Scalable Design System with Sketch
lauravandoore
462
33k
YesSQL, Process and Tooling at Scale
rocio
172
14k
KATA
mclloyd
29
14k
Building Applications with DynamoDB
mza
95
6.4k
Stop Working from a Prison Cell
hatefulcrawdad
269
20k
GraphQLとの向き合い方2022年版
quramy
46
14k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
16
920
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Transcript
UMLだけじゃない、もやもやを解消 するモデリング技術の紹介 その1: GSN 2019年10月23日@第3回astah関西勉強会 株式会社チェンジビジョン 高井 利憲 1
GSNの簡単な紹介 • GSN = Goal Structuring Notation (ゴール構造化表現) 2 •
その名の通り、ゴール/ 目的/意図の構造が書ける – ゴールは文脈が大事 • 文脈が書ける – ゴールは達成するもの • 達成の戦略が書ける • 達成見込みの根拠が書ける • 主に、システムの安全性の 論証で使われる
参考:GSNの要素 • 注: ゴールに記述する内容は、より一般的に「主張」と呼ばれる • 注:全体として、主観的な主張について、客観的な証拠に基づいた論証を記述するよう な構造になる 3
ゴールに記述する主張の例 • 設計が妥当である • 仕様が妥当である • テストケースが十分である • システムが安全である •
会社の価値は向上できる • プロジェクトの目標は達成できる 4
設計が妥当であることのGSNの例 • 組込みシステムのソフトウェア の設計パターンがたくさん載っ ている本の例を使います – 2001年頃の本 • 洗濯機の制御ソフトウェアの設 計を考える
5 https://www.safetty.net/publications/pttes
洗濯機制御システムのコンテキスト図 ユースケース分析の結果(ここでは省略)、次の ような機能が必要であることが分かった 6
設計案①: 機能毎にタスクを用意 7 の本では以下のような設計の可能性を紹介 実際にはソースコードの一部を掲載
設計案②: タスクを一つにする の本では以下のような設計を紹介 実際にはソースコードを掲載 8
• の本では設計案②がよいとする • 理由 – 設計案①の場合、少しだけのことをするタスクが 大量にできる。外部記憶がないこの例の場合は、 RAMメモリを大量消費するので問題になる – あるタスクで参照するフラグについて、どこでセット
されるかや、他のタスクで似たようなフラグが必要 になるか、といったことが不明 どちらの設計案がよいか? 9
GSNで書いてみる:上位構造 10 そもそもタスクの 設計を考えている 背景を文脈として 書いておく そもそも設計案② でも仕様を実現で きることも妥当性 を言うには必要
GSNの下位構造 11 メモリが豊富に使 える状況では結論 は変わりうること が読み取れる
仮の証拠を置いてみる 12 例えば、自動的 に網羅検証でき る手法が使える ようになれば結論 が変わりうること が読み取れる
GSNを開発現場に導入することにより期待できること • 設計や仕様などの意図がモデルとして 共有できる – UML/SysMLでは表現しにくいもの • 状況が変わったときに、対応を変更する必要があるか どうかを系統的に判断できる –
エキスパートに依存しない • 現場の知見を系統的に蓄積できる – チェックリストでは、根拠が見えにくいため、項目が増える 一方になりがち 13
GSNはこんなところで使われています • MISRA Guidelines for Automotive Safety Arguments – https://www.misra.org.uk/Publications/tabid/57/Defa
ult.aspx#label-gasa – 自動車の機能安全規格ISO26262のガイド • European Aeronautical Information System Database(EAD) Safety Case – https://www.eurocontrol.int/publication/ead-safety- case – ヨーロッパの航空管制システムに関する安全論証 14
GSNがこんなところで使うことが増えそうです • 自動車の自動運転分野 – 意図する機能の安全性に関する公開仕様 • ISO/PAS 21448:2019, Road Vehicles
– Safety of the intended functionality • プロジェクトマネジメント – ブログ記事『GSN広めよう活動奮闘記』 • 三菱電機エンジニアリング株式会社様 • https://ja.astahblog.com/2019/05/08/case_study_for_gsn/ もし皆さんも、日頃、意図や根拠などの意思疎通が原因 のもやもやを感じられてましたら、GSNを試してみてくだ さい 15