Web担当者の発注前のお困りごと解決します。
Web担当者の発注前のお困りごと解決します。
このページは、設計思想や開発技術に関心のある制作会社・広告代理店・システム会社の方向けの記事です。
()
先日、あるシステム会社の経営者とデザインシステムについて話す機会がありました。
私が
「デザインシステムは作った方がいい」
と話すと、
「デザインシステムならFigmaにある」
という風に彼は答えました。
Figmaのデザインシステムってどんなものかと思い、見せてもらったのは、カラーパレットやUIコンポーネントを集めたライブラリのようなものでした。確かにFigmaでは、ボタンやフォーム、文字スタイル、カラーなどを登録して共有できます。デザインシステムを構築するための機能も充実しています。見せてもらったものには、定義にちょっとしたコメントも入力されていました。
しかし、それはシステムというよりライブラリなのでは?と思うようなもので、私が考えるデザインシステムとは少し違うものでした。もちろん、ライブラリに価値がないとは思いません。デザイン資産を共有できれば、制作効率は向上するでしょう。しかし、素材が用意されていることと、それを適切に扱えることは少し違います。
例えば、同じコンポーネントを使っていても、選択や配置の判断が担当者ごとに異なれば、完成する画面の品質にも差が生まれます。余白の適用条件がきちんと定義されていなければ、バラバラな印象のページが出来上がります。また、Figma上で見た目が統一されていても、実際のWebサイトではHTMLの構造や動作、アクセシビリティへの対応なども考える必要があります。
弊社では、余白についても基準値とその適用規則を定めています(余白の設計規則(新しいタブで開きます))。
そもそも、デザインシステムという言葉の「システム」とは何を指しているのでしょうか?
私が考えるデザインシステムに必要な要素は、次の5つです。
この5つは、それぞれ独立したものではありません。設計原則に基づいて選択基準を設けて、その基準から仕様を定める。共通の仕様を適用することで再現性を高め、運用と改善を通じて品質を維持していくのです。
つまり、デザインシステムとは、個々の実装者に委ねられていた設計判断を体系化し、共通の規則として機能させる仕組みなのです。
例えば、汎用性を考えて100色のカラーパレットを用意しても、実際に使用するのが20色程度なら、残りの80色にはどのような役割があるのでしょうか。各色の用途や使用条件が明確でなければ、ページや画面ごとに色の使い方がばらつき、アクセシビリティの確認にも余分な工数が発生します。ボタンやフォームなどのコンポーネントも同様です。
デザインシステムで重要なのは、判断基準を共有して不要な迷いやばらつきを減らし、誰が実装しても一定水準以上の品質を保てることです。
UIコンポーネントライブラリとデザインシステム、私は両者を次のように分けて考えています。
例えば、モーダルウィンドウ。
デザインツール上では、背景を暗くして中央にウィンドウを表示すれば、それらしいものが完成します。しかし、実際に動作するUIとして考えると多くの定義が必要です。
UI動作の定義項目例
ここには設計と実装において、二つの異なる基準があります。
一つは、そもそもモーダルを採用すべきなのかという設計上の基準。もう一つは、採用したモーダルをどのような仕様で動作させるのかという実装上の基準です。見た目が同じであっても、これらの基準が異なれば、ユーザー体験やアクセシビリティに差が生じます。
実装における共通の仕様を用意し、定義された品質基準を満たした状態で再利用できるようにする。さらに、その部品を採用する理由や使用条件まで共有する。ここまで含めて設計することでデザインシステムはシステムとして機能すると私は考えています。
もう一つ重要なのが、コンポーネントを組み合わせる際の基準です。
例えば、同じカード型コンポーネントを使っても、「商品一覧」「ニュース一覧」「採用情報」では、それぞれ伝えたい情報が異なります。何を見出しにするか、画像をどこに配置するか、どの情報を優先するか。ここでの取捨選択は、個々のコンポーネントの仕様だけでは決まりません。コンテンツの目的や情報構造に応じて、適切なレイアウトや表現方法を選択する必要があります。
また、見出しや本文の階層、文章の長さ、注釈の扱いなども、ページ全体の構成に関わります。これらの選択基準が定義されていなければ、実装者は画面を制作するたびに、適切な構成や表現方法を検討し、試行錯誤しなければなりません。同じような画面であっても、その都度設計を繰り返すことになり、余分な労働コストが発生します。
さらに、選択が実装者個人の経験や技量に委ねられることで、同じ目的の画面でも情報の優先順位やレイアウトに違いが生じ、品質のばらつきにつながります。そのため、デザインシステムでは、個々のコンポーネントだけでなく、情報の表現方法や構成パターンにも共通の選択基準を設け、実装の属人化と重複作業を減らすことが重要だと考えています。
国内で公開されている代表的なデザインシステムには、デジタル庁の『デザインシステム』、Sansanの『One Design System』、freeeの『vibes』などがあります。特にデジタル庁のデザインシステムは、設計原則やスタイル、UIコンポーネントに加え、使用方法や実装仕様、アクセシビリティまで体系的に定義している点が特徴です。また、共通の設計規則をプロジェクトごとに適用するための考え方も示されており、単なる部品の再利用にとどまらず、設計・実装の品質を維持する仕組みとして構築されています。
Sansanやfreeeも、それぞれの設計思想に基づき、デザイン原則やコンポーネント、デザイントークンなどを体系化し、デザインと実装の一貫性を高めています。これらに共通するのは、設計原則から実装までを共通の規則で結びつけ、品質の再現性と継続的な改善を重視していることです。
私たちは、2000年代から数多くの自社サービスを開発・リリースしてきました。その過程で、設計や実装の品質と生産性を高めるため、独自の仕組みを構築・活用してきました。現在ではデザインシステムと呼ばれる考え方を、実務の中で独自に発展させてきたものです。
現在公開しているデザインシステムでは、色・文字・余白・アイコンなどのスタイル、レイアウト、UIコンポーネント、情報の表現パターンについて、共通の規則と実装仕様を定義しています。
例えば、色は用途に応じて役割を定め、余白は基準値と適用条件を設定しています。ボタンやフォーム、タブ、モーダルなどについても、HTML、SCSS、JavaScriptによる共通の実装を用意し、キーボード操作やアクセシビリティにも配慮しています。
さらに、複数カラムの構成、一覧、CTA、FAQ、文章の表記規則など、コンポーネントを組み合わせる際の表現パターンも定義しています。
これらを共通の制作資産として活用することで、実装者が毎回同じ仕様を検討し、ゼロから制作する作業を減らし、実装の属人化を抑えながら、品質の再現性と生産性を高めることを目指しています。
こうした設計規則や実装資産は、現在開発を進めている「K2 Project Base(新しいタブで開きます)」を構成する要素のひとつです。
一方で、デザインシステムだけでは扱いきれない領域もあります。
例えば、WebサイトやWebシステムには「どのようなページ、画面が必要なのか」「どの情報を優先するのか」「どのような導線を設計するのか」と言った、部品のみならず画面構成や情報設計に関わる品質管理です。これらはプロジェクトの目的や要件、コンセプト、UX/IAなどに基づいて決める必要があります。
私たちは現在、こうした領域まで含めて体系化するため、『「K2 Project Base(新しいタブで開きます)」』という事業基盤の開発を進めています。これは、要件定義からコンセプト設計、UI/UX設計、実装、運用までを一貫した考え方で進め、制作の品質と生産性を高めるための仕組みです。
K2 Project Baseでは、プロジェクトの目的や要件、コンセプト、画面構成などの設計情報を各工程で共有し、デザインシステムの共通規則を適用して実装します。共通マスターからプロジェクト専用の環境を作り、要件定義から設計・実装・運用まで進めます。そこで生まれた改善や新しい機能をマスターにも反映し、次のプロジェクトに活用します。制作を重ねるほど共通基盤を進化させ、品質の安定化と制作コストの削減につなげる仕組みです。
最近、もう一つ重要だと感じていることがあります。
AIによるデザインやコーディングの普及です。AIは短時間でUIを生成できますが、明確なルールや制約を与えなければ、色、余白、HTML構造、動作などにばらつきが生じることがあります。
例えば、同じWebサイト内でも、ページごとに余白が微妙に異なったり、ボタンの形状や配置が統一されなかったりすることがあります。図版についても同様です。同じサイトで使用する図解なのに、生成するたびに配色、線の太さ、文字サイズ、アイコンのテイストなどが変わってしまう。個別に見れば問題がなくても、サイトやシステム全体で見ると統一感が失われ、ユーザーの認知負荷や操作ミスが増加し、UXの低下につながる恐れがあります。
こうした問題は、AIでページや図版を個別に生成する際に起こりやすく、その結果、人間が整合性を確認し、修正する作業が発生します。これでは、せっかくAIで制作時間を短縮しても、その効果は限定的です。
そこで重要になるのが、使用する色や余白、アイコン、コンポーネントなどの仕様だけでなく、それぞれの選択基準や使用条件まで明確に定義されたデザインシステムです。AIがそれらを参照して生成することで、ページや図版ごとのばらつきを抑えることができます。
さらに、デザインシステムで定義されている共通の品質基準に基づいて、生成結果を別のAIエージェントに検証させることで、人間による確認や修正の負担も軽減できます。
ただし、デザインシステムだけでは限界があります。
共通の規則に従ってUIを生成できても、そのプロジェクトにどのようなページや画面が必要なのか、どの情報を優先するのかを判断するには、プロジェクト固有の目的や要件が必要です。例えば、ボタンの適切な形状や動作を定義できても、そのボタンをどこに配置し、ユーザーにどのような行動を促すべきかは、プロジェクトの目的や情報設計によって変わります。AIにこれらの判断を任せるためには、その根拠となる上位の設計情報も共有する必要があります。
そこで、先ほど紹介した「K2 Project Base」が重要になります。
デザインシステムがUIの設計・実装規則を担うのに対し、Project Baseでは、その上位にある要件定義やコンセプト設計、UX/IAなどの設計情報も管理します。AIが各工程で共通の設計情報を参照できるようになれば、制作の途中で判断基準が変わったり、工程ごとに異なる解釈が生じたりする問題を減らせると考えています。
例えば、要件定義で定めた目的やコンセプトを基に画面を設計し、デザインシステムの共通規則に従って実装・検証する。各工程で共通の設計情報を参照することで、AIを活用しても一貫した品質基準を維持しやすくなります。現在は、AIを活用してワイヤーフレームをFigmaに展開し、デザイン生成から実装までを連携させる仕組みを検証しています。将来的には、こうした仕組みをさらに発展させ、要件定義から設計、デザイン、実装、検証までをAIと連携させていくことを考えています。
Figmaのコンポーネントライブラリは、とても便利な仕組みです。デザイン資産の共有や再利用に大きな価値がありますし、適切に設計・運用すればデザインシステムの重要な構成要素になります。しかしながら、素材が豊富に揃っていることだけをもって、デザインシステムと言ってしまっては、本来デザインシステムが持つ価値が見失われてしまいます。
よりも、
こうした問いに対して、共通の答えを持ち、それを制作工程で機能させることにデザインシステムの価値があると考えています。一つひとつの要素を共通化・体系化することで、実装者がプロジェクト固有の課題や創造的な仕事に集中できるようになるのです。
さらにK2 Project Baseでは共通化させる範囲を実装だけでなく、要件定義から設計・実装・運用まで広げ、プロジェクトにおける各工程の属人化を極力抑え、品質と生産性を継続的に高める仕組みを目指しています。
私たちの挑戦は、まだ試行錯誤の途中です。ただ、AIによる制作が広がる今だからこそ、設計判断を明確にし、共有し、再現できる仕組みをもつことには、大きな意味があると考えています。
※本情報はページ公開時のものです。情報は常に更新され掲載内容と異なる場合がございます。
Web制作・開発のパートナーをお探しの企業様へ
要件定義からUI/UX設計、プロトタイプ制作、実装まで。貴社のプロジェクトを専門技術で支援します。
制作・開発業務を承ります
更新は
SNSnoteでお知らせしています。