■全体像
(1)もとのステートチャート図
(2)時間情報を加えたステートチャート図
(3)検証
(3)-1 検証モデル
(3)-2 ツールでの検証
(3)-3 反例の分析
■(3)-1 検証モデルの手順
・環境コンポーネントのモデル化
・時間制約の詳細化
・検証したい性質の定義
オブザーバー
検証式
■(3)-1-1 環境コンポーネントのモデル化
・検証対象コンポーネントとの相互作用があるところを定義
→相互作用にかかわる、必要最低限の制御ロジックでいい
■(3)-1-2 時間制約の詳細化
詳細化する前に=既存データに対するモデル化
・ステートチャートの状態=ロケーション
・状態遷移=遷移
・時間制約をモデルで表現するが・・・
デッドロックになる場合がある
詳細化-1:実装に必要になる時間制約の抜けを補充
詳細化-2:検証のための時間制約を追加
●(3)-1-2:補足 時間制約になる、時間要素
・実装段階までには明確化、プログラムに直接反映される時間
適切なタイミングでアクションを起こすための時間
アルゴリズムの判定要素として使う時間
例外判定のための時間
・設計段階では想定するが、プログラムに直接反映しない
→環境をシミュレーションするもの
・設計段階で想定するが、プログラムにはなく、検証には必要
→計算時間
・要求側から、こうなっているべきという時間
→要求仕様に書かれている
● (3)-1-2:補足 留意点
・時間要素が漏れなく反映されているか
・意に反した非決定的な挙動はないか
・初期値/参照関係は実態とあっているか
・検証対象との相互作用
・実測地なのか、想定値なのか?
・調整可能な時間かどうか?
・インタラクションに直接対応する想定値のみを設定すると、漏れが発生することも
・誤差
→センシングする時間がαのとき、50で分岐→50ぴったりでなくαの誤差を考慮
■(3)-2 ツールでの検証
マニュアル見てやってください
■(3)-3 反例の分析
・symblic trace
・concreat trace
・クロック変数の値の変化を確認
・影響を与える範囲を抽出