気まぐれエンジニア日記

ひよっこエンジニアの雑記

そのアプリケーションから「ユーザの活動」は見えるか

今年もどうぞよろしくお願いします。くまちゃんです。
アドカレを書いて以来、書きたいことが増えたので、また書きます。

はじめに

多機能なアプリケーションで溢れかえる中で、いかに自分のアプリケーションを作っていくかについて、著者なりの考えを「モノ」と「ユーザの活動」に注目して書きます。

日頃使っているアプリケーションには様々な機能がついています。ものによってはその使い方を著した本が書店に並んでいるほどです。そういった超多機能なアプリケーションが身近にあると、自分がアプリケーションを作ろうと思ったときにも、様々な機能を作りたくなります。

けれども、機能を作りすぎるとかえって良くないということもしばしば言われます。使い方について書かれた本があるということは、裏を返せば、本を読まなければ使えないほどアプリケーションが複雑だということです。また、開発者からしても、使われない機能は保守コストを上げるだけとも言われます。

多機能であることが当たり前な一方で、機能のつくり過ぎは災いを招きかねない。こうした難しさの中で、著者がアプリケーションを作る際に心がけていることがあります。それは、アプリケーションが「モノ」中心になると使われにくい機能が増えてしまうから、「ユーザの活動」中心で考えるようにしようということです。

「モノ」中心のアプリケーション

アプリケーションの中には、様々なデータが存在します。そのデータの表現能力を高めることで様々なものを作れるようになったり、多様な表示ができるようになったりする方向性のアプリケーションのことを、ここでは「モノ」中心のアプリケーションと呼ぶことにします。

プレゼンテーション作成ソフトを例にとりましょう。プレゼンテーションには、聞いてくれる人に見せるための「発表資料」がモノとして登場します。多くのプレゼンテーション作成ソフトでは、その発表資料をリッチにするための様々な機能ついています。スタイリングを選べたり、動画や画像、図形を挿入できたり、グラフや表の種類やスタイリングを選択できたり、自由自在です。こうしたアプリケーションは非常に出来が良く、著者自身も頻繁にお世話になっています。

けれども、「こんな図形を使うことってあるんだろうか」あるいは「グラフや表の位置をピクセル単位で調整できる必要はないのに」とふと思う時があるのです。それは、「発表資料」というモノが中心になり、「発表資料」をリッチにしようとしすぎた結果だと著者は考えます。「フロントエンドはJSON色付け係だ」なんていう自虐ネタも、モノが前に出過ぎてしまったが故に生まれた言葉なのかもしれないと、そう思うのです。

「ユーザの活動」中心のアプリケーション

アプリケーションの見方を少し変えてみましょう。アプリケーションのユーザはそこにあるデータを見たり、作ったりすることを含めて、一連の活動を行なっています。その活動を体形的にサポートすることを目指すアプリケーションのことを、ここでは「ユーザの活動」中心のアプリケーションと呼ぶことにします。

先と同じように、プレゼンテーションを例にとりましょう。

プレゼンテーションをすることになったユーザは、どんな活動をするでしょうか。おそらく、いきなり発表資料を作ろうとする人は多くありません。むしろ「いきなり発表資料を作るな」と言われたことがある人もいるのではないかと思います。

著者自身の例を挙げておきましょう。何かの成果報告なら、まずは自分の成果を振り返ります。次に、発表資料のアウトラインを作ります。アウトラインができたら中身を埋めて資料をひとまず完成させます。資料ができたら練習をして、修正を加えます。そうして本番を迎え、フィードバックを受けます。その後、場合によっては、次のプレゼンテーションに向けての活動が始まります。

上記のような一連の活動がプレゼンテーションだと著者は思うのです。「発表資料」はこの活動の一部に登場するものにすぎず、「プレゼンテーション」それ自体ではないと思うのです。だからこそ、「こんな図形を使うことってあるんだろうか」あるいは「グラフや表の位置をピクセル単位で調整できる必要はないのに」と感じてしまうのです。

上手なプレゼンテーションができるようになる方が、発表資料がリッチになることよりも重要だと考えるアプリケーションがもっと増えて良い。そうなれば、使われなくなる機能はグッと減ると著者は考えます。なぜなら、それぞれの機能はプレゼンテーションという活動の上に置かれているからです。

「モノ」と「ユーザの活動」の関係性

ここまでのところで、「モノ」中心のアプリケーションと「ユーザの活動」中心のアプリケーションを対立させて話をしてきました。しかしながら、少し落ち着いて考えてみると、この2つは対立しているのではなく交差していることに気がつきます。

「モノ」中心のプレゼンテーション作成ソフトは、それが発表資料でさえあれば、どんなものでも対応してくれます。図形が入ろうが、動画が入ろうがグラフや表が入ろうが、自由自在です。しかしながら、資料作成以外のことは考えてくれません。それ以外のところは他のツールを使ってやれば良いという立場をとります。

一方、「ユーザの活動」中心のプレゼンテーション作成ソフトは、下準備、アウトライン作成、資料作成、練習、フィードバックという活動全体をサポートしてくれるモノになるでしょう。しかしながら、個々でできるものは決してリッチではありません。リッチなメディアは他のものを使って見せたり作ったりすれば良いという立場をとります。

これら2つは本来、互いに互いを補い合う存在のはずなのですが、多くのアプリケーションは「モノ」中心の考え方で作られています。だからこそ、著者自身は「ユーザの活動」を中心にアプリケーションを考えようと思っています。

アプリケーションの外まで、でも最低限に

「ユーザの活動」を中心にアプリケーションを考えるということをもう少し深掘りします。それは、アプリケーションの外にある活動まで考えること、それでいて活動の各部分において提供する機能は最低限にすることだと思っています。

ユーザの活動に目を向けてみると、「この作業は時間がない中でやらないといけない」だとか、「この時には他の人や別のアプリケーションと連携しながら何かをやる」だとか、アプリケーションの外に広がる感情や光景が浮かんできます。そうしたところも考慮して、うまく体験をデザインする必要があると考えています。

また、提供する機能が最低限であることも重要だと思っています。活動の各部分に対してあれこれ機能を提供しても、機能がユーザの活動のシナリオ、時間の流れの上に乗ってこなければ使われないと考えます。「その機能はいつどうやって使われることになるのか」を流れをもって説明できない機能は消すというのが著者のポリシーです。

おわりに

多機能なアプリケーションで溢れかえる中で、いかに自分のアプリケーションを作っていくかについて、著者なりの考えを書きました。

データの表現能力を高めることで様々なものを作れるようになったり、多様な表示ができるようになったりするアプリケーションのことを「モノ」中心のアプリケーションと名付けました。すでにあるアプリケーションの多くが「モノ」中心で作られており、そこにある機能にはリッチすぎると感じるものも少なくありません。

一方、ユーザが行なっている一連の活動を体形的にサポートすることを目指すアプリケーションのことを「ユーザの活動」中心のアプリケーションと名付けました。「ユーザの活動」中心のアプリケーションでは、それぞれの機能は活動の上に置かれるため、使われなくなる機能はグッと少なくなると考えています。

「モノ」中心のアプリケーションと「ユーザの活動」中心のアプリケーションの関係は、対立ではなく交差です。そして、多くのアプリケーションが「モノ」中心で作られているからこそ、著者はそれらとは別の軸を持った「ユーザの活動」中心のアプリケーションを考えるようにしています。その上で、「ユーザの活動」中心のアプリケーションを作るとは、アプリケーションの外にある活動まで見据えること、それでいて活動の各部分において提供する機能を最低限にすることだと考えています。

あれこれいろんなことはできなくても、ユーザの活動を最初から最後までサポートする。そんなアプリケーションがとても好きです。