目次を開く
結論
モデルの証明結果を実装へ移すには、イベントとコードの対応を別途点検する。
背景
モデルのイベントと実装のAPI呼び出しは必ずしも一対一ではない。モデルにないエラー処理、鍵の保存、再送や並行実行が対応関係を変える。
設計と検証の論点
構成を検討するときは、次の責任と境界を分けて確認します。
- プロトコル上のイベント
- 状態
- 鍵のライフサイクル
- 実装との対応付け
- 前提条件
判断理由
プロトコル上のイベントと前提条件の関係を軸に、採用案と代替案の責任範囲を比較します。既存の制約を残す理由と、新しい境界で変えられることを分けて記述します。
トレードオフ
状態を扱うために増える実装・保守・確認作業と、得られる制御可能性を比較します。障害時の経路と運用担当者の負担を含め、採用しない方がよい条件も示します。
制約
補題、モデルイベント、コード位置、モデル外の処理を対応表にする。モデルの証明を実装全体の証明と呼ばない。
関連事例
関連事例の担当範囲や設計判断を参照します。記事で提案する実験・構成を、その事例で実施済みとするものではありません。