SlideShare a Scribd company logo
1 of 12
Download to read offline
ディペンダビリティとソフトウェア工学
ディペンダビリティ = 頼れるということ!
→ 「ソフトウェア工学」 その中で特に,
形がないものの「仕様」や「設計」を描く(モデリングする)
ソフトウェア・システムはどういう世界で何をするのか?
1.どうしてうまくいくのか説明する(証明・論証)
2.うまくいかないケースを見つけ出したり
一通り試して確認したりする(テスト)
3.システム自身が実行時に正しく再設計する(自己適応)
4.何を作りたいのか追求する(要求分析)
先端スマートシステムも対象に & 先端スマート技術も活用!
1.どうしてうまくいくのか
説明する(証明・論証)
エンジニアの「大ざっぱな指示」に従い,システムモデルを
正しさの保証を壊さないように補完しつつ多段階抽象化
段階的詳細化の構造変更支援
研究 1/10
車が・・・センサーが・・・サーバが・・・信号が・・・
→ よって安全だ,と言える??
駐車スペース
の話だけ
一方通行の
橋も考える
信号・センサ
ーも考える
各段階の
正しさ
+
段階間の
正しさ
適当にぼかしばらすと,
各段階で筋が通らなくなる
↓
記述を補完
理解容易性
自動検証成功率
再利用性
※ 実際はモデリング言語(Event-B等)で
[ Kobayashi@FM’16 ]
ややこ
しすぎ
多段階で
考えよう!
ポスター
A11
2.うまくいかないケースを見
つけ出したり, 一通り試して確
認したりする(テスト)
気づきを促しやすいような具体例のリストを生成して,
仕様の妥当性を実感・確認させる
仕様妥当性確認のためのテスト生成
研究 2/10[ Saeki@ICFEM’16 ]
• 学生は講義をいくつか履修する
• 講義はある時限に開講される
• 学生はある講義のアシスタントを
することがある
• 学生は同じ時限に開講される
複数の講義を履修できない
• ・・・
ルールの羅列,十分性
の実感が難しい!
間違いが起きやすい
ような特徴をもつ
具体例をいくつか提示
自分のレポートを自分で採
点する学生が存在しうる!
制約漏れや
過剰な制約の発見
繰り返し実行してみることで「欲しいケース」をあぶり出す
CPSへのテスティング技術深化
研究 3, 4/10[ Kato@MT-CPS’18 ]
「あぶり出し方」を学習し,問題が少し
変わってもさっと対応できるようにする
テストシミュレーションの
様々な設定パラメータ
• アクセル・ブレーキ操作
• 歩行者位置
• 路面状況
・・・
運転支援
システム
今度はアクセル
最初踏み込んで
みる?
早く見つかる!
• 例:歩行者に一定距離以
内に近づくケース
• 例:バージョンアップで挙動
が大きく変わったケース
Cyber-Physical Systems
様々なバリエーション
であぶり出し訓練
少しの設計変更や,
環境・製品変化があっても
さっとテスト可能に!
※ サーチベースドテスティング
※ 強化学習
ポスター
A12
従来とは異なる不確かさを持つシステムに対して,
様々なテストを通し「しっかり作った」ことを確認し続ける
機械学習システムの継続的品質評価
研究 5/10
機械学習:動作プログラムを人が書かずに,訓練して作る
↓
不完全で,どういうときに失敗するかよくわからない
これまでのテスティング技術を
総動員&発展
例: 「あぶり出し」で失敗ケースを見つける
「一通り想定したから大丈夫」ではなく
「未知」の部分とずっと向き合って管理
でもやっぱり
完全たりえない
[ Ishikawa@ASSURE’18, Ishikawa@ER’18 ]
ポスター
A10
3.システム自身が実行時に正
しく再設計する(自己適応)
多数の資源・サービス選択肢があるクラウドにおいて,
それらの提供状況や要求の変化を踏まえて自動設計する
自動(再)設計・自己適応
研究 6/10
[ Klein@TSC’14, Wagner@TSC’16, Wu@TPDS’17 ]
かみ合って動く?
Internet of
Services
費用,実行時間,信頼性,
評判,・・・
失敗・障害への対応
ワークフロー
サービス
割り当て
欲しい出力出せる?
機能整合,品質,
失敗の可能性まで
すべて考慮する
効率的自動設計
状況がどんどん変化する中で,様々な機器を活用するよう,
ユーザとともに整合性あるシステムを再設計する
例: スマートホームに新アプリインストール時
「大気汚染アラート発生で窓を閉じる」
「部屋のCO2濃度が高いときは窓を開ける」
後者を優先しますがよいですか?
環境変化を受けて,
整合性検証と設計を
システム自身が
適宜やり直す
[ Yagita@SEsCPS’15 ]
ポスター
A9
4.何を作りたいのかを
追求する(要求分析)
システムが動く「世界」をとらえ整理する方法を,
法解釈の整理に活用し,これから作るシステムに反映
要求分析
研究 8,9/10
[ Ishikawa@JURISIN’12 ]
評判や使い勝手でアプリがどんどん選ばれては
捨てられるアプリストア,傾向と対策は?
[ Lim@TSE’15, Lim@TEVC’16 ]
不正競争法における「営業秘密」として
扱うための要件に関する解釈(法の外にある)
エンジニアにとって扱いやすく,
要求文書への自動反映も可能に
国ごとの傾向がある
• 日本ではレビューを付けない人が多く,
検索のためにアプリを使う人が多い
• 中国だととにかく「1位」のアプリをまず試す
• 韓国だと暇つぶしでインストールするが多い
実践教育&応用研究・コミュニティ
ソフトウェア工学の技術は,状況に合わせて人(エンジニア)がうまく使うもの
• トップエスイープログラム @ GRACEセンター
– 応用を見据えた独自の社会人向け講義
– 個々の課題に応じた応用研究
• AI・機械学習における新しい課題に立ち向かう活動
– 機械学習工学研究会
– AIプロダクト品質保証コンソーシアム
エンジニアや組織が,それぞれの問題に立ち向かっていく
ことを支援する
研究 10/10
※ 「銀の弾丸」はない
ポスター
A7, 8, 10

More Related Content

What's hot

SPICEによる論文支援サービス
SPICEによる論文支援サービスSPICEによる論文支援サービス
SPICEによる論文支援サービスTsuyoshi Horigome
 
システムテスト自動化標準ガイド 読書会 第8章
システムテスト自動化標準ガイド 読書会 第8章システムテスト自動化標準ガイド 読書会 第8章
システムテスト自動化標準ガイド 読書会 第8章mirer
 
テスト自動化のこれまでとこれから
テスト自動化のこれまでとこれからテスト自動化のこれまでとこれから
テスト自動化のこれまでとこれからKeizo Tatsumi
 
#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプライン
#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプライン#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプライン
#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプラインkyon mm
 
システムテスト自動化標準ガイド 5章発表資料
システムテスト自動化標準ガイド 5章発表資料システムテスト自動化標準ガイド 5章発表資料
システムテスト自動化標準ガイド 5章発表資料Masatoshi Itoh
 
JaSST16tokyo tm_koyama
JaSST16tokyo tm_koyamaJaSST16tokyo tm_koyama
JaSST16tokyo tm_koyamaryuji koyama
 

What's hot (6)

SPICEによる論文支援サービス
SPICEによる論文支援サービスSPICEによる論文支援サービス
SPICEによる論文支援サービス
 
システムテスト自動化標準ガイド 読書会 第8章
システムテスト自動化標準ガイド 読書会 第8章システムテスト自動化標準ガイド 読書会 第8章
システムテスト自動化標準ガイド 読書会 第8章
 
テスト自動化のこれまでとこれから
テスト自動化のこれまでとこれからテスト自動化のこれまでとこれから
テスト自動化のこれまでとこれから
 
#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプライン
#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプライン#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプライン
#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプライン
 
システムテスト自動化標準ガイド 5章発表資料
システムテスト自動化標準ガイド 5章発表資料システムテスト自動化標準ガイド 5章発表資料
システムテスト自動化標準ガイド 5章発表資料
 
JaSST16tokyo tm_koyama
JaSST16tokyo tm_koyamaJaSST16tokyo tm_koyama
JaSST16tokyo tm_koyama
 

Similar to スマートなシステム、スマートなディペンダビリティ保証-次世代システムを頼れるものへ

GCSアジャイル開発を使ったゲームの作り方
 GCSアジャイル開発を使ったゲームの作り方 GCSアジャイル開発を使ったゲームの作り方
GCSアジャイル開発を使ったゲームの作り方Hiroyuki Tanaka
 
とりあえず30分でひととおり分かった気にはなれるアジャイル入門
とりあえず30分でひととおり分かった気にはなれるアジャイル入門とりあえず30分でひととおり分かった気にはなれるアジャイル入門
とりあえず30分でひととおり分かった気にはなれるアジャイル入門陽一 滝川
 
Kobe sec#7 summary
Kobe sec#7 summaryKobe sec#7 summary
Kobe sec#7 summaryYukio NAGAO
 
ワンクリックデプロイ101 #ocdeploy
ワンクリックデプロイ101 #ocdeployワンクリックデプロイ101 #ocdeploy
ワンクリックデプロイ101 #ocdeployRyutaro YOSHIBA
 
TERAS Conference
TERAS ConferenceTERAS Conference
TERAS ConferenceKeiju Anada
 
Qs information20110615
Qs information20110615Qs information20110615
Qs information20110615Kei Nakahara
 
アジャイル開発&TFS導入
アジャイル開発&TFS導入アジャイル開発&TFS導入
アジャイル開発&TFS導入You&I
 
Jenkins ユーザ・カンファレンス 2012 東京 S406-4/マルチステージ型継続的インテグレーションのすすめ
Jenkins ユーザ・カンファレンス 2012 東京 S406-4/マルチステージ型継続的インテグレーションのすすめJenkins ユーザ・カンファレンス 2012 東京 S406-4/マルチステージ型継続的インテグレーションのすすめ
Jenkins ユーザ・カンファレンス 2012 東京 S406-4/マルチステージ型継続的インテグレーションのすすめatsushi_tmx
 
XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」
XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」
XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」Shuji Morisaki
 
テスト駆動開発の導入ーペアプログラミングの学習効果ー
テスト駆動開発の導入ーペアプログラミングの学習効果ーテスト駆動開発の導入ーペアプログラミングの学習効果ー
テスト駆動開発の導入ーペアプログラミングの学習効果ーShuji Watanabe
 
高信頼性を確保するソフトウェア開発手法と実践 -組込み製品の潜在的価値を今以上に高めるために-
高信頼性を確保するソフトウェア開発手法と実践-組込み製品の潜在的価値を今以上に高めるために-高信頼性を確保するソフトウェア開発手法と実践-組込み製品の潜在的価値を今以上に高めるために-
高信頼性を確保するソフトウェア開発手法と実践 -組込み製品の潜在的価値を今以上に高めるために-Yoshio SAKAI
 
今、おさえておきたい DevOps
今、おさえておきたい DevOps 今、おさえておきたい DevOps
今、おさえておきたい DevOps 智治 長沢
 
13_B_5 Who is a architect?
13_B_5 Who is a architect?13_B_5 Who is a architect?
13_B_5 Who is a architect?Atsushi Fukui
 
スクラムプロジェクト準備(公開用) No.31
スクラムプロジェクト準備(公開用) No.31スクラムプロジェクト準備(公開用) No.31
スクラムプロジェクト準備(公開用) No.31Sukusuku Scrum
 
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説Daisuke Nishino
 

Similar to スマートなシステム、スマートなディペンダビリティ保証-次世代システムを頼れるものへ (20)

鹿駆動
鹿駆動鹿駆動
鹿駆動
 
GCSアジャイル開発を使ったゲームの作り方
 GCSアジャイル開発を使ったゲームの作り方 GCSアジャイル開発を使ったゲームの作り方
GCSアジャイル開発を使ったゲームの作り方
 
とりあえず30分でひととおり分かった気にはなれるアジャイル入門
とりあえず30分でひととおり分かった気にはなれるアジャイル入門とりあえず30分でひととおり分かった気にはなれるアジャイル入門
とりあえず30分でひととおり分かった気にはなれるアジャイル入門
 
Kobe sec#7 summary
Kobe sec#7 summaryKobe sec#7 summary
Kobe sec#7 summary
 
ワンクリックデプロイ101 #ocdeploy
ワンクリックデプロイ101 #ocdeployワンクリックデプロイ101 #ocdeploy
ワンクリックデプロイ101 #ocdeploy
 
Quality characteristics
Quality characteristicsQuality characteristics
Quality characteristics
 
TERAS Conference
TERAS ConferenceTERAS Conference
TERAS Conference
 
Qs information20110615
Qs information20110615Qs information20110615
Qs information20110615
 
アジャイル開発&TFS導入
アジャイル開発&TFS導入アジャイル開発&TFS導入
アジャイル開発&TFS導入
 
Qs info002
Qs info002Qs info002
Qs info002
 
Gamedevenvstudy1
Gamedevenvstudy1Gamedevenvstudy1
Gamedevenvstudy1
 
Jenkins ユーザ・カンファレンス 2012 東京 S406-4/マルチステージ型継続的インテグレーションのすすめ
Jenkins ユーザ・カンファレンス 2012 東京 S406-4/マルチステージ型継続的インテグレーションのすすめJenkins ユーザ・カンファレンス 2012 東京 S406-4/マルチステージ型継続的インテグレーションのすすめ
Jenkins ユーザ・カンファレンス 2012 東京 S406-4/マルチステージ型継続的インテグレーションのすすめ
 
XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」
XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」
XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」
 
Qs info 002
Qs info 002Qs info 002
Qs info 002
 
テスト駆動開発の導入ーペアプログラミングの学習効果ー
テスト駆動開発の導入ーペアプログラミングの学習効果ーテスト駆動開発の導入ーペアプログラミングの学習効果ー
テスト駆動開発の導入ーペアプログラミングの学習効果ー
 
高信頼性を確保するソフトウェア開発手法と実践 -組込み製品の潜在的価値を今以上に高めるために-
高信頼性を確保するソフトウェア開発手法と実践-組込み製品の潜在的価値を今以上に高めるために-高信頼性を確保するソフトウェア開発手法と実践-組込み製品の潜在的価値を今以上に高めるために-
高信頼性を確保するソフトウェア開発手法と実践 -組込み製品の潜在的価値を今以上に高めるために-
 
今、おさえておきたい DevOps
今、おさえておきたい DevOps 今、おさえておきたい DevOps
今、おさえておきたい DevOps
 
13_B_5 Who is a architect?
13_B_5 Who is a architect?13_B_5 Who is a architect?
13_B_5 Who is a architect?
 
スクラムプロジェクト準備(公開用) No.31
スクラムプロジェクト準備(公開用) No.31スクラムプロジェクト準備(公開用) No.31
スクラムプロジェクト準備(公開用) No.31
 
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
 

More from Fuyuki Ishikawa

機械学習工学の進展と課題 2021
機械学習工学の進展と課題 2021機械学習工学の進展と課題 2021
機械学習工学の進展と課題 2021Fuyuki Ishikawa
 
Quality Assurance of Machine Learning-based AI Systems
Quality Assurance of Machine Learning-based AI Systems Quality Assurance of Machine Learning-based AI Systems
Quality Assurance of Machine Learning-based AI Systems Fuyuki Ishikawa
 
機械学習システムの品質に関するソフトウェア工学の動向(と安全性)
機械学習システムの品質に関するソフトウェア工学の動向(と安全性)機械学習システムの品質に関するソフトウェア工学の動向(と安全性)
機械学習システムの品質に関するソフトウェア工学の動向(と安全性)Fuyuki Ishikawa
 
ロバスト機械学習へのソフトウェア工学からのアプローチ
ロバスト機械学習へのソフトウェア工学からのアプローチロバスト機械学習へのソフトウェア工学からのアプローチ
ロバスト機械学習へのソフトウェア工学からのアプローチFuyuki Ishikawa
 
機械学習工学への誘い:SES'20チュートリアル
機械学習工学への誘い:SES'20チュートリアル機械学習工学への誘い:SES'20チュートリアル
機械学習工学への誘い:SES'20チュートリアルFuyuki Ishikawa
 
Introduction at MLSE Int'l Symposiuim 2019
Introduction at MLSE Int'l Symposiuim 2019Introduction at MLSE Int'l Symposiuim 2019
Introduction at MLSE Int'l Symposiuim 2019Fuyuki Ishikawa
 
高信頼自動運転システム実現にむけて: ソフトウェア工学・機械学習の視点からの技術俯瞰
高信頼自動運転システム実現にむけて: ソフトウェア工学・機械学習の視点からの技術俯瞰高信頼自動運転システム実現にむけて: ソフトウェア工学・機械学習の視点からの技術俯瞰
高信頼自動運転システム実現にむけて: ソフトウェア工学・機械学習の視点からの技術俯瞰Fuyuki Ishikawa
 
IoT/AI時代のテスティング・検証技術の最前線
IoT/AI時代のテスティング・検証技術の最前線IoT/AI時代のテスティング・検証技術の最前線
IoT/AI時代のテスティング・検証技術の最前線Fuyuki Ishikawa
 
(今ちゃんと振り返る) ゴール指向要求分析 入門
(今ちゃんと振り返る) ゴール指向要求分析 入門(今ちゃんと振り返る) ゴール指向要求分析 入門
(今ちゃんと振り返る) ゴール指向要求分析 入門Fuyuki Ishikawa
 
品質保証における発見的・経験的アプローチの活用:ソフトウェアテスティング分野からの知見
品質保証における発見的・経験的アプローチの活用:ソフトウェアテスティング分野からの知見品質保証における発見的・経験的アプローチの活用:ソフトウェアテスティング分野からの知見
品質保証における発見的・経験的アプローチの活用:ソフトウェアテスティング分野からの知見Fuyuki Ishikawa
 
機械学習応用システムの品質保証に向けて
機械学習応用システムの品質保証に向けて機械学習応用システムの品質保証に向けて
機械学習応用システムの品質保証に向けてFuyuki Ishikawa
 
自動(運転)車システムのためのAI的自動テスト生成
自動(運転)車システムのためのAI的自動テスト生成自動(運転)車システムのためのAI的自動テスト生成
自動(運転)車システムのためのAI的自動テスト生成Fuyuki Ishikawa
 
AIによるテスト・デバッグ技術 イントロ&チュートリアル
AIによるテスト・デバッグ技術 イントロ&チュートリアルAIによるテスト・デバッグ技術 イントロ&チュートリアル
AIによるテスト・デバッグ技術 イントロ&チュートリアルFuyuki Ishikawa
 

More from Fuyuki Ishikawa (13)

機械学習工学の進展と課題 2021
機械学習工学の進展と課題 2021機械学習工学の進展と課題 2021
機械学習工学の進展と課題 2021
 
Quality Assurance of Machine Learning-based AI Systems
Quality Assurance of Machine Learning-based AI Systems Quality Assurance of Machine Learning-based AI Systems
Quality Assurance of Machine Learning-based AI Systems
 
機械学習システムの品質に関するソフトウェア工学の動向(と安全性)
機械学習システムの品質に関するソフトウェア工学の動向(と安全性)機械学習システムの品質に関するソフトウェア工学の動向(と安全性)
機械学習システムの品質に関するソフトウェア工学の動向(と安全性)
 
ロバスト機械学習へのソフトウェア工学からのアプローチ
ロバスト機械学習へのソフトウェア工学からのアプローチロバスト機械学習へのソフトウェア工学からのアプローチ
ロバスト機械学習へのソフトウェア工学からのアプローチ
 
機械学習工学への誘い:SES'20チュートリアル
機械学習工学への誘い:SES'20チュートリアル機械学習工学への誘い:SES'20チュートリアル
機械学習工学への誘い:SES'20チュートリアル
 
Introduction at MLSE Int'l Symposiuim 2019
Introduction at MLSE Int'l Symposiuim 2019Introduction at MLSE Int'l Symposiuim 2019
Introduction at MLSE Int'l Symposiuim 2019
 
高信頼自動運転システム実現にむけて: ソフトウェア工学・機械学習の視点からの技術俯瞰
高信頼自動運転システム実現にむけて: ソフトウェア工学・機械学習の視点からの技術俯瞰高信頼自動運転システム実現にむけて: ソフトウェア工学・機械学習の視点からの技術俯瞰
高信頼自動運転システム実現にむけて: ソフトウェア工学・機械学習の視点からの技術俯瞰
 
IoT/AI時代のテスティング・検証技術の最前線
IoT/AI時代のテスティング・検証技術の最前線IoT/AI時代のテスティング・検証技術の最前線
IoT/AI時代のテスティング・検証技術の最前線
 
(今ちゃんと振り返る) ゴール指向要求分析 入門
(今ちゃんと振り返る) ゴール指向要求分析 入門(今ちゃんと振り返る) ゴール指向要求分析 入門
(今ちゃんと振り返る) ゴール指向要求分析 入門
 
品質保証における発見的・経験的アプローチの活用:ソフトウェアテスティング分野からの知見
品質保証における発見的・経験的アプローチの活用:ソフトウェアテスティング分野からの知見品質保証における発見的・経験的アプローチの活用:ソフトウェアテスティング分野からの知見
品質保証における発見的・経験的アプローチの活用:ソフトウェアテスティング分野からの知見
 
機械学習応用システムの品質保証に向けて
機械学習応用システムの品質保証に向けて機械学習応用システムの品質保証に向けて
機械学習応用システムの品質保証に向けて
 
自動(運転)車システムのためのAI的自動テスト生成
自動(運転)車システムのためのAI的自動テスト生成自動(運転)車システムのためのAI的自動テスト生成
自動(運転)車システムのためのAI的自動テスト生成
 
AIによるテスト・デバッグ技術 イントロ&チュートリアル
AIによるテスト・デバッグ技術 イントロ&チュートリアルAIによるテスト・デバッグ技術 イントロ&チュートリアル
AIによるテスト・デバッグ技術 イントロ&チュートリアル
 

スマートなシステム、スマートなディペンダビリティ保証-次世代システムを頼れるものへ