オブジェクト指向 UI デザイン ── 使いやすいソフトウェアの原理 を読んだ。

感想など

実際にこう書いていたわけではないが、GUI というのは現実を模した UI なのだから現実っぽい UI にしようぜ!という感じだと理解した。

じゃあ現実っぽい UI ってなんだろう。と考えたときに、"モーダル" と "モードレス" という概念が生じる。

”モーダル” というのはまさに "○○ モード" のように特定の文脈で固定されている状態を指す。 これはシステム作成側の恣意的な文脈の固定であって、現実からかけ離れた状態となっている。 だから、使いにくい。

私たちは、新しく飲み物を飲むときに、

  1. 「水を飲みます」と宣言して
  2. コップに手を伸ばして水をついで
  3. 飲む

というわけじゃない。 当然、『先に「水を飲みます」と宣言したからって、途中で飲み物をコーヒーにすることが許されない。』なんてこともない。

ただ、モーダルなシステムはこれがあり得る。

現実は

  1. コップを手に取って
  2. 飲み物を選んで
  3. コップに注いで
  4. 飲む

わけで。 当然コップを手に取った時点でコップの汚れに気が付いて、コップを洗ったっていい。

なぜなら現実はモードレスだから。

著者は特に業務システムについて、例えば「○○ タスク」が画面に並んだモーダルな UI がシステムの使いにくさにつながっているなどの問題点を述べていて、これを解決するためにモードレスな UI を利用することを提案している。

ということで、これを実現できるといいねという話になるが、これの実現方法としてオブジェクト指向がでてくる。

UNIX コマンドなどの CLI などでは 命令 -> 対象 (less note.md) のようなタスク指向だが、 オブジェクト指向は 対象 -> アクション (note.show()) のようになるため、ユーザはまず、興味のある対象を選んで、必要なアクションを呼び出すという流れになり、前述の問題点が解決できるという話だ。

この本では、実装対象のモデリング方法と、モデルに対応する UI パターンについて豊富な実例とともに説明がある。

モデリング方法自体は特に目新しいものはなく、ソフトウェアの設計をした人は普段からやっているようなものだと思う。また、UI パターンについてもありふれた表示であると思う。

重要なのは、使いやすい UI というのは突飛なデザインが必要ではなく、今までソフトウェアの設計でやっていたようなモデリングで明らかになった主要概念にフォーカスを当てるということだと思った。

結果として、快適な UI というのが製作者の恣意的なものが含まれず、ユーザの興味の赴くままに対象を選択し、アクションを選択するということと理解した。

これは、製作者のマーケティング的な理由でコンテンツに含まれた、いろいろな誘導と正面からぶつかりかねないことだと思った。

製作者の思った通りにユーザを動かすような思考ではなく、どうやってユーザの欲求を発見して、うまくサポートする UI を作るかということを考えないといけないと感じた。

今、並行して UX 原論 ユーザビリティから UX へ を読んでいる。良い UX とは何か、 良い UX を実現するための UI とは何かを考えていきたい。

補足

作者が書いたブログ記事があるので、こちらを見てみて興味があれば本を買ってみるのが良いと思う

sterashima78

Web Frontend Engineer


© 2020 - 2021 — Terashima Shin