この記事の内容
UIキットは、チームが繰り返し使えるインターフェース部品をまとめたものです。デザインシステムはそこにルール、管理責任、レビューの仕組みを加え、プロダクトが変わっても部品を役立てられるようにします。スタートアップが、どちらか一方をずっと使い続ける必要はありません。同じような画面の一貫性を保ちたい段階では小さなキットから始め、ばらつきや手戻りのコストが保守の負担を上回るようになったら、システムとして運用する仕組みを加えましょう。
たとえば、初めて顧客向けダッシュボードを設計するチームには、共通のボタン、入力フィールド、カードがあれば十分かもしれません。一方、Webアプリ、モバイルアプリ、管理画面で同じパターンを提供するチームには、状態の定義、コンテンツのルール、アクセシビリティの確認、実装の参照例、変更のリリース方法を決める担当者も必要です。Pixsoの共有コンポーネントとスタイルでデザイン資産を管理できますが、その使い方のルールはチームで合意する必要があります。
違いはコンポーネントの数ではない
UIキットは通常、ボタン、入力フィールド、アイコン、カード、ナビゲーション、画面例といった視覚的な部品の集まりです。含まれるパターンが少なくても、有用な出発点になります。画面を素早く組み立てられ、共通の見た目の基準を持てることが、その価値です。
デザインシステムにはこうした資産に加え、キットだけでは答えられない判断が含まれます。削除などの操作を確認する場面では、どのボタンのバリアントを使うのか。エラーメッセージをどう表示し、読み上げなどでどう伝えるのか。翻訳したラベルが2行になるとどうなるのか。コンポーネントの変更を誰が承認し、トークン名を変えたら開発者は何を更新すべきなのか。これらを決めて維持することで、ファイルの集まりがデザイン、コンテンツ、開発の間の共通ルールになります。

小さなUIキットで十分な場面
少人数のチームが1つのプロダクトを探索していて、繰り返すパターンが少なく、例外にも直接相談して対応できるなら、コンパクトなキットを選びましょう。将来ありそうなコントロールをすべて並べるのではなく、実際の画面ですでに繰り返し登場するコンポーネントを作ります。初期のダッシュボードなら、主要なアクション、入力フィールド、ステータスバッジ、ナビゲーション項目、コンテンツカードなどです。少なくとも一般的な状態を示し、該当する部品には無効状態やエラー状態も含めます。
各コンポーネントのそばに、用途、バリアント、使わないほうがよい場面の例を短く記しておきます。少しの手間で、キットが見栄えはよくても意味の曖昧な図形集になるのを防げます。変更を管理する人も、使い方の文書も、実装した画面との一致を確認する人もいないなら、整ったライブラリであってもデザインシステムと呼ぶのは避けましょう。
キットだけでは足りなくなる兆候
移行を考えるきっかけは資金調達の段階や決まった人数ではなく、同じ判断を繰り返すコストです。次のような具体的な兆候を確認します。
- 同じコンポーネントが複数のファイルにコピーされ、それぞれ違う修正が加えられている。
- どの色、余白、挙動を正式な基準とするのか、デザイナーと開発者が繰り返し確認している。
- コンポーネントの制約が文書化されておらず、アクセシビリティやローカライズの問題が繰り返し起きている。
- 共通パターンの変更によって、複数のプロダクトやチームに予定外の作業が発生する。
- レビュー担当者が、意図的なバリアントと偶発的なずれを見分けられない。
こうした問題がたまに起こる程度なら、キットと説明を改善します。定期的なレビュー時間を費やしているなら、最も手戻りの多いパターンからシステムの運用を始めましょう。大規模なコンポーネント分類を新しく作るより、責任者を1人決め、変更手順を明確にするほうが役立つ場合があります。

キットからシステムへ段階的に移行する
- 実装済みのパターンを点検する。すでに繰り返し使われているボタン、入力フィールド、カード、ナビゲーション要素を洗い出します。実際の状態を比較し、重要な違いを記録します。
- 基盤となる要素を役割で命名する。色、文字組み、余白を意味や役割で定義し、よく使うコンポーネントをそれらに結び付けます。たとえば
text/primaryという役割名なら、各画面に色名を埋め込むよりもパレット変更に対応しやすくなります。 - 1つのコンポーネントを最後まで文書化する。入力フィールドなら、ラベル、補足文、エラー、無効状態、フォーカス状態を定義します。長いラベルや狭い画面での挙動も含め、対応する実装がある場合は明示します。
- 管理責任を決める。誰が変更を提案できるか、誰がレビューするか、互換性を損なう変更を利用側にどう伝えるかを決めます。判断の責任者がいないコンポーネントは、やがて別々の版に分かれてしまいます。
- 小さくリリースする。合意したパターンを1つ公開して実際の機能で使い、例外を集め、ガイドを修正します。次にコストのかかっているパターンでも同じ手順を繰り返します。
Pixsoでは、共有ライブラリを使うことで、合意したコンポーネントやスタイルをデザインファイルで再利用できます。ただし、ライブラリがあるだけで、公開済みのコードが同じルールに従うことまで自動的に保証されるわけではありません。デザインの参照元と実装例を対応付け、開発への引き継ぎ時に違いを確認しましょう。

具体例:2つのプロダクトで使う依頼フォーム
あるスタートアップに、外部向けの問い合わせフォームと社内向けのサポートフォームがあるとします。どちらにも入力フィールドと送信確認の状態が必要ですが、社内フォームには担当者の指定もあります。まずは、キット内の同じフィールド構造、フォーカス表現、エラーメッセージの位置を再利用します。見た目をそろえるためだけに、外部フォームへ不要な担当者フィールドを表示させてはいけません。
2つのフォームが発展してきたら、共通のフィールドルールを書きます。ラベルは表示し続ける、入力検証では修正方法を伝える、送信後には次に何が起こるかを示す、といった内容です。任意の担当者フィールドは、基本フィールドから分岐した別版ではなく、プロダクト固有の組み合わせとして記録します。パターンを公開する前に、長い翻訳ラベルと狭い表示幅を確認しましょう。コンポーネントに用途、制約、例、変更を評価できる責任者がそろうと、キットはシステムとして機能し始めます。
保守できる規模にとどめる
システムには追加の作業が伴います。誰かが質問に答え、提案をレビューし、変更を知らせ、合わなくなったパターンを廃止しなければなりません。その作業を支えられないなら、誰にも信頼されない大掛かりなライブラリより、小さくても手入れされたキットのほうが有効です。逆に、同じ問題を複数の場所で何度も直しているなら、保守コストはすでに発生していて、手戻りの中に隠れているだけかもしれません。
実際の画面や実装を見て、利用状況を確認します。チームは合意したコンポーネントを再利用しているか。一般的な状態をまだ作り直していないか。どの例外が本当にプロダクトの違いによるものか。その答えを基に、システムを広げるかを判断します。目標は資産の数を最大化することではなく、繰り返す判断を簡単かつ安全にすることです。

選択後の次のステップは、デザインシステムの構築と運用を考えるガイドを参照してください。基盤、共有コンポーネント、提案とレビューの仕組みをさらに詳しく確認できます。