A Lightweight Code Analysis and its Role in

ICSE 2011勉強会
A Lightweight Code Analysis and its Role in
Evaluation of a Dependability Case
2011/7/5 NTT データ 坂田祐司
本論文の目的と貢献


目的: “Dependability Case”を用いたシステムのディペン
ダビリティの評価を、「手軽だが要所を抑えてできる」よう
にする手順やアルゴリズムを確立すること
貢献:
1.
2.
3.
“Dependability Case”を作る手順を明確に示したこと
コード解析技法を用いて、 “Dependability Case” の評価を
「手軽だが要所を抑えてできる」ようにしたこと
“Dependability Case”を活用して、ディペンダブルなシステム
を設計し、実装する考え方を提示したこと
A Dependability Case is an explicit end-to-end argument that a system satisfies a critical
property.
安全性ケース(Safety Case)の考え方をディペンダビリティに用いたもの。システムのディペンダビリティの観点での要
求(クレーム)と、客観的事実や試験データなど(エビデンス)をもとに、その関係の妥当性を議論、修正していくことに
よりシステムのディペンダビリティを高めようとするツール。
“Dependability Case”で用いられる図
・ A property-part diagramとよんでいる
・ 貢献1と主張する手順によって作成できる
依存性
システム
・環境の要素
特性
依存性
相互作用
※本論文から
コード解析を用いたDependability Caseの評価
評価観点:
・ システムの設計や実装がProperty-part diagramで表現されていると特性を満たしているの
か?
・システムの設計や実装がディペンダビリティを脅かすような特性を保有していることを見過
ごしていないか?
Property-part diagramによって
定義されているシステム外・環
境の情報
ディペンダビリティが脅かされた
状態にならないために満たすべ
き状態
コードの記号実行によりコード
の意味を解釈
ディペンダビリティが脅かされる
可能性を議論すべき状態
例
ディペンダビリティが脅かされた
状態にならないために満たすべ
き状態
ディペンダビリティが脅かされる
可能性を議論すべき状態
議論と関連研究比較

実システムを対象にツールを作り検証


特に、対象システムでディペンダビリティに対する脅威を排除
できたというような結果は示されていない。
関連研究比較

Vs Property-part diagram



プロセスベースのアプローチ → 品質管理は直接的な解決ではない
Goal-Structuring Notation → 課題の細分化をシステムの構造でなく
開発手順にしている
Vs Code analysis


類似研究は多いらしい
Property-part diagramによって定義されているシステム外・環境の情
報をドメイン知識としてあたえることにより簡単に解析ができることが
特徴