プロダクトを死へと誘う複雑性の恐ろしさと、それを最適化する10個の方法
ある研究によると、80%のユーザーがプロダクトの機能のうち20%しか使っていないことが分かっています。
優れた体験のプロダクトを作り上げ成長を実現する上で、複雑性の弊害をしっかりと理解し、それに正しく対処することはスタートアップや新規事業を始める企業にとって必要不可欠な能力です。
この記事では、複雑性がUXに与える悪影響を複数の研究を引用しながら示し、プロダクトの複雑性を最適化して優れたサービス体験を作り上げる10個の方法を紹介します。
複雑性がUXに与える悪影響
プロダクトに機能を追加しすぎることによる弊害は、"フィーチャークリープ "と呼ばれています。
プロダクトを作る際に、機能を追加すればするほどより機能的になると思い込んでいる人も多いかと思います。
しかし、ほとんどの場合でその結果は期待と正反対になります。闇雲に機能を増やすと、プロダクトのユーザビリティが低下し、ユーザーにとって負荷の高いプロダクトになり、ユーザーが離れる直接の原因となってしまいます。
それでは悪い複雑性、フィーチャークリープがもたらす悪影響にはどのようなものがあるかをまず見てみましょう。
① プロジェクトマネジメントに悪影響を与える
フィーチャークリープはプロダクトそのものだけでなく、プロダクトをつくるプロセス全体にも悪影響を与えます。
冒頭で紹介したように80%のユーザーが使うのは20%の機能であり、プロダクトが成熟するまではチームのリソースをそのコア20%の体験を磨き上げることにフォーカスするべきです。
しかし、そうした複雑性を回避しようとする規範が欠けているチームでは、「あると良いかもしれない」機能の開発タスクが溜まっていき、コア20%の体験を磨き上げるのを阻害してしまいます。
② UXに直接的な悪影響を与える
複雑さは一般的に機能性を低下させます。
ユーザーは、過剰な機能に直面すると、それらの機能が何であるかを理解するのに多くの時間や認知的リソースを費やすため、迷ったり、不満を感じたりします。
ユーザーが製品を使用する理由は、問題の解決策を見つけるためであり、問題を増やすためではありません。
複雑性がユーザビリティに及ぼす悪影響については、複数の研究でも証明されています。
以下の研究では、サービスの複雑さが、検索効率と情報想起に有意にマイナスの影響を与えることが確認されています。
Keep it Simple: How Visual Complexity and Preferences Impact Search Efficiency on Websites
また、この研究が面白いのは、ユーザーの複雑性への嗜好性(※)に関わらず、複雑性の低いサービスの方がユーザーはより早く目当ての情報にアクセスでき、サービスから多くの情報を記憶できているのです。
※ シンプルなサービスが好きな人もいれば、複雑なサービスを好きな人もいることを考慮
以下の図を見ると、複雑性への嗜好性に関わらず複雑性の低いサービスにおいて目当ての情報にアクセスするまでの時間が短いことが分かります。
また、以下の図を見ると、総じてどの嗜好性のユーザーでもサービスの複雑性が低い方がより多くの情報を記憶できるという結果が出ています。
このように、サービスの複雑性は、サービスをつくるプロセス全体にもサービス体験それ自体にも大きな悪影響を及ぼします。
では、そうした複雑性の問題を回避して優れたユーザー体験を作り上げるにはどうすればよいのかを次に見ていきましょう。
サービスの複雑性を最適化する10個の方法
サービスの複雑性を最適化するための具体的な方法をこれから提示していく訳ですが、まず最初に「複雑性の最小化」ではなく「複雑性の最適化」としている理由を説明します。
サービスはシンプルにすればするほど良いというものではありません。ボタンが1つしかないUberのアプリがはたして使いやすいかどうかを考えてもらえればそれがお分かり頂けるかと思います。
なので考えるべきは、ユーザーの体験が最大化するような「最適な複雑性」にサービスの状況をアラインし続けるということです。
そうした複雑性を最適化する方法は以下の10項目です。
① ユーザーを知る
当たり前すぎると思われるかもしれませんが、やはりこれを外す訳にはいきません。
サービスが複雑になっていく根本原因はチームやステークホルダーがユーザーのことを理解しておらず、想像で彼らが欲しい物を考えてサービスを作っているということが多いです。
あなたのチームは少なくとも2週に一度は直接ユーザーと対話しているでしょうか?
最終意思決定を行うステークホルダーも少なくとも1~2ヶ月に一度は直接ユーザーの声を聞いているでしょうか?
もし上記の2つの問いに対して「NO」であれば月に数時間の投資を行っていないせいでサービス体験を最大化するチャンスを失っているもったいない状態にあると言えます。
まずはユーザーとの直接対話の機会を設ける仕組みを構築することがサービスの複雑性を最適化するための第一歩です。
② 製品ビジョンにこだわる
こちらも当たり前に思われるかもしれませんが、サービス開発をすすめる上で当初のプロダクトのビジョンへの意識が薄れてしまい、ビジョンから逸れた機能実装に走ってしまう、というのはよくあります。
プロダクトマネージャーやサービスデザイナーがビジョンにこだわっているだけではダメで、チームやステークホルダーがプロダクトのビジョンを意識し続けられるようにする必要があります。
具体的なアクションとしては、以下のようなものがオススメです。
オフィス内、もしくはSlackのPinなどのすぐに見れる場所にプロダクトビジョンを掲示する
プロダクトMTGのドキュメントの上部にかならずビジョンが表示されるようにテンプレートを作成する
数ヶ月に1回などの特定周期でチームでいまのプロダクト開発がビジョン実現に繋がっているかディスカッションする機会を設ける
③ 機能要求にNOと言うことを学ぶ
たとえ、プロダクトマネージャーやサービスデザイナーが複雑性のマネジメントの重要性を認識していても、プロダクトに精通していないCEOや、他ステークホルダーからの要求によってプロダクトの複雑性が高くなっていくことがよくあります。
理想はCEOがこうしたプロダクト論をしっかりと勉強してチームの頭からこうした考えを浸透させるのがベストですが、そうでない場合にはプロダクト論に通じたメンバーが上を説得する能力が必要です。
それを行う上でぜひ今回の記事を活用してもらればと思います。
単に「シンプルな方が良い体験なんです」と言うよりも、複雑性がもたらす問題を定量的に評価している研究などを見せながら提示することでステークホルダーも理解しやすくなるはずです。
UXデザイナーの仕事をComplexity Avoider(複雑性を回避する人)と定義する人もいるくらいです。
基本的に「必須でないものは不要である」の精神でいきましょう。
④ ユーザーのメンタルモデルに合わせる
メンタルモデルとは、システムがどのように機能するかについて、人々が頭の中で想像するものです。
メンタルモデルを活用して高いユーザビリティを実現している代表例がベンツのシートボタンです。
操作パネルがシートの形状をしていることによって、ユーザーはシートの狙ったパーツを簡単に調整することができます。
プロダクトがユーザーのメンタルモデルと一致していれば、同じ機能数を提示する場合でもプロダクトがよりシンプルに感じられ、認知的負荷を最小化することができます。
⑤ 情報構造を最適化する
日本でもUXの重要性は認知されていますが、その中の主要領域であるInformation Architecture(情報構造、以下IA)の重要性は見過ごされがちです。
正しくサービスを作る場合は、以下のようなIAマップやUser Flowマップを作成して構造的な美しさも担保しながらサービス設計していくのですが、そうしたステップを飛ばしてつくられたサービスの情報構造は往々にしてグチャグチャです。
ユーザーは、サービスを使う際に、無意識に頭の中にサービスの地図を作りながら利用しています。
構造がグチャグチャなサービスを使うと、ユーザーの頭の中が混乱し、機能数に対して複雑性を感じて混乱しやすくなってしまいます。
IAの最適化については、過去にnoteでまとめているのでぜひ参照してもらえればと思います。
⑥ 視覚的に知覚されるノイズを減らす
デザインによって「知覚される」複雑さを最小化することも重要です。
「余白」と「コントラスト」という2つの武器によって視覚的なノイズを減らして知覚される複雑性を最小化することができます。
好きなWebサイトを開いて、ブラウザのデバッグモードでマージンをひたすら小さく余白をなくしてみてください。
機能や情報量は変わらないのに、とたんに複雑性の高いページだと感じることかと思います。
同様に、コントラストが小さすぎてボタンがすべてテキストリンクだったり、反対にすべての要素がカラフルに彩られていたら複雑な見た目になるのはイメージしやすいと思います。
⑦ ジャストインタイムを活用する
情報をすべてあらかじめユーザーに提示するのではなく、ユーザーがそれを欲している瞬間にピンポイントで提示するのが、UXにおけるジャストインタイムの考え方です。
例えば下図のように、左揃え・中央揃え・右揃えをすべて最初からテキストでラベル表示してしまうと煩雑になり、かといってラベルがまったくないのも分かりづらい場合、ユーザーがマウスオーバーした際にボタンの意味を教えてあげるという工夫が考えられます。
これにより、ユーザーが欲している情報を提供しつつも、サービス全体の複雑性が上がることを避けることができるようになります。
⑧ ショートカットを用意する
もしMacにショートカットがなかったらと思うと、恐ろしく複雑な操作を強いられていたことでしょう。
ある一定以上のリテラシーのユーザーの複雑性を最適化するためにショートカットを用意することは重要です。
メールクライアントの「SuperHuman」はメールの処理を高速で行える高機能性を有しながら、ショートカット機能の設計が秀逸で、とてもミニマルなインターフェイスで複雑なメール処理を高速で行うことができます。
そうした秀逸なショートカット設計を行っているサービスを参考にしながら、自分たちのサービスに合ったショートカットを導入していきましょう。
⑨ 必須ではないが入れざるを得ない機能は第二階層以下に階層化する
「必須ではないものは不要である」と先述しましたが、それでも必須ではないが入れざるを得ない機能というのは出てきます。
その際の鉄則は、「必須ではないものは、第二階層以下に階層化する」です。
Twitterの第二階層以下の機能がもし第一階層目に上がってきたらどんなに使いづらくなるかを想像してみてください。
あなたのサービスではそのような機能を第一階層目に配置していませんか?
もしそうなら先述のIAに関するnoteを参考にしてもらいながら、サービスの階層構造を最適化していきましょう。
⑩ 複雑性の処理をマシン側に寄せる
複雑な処理をユーザーに委ねるのではなく、AIによってタスクを巻き取ってあげるというのもサービスの複雑性を最適化する上で非常に重要です。
OpenAIのGPT3など昨今のAI技術の進化の加速によって、自社で高いコストをかけなくてもマシン側でより多くの複雑性を巻き取れるようになってきています。
ぜひ自分たちのサービスでそうした仕掛けができないか考えてみましょう。
まとめ
複雑性がサービスに対して与える悪影響がどれだけ大きいか、そしてどうすれば複雑性を最適化できるかが本noteでよく理解して頂けたのではないかと思います。
「複雑性マネジメント」は優れたサービス体験を作り上げる上で欠かせない考え方です。
このnoteが、みなさんのサービスの複雑性を最適化して、より良いユーザー体験とグロースを実現する助けになれば幸いです。
さいごに
毎週or隔週 1時間Zoomで、UXデザイン、サービスデザイン、サービスグロースに関するメンタリングの依頼をお受けしています。ご興味ある方はTwitterやFacebookでお気軽にご連絡ください!
また、継続して今後の記事を読まれたい方は、サービスのグロースやデザインについての国内外の最新記事をシェアしたり議論するFacebookグループをやっているので、興味ある人は是非ご参加をお願いします。
Growiz.us - Growth + UX Design