アップルでさえデザインに失敗している「同期」のユーザー・インターフェイス

| コメント()
定義上、「同期」の際に競合が発生することはありえません。もし「競合」が発生するなら、その操作を「同期」と呼ぶべきではありません。/「競合」する操作・行為・現象には、別の名前が必要です。有力な候補は「統合」です。/ラベリングを変えるだけではなく、インタラクション自体を変える解決策としては「コピー」や(本来的な意味での)「同期」などのデザインがありえます。

この文章の想定読者は、ユーザー・インターフェイス・デザインの専門家・実務家です。

問題提起:「同期」の結果を予想する難しさ

次の順序で操作した結果を予想してみてください:

  • Mac上の連絡帳にA氏を追加した。
  • Macの連絡帳とiPhoneを「同期」した。
  • Mac側でA氏の電話番号を変更した。
  • iPhone側でA氏を削除した。
  • Macの連絡帳とiPhoneを「同期」した。

質問です:

  • Mac側にA氏のエントリーは残りますか? 同期処理によって削除されますか?
  • iPhone側にA氏のエントリーは復活しますか? 消えたままですか?
  • もしMacとiPhoneの両方にA氏のエントリーが残っている場合、それぞれの電話番号は一致しますか? Mac側のみが新しい電話番号になりますか?

さて、あなたの予想と、大多数のユーザーの予想は、一致するでしょうか?

ここには多様な解釈の幅があります。ユーザーにとって、その操作による結果を予測しづらいということですから、このUIデザインは失敗しています。失敗の原因は、「同期」というメタファーの誤用です。

「同期」の語義

「同期」という言葉の本来の意味を確認しておきます。語源的には「同じ-時(syn-chro)」となっています。文字通り「シンクロナイズド・スイミング」のような、時間的ズレのないことを指す言葉です。

詳しく見ていくと、「同期」という言葉には二通りの使われ方があります:

  • 「同期状態」「同期している」など → 「時間軸上のズレがない」という状態を指す
  • 「同期化」「同期をとる」など → 「時間軸上のズレを解消する」という操作・行為・現象を指す

「同期をとる」とは、時間軸上のズレをなくす操作です。同じ時間軸(タイムライン)上をたどる複数のものの間で、時間軸上のズレをなくすことです。

「同期」のイメージ

すでに「シンクロナイズド・スイミング」という例を出しました。そのほかに、複数人での演奏やダンスのイメージでもよいでしょう。

「同期をとる/とりなおす」という言葉の意味は、次のように理解できます:

  • 遅れているものが、進んでいるものに追いつく(あるいはその逆)
  • 基準となるペース・メイカーからズレているものが、ズレをなくす

例えば、生放送動画再生にタイムラグが生じたときに「同期」操作は何を行うのでしょうか。ストリームの最新データを読み込み直し、古いバッファを破棄することで、配信元とのタイムラグを解消するでしょう。

「同期処理」とは、同じタイムラインに拘束されているべき二つのものの間で、ズレを解消する処理です。あくまでも時間軸上のズレを解消するだけで、それぞれの挙動や状態の履歴は同じです。

「ズレ」とは、動画や音声でいえば「再生位置」の違いです。再生しているコンテンツ(履歴・記録)自体は、まったく同じなのです。

「同期」の誤用

ここまで論じてきたような「同期」の意味の範疇であれば問題ありません。しかし、冒頭に紹介したような誤用があります。それらは、たいてい前述のような意味論を超えたことによる誤用です。

例えば、MacとiPhoneの連絡帳を「同期」するときに、競合状態が発生することがあります。その証拠に、競合を解消するためのダイアログが表示されることがあります。アップルはこの操作を「同期」と呼んでいるわけですが、これは誤用です。競合が発生する操作を「同期」と呼ぶべきではありません。「統合」のほうが適切です。

そもそも「端末Aと端末Bで、同じデータをそれぞれ異なる内容に変更し、競合が発生する」ことなどありえないのです。端末Aと端末Bでそれぞれ別の操作をするなら、そもそも「同期」の前提を逸脱しており、メタファーとして誤用です。

「同期」の問題を解決するデザイン案

解決策は複数考えられます。(あなたも提案があればぜひシェアしてください)

ラベリングを「統合」に変更する

すでに述べた通り、「同期」の代わりに「統合」と呼び、競合発生時には解決のためのダイアログを出すUIデザインです。

コピー操作にする

あるいは、ラベリングだけで解決する必要はありません。インタラクションから変えるなら、「コピー」というイディオムもありえます。ユーザーに「コピー元」と「コピー先」を決定させ、上書きコピーするような操作です。コピー先の独自の変更はすべて破棄します。

同期をほぼ完全に実現する

本来的な意味での「同期」を擬似的に実現するアプローチです。「MacとiPhoneの間での同期」ではなく、「端末とクラウドの同期」という考え方ならば、「同期」的なデザインが可能になります。ただし、高速な常時接続環境が前提です。

「どのデバイスで行った操作か」を問わずに、時系列で操作履歴を統合します。そのためには、各デバイスの操作はリアルタイムにアップロードされなければなりません。ここにタイムラグが生じるほど、競合発生率が高まります。

理論的には、時差なくクラウドに操作を同期できるならば、(いわゆるレース・コンディション[2]のような操作を除けば)競合が発生しませんので、ユーザーにとっては「同期」が実現しているように見えます。

想定問答

  • 「誤用ではない。『同期』という言葉の意味が変わっているのだ。コンピューター用語の『同期』は、もはや『統合』という意味も内包しているのだ」という批判を想定して、先に回答しておきます。実際に混乱しているユーザーがいるので、メタファーとして失敗しています。メタファーの効果は結果によって判断されます。ですから私はこれを「誤用」と呼びます。
  • 「ユーザーは『統合』という言葉を知らない。たとえ誤用でも、すでに『同期』という言葉は知っている。だから『同期』を使い続けるべきだ」という批判を想定して、先に回答しておきます。今後はクラウド中心のコンピューティング・アーキテクチャへのシフトが進みます。誰もがクラウドを通じてマルチ・デバイス間でデータ同期/統合することになります。そこで正しい知識がなければ不便です。「同期」と「統合」を正しく使い分けられるようにユーザーを教育するのも専門家の役目です。また、ラベリングの変更に限らず、様々な解決策の可能性があることも示唆しました。ですから「統合」を使いたくなければ、それで構いません。何にせよ「同期」の誤用を不合理に弁護しないでください。

脚注

[1] 「統合に伴う競合を機械的に決定できない」ことは、ソフトウェア開発者やデザイナーなら誰でも体験しているはずです。ソースコード・バージョン管理システムを通じた共同作業において競合が発生した場合に、それを解決(意思決定)するのは人間です。

[2] 「レース・コンディション」は、

  • 端末AでファイルXを開いて、変更し始める
  • 端末BでファイルXを開いて変更して保存する
  • 端末AでファイルXの変更を終えて、保存する

といった操作手順により発生します。端末Bによるセッションのほうが後から開始されたのにもかかわらず、端末Aによるセッションを追い抜いて完了してしまっているわけです。

このようなレース・コンディションも、セッションの単位を小さくすることで、ほぼ解消できます。(ここでは原理的な説明にとどめますので、実際の製品の設計論ではありませんが)Google Docs をイメージして頂けると分かりやすいと思いますが、ファイル保存操作ではなく、1文字単位の文字入力操作ごとにクラウドに同期すれば、複数の端末で同時に編集しても競合が発生することはほとんどなくなります。

また、これでもレース・コンディションによる競合が発生する可能性はありますが、その場合はユーザーに対して「競合解決に関する意思決定」を求める必要がありません。単に片方を無視・破棄し、片方を採用することで暗黙的に解決できます。何らかのフィードバックは必要ですが、しょせん1秒前の操作が失われるといったレベルであれば、こういう解決策でも問題ないでしょう。

関連情報

裏書き

そもそも物質世界に適切なメタファーがないようなインタラクションについては、人類がまだ適切なメンタル・モデルを獲得していない場合があります。そういうインタラクションについては説明的にならざるを得ません。もちろん、簡潔に表現でき、誤解も生じないようなデザインが可能ならば、それは素晴らしい(ささやかであっても)イノベーションです。

「充分に発達した科学技術は、魔法と見分けが付かない」というアーサー・C・クラークの言葉の意味で、まるで「魔法」のように、「同期をほぼ完全に実現する」に書いた技術はマルチ・デバイス間同期を実現します。ユーザーにとって透明です。それに比べれば冒頭に紹介したiTunes(Mac-iPhone)のデザインは原始的です。

『ユーザー・インターフェイスの進化の本質』

ユーザー・インターフェイスは「モーダルからモードレスへ」のトレンドに従って進化する。ユーザー・インターフェイスは「透明」になっていく。情報や概念の対象(オブジェクト)そのものの持つアフォーダンスが知覚されるようになる。換言すれば、ユーザー・インターフェイスの進化の本質は、情報・概念の〈物質化〉である。