ソフトウエア開発の分析/設計フェーズで利用される図と言えば,まずUML図が挙げられる。しかし,UML図を利用してエンドユーザーとスムーズに会話ができるだろうか。私はそうは思わない。実際,UMLのユースケース図やクラス図をエンドユーザーに提示したことがあるが,図の意味を理解してもらうのに時間がかかった。

 エンドユーザーはソフトウエア開発が本業ではないので,それらを勉強してもらう,というのはおかしな話だ。仮にエンドユーザーがUML図を理解していたとしても,あいまいな要求を探索している,アイデアを出し合って仕様をこねている,対話をしながら合意をつくる――といった場面で,UML図は使いにくい。なぜなら,「ここは点線?ここは白抜きの矢印?」と迷いやすく,それでは思考や会話の妨げになるからだ。

 それに対してマインドマップは,あいまいな要求を探索する場面で使うのに適している。人間の思考に優しく,速く描ける記法だからだ。要求定義の観点で見ると,マインドマップには三つの魅力がある。

 第一の魅力は速記性である。マインドマップはキーワードを線でつないでいくだけ。すべての線が「連想」というあいまいな一つの意味しかない。あいまいであることが,スピードと,発想の柔軟性にプラスとなる。UMLの場合,線ごとにいろいろな意味がある。この線は「継承」なのか「関連」なのか「依存」なのか,と迷いやすいので書くのに時間がかかってしまう。

 第二の魅力は一覧性である。要求定義を進めていっても1枚のマップにまとまるので,全体を見下ろして見ることができる。文書だとページがどんどん長くなる傾向にあるが,マインドマップは1枚の中にどんどん「詰まっていく」感じである。

 第三の魅力として検討していたときの状況を思い出させる力が挙げられる。人間の左脳が得意とする概念や論理といった情報操作能力に加え,「色」「形」「絵」といった右脳を刺激する情報がマインドマップには入っている。このため,1カ月前に作った図でもそのときの状況(コンテキスト)を思い出せるのだ。これを「プレイバック能力」と呼び,ユーザー・インタビューでは特に重要な特徴である。

マインドマップからUML図作成

 では実際にマインドマップを作り,それを基にUML図を書いてみよう。図書館システムに関する要望を聞き出し,それを仕様化する,という想定である。要求定義は通常,エンドユーザーにどういったシステムが必要か,というインタビューから始まる。何らかの「インタビュー・シート」(質問を準備した用紙)を持っていくだろう。ここでは,マインドマップによるインタビュー・シートのテンプレートを用意した。

 このシステムは,書籍と会員を管理するシステムで,貸出や返却のときに使うことを想定している。まず,聞き出したい項目をマインドマップでピックアップして準備する。典型的な質問項目は,次の五つである。
■ 動機は何ですか?
■ 誰が恩恵を受けますか?
■ 誰が使いますか?
■ どんな場面で使いますか?
■ 何を管理したいですか?