自習室

こもります

読書感想:ソフトウェアの達人たち Bringing Design to Software

動機

  • 職場でインタラクションデザイン・UXデザインの体系的な技能が求められている
  • @100kw先生が、UXデザインの概念を初めて知った本として紹介して下さった

この本に前後して、いくつか有名な本を読んでいます/読む予定です。その一部として、学術的で古典的なものを期待して読んでみました。出版は1996年で、Windows95が発売され、インターネットが本格的に普及した頃です。しかしこの本自体はそこからさかのぼること1992年頃から書き始められていたようで、インタビュー記事の再掲が多く含まれて居るので内容的には更に古くなります。

ちなみに、この流れで読もうと思っているAlan cooper氏の About Face 3 インタラクションデザインの極意 の初版が出版されたのも1995年で、コンピュータという物がプロではない人々の手に渡っていくようになった時代に、そんな時代を作ろうとしてきた科学者やエンジニア・デザイナたちが強く問題意識を持っていたことが分かります。

ソフトウェアの達人たち―認知科学からのアプローチ

ソフトウェアの達人たち―認知科学からのアプローチ

本の構成

1992年にスタンフォード大学で行われたワークショップで、30人のソフトウェア・デザイナ、グラフィック・デザイナ、インダストリアル・デザイナ、研究者、教授達がソフトウェア・デザインとは何なのかについて議論した結果から、制作された物。

14章からなり、14人(組)のデザイン界の重鎮達がそれぞれの視点からソフトウェア・デザインについて語り、それを著者が補足する、という構成です。

1. ソフトウェア・デザイン宣言

ミッチェル・ケイパーロータス1 2 3発売会社の社長、開発者

2. 概念モデルをデザインする

デヴィッド・リデル :MSの共同創設者ポール・アレンと共にインターバル・リサーチ研究所を設立。元IBM副社長、スタンフォード大学の顧問教授。

3. アーティスト・デザイナーの役割

ギリアン・クランプトン・スミス :イギリス王立芸術大学教授、グラフィックデザイナ。RCAにインタラクションデザインの修士課程を設けた。イタリアのインタラクションデザイン専門学校イブレアの創設者

4. デザイン言語
5. 消費者のスペクトラム

ポール・サフォーシリコンバレーシンクタンク「未来研究所」のコンサルタント

6. アクション中心主義のデザイン
7. すべてをシンプルに

ジョン・シーリー・ブラウンXerox PARCディレクター、認知科学者、組織における学習や教育プログラムのデザイン

8. デザイナーのスタンス

デビッド・ケリー IDEOファウンダー。TED必見

9. 素材との自省的対話
10. プロトタイプの文化
11. デザインの足場
12. 現場でのデザイン

ドナルド・ノーマン 必読書 誰のためのデザイン?―認知科学者のデザイン原論 (新曜社認知科学選書) 著者。認知科学者。アップルでの職歴もあり

13. ソフトウェア・デザインを支える組織
14. 仕事場の人々のためのデザイン

印象に残った章の著者だけ書き出してみたら、見事にスーパー著名人ばかりでした。そんな豪華本。

ちなみに著者 テリー・ウィノグラード氏は、スタンフォード教授で自然言語研究者。ちょうどこの本を執筆していたと思われる1995年に、後にGoogle共同設立者となるラリー・ペイジの指導もしていた人。

本のタイトル

上記の目次を見ると邦題をつけた意図は何となくは分かるのだけど、別に偉人伝を書きたいわけでは無く、ソフトウェアデザインに関して問題意識を持って現役で制作・研究・教育活動を行っている方々のレポート集という方が正確。原題は非常に分かりやすいです。

「ソフトウェアにデザインを」

概要:3つの主要議題

上記の目次のように、多様な視点からソフトウェア・デザインについて論じられているのですが、その中でも多くの著者が繰り返し触れていた議題は、以下の3つだったと思います。それらについて印象的だった部分を引用してまとめておこうと思います。

  1. ソフトウェア・デザインとは何か
  2. デザイナの技能や考え方
  3. 良いソフトウェア・デザインのための方略

1. ソフトウェア・デザインとはなにか

本書では、バーチャリティーを生み出す媒体としてのソフトウェアという視点を協調したい。つまり、ソフトウェアのユーザーがその中で認識し、行動し、経験し、反応する世界のことである。(イントロダクション p.xxii)

ソフトウェアのただの道具としての側面を超えて、人の体験をつくる環境・人間が実質的に活動する場所としてとらえている。

ソフトウェア・デザインは建築のようなものである。建築家が家やオフィスビルを設計すると、構造が特定される。しかしもっとおもしろいのは、その時、そこに住む人々の生活のパターンも形作られると言うことだ。(中略)
本書では、ソフトウェアのユーザを住人ととらえ、デザイナーが作り出す世界でどのように暮らしているのかに焦点を合わせたい(中略)
クランプトン=スミスとテイバーは、インターフェイスが隠された機能を表現するのではなく、コミュニケートしユーザの経験を形作るものとしての重要性を強調する。(イントロダクション p.xxiii)

ちょっと安いホテルに泊まったときのことを想像してみると、この点はイメージが良くわく。ホテルの壁にあるボタンのたぐいはいわゆるインタフェースで、1日2日宿泊するだけでは部屋に仕込まれた機能を発掘するので精一杯だ。(しかも大抵うまく機能しない)

しかし自分の家となると、家全体の間取りやエアコン・テレビ・オーディオの配置や使い方を覚えていて、「リビングにいる」と言うとエアコンが効いていたり音楽が流れていたり、テーブルの上にはお気に入りのワインが並んでいたりと様々な体験が含まれている。これは先のホテルの壁のボタンのように「扉の横のノブを回すとエアコンの強弱が変わる」といったインタフェースの機能の話とは明確に別のレイヤーの議論で、これがおそらく、UXと言う物なのだろう。

2. デザイナの技能や考え方

デザイナの行うトレードオフ

デザイナの行うトレードオフは、エンジニアリングにおける量的なトレードオフ(素材の強度、建設コスト、消耗度など)とは異なる。テクノロジーと人間的な領域に片足ずつ入れてトレードオフをやりくりする必要がある。

例を挙げよう。ソフトウェア・デザイナーにとって、使いやすさ(特に初心者ユーザに対して)が聖杯になるような、単純な探求に陥るのはたやすいことである。しかし、「使いやすさ」とはなにか? それは誰にとってどのくらい重要なのか? 初心者がバイオリンを演奏するのはかなり難しいが、だからと言って自動ハープと取り替えようというのはばかげている。 (イントロダクション p.xxvii)

デザインが先

興味深かったのが、エンジニアリングとしてのソフトウェア設計(つまりプログラミング技能の一部)は、デザインに左右されるもので、デザインが先だという主張。そして、エンジニアはついデザイナもやれると思ってしまいがちだが、デザイナは技能だけでも非常に高度であるのは言うまでもなく、考え方や視点が明らかにエンジニアとは異なっているべきである。この考え方はAlan Cooper氏の「コンピュータはむずかしすぎて使えない!」でも共通している。

家の設計を行う際に、エンジニアリング的な「この工法が」「この素材が」が先に来ることはない。間取りは生活者の生活スタイルと部屋の目的を反映させてデザインされる。エンジニアリングはそのあと。同様にソフトウェアデザインは建築家に似た視点で行われなければいけない。(ソフトウェア・デザイン宣言 p.4)

デザイナーは、それが何であるかを決定する。

デザインには、理解、観察、視覚化という三つの活動があります。
デザインとは、ユーザーがどう使用するかに関することなのです。
視覚化とは、それが何であるかを決定する行為。
たとえばテープレコーダーをデザインしていると、機能や色や素材や形などの組み合わせで何でも作れるけど、その中から何かを描きだす。(デザイナーのスタンス p.150)

それは居心地が悪いことである

デザインにおける優れた設問とは、正しい解答があるかどうかすら分からないものです。(中略)デザインするとは、物自体を生み出そうと決断することですから、誰かそれを見て「こんなものじゃない」と言うかもしれません。(中略)まずは飛躍しなければならないのですが、それがあまりに不確かで安心できないのです。

クリエイティブな飛躍が求められる。スティーブ・ジョブズの例をあげて。

優れた発明家、優れたデザイナーは「まだ道はないけれども、こっちの方に行くのはどうだろう?」と言える人間なのです (デザイナーのスタンス p.151)

3. 良いソフトウェア・デザインのための方略

ユーザーの概念モデル

ゼロックス パロ・アルト研究所で作られたAlto(1972頃)、それに続くStar(1981)はMac, Windowsに引き継がれるGUIの先駆けであるが、開発の方法論に重きを置いていた。ツーボタンマウスも、一つや三つのものと比べて、エラー率、学習の時間、混乱の少なさが分かって決められた。

開発グループに心理学者やデザイナーを最初から巻き込み、いくつものモックアップやプロトタイプでユーザー・テストを行って、どれならうまくいくのか、どうすればいいのかを観察したのだ( 概念モデルをデザインする p.18)

f:id:AMANE:20140317235631j:plain

ソフトウェアのデザインアプローチ

  1. 広範なユーザを仮定したタスク分析(何をしたいのか)
  2. タスクに基づいて、想像上の製品をどう使うのかというシナリオを描く
  3. その上でグラフィカルなユーザー・インターフェイスのモデルを提示する

グラフィカルなユーザー・インターフェイスのモデルは三つの点に明確に分けて語られる

  • 情報のディスプレイ
    • 何がどんな風に見えるかと言うこと。
  • コントロールあるいはコマンドのメカニズム
    • 異なったアプリケーションを通して、コマンドのデザインが一貫していることが重要
  • ユーザーの概念モデル
    • 一般的にどう考えるか、どう反応するか。

メタファは思い出させるためではなく思い当たらせるために

スプレッドシートやデスクトップが、集計用紙やオフィス家具などの物理的なオブジェクトを物まねしたと考えるのは、間違っています。このメタファーの決定的に重要な点は、ユーザが自分の仕事に結びつけることを可能にした抽象化です。一般的に、コンピュータ・メタファー、特にグラフィックなものやアイコンを用いたメタファーは、ユーザーに何かを思い出させるためではなく、思い当たらせるためのものです。( 概念モデルをデザインする p.21)

インタラクション・デザインのコンポーネント

(アーティスト・デザイナーの役割 p.46)

  1. 理解 - これは一体何か。解決されるべき課題とはなにか
  2. 抽象化 - 主要素は何か。これを使って人は何をしたいと思っているのか。何が重要か。
  3. 構造化 - 各様をの関係はどうなっているのか?
  4. 表現 - この構造は視覚的にどのように表現できるか。スケッチ。
  5. ディテール - 各要素の色、スタイル、枠、動き。
IDEOのデザインプロジェクトの5ステップ

(デザイナーのスタンス p.160)

  1. 理解 - 製品のコンテクストを理解する
  2. 観察 - 潜在的なユーザに焦点を当てる
  3. 視覚化と予想 - 絵を描く。ストーリーボード
  4. 評価と改良 - 分析・観察・スケッチ・プロトタイプ のサイクルを繰り返す
  5. 実現 - コスト、製造可能性、耐久性など実践的な側面
すべてをシンプルに:中心と周辺 内容と形 メッセージとメディア

たとえば「歴史情報」という本来同源の情報であっても、電子書籍ハイパーリンクは便利が故にユーザに理解や使いこなしのための努力を求め、情報の正しさは自ら確認しなければならないのに対し、名のある図書館に置かれた名のある作家に書かれた本は、それに触れた読者は迷いなくその中身を信頼し、まっすぐにその書籍を読み体験することが出来る。

内容 / コンテキスト という情報体験デザインの視点から言うと、後者の方がシンプルと言える。

新聞はただニュースをレポートするのではなく、ニュースを作っている。皆が見るからニュースである。
広大なデータベースから個人個人がアイテムを選び出すべきという考えは、的を外している。一回限りの新聞は、物理的にも社会的にも連続性がなく、社会的な重要性はほとんど失っている。これも、内容とコンテキストが分離することで本質が失われている例。

さらに話は、ソフトウェアの周辺の周辺にまで及ぶ。

ユーザー経験をデザインすると言う時、われわれは周辺をも語っているのである。ソフトウェア・デザインの経験は、プログラムを走らせることによって始まったり終わったりするのではなく、もっと大きな箱や製品の名前、プロモーション、その他のものを含んでいる。ソフトウェアそのものと同じように、この広い世界が、効果的なデザインを実現させるためのチャレンジなのである。(すべてをシンプルに p.142)

これこそUXの神髄。シンプルさとは、人が語ること人が考えることを減らすこと。そのためには、避けがたい不純な周辺が役にたつ。

まとめ

昨今のUX本は、ウェブやスマホのUIデザイン、ゲーミフィケーションの仕掛けなど、ミクロなディテールのデザインに特化した物が多い印象ですが、この本は期待通り非常にプリミティブなソフトウェアのユーザ体験デザインに対する考え方や視点を提示してくれていると感じました。

自分向けのまとめとして、使える標語を三つだけ抽出してみようと思います。

  • 建築とソフトウェア・デザインの相似性。ソフトウェアデザインは、人の体験のための環境をつくること。
  • デザイナは、エンジニアリングに先駆けて人間的な立場に立ってトレードオフを行い、それが何であるかを描き出す。
  • ユーザー・課題・コンテキストを深く理解する
  • 内容と分かちがたい周辺を正しく活用・デザインすることで、人が考えることを減らし、体験をシンプルにする。

四つになりました。ちゃんちゃん。