アプリをスリム&シンプルに保ってメタボにさせない
拝啓、スマイリーさん。
あけましておめでとうございます、今年はアウトプットの量を増やしていくぞ!と意気込んでいる、ましゃです。
さて、今回はアプリをデザインする時、ついぞあれやこれや機能を盛り込んでメタボちゃんにさせてしまう、身も心も全然ダイエットできない(謎)ボクの悪い癖を戒めるためにアプリ肥大化のデメリットを上げていきたいと思います。
メタボにさせると起こるかもしれないこんなデメリット
まず、アプリを肥大化させてしまうとどのようなデメリットがあるのか、「ユーザーの目線」と「開発者の目線」で見て行きたいと思います。
ユーザーの目線
- 操作が煩雑になったり必要な機能がどこにあるかわかりづらくなる。
- 利用したい機能以外が原因ですべての機能が使用不可能になる。
- 容量が大きくなるとインストールしづらくなり、起動が遅くなる。
アプリ一つで様々なことができてしまえば割りと便利なのではないかという気がしないでも無いです。
もちろん、大きめのタブレット端末であればそのような点も出てくるかもしれませんが、10inch程度のサイズの端末を思えば、限られた画面内にたくさんの機能を盛り込んでわかりやすい操作性を実現するのは難しく。
すべてを盛り込んで実装しても、操作が煩雑になり必要な機能をすぐに利用できない、利用するのに学習コストが高くなるという点が大きなデメリットになると考えています。
また、たくさんある機能の一部だけを利用したい場合には、全部入りの重たいアプリを起動させなければならなかったり、利用したい機能とは別の部分が原因でアプリが利用できなくなってしまうような、余計なストレスがかかる可能性があります。
開発者の目線
- バグの原因が増える。
- 開発が煩雑になりフットワークが重くなる。
- ソースコードの見直しが大変になる。
開発側からすれば、肥大化することを避けたい理由はゴマンとあると思います。様々な機能を一つのアプリに取り込むことで開発は煩雑になり、バグの原因が増え、リジェクトされた場合なども含めてソースコードの見直しも大変になり、OSのアップデートに対応するのも一大プロジェクトになりかねません。
そのため、一つ一つの機能を絞り込み別のアプリとして存在させ、連携をとるのが結果的にユーザーのため、しいては開発者自身のためになるのではないかということです。
事例
では、すでにそのような感じになっているアプリを例にみたいと思います。
- Webサービスのアプリ群
- 一つ一つが独立したアプリ
- Googleアプリは検索機能と他のアプリへの受け渡しする
GoogleAppsは言わずと知れたGoogleのWebサービスのアプリ群です。 そもそも一つ一つが大きなアプリとなっているので、「Google」アプリは基本的に検索と他のサービスへのブリッジとして存在しています。
また、基本的にWebサービスなので、使用頻度が低ければWebアプリ(On the web)として使用し、使用頻度が高ければインストール(On my iPhone)して使用するようなハイブリッド的なアプリとなっています。
各アプリ同士も連携していて、「Gmail」にURLが記載されている場合は「Chrome」で開きます。
「Facebook」の場合は本体のアプリと「Messenger」のアプリが別々になっています。
おそらく「Facebook」のMessage機能を頻繁に使う人向けに特化したアプリとして存在していることが伺えます。また将来的に音声通話機能やビデオ通話機能などの機能拡張も予定しているのかも知れません。
もちろん「Messenger」をインストールしていなくても本体のアプリのみで基本的なメッセージのやりとりはできますが、通常の画面内にフローティングする仕様になっているのでじゃまだったりします。(消すことももちろんできます)
LINE
今や国民的メッセンジャーアプリとなった感のある「LINE」にも「LINE Apps」、「Games」といったアプリ群を持っています。
「LINE」のようにインフラレベルまで生活に密着しつつあるアプリは、たくさんの機能を追加して、より便利になるように感じるかもしれないが、肥大化することで使い勝手を下げてしまう場合も考えられます。
その辺りを考慮しているのか、「LINE」は今だにタイムラインが追加された以外はほとんど基本機能に追加がありません。
カメラ(写真)機能も基礎的なフィルタ機能がついていますが、他のフィルタや写真のデコレーション、編集などなどより細かい画像編集機能を使うには、別の「LINE camera」というアプリと連動して編集ができるようになっています。
Apple純正電話アプリなども
実はiPhoneに標準でインストールされている「電話」アプリも複数のアプリと連携しています。
iOS7から「電話」アプリに搭載されたFaceTimeAudioという機能はデータ通信を利用したビデオ通話アプリ「FaceTime」の音声通話に特化した機能です。
一見すると「電話」アプリのFaceTimeAudioの機能で通話をしているように感じますが、実際は「FaceTime」アプリと連動して「FaceTime」で通話をします。
また表示される電話番号についても「連絡先」アプリと連携しています。
肥大化したアプリに待つ未来
肥大化したアプリは開発が大変になる、開発が大変になればメンテナンスのフットワークも重くなり、更新が遅れてユーザーにとってデメリットになってしまう。でも、機能拡張はしっかりしたい。
そんな「アプリを肥大化させず、でも機能は拡張したい。」という贅沢な悩みを実現するには、AppleやFacebook、LINEなども実践しているような、コアアプリと小さなアプリを連携させるということが有効なのではないかと考えました。
デバイスの多様化にともない想定するユーザーの使い方を考慮するのはもちろん、開発やメンテナンスなどにもしっかりと目を向けて、バランスを考慮したアプリのデザインを実践して行きましょう。