ひとことで言うと#
デザインカンプと実装画面を体系的に比較し、レイアウト・色・タイポグラフィ・インタラクションの差異を検出・修正するプロセス。開発フローの終盤に組み込むことで、ユーザーに届く前にUI品質を担保する。
押さえておきたい用語#
- ピクセルパーフェクト(Pixel Perfect)
- デザインカンプと実装が1pxの誤差もなく一致している状態を指す。現実にはデバイス差があるため、許容範囲を決めたうえで運用されることが多い。
- レッドライン(Redline)
- デザインカンプ上に余白・サイズ・色コードなどの仕様を赤色の注釈で書き込んだドキュメント。FigmaやZeplinが自動生成する機能を持つ。
- デザイントークン(Design Token)
- 色・フォントサイズ・スペーシングなどのデザイン上の値を変数化したもの。トークンを使うことでデザインと実装の一貫性を保ちやすくなる。
- ビジュアルリグレッション(Visual Regression)
- コード変更によって意図せずUIの見た目が変わってしまうこと。スクリーンショットの差分比較ツールで検出する。
- QAチェックリスト(QA Checklist)
- デザインQAで確認すべき項目を一覧化したもの。レイアウト、色、フォント、アニメーション、レスポンシブ対応などを網羅する。
デザインQAの全体像#
こんな悩みに効く#
- デザインカンプ通りに実装したはずが、レビューで「なんか違う」と差し戻される
- リリースのたびにUIの微妙なズレが蓄積し、デザインシステムが形骸化している
- デザイナーとエンジニアの間でQA基準が共有されておらず、何を直すべきか揉める
- ビジュアルリグレッションが本番で発覚し、緊急対応に追われたことがある
基本の使い方#
検証すべき項目を4レイヤーに分けてリスト化する。
- レイアウト: 余白(margin/padding)、要素サイズ、グリッド準拠、ブレークポイントごとの表示
- ビジュアル: 色(トークン一致)、フォントサイズ・ウェイト、ボーダー、シャドウ、画像サイズ
- インタラクション: ホバー、フォーカス、アニメーション、ローディング、エラー状態
- コンテンツ: テキスト正確性、文字切れ、空状態、長文テキストの折り返し
Figmaのデザインと実装画面を横に並べて目視するか、スクリーンショットの差分比較ツールを使う。
- ブラウザの拡張機能(PerfectPixelなど)でカンプを実装画面に重ねる方法も有効
- 主要ブレークポイント(モバイル・タブレット・デスクトップ)ごとに検証する
- ダークモードが対象なら、ライト/ダーク両方をチェックする
検出した差異を重要度で3段階に分類し、チケットとして起票する。
- Critical: 機能に支障がある、アクセシビリティ基準に違反している → リリース前に必ず修正
- Major: 明らかにデザインと異なる、ブランドガイドラインに反している → 次スプリントで修正
- Minor: 1〜2pxのズレ、改善提案レベル → バックログに積む
エンジニアが修正したら、同じチェックリストで再度検証する。
- 修正箇所だけでなく、周辺の要素にリグレッションが出ていないかも確認する
- 自動ビジュアルリグレッションテスト(Chromatic、Percy、reg-suitなど)をCIに組み込むと効率が上がる
- QA完了後はチケットをクローズし、ナレッジとして次回のチェックリストに反映する
具体例#
従業員80名のEC企業がリニューアルプロジェクトで商品詳細ページを刷新した。デザイナー2名とフロントエンドエンジニア3名のチームで、リリース1週間前にデザインQAを実施。
検出された差異:
| レイヤー | 内容 | 重要度 |
|---|---|---|
| レイアウト | 商品画像とテキスト間のマージンが24px→16pxに縮小 | Major |
| ビジュアル | 価格表示の色が#D4563Aではなく#E06050になっている | Major |
| インタラクション | 「カートに追加」ボタンのホバーアニメーションが未実装 | Minor |
| コンテンツ | 商品名が20文字を超えると2行に折り返さず途中で切れる | Critical |
合計23件の差異が見つかり、Critical 3件・Major 8件・Minor 12件に分類。Criticalは2日で修正し、Majorは残り5日で対応した。
リリース後、カスタマーサポートへの「表示がおかしい」という問い合わせが前回リニューアル時の月32件 → 月4件に減少した。
150名規模のSaaS企業がデザインシステムを導入したが、既存の47画面にはシステム導入前のコンポーネントが混在していた。
デザインQAのチェックリストをデザイントークンベースで再構成し、3名のデザイナーが1週間かけて全画面を検証した。
結果:
- トークン不一致: 128件(色が直接指定されていた箇所が大半)
- フォントウェイト逸脱: 34件
- スペーシング逸脱: 67件
- コンポーネント未置換: 22件
優先度順に4スプリントかけて修正。修正後にビジュアルリグレッションテストのベースラインを更新し、以降はCIで自動検出できる体制を構築した。
デザインシステムの準拠率は導入時の52% → 94%に改善し、新機能開発時のデザインレビュー時間が平均40%短縮された。
ヘルスケア系スタートアップ(社員25名)が健康管理アプリのメジャーアップデートを控えていた。前回のリリースでは、iPhoneとAndroidでレイアウト崩れが複数報告され、App Storeの評価が4.2 → 3.6に下がった苦い経験がある。
今回はリリース2週間前にデザインQAプロセスを導入。
検証対象:
- iOS(iPhone SE / iPhone 15 / iPad)× ライト・ダークモード = 6パターン
- Android(Pixel 7 / Galaxy S24)× ライト・ダークモード = 4パターン
- 合計10デバイスパターン × 主要12画面 = 120チェック
検出されたCritical:
- iPhone SEで健康データグラフが画面外にはみ出し、スクロールもできない
- Android端末でフォントサイズ設定を「最大」にするとボタンテキストが重なる
- ダークモードでグラフの凡例テキストが背景と同色になり読めない
3件のCriticalを含む計41件の差異を修正してリリースしたところ、初月のクラッシュ報告は前回比78%減、App Store評価は4.4まで回復した。
やりがちな失敗パターン#
- リリース直前にしかQAをしない — 差異が大量に溜まってから検出すると修正が間に合わない。スプリントごとに小さくQAを回すほうが手戻りが少ない
- 全部を同じ重要度で扱う — 1pxのズレとアクセシビリティ違反を同列に並べると、本当に直すべき箇所が埋もれる。Critical/Major/Minorの分類を必ず行う
- デザイナーだけ(またはエンジニアだけ)でQAする — デザイナーは意図を知っているが実装制約に疎く、エンジニアは逆。両者がペアでQAすると検出精度が上がる
- チェックリストを使い回さない — 毎回ゼロから確認項目を考えると漏れが出る。過去の差異をチェックリストに追記して育てていくことで、QAの再現性と効率が向上する
まとめ#
デザインQAは、デザインカンプと実装の差異をレイアウト・ビジュアル・インタラクション・コンテンツの4レイヤーで体系的に検証するプロセスである。差異を重要度で分類し、Criticalから順に修正することで限られた時間でも品質を担保できる。大事なのはリリース直前の一発勝負ではなく、開発サイクルに組み込んで小さく回し続けること。ビジュアルリグレッションテストの自動化と組み合わせれば、QAの負荷を下げながら品質の底上げが実現する。