<応答> しなければならない」(When <trigger>, the <system> shall <response>) 型 キーワード 例 Ubiquitous(遍在型) なし システムはログを暗号化して保存しなければならない Event-driven(イベント駆動型) When When ユーザーがログインに3回失敗した場合、システムはアカウントを15分間ロックしなければならない State-driven(状態駆動型) While While メンテナンスモード中は、システムは一般ユーザーのアクセスを拒否しなければならない Optional feature(オプション機能型) Where Where 二要素認証が有効な場合、システムはログイン時に確認コードを要求しなければならない Unwanted behavior(望ましくない挙 動型) If ... then If 決済APIが応答しない場合、システムは注文を保留状態にしてユーザーに通知しなければならない ※ 複合型の例: 「While オフラインモード中に、When ユーザーが保存を押した場合、システムはローカルに一時保存しなければならない」 仕様(spec)駆動開発、仕様はどう書く? 18 / 18