図解言語入門:図解の技術を覚えよう

第1回 図解言語はSEの現場で役に立つ

開米瑞浩(アイデアクラフト)
2004/4/2

話すこと、書くこと、そして思考を図に表して理解する。当たり前で簡単なようだが、意外と訓練していないとうまくいかない。では、それを習得した場合のメリットとは。それは、相手とコミュニケーションにおいて誤解が少なくなること、より理解できるようになること、伝えるための道具になること、といったことだ。ITエンジニアに必須のコミュニケーションスキルの土台を、言語を図解化することで理解しやすく構築しよう。

理解するための図解言語

 図解という言葉は、プレゼンテーション技法の1つ、相手に伝えるための技法といった形で使われるようになった。

 だが、今回紹介する図解言語は、直接相手にプレゼンテーションをするためのものではない。それ以前の段階で言葉や思考を図解化することで、自分自身の理解と思考を早め、相手の理解も容易にするためのものである。

 では、その言語、技法を学ぶことがなぜコミュニケーションスキルの土台を作ることになるのか。それは、クライアントとのコミュニケーションを可視化することで、クライアントとのコミュニケーションギャップの解消、誤解(例えば、「そうだろうと思った」「すべてを確認したと思った」といったが、後で誤解やそれぞれが違う解釈をしていた、といった経験はあるだろう)の回避などに役立てることが可能だからだ。

 多くのプロジェクトの迷走や失敗は、上流、特に要求定義レベル段階までにあるといわれる。クライアントとのコミュニケーションがうまくとれていなかった、決めるべきことを決めていなかったなど、プロジェクトマネジメントの基本的なことがきちんとなされていないために生じることが多い。からこそ、コミュニケーション能力などビジネススキルを持ち、クライアントの立場で物事を考えられるITエンジニアが求められ続けているのである。

 図解言語は、そうした要求にこたえるための第1歩である。そしてプレゼンテーションスキルの土台を作った後、次にロジカルシンキングなど、相手を説得させるためのコミュニケーションスキルを学んでほしいと考える。それによって付け焼刃ではない、コミュニケーションスキルをつけてほしい。

 ここからは、過程のストーリーに基づいて図解言語のメリットなどを説明していこう。

要求定義がまとまらない

 ぼくは清水敦史、現在25歳。業務システムの開発のため、客先常駐で仕事をこなすシステムエンジニア(SE)です。

 客先常駐で楽しいことも多々ありますが、いろいろとストレスがたまることもあります。最近、最も大変だと感じるのは、クライアントの担当者との打ち合わせです。お互いのバックグラウンドが異なるため、細かい点まで話が通じないことや、話がすれ違うことがよくあります。現在も新システムの要件定義がなかなかまとまりません。

 このままでは、暗礁に乗り上げる幻のプロジェクトになってしまう、そんなあきらめと悲壮感が現場に漂い出したころ、加藤さんという外部のコンサルタントがやってきて、突然明るさと未来が見えてきたのです。

「これは、よく分かる」

 そう発言したのは、クライアントの担当者です。

 数枚の資料を取り出してぼくらに質問を始めました。質問といっても半分以上は加藤さんからの説明です。この会社のビジネスモデルはこうで、そのために社内にはこんなシステムがあって、こんな業務が動いている。その業務上のポイントはこれこれこうだ、などと説明したううえで、その細部の確認を取るための質問を加藤さんはしてきました。それはあっけに取られるほど簡潔で、しかも分かりやすいものでした。

 しかしそれ以上に驚いたのはクライアントの反応です。「いや、これは、よく分かる。このとおりです」と、オーバーにうなづいています。

 これまでのぼくの努力は何だったのだろうか。さまざまな図を書きつつ説明をする加藤さんに、一瞬嫉妬しましたが、正直いって脱帽です。

何かワザがあるのか?

 そこには一体何か秘けつがあるのでしょうか。ぼくは加藤さんと2人きりになったときに質問してみました。

清水 とても分かりやすい説明でした。どうすればうまく説明できるようになるのでしょうか。何か技(わざ)があるのですか。

加藤 それは、図解言語にあるんだよ。

清水 図解、……言語?

 加藤さんは、「図解」を1つの新しい言語体系だと考えているといいます。ITの世界では機械(マシン)語やアセンブラ、FORTRAN、COBOL、C、Javaなどさまざまな言語が誕生し、進化し、信じられないほど複雑なシステムを構築できるようになりました。それと同じ進化が人間同士のコミュニケーションにもあるべきで、そのための道具、新たな言語が「図解言語」だというのです。

 確かに加藤さんの説明では、何枚も図表が使われ、それによって視覚的に納得できた点はありましたが、それだけだったのでしょうか。加藤さんにさらに話を聞くと、

加藤 つまり、人同士が話をするとに使う言語には、大別すると音声系と映像系の2種類がある。

 そう話しながら加藤さんが書いてくれたのが図1です。

図1 図解は映像系の言語である

文章は音声系言語、図解は映像系言語

加藤 文章は、そのまま電話で読み上ることができるように、音声をベースにした言語だね。文章を紙に書いたとしても、基本は音声で組み立てられているのが文章だと思う。しかし、この図(図1)を電話で読み上げろといわれても大変だ。つまり、こうした図は音声でなく、映像をベースにしているからだ。ぼくはこういう映像をベースにした表現にも音声系言語と同じように単語や文法を考えることができると考えていて、それを図解言語とか映像系言語と呼んでいるものだ。高級言語でシステム開発が容易になったように、図解言語をうまく使えれば、人とのコミュニケーションも改良できると思うよ。

加藤 清水さん、SEとして何で話が通じないのか、と困ったことはある?

清水 もちろんありますよ。

加藤 そうだろう。でも図解言語を身に付ければ、解決できることも多いと思うよ。

清水 本当ですか。

加藤 ちょっとやってみようか。具体的に何か、うまく説明できなくて困ったことはない?

 ぼくは1つのケースを思い出しました。先日、このことでかなり苦労していたのです。

■対象の構造を反映した表現をする

清水 これですけど……。

(1)Sコースで、もし現在地がA地点よりCkm以上前ならば、A-Dkmの地点にチェックポイントFを設ける。そうでなければチェックポイントFは設けない
(2)Sコースでは、B地点よりEkm前にチェックポイントGを設ける
(3)Tコースでは、もし現在地がA地点より5km以上前ならば、A-5と現在地+Cのどちらか遠い方にチェックポイントDを設ける

加藤 これは、車両運行管理のための仕様の一部だね。

清水 そうです。こんな仕様に、といわれたので、ここまで整理しました。が、クライアントでさえ話が紛糾するし、うちのスタッフに説明するのも大変でした。いまいちピンとこないみたいで。

加藤 ふうーん……。こんな場合、あんな場合で場合分けをするには、デシジョンテーブルとかツリーを使うのが定石だけど。しかし、それではしっくりこないなぁ……。

 分かった。これは車両の運行管理なんだから、ようするに1本のレールの上を走っているようなシチュエーションだ。で、運行状況に合わせていくつかの基準でもってチェックポイントを設定する、と。その基準、判断ロジックをできるだけ適切に表現すればいいとすると、これではどうだろう(図2)。

図2 上記のような場合デシジョンテーブルかツリーを使うのが定石だが、それでは分かりにくい。そこで上記のような図にした

加藤 つまり、右側に向かって進行するとして、A地点とかB地点といった通過点がある。その通過点からDとかEkmの調整をかけた個所にチェックポイントFやGを設定する。ただし、Fを設定するに当たっては、現在地がA-Cよりも前の場合だけ、ということだね。これはSコースについてだけ書いた図だ。

 結局このケースの場合は、

  • 1本のレールの上に乗って動いているということ
  • 通過点、判断基準、調整値といった概念を切り分けて名前をつけること
  • AやC、Dといった記号がそのレールの上でそれぞれどの意味で働くのかをビジュアルに表すこと

 この3点がポイントで、それをうまく表すと図2のようなチャートになる。

清水 そうですね。これはすごい。よく分かります。

加藤 これが図解言語だよ。物事を考える場合、その対象となる物事には固有の構造がある。その固有の構造を踏まえた、きちんと表現したチャートが書ければいいんだ。そうすれば、考えることも、伝えることも非常にしやすくなる。

 しかし、これまで多くの人は、国語の時間に作文や感想文、小論文を書いた経験はあっても、図解言語の勉強はしたことがないはずだね。練習をしていないことはなかなかできない。つまりスキルの空白地帯になっているんだ。

清水 それならば、UMLで記述した方がよくないですか?

加藤 UMLは実装技術寄りだから、すべてをカバーするのは無理だと思う。いま書いた図2だって、UMLをいくら覚えたって絶対出てこないでしょ?

図解はすべての過程を改善する

加藤 それから1つ分かってほしいのは、図解とは人に『伝える』場合だけではなく、コミュニケーションのあらゆるプロセスを改善するってことだ。これも図解しよう(図3)。

図3 図解はすべての過程を改善する

加藤 例えばAさんとBさんが議論する場合を考える。そこでは次のようなことが起きる。BさんがAさんのいっていることを理解する。理解したことを基にして自分の考えをAさんに伝える。基本はこの繰り返しだね。

 「図解」というと「伝える」段階で使うものだ、というのがよくある誤解だ。本当は「理解する」「考える」段階を含め、すべての思考プロセスで図解言語はものすごい武器になるんだよ

清水 例えば?

加藤 そうだね。人の意見を誤解することが少なくなる。短時間で考えがまとまるようになる、ということかな。そしてもう1つ、ぼくらのSEという仕事には、ヒアリングは非常に重要だ。だからわざわざ「聞き出す」を別に書いてみたけど、うまくいっている?

清水 あまり自信はないですね。

加藤 じゃあそれも大事だね。「図解はヒアリングの最強兵器!」だからこそ、ぼくは短時間でこの会社の状況と問題を把握でき、そして説明できたんだ。

清水 それはぼくにもできるようになりますか?

加藤 やりたい? 役に立ちそう?

清水 もし本当にできれば、いまのぼくの困った状況をきっと大きく改善できるはずです。ですからぜひやってみたいと思います。

加藤 分かった。じゃあ早速、図解言語には基本技があることから教えよう。

 そういって加藤さんが解説してくれたのが、図解の3つの基本技の1つ、マトリックスについてです。

加藤 図解言語の3つの基本技とは、順番にいうとマトリックス、ピラミッド、サーキットの3種類になる。これらはどれも単純なわりに応用範囲が広い手法で、最初はまずこの3つを学んでおけば、実際に遭遇するケースの9割以上は応用技を含めればカバーできる。それぞれの手法の詳しい説明はこの次に譲るとして、簡単にその性質をまとめてみよう(表1)。

名前
特徴
用途
マトリックス タテ/ヨコのマス目に区切られたセルに情報を整理する方法 複数のものを並べて見ることで、不足や不整合に気が付きやすくする。
ピラミッド 1つの主張や課題を頂点にして、ツリー状に要素分解する方法 主張に対する根拠、課題に対する個別課題をもれなく分解していくことで、堅牢な論理を組み立てることができる。
サーキット 複雑な因果関係を表すループ状にチャートを書く方法 マトリックスやピラミッドには収まらない複雑な因果関係を、ありのまま知ることができる。
表1 3つの基本となる図解

 この中で、一番最初に学ぶ場合はマトリックスから始めるといい。マトリックスはタテ/ヨコの表に情報を整理、分類するだけなので、最も直観的で学びやすい手法だからね。しかもマトリックスの利用範囲は非常に広い(図4)。

図4 マトリックスの例

 なお、ここで参考のため、実際にピラミッドとサーキットの図をここで掲載しておく(図5図6参照)。

図5 ピラミッドの例

図6 サーキットの例

 さて、最後に清水くん、そして読者の皆さんに宿題です。マトリックスの詳しい説明は抜きに、次の問題について答えてください。

練習問題

 基本的な文章の読解力と判断推理能力を問う問題です。下記のテキストに含まれる情報、またはそこから推測されることを整理分類して図4のワークシートの空白部分(色が付いたセル)を埋めてください。推測できない場合は「不明」でも構いません。解答・解説は次回に行います。

近年、地球表面の砂漠化現象が大きな環境問題として懸念されている。
砂漠化の原因としては、降水量が減少するという気候的要因と、草地の再生能力を超えた家畜の放牧、休耕期間の短縮などによる地力の低下、薪炭材の過剰な採取などの人為的要因がある。
草原地帯 (A2) 森林地帯
気候的要因 (B1)降水量減少
人為的要因 (C1)家畜の過剰放牧 (C2) (C3)
人為的要因のもたらした影響 (D1) (D2) (D3)
図4 テキストを読み、それに含まれる情報、そこから推測されることを整理分類してワークシートの空白部分(色が付いたセル)を埋めてほしい。推測できない場合は「不明」でも構わない。なお、解答・解説は次回に行う

自分戦略研究所、フォーラム化のお知らせ

@IT自分戦略研究所は2014年2月、@ITのフォーラムになりました。

現在ご覧いただいている記事は、既掲載記事をアーカイブ化したものです。新着記事は、 新しくなったトップページよりご覧ください。

これからも、@IT自分戦略研究所をよろしくお願いいたします。