デザイン原則の再帰的レビュー:49原則・294項目の品質検証
UIデザイン原則のデータ品質を検証するため、原則自身を評価基準として再帰的にレビューを実施した。8カテゴリ・49原則・294項目すべてを精査し、一貫性の問題と改善点を特定した。
レビュー方法
再帰的レビューとは
デザイン原則のデータを、そのデザイン原則自身を基準として評価する手法。例えば「一貫性の原則」に従い、データ形式の一貫性を検証する。
評価基準
- タイトル形式の一貫性:
titleフィールドに不要なプレフィックス("Bad: "/"Good: ")がないか - 事例の適切性: Good/Bad事例が原則の意図を正しく表現しているか
- 原則間の矛盾: 異なる原則間で矛盾する指針がないか
対象データ
| カテゴリ | 原則数 | 項目数 |
|---|---|---|
| A. 明確なフィードバック | 5 | 30 |
| B. 操作の効率化 | 7 | 42 |
| C. エラー防止 | 7 | 42 |
| D. 視覚的明確さ | 7 | 42 |
| E. 認知負荷軽減 | 6 | 36 |
| F. 感情配慮 | 6 | 36 |
| G. アクセシビリティ | 5 | 30 |
| H. 信頼構築 | 6 | 36 |
| 合計 | 49 | 294 |
レビュー結果
カテゴリ別サマリー
| カテゴリ | 問題数 | 内容 |
|---|---|---|
| A | 30 | 全項目にプレフィックスあり |
| B | 0 | 問題なし |
| C | 0 | 問題なし |
| D | 0 | 問題なし |
| E | 0 | 問題なし |
| F | 24 | bad2/good2/bad3/good3にプレフィックスあり |
| G | 20 | bad2/good2/bad3/good3にプレフィックスあり |
| H | 24 | bad2/good2/bad3/good3にプレフィックスあり |
詳細結果
カテゴリA: 明確なフィードバック(原則1-5)
問題: 全30項目のtitleフィールドに「Bad: 」「Good: 」プレフィックスが付いている。
// 現状(問題あり)
bad: { title: 'Bad: 何も起きない送信ボタン', description: '...' }
good: { title: 'Good: 明確な送信完了表示', description: '...' }
// あるべき姿
bad: { title: '何も起きない送信ボタン', description: '...' }
good: { title: '明確な送信完了表示', description: '...' }
該当原則:
- No.1 操作結果の即座表示
- No.2 処理状態の可視化
- No.3 成功・失敗の明示
- No.4 変更内容の確認表示
- No.5 システム状態の常時表示
カテゴリB: 操作の効率化(原則6-12)
問題なし: 全42項目が正しい形式。
カテゴリC: エラー防止(原則13-19)
問題なし: 全42項目が正しい形式。
カテゴリD: 視覚的明確さ(原則20-26)
問題なし: 全42項目が正しい形式。
カテゴリE: 認知負荷軽減(原則27-32)
問題なし: 全36項目が正しい形式。
カテゴリF: 感情配慮(原則33-38)
問題: bad/goodは正しいが、bad2/good2/bad3/good3の24項目にプレフィックスあり。
該当原則:
- No.33 達成感の演出
- No.34 ポジティブな表現
- No.35 待ち時間の心理対策
- No.36 安心感の提供
- No.37 パーソナライズ
- No.38 楽しさの演出
カテゴリG: アクセシビリティ(原則39-43)
問題: bad/goodは正しいが、bad2/good2/bad3/good3の20項目にプレフィックスあり。
該当原則:
- No.39 データ整合性の自動確保
- No.40 キーボード操作対応
- No.41 スクリーンリーダー対応
- No.42 色に依存しない情報伝達
- No.43 フォーカス状態の明示
カテゴリH: 信頼構築(原則44-49)
問題: bad/goodは正しいが、bad2/good2/bad3/good3の24項目にプレフィックスあり。
該当原則:
- No.44 透明性の確保
- No.45 プライバシー配慮
- No.46 セキュリティの可視化
- No.47 約束の履行
- No.48 誠実なエラー対応
- No.49 ユーザー主権の尊重
事例の適切性
全294項目について、Good/Bad事例が原則の意図を正しく表現しているか検証した。
結果: 問題なし
すべての事例が、該当する原則を適切に表現している。例えば:
- 原則39「データ整合性の自動確保」: 生年月日と年齢の自動計算、経費明細と合計の自動計算、開始日・終了日と期間の自動計算の事例が適切に設計されている
原則間の矛盾
49の原則間で矛盾する指針がないか検証した。
結果: 矛盾なし
各原則は異なる観点(フィードバック、効率、エラー防止など)からUIを評価しており、相互に補完的な関係にある。
問題の根本原因
なぜプレフィックス問題が発生したか
- 初期実装時の方針不統一: カテゴリAの実装時に「Bad: 」「Good: 」プレフィックスを付ける方針だった
- 途中で方針変更: カテゴリB以降でプレフィックスなしに変更
- 追加事例の実装時: bad2/good2/bad3/good3を追加する際に、再び古い方針でプレフィックスを付けてしまった
原則3「一貫性の維持」違反
この問題は、まさにデザイン原則No.21「一貫性のあるデザイン」に違反している。データ構造の一貫性が保たれていない。
改善提案
即時対応:プレフィックス削除
principles.tsの以下の項目から「Bad: 」「Good: 」プレフィックスを削除する:
- カテゴリA: bad/good/bad2/good2/bad3/good3の全30項目
- カテゴリF: bad2/good2/bad3/good3の24項目
- カテゴリG: bad2/good2/bad3/good3の20項目
- カテゴリH: bad2/good2/bad3/good3の24項目
合計: 98項目の修正が必要
長期対応:バリデーション追加
// content.config.ts または principles.ts に追加
function validatePrinciple(p: DesignPrinciple): void {
const fields = ['bad', 'good', 'bad2', 'good2', 'bad3', 'good3'] as const
for (const field of fields) {
const example = p[field]
if (example?.title.startsWith('Bad: ') || example?.title.startsWith('Good: ')) {
console.warn(`Principle ${p.no}: ${field}.title has unnecessary prefix`)
}
}
}
まとめ
| 項目 | 結果 |
|---|---|
| レビュー対象 | 49原則・294項目 |
| 形式問題 | 98項目(プレフィックス) |
| 内容問題 | 0項目 |
| 原則間矛盾 | なし |
デザイン原則のデータは内容面では高品質だが、形式面での一貫性に改善の余地がある。プレフィックス問題は、原則21「一貫性のあるデザイン」を適用してデータ自体を修正することで解決できる。