今日の問い
AIが「実装完了」と答えたあと、あなたは何を見て受け入れますか。
30秒でつかむ
AIへのUI実装指示は、感想ではなく目的、制約、参照、受入条件で渡します。返答ではなく、コード差分、実行したテスト、実画面の操作を根拠に受け入れます。
自動テストは有力ですが、アクセシビリティや使いやすさの一部しか検出できません。キーボード、拡大、支援技術、利用者の行動は、手動確認と利用者テストを組み合わせます。
30秒図解 · LESSON 30
循環図
AIへの指示を、検証ループに閉じる
意図、制約、実装、受入確認を反復して品質を上げます。
- 01意図と参照
- 02制約を指示
- 03差分を実装
- 04受入条件で確認
CLUE · 見抜く手掛かり
完成像ではなく判定条件を渡したか
TRAP · ありがちな罠
一度の生成を完成扱いする
原則
目的には、利用者が終えたい行動を書きます。「きれいな予約画面」ではなく、「既存予約を確認し、別の日へ変更し、結果を理解できる」です。
制約には、守る境界を置きます。既存のデザイントークン、DOM順、個人情報を使わないこと、対象外の機能、変更してよいファイルを明示します。AIが勝手に範囲を広げにくくなります。
参照には、これまで作った成果物を渡します。primary-flow.mdだけでなく、状態表、画面、コンポーネント状態、アクセシビリティ監査、観察結果をつなぎます。矛盾があれば、実装前に報告させます。
受入条件は、操作して判定できる文にします。「アクセシブルにする」ではなく、「キーボードだけで入口から完了まで進め、各入力欄のラベルとエラーを確認できる」と書きます。正常時だけでなく、入力不備、結果なし、処理失敗も含めます。
実装後は、まず差分を読みます。対象外の変更、既存テストの削除、チェックの無効化がないか確認します。次に型、lint、テスト、ビルドを実行し、最後に指定した画面幅と入力方法で触ります。
Playwrightは、ブラウザー操作の自動化に加え、axeを組み込んだアクセシビリティ検査にも使えます。ただし公式文書も、自動検査で見つかるのは一部であり、手動評価と利用者テストを組み合わせるよう案内しています。自動検査が通ったことを、WCAG適合の証明にしません。
Playwrightとaxeによる自動検査の実装方法と、自動検査だけでは不十分なため手動評価、障害のある人を含む利用者テストを組み合わせる判断を支える。
良い例と惜しい例
AI実装の受け入れ方
次へ進み、完了報告ではなく証拠を積み上げる順序を確認してください。
- 契約
目的、制約、参照、受入条件と変更範囲を合意します。
- 差分
対象外変更、テスト削除、仕様とのずれを確認します。
- 自動検査
型、lint、テスト、ビルド、アクセシビリティ検査を自分で再実行します。
- 実操作
キーボード、画面幅、拡大、状態遷移を実画面で確認します。
- 判断
根拠と未確認範囲を記し、受入、修正、保留を決めます。
進行状況: 1 / 5、契約。目的、制約、参照、受入条件と変更範囲を合意します。
AIへの指示例
目的: 既存予約を別の日へ変更し、成功または失敗の結果を利用者が理解できるUIを実装する
制約: implementation/以外を変更しない。既存トークンとネイティブHTMLを優先する。テストを削除、無効化しない。実在する個人情報を使わない
参照: primary-flow.md、ui-states.md、screens/、component-states.md、tokens.json、accessibility-audit.md、observations.md
受入条件: 正常、入力不備、空きなし、通信失敗を操作できる。320と1280 CSSピクセルで横方向にはみ出さない。キーボードだけで完了できる。型、lint、テスト、ビルドの結果と未確認範囲を報告する
確認問題
セルフチェック
1. AIが実装完了と報告し、自動アクセシビリティ検査も通りました。受け入れる前に必要な判断はどれですか。
最終制作へ反映する
implementation/に検証可能なUIを作る
講義内の15分で実装指示と受入表を準備し、実装と検証には別途約90分を確保する。設計成果物と観察結果をAIへ渡し、変更差分、受入条件ごとの結果、実行コマンド、手動確認、未確認範囲をimplementation/の検証記録へ残す。
Acceptance criteria
- 目的、制約、参照、受入条件に対応する実装差分があり、対象外変更やテスト無効化がない
- 自動検査と手動確認の結果が分かれ、未確認項目を隠さず、デモや自動検査だけでWCAG適合を宣言していない
今日のまとめ
- AIへは目的、制約、参照、観察可能な受入条件を渡す
- 受け入れは完了報告ではなく、差分、自動検査、実操作で判断する
- 次は、公開後に追うイベントとファネルを設計する