SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

AIの出力に“デザインの視点”をプラスする ──エンジニアのためのUX改善入門

ユーザーに安心感を与えるUIの設計手法 ──ボタンの「フィードバック」を意識したUIの重要性とは?

AIの出力に“デザインの視点”をプラスする ──エンジニアのためのUX改善入門 第2回

 AIでデザインを生成・実装するケースが増える一方、見た目は整っていてもUI/UXが機能せず、サイトが想定通りに使われない課題が生じています。本連載では、株式会社FaciloのフロントエンドエンジニアでZEN大学客員講師を務める折原レオナルド賢氏が、UX改善のヒントを指南します。第2回のテーマは「フィードバック」です。バックエンド処理を高速化しても、画面側に即座のリアクションがなければ、ユーザーは「動いていない」と判断して連打や離脱をしてしまいます。操作受付や処理中・完了といった状態を適切に伝え、ユーザーに「今、何が起きているか」を示すUI設計と、AI生成UIのチェックポイントを解説します。

APIは高速なのにユーザーがボタンを連打してしまうUI

 エンジニアがボタンの送信機能を実装し、完璧なロジックでバックエンドの処理を高速化させたとします。しかし、ユーザーがそのボタンを押したあと、画面上に何の反応も起きず、実際にはバックエンドで処理中である状況を想像してみてください。

 ログや通信状況を見れば処理中だと分かるエンジニアとは異なり、ユーザーは内部処理を見ておらず、画面の反応だけで状況を判断します。いくら内部でシステムが動作していても、ユーザーに伝わらなければ「止まっている」のと同じです。画面に変化がないと、ユーザーは「押せていない」と判断し、システムがすでに処理を開始しているにもかかわらず、ボタンを何度もクリックしてしまいます。

 こうした連打は、単にユーザーを不安にさせるだけではありません。二重送信によってデータの不整合が生じたり、同じ処理が繰り返し実行されることでサービス全体の動作が遅くなったりする原因になります。決済を伴う操作では、二重決済のような重大な問題につながるおそれもあります。

 なぜこのような「反応がないUI」が作られてしまうのでしょうか。要因の一つとして、エンジニアの開発環境が挙げられます。エンジニアは高スペックなPCを使い、ローカルサーバーで開発しているため、1~2ミリ秒で通信が終わってしまいます。しかし、実際のインターネット環境や電車の中などでは通信に300ミリ秒ほどかかる場合もあり、その遅延を考慮できていないケースがあるのです。

 また、AIを使って自動テストする場合も、ローカルサーバーへのアクセスであれば同様の問題が起こり得ます。その結果、ローディング表示やボタンの無効化(Disable)といった実装が抜け落ちてしまいかねません。AIが見落としやすいこうした点を、人間が実際の利用環境を想定して補う必要があります。

ユーザーに「体感上の安心感」を与えるフィードバックの設計

 では、ユーザーを不安にさせないためには何が必要なのでしょうか。その答えが「フィードバック」と、その前段にある「対応付け」です。

 ユーザーが迷わず操作するには、「何を操作すれば、何が起きるか」が分かる必要があり、操作後には「実際に何が起きているか」が伝わらなければなりません。前者が「対応付け」、後者が「フィードバック」です。フィードバックには視覚・聴覚・触覚によるものがありますが、Webでは音や振動に技術的・セキュリティ上の制約があるため、画面上の変化による「視覚的フィードバック」が中心となります。

 具体的には、エレベーターのボタンを押すと点灯する、自動販売機で商品選択ボタンを押すと光る、といった「操作を受け付けたこと」を伝える視覚的な変化が身近な例です。改札を通過するときの「ピッ」という音は、聴覚的フィードバックの代表例といえます。

 Webでも基本的な考え方は同じです。例えば、スマートフォンでボタンをタップした瞬間にボタンが一瞬沈み込む動作は、視覚的フィードバックの一例です。こうした状態変化によって、ユーザーは自分の操作が確かに受け付けられたことを瞬時に理解できます。

 重要なのは、一つの操作に対しても「操作を受け付けた」「処理中」「成功した」「失敗した」といった複数の状態が存在することです。UI設計では、それぞれの状態を適切なフィードバックによってユーザーに伝える必要があります。

次のページ
200ミリ秒の遅延がユーザーに違和感を与える

この記事は参考になりましたか?

AIの出力に“デザインの視点”をプラスする ──エンジニアのためのUX改善入門連載記事一覧
この記事の著者

折原レオナルド賢(オリハラ レオナルド ケン)

 株式会社サイバーエージェントに新卒入社し、新人賞を受賞。LINEビジネスコネクトAPIやAIカスタマーサポートプロダクトの開発に携わり、インフラ設計、フロントエンド開発、デザイン、UI/UXなど幅広い領域を経験。その後、LINE株式会社にて、7,500万MAUを超えるLINE NEWSのフロントエ...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営する開発者のための情報メディアです。日々の開発に取り組むエンジニアやテクノロジーを学びたい方に向けて、プログラミングやAI活用、開発ツール、エンジニアの学びとキャリアに関する記事をお届けしています。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/29014 2026/07/30 08:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー