コンテンツにスキップ

画面が増える背景

画面が増えすぎる問題は、悪意や怠慢から生まれるわけではありません。

むしろ、以下のようなよくある動機から生まれることが多いです:

動機結果
安全にしたい確認画面を増やす
分かりやすくしたい画面を分ける
整理したい登録と編集を別画面に
再利用したい汎用モーダルを作る

どれも理解できる動機です。ただ、画面の分け方・まとめ方によっては、かえって複雑になってしまうことがあります。

もう少し深く見ると、心理的な背景が見えてきます。

心理行動結果
「ミスが怖い」確認画面を追加する画面が増える
「責任を明確にしたい」「確認しましたね?」の証拠を残す形骸化した確認
「既存の設計を壊したくない」既存に合わせて /confirm を追加パターンが増殖
「仕様書にそう書いてある」前例に従って実装見直す機会を逃す

こうした背景を理解することが、改善の第一歩です。「なぜこの画面が必要なのか」を問い直すきっかけになります。

過去の設計を批判するつもりはありません。

当時の環境では、その設計が合理的だったことも多いです。

  • ブラウザの「戻る」ボタンでデータが消える
  • セッションタイムアウトでやり直しになる
  • 回線が不安定で途中で切れることがある

このような環境では、確認画面を設けるのは合理的でした。

  • フロントエンドの状態管理が進化した
  • 自動保存が一般的になった
  • 回線は比較的安定している(ただしモバイル環境では例外あり)

こうした変化により、確認画面以外の選択肢(取り消し機能、インライン編集など)が現実的になりました。

環境が変わったから、最適解も変わっただけです。今の視点で過去を批判するのではなく、「今ならどうするか」を考えることが大切です。

画面の増える背景には、暗黙の思い込みのあることが多いです。

思い込み実際
1操作 = 1画面一覧画面で追加・編集できる
入力と表示は別画面同じ画面で切り替えられる
確認画面は必須取り消し可能なら不要なことが多い
登録と編集は別フロー同じフォームで対応できる

これらは「そういうものだ」と思い込んでいるだけで、技術的な制約ではありません。


考え方を放置したときに起こりうること

Section titled “考え方を放置したときに起こりうること”

このガイドの考え方を理解しているエンジニアがいない、あるいは**「言われた通りに実装する」だけの体制**が続くと、次のようなことが起きやすくなります。

状況起こりやすいこと
設計を問い直す人がいない仕様書や前例の通りに画面が増え、確認・完了画面が積み重なる
「依頼されたから作る」だけ本当に必要か検討されず、ルートと画面が増え続ける
誰も根拠を説明できない「昔からこう」になり、手を入れるほどリスクが高いと感じられ、改修されない

その結果、第4部の「ありがちな状態」に挙げたような症状(セッション地獄、ルートの乱立、DBの歪み、テストの困難さ)が蓄積していきます。使いにくさや保守コストの高さは、一気に悪化するのではなく、少しずつ積み重なることが多いです。

逆に、この考え方を共有しておくことで、「この画面、本当に必要か?」「確認画面でなく取り消しでは?」と問い直すきっかけが生まれます。必ずしも「設計ができるエンジニア」が多数である必要はなく、問いを立てられる人がいるだけでも、設計がずれていくのを防ぐ助けになります。


画面が増えやすい設計には、共通する特徴があります。

たとえば、こんな画面名を見かけたら、少し立ち止まってみてください:

  • ユーザー登録画面
  • ユーザー編集画面
  • 確認画面

「登録」「編集」「確認」は**操作(動詞)**です。操作が画面名になっていると、画面の増える傾向にあります。

操作が画面名だと…起きやすいこと
登録画面一覧と分離して、コンテキストが失われる
編集画面別画面に遷移して、戻る操作が必要になる
確認画面確定のタイミングが曖昧になる

画面は「何を見ているか」で名付けると、シンプルになりやすいです。


ここまで、画面が増える背景を見てきました。

第2部では、「画面とは何か」を定義した上で、画面構成をシンプルにするための7つの設計原則を紹介します。