UIXHERO

YAGNI原則|エンジニアリング

「今いらないもの」を作らない。将来の不安に基づく過剰設計を防ぎ、素早くユーザーに価値を届けるための原則。

2026年3月22日
更新: 2026年8月27日
4
by Dengen Yosho(DGYS)

この技術でできること

  • 「念のため」の不要なUI追加をブロックし、画面をシンプルに保てる
  • 将来の不確実な要件よりも「今ユーザーが抱えている課題」に集中できる
  • エンジニアの開発工数を、本当に必要な機能(MVP)だけに向けることができる

: 記事リストの画面をデザインする時、「将来的に記事が増えそうだから、最初から高度なフィルターとソート機能もに入れておこう」という判断を止め、「まずはシンプルなリストだけ出し、記事が50件を超えた時点で検索を追加する」という段階的な設計に切り替えることができる。


なぜ難しいか

誰もが「先回りして考えておくのが優秀な仕事だ」と思い込んでいるからです。

デザイナーは「後からUIを追加するとレイアウト崩れが怖いから、最初から枠組みを設計しておきたい」と考えます。エンジニアも「後からデータ構造を変えるのは大変だから、最初から拡張性を持たせておきたい」と考えます。しかし、その「先回り」の予測はたいてい外れ、誰も使わない機能のコードだけがシステムに残り、今後の開発スピードを遅くする「負債」に変わります。


デザイン時の判断ポイント(Before/After)

パターン: プロフィールの過剰な入力項目

Before(現実の悪い例): 「ゆくゆくはユーザー同士のマッチング機能も入れるかもしれない」という理由で、初期リリースから「趣味」「職業」「SNSリンク」「自己紹介(500文字)」の入力画面をデザインして実装を依頼する。 → エンジニアはマッチング用のデータベース設計まで考慮し工数が膨れる。結果、ユーザーは登録が面倒になり離脱する。

After(現実的な整理): 今のMVPで必要な「名前」と「アイコン」だけを入力要素とし、余計な項目は一切配置しない。

なぜ改善されるか(なぜ現実的か): 「とりあえず作って使われない」という最大の無駄を省けるため。実データがない段階での将来予測は外れやすいものです。だからこそ、実際のユーザー行動でたしかめてから(必要になってから)作る方が精度が高く無駄がないからです。

代替手段: 後からUIを変更する前提で、画面レイアウトにあえて「スペース()」を残しておくことで、レイアウト崩れの不安を解消する。


アンチパターンと衝突(デザイナー × エンジニア)

❌ 「今後デザインが変わるかもしれないから、何でもできるようにして」

デザイナーの視点: 後でボタンの色や配置がガラッと変わる可能性があるので、Propsでなんでも自由に変更できる「万能コンポーネント」を作っておいてほしい。(品質=将来の変更に対する柔軟性) エンジニアの視点: 「なんでもできるコンポーネント」は条件分岐が複雑になりすぎ、バグの温床になる。今の要件で確実に動くものだけを作りたい。(品質=現在の仕様の確実な動作)

なぜ衝突するか(品質の定義差): デザイナーは「未知の変更コスト」を重く見積もり、エンジニアは「複雑化による現在のバグコスト」を重く見積もっているため。

どう合意するか:

  • 「もしかしたら」の予測ではなく、「今決まっている要件」だけで設計する合意を取る。
  • 将来変更が起きた場合は、「既存パーツの拡張」ではなく「新しい別パーツを作る」か「その時に作り直す」というルールを決める。

実践チェックリスト

最低ライン(Must)

[ ] 「念のため」「あった方が便利そうだから」という理由だけで配置したUIがない [ ] エンジニアに対して「将来こうなるかもしれないから対応しておいて」と過剰な拡張性を求めていない

理想ライン(Better)

[ ] デザインレビューで、不要に見える機能に対して「これは必要になってから追加しませんか(の観点)」と提案できる [ ] 後から機能が追加される前提で、最初から「拡張可能な余白を持ったレイアウト」を組んでいる


関連技術

前提となる技術

  • KISS原則 — 機能を足す前に、状態をシンプルに保つ思考

セットで使う技術

次に学ぶ技術

  • DRY原則 — 機能は重複させないが、セットで無駄を防ぐ

まとめ

  • この技術の本質: 将来の不確実な予測を捨て、現在確定している価値だけを実装する勇気
  • UXへの影響: 不要な機能がないため、ユーザーが迷わず最速で目的を達成できる
  • 実務での判断軸: 「明日リリースしなければならないとしたら、この要素は絶対に必要か?」
  • 次に学ぶべき技術: DRY原則(削った後は、残った機能を重複させない)

KISSが「複雑さを削る」原則であるのに対し、YAGNIはそもそも「未来への不安で足さない」原則です。

目的別のおすすめ:

  • 重複排除による一貫性を学ぶなら → DRY原則
  • アプリ全体のシンプルな構造を学ぶなら → KISS原則

更新のお知らせ

サイトに載せていない実例や、新しい記事のお知らせはこちらで出しています。

読んだ内容を、自分の画面に当てるとき

UIXHEROは、記事を書くほかに、画面の検品・判定、デザインシステムの構築、実装と改善の伴走を受けています。何を頼めばいいか決まっていない段階の相談も、同じ窓口で受けます。

UIXHEROに頼めることを見る

※ 記事の内容についての質問や、書いてほしいテーマの要望も同じ窓口で受けています

記事をシェア

メールでお知らせを受け取る

最終更新: 2026年8月27日

この記事を書いた人

Dengen Yosho(DGYS)

Dengen Yosho(DGYS)

UI/UXデザイナー兼デザインエンジニア デザイン歴25年以上 情報設計〜UIデザイン〜React/TypeScriptによる実装までを一気通貫で担当 大手企業のDXプロジェクトや決済アプリ領域で、デザインリードとして改善と構築を経験 現在はフリーランスとして、プロダクトのUI/UX改善とデザインシステム構築を支援 長年の実務の中で感じてきたのは、 「良いUI」はセンスではなく、再現可能な判断の積み重ねであるということ UIXHEROは、 心理学や行動科学の知見を、現場で使える設計言語に翻訳するための場所 関心領域は「ユーザーの行動が変わるUI」 人の認知・注意・意思決定の構造を理解し、 “なぜそのUIが機能するのか”を言語化することを目指している

あわせて読みたい

この記事に関連する記事をご紹介します

DRY原則|エンジニアリング

Don't Repeat Yourself。デザインの重複、コードの重複を排除し、一つの変更が全体に伝播する一貫性の高いシステムを作る。

2026年3月22日
5

関心の分離(SoC)|エンジニアリング

デザインとロジックを切り離す。システムの変更箇所を最小に抑え、UIを安全に変更しやすくするための境界設計。

2026年3月22日
5

KISS原則|エンジニアリング

単純さを保つ設計技術。複雑さはバグ、遅延、負債の根源。UIにもコードにも効く最重要原則。

2026年3月22日
7

もっと深く知りたいですか?

ここに掲載されていないトピックについても、リクエストがあれば解説記事を追加します。 わかりにくい点や、具体的な事例について知りたいことがあれば教えてください。

リクエストを送る