情報設計

このページでは、情報設計の意味や重要性、誰に関係あることなのかについて説明します。情報設計は情報を扱うプロダクト全般に関係のある行為ですが、ここでは特にSmartHRでのプロダクト開発について重点的に触れます。

以下の各ページもあわせて参照してください。

「情報設計」とは

情報設計とは、情報を整理し、構造化することです。

情報設計という言葉を聞いたことがなかったり、行為として特に意識していなくても、例えば以下のような私たちが日常的にしていることも情報設計に当たります。

  • 仕事で長いドキュメントを書く機会があったとします。このとき、いきなりドキュメントのタイトルから書きはじめて、1文目、2文目…と順に書いていくことは稀です。たいていの場合、完成した文章の形にする前に、頭のなかで、あるいは紙に箇条書きなどで「何を書くか」「どんな順序で書くか」をある程度組み立てていると思います。
  • ウェブサイトなら、「サイト内にどんなページを用意し、どう階層化するか」「各ページにどんな内容をどんな順序で置くか」、ソフトウェアであれば、これに加えて「ユーザーがどんな操作をすると、何が起きるか」なども考えるはずです。

やること:分類・命名・関係性の定義

情報を整理し、構造化するために、主に以下の3つのことをします。

  • 分類する
    登場する要素を、特定のルールに沿っていくつかのグループに分ける
  • 命名する
    グループやその構成要素を、どんな名前で呼ぶかを決める
  • 関係性を定義する
    親子、並列、因果関係など、グループや構成要素どうしがどういう関係性を持つのかを決める

なぜ重要か:わかりやすさ・探しやすさの土台になる

情報がどのように構造化されているかによって、その情報のわかりやすさや、探しやすさが大きく変わります。

たとえば、ドキュメントの章のわかれ方の粒度が揃っていなかったり、同じ名前が指すものが複数あったり、関連の深い情報があちこちに散らばっていたりしたら、ドキュメントの内容を理解したり、ドキュメントのなかから欲しい情報を見つけたりするのは難しいでしょう。

ソフトウェアの場合、情報設計がうまくできていないと、以下のようなことが起こり、使用性が下がる可能性があります。

  • 同じ画面に表示して編集したい内容が、別々の画面にあるため、画面の行き来が何度も発生する(=分類に問題がある)
  • 機能によって同じものを別の名前で呼んでいるため、それぞれの利用者同士のコミュニケーションに齟齬が生まれやすい(=名前に問題がある)
  • よく使う機能が深い階層にあるため、見つけづらく、たどり着くまでの手間が大きい(=関係性に問題がある)

情報設計の失敗によって発生した問題を、ルックアンドフィールや実装で改善することは難しく、情報構造から見直す必要があります。

誰に関係あるか:開発に関わる全員

使用性の土台となる情報設計は、開発プロセス全体で扱う必要があり、特定の職種・フェーズだけで行うものではありません。企画・UIデザイン・実装のそれぞれのフェーズで、異なる形で情報設計との関わりがあります。

企画フェーズは情報設計の起点です。ソフトウェアにどんな概念が登場するのか、それぞれを何と呼ぶのか、それぞれがどう関係するのかなど、抽象度の高い情報設計がこのフェーズで行われます。

UIデザインフェーズでは、企画フェーズで決まった内容を引き継いでさらに詳細化し、UIに落とし込みます。

実装フェーズでデータモデルやAPI、権限、バリデーションなどを設計しますが、これらはUIデザインフェーズで定義した概念や状態、関係性を前提とします。情報構造が不適切だと、さまざまな形で不整合として表れ、その整合を取るための無理(特例、二重管理、変換ロジックなど)が実装に積み上がり、負債になります。

開発チームの全員が「自分に関係あること」と認識し、情報設計に関する議論や合意形成に関わることが重要です。