ソフトウェアテストシンポジウム「JaSST'13 Niigata」開催レポート(その2)――描いてみようマインドマップ
こんにちは、第3バイオリンです。
前回から少し間が空いてしまいましたが、ソフトウェアテストシンポジウム「JaSST’13 Niigata」参加レポートの第2弾です。今回は、演習付きチュートリアルの様子をお届けします。
■演習付きチュートリアル「マインドマップを用いたテスト要求分析・設計エクササイズ」
MRTコンサルティングの鈴木 三紀夫さんのセッションです。
最初に鈴木さんから「今回はマインドマップを中心にお話します。チュートリアルでは、たくさんあるテストケースを削減するのではなく『テストの抜け漏れをなくす』ことを解決するべき課題として進めていきます」と説明がありました。
そしてさっそくマインドマップの説明から始まりました。マインドマップの基本的な書き方の手順は以下のとおりです。
- 紙の中央に円を描き、その中にお題を書く
- 中央の円からブランチ(枝)を伸ばし、お題から連想するキーワードを書く
- キーワードからブランチを伸ばし、さらに連想されるキーワードを書いて……を繰り返す
ここで鈴木さんは「本に載っているような『きれいな』マインドマップを描こうとする人がいますが、きれいに書くことが目的になってはいけません。マインドマップを描く目的は、あくまでも設計すること、自分の仕事の成果に焦点を当てることです」と語りました。マインドマップは、思考を発散させるためのものです。そのため、線が入り組んでグチャグチャになってしまうのはある意味当然のことです。きれいに書くことにこだわるあまり、思考がそれたり止まったりしたら何にもなりません。
それからもうひとつ、マインドマップを書くコツとして、鈴木さんから「中央の円にはテキストだけでなく、図やイラストを描くとマップがスムーズに描けるようになる」とアドバイスがありました。図やイラストを描くことで、頭が「絵を描くモード」に変わるのがいいのだそうです。実際に、鈴木さんがワークショップで参加者をふたつのグループに分けて、一方のグループに対して中央の円にイラストを描くよう指示したところ、そのグループのほうがイキイキとマインドマップを描くことができたそうです。
マインドマップの説明がひととおり終わったところで、さっそく最初の演習です。
「マインドマップを描く前に、まずは自分の会社、組織のテストプロセスを確認してみましょう。現状のテストプロセス、テストケースはどうなっていますか? もし、現状を説明しろと言われたら、どのように報告しますか?」
参加者の皆さんに、隣の席の人と話し合ってもらうことにしました。とはいえ、初対面同士、なかなか打ち解けて話し合うのは難しいようであまり声が上がりません。
他に話し合うのが難しい理由のひとつに「うちのテストプロセス、テストケースは完璧です!」と言える人はなかなかいない、ということもあったかと思います。なんとなく仕様書の内容をそのまま転記している、過去のテストケースを深く考えずにそのまま使いまわしている、というケースはよくあることではないでしょうか。
そういうときに決まって言われることが「テスト観点が不十分です」ということです。では、「テスト観点」とは一体何でしょうか。
「テスト観点」という言葉をGoogleで検索してみると、約254万件のヒットがあります(2013年4月18日現在)。しかし、テスト関連の書籍に「テスト観点」について記述しているものはほとんどありません。つまり、「テスト観点」については明確な定義はまだ存在していないともいえます。
テスト観点と言われてもピンとこないため、テストを改善するならとりあえずテスト技法を学ぼう、という人もいます。しかし、学んだことを現場で生かせている人はかなり少ないのではないでしょうか。実際、鈴木さんもセミナーを開催しても教えたことがなかなか定着しない、セミナーのアンケートでは評判が良くても半年後、1年後に話を聞いてみたらまったく現場に定着していない、というケースをよく目にしているそうです。
実はテスト観点を挙げる前に、もっと根本的な話として、そもそもテストプロセスが確立していない、という問題があります。
と、ここでまた演習です。
「自分の会社や組織にテストプロセスはありますか? ある場合は、どんなプロセスが定義されていますか? ない場合は、どんなプロセスがあればいいと思いますか?」
再び、参加者の皆さんに近くの席の人と議論してもらうことにしました。今度は、最初の演習よりも少しだけ声が挙がるようになりました。
ひととおり議論が終わったあとで、鈴木さんはテストプロセスの変遷の歴史について語り始めました。
テストプロセスが生まれたころ、プロセスに含まれるのはテストの「実行」のみでした。ようは計画とか設計といった過程をすっとばして、ただやみくもにテストをしていた時代です。それが、やがて実行の前にテストケースを「実装」するようになり、計画や設計も必要というふうに、プロセスが成長していったのです。
ここで「自分の会社、組織における開発工程と、テストプロセスの各工程がどのような関係があるでしょうか?」という演習が入りました。参加者がそれぞれのテストプロセスについて考えをめぐらせたところで、鈴木さんは「テストプロセスの考え方がしっかりしていないと現場を説得できません。テストプロセスはテストの計画、設計、分析にあたります。そして、テスト観点はテストの関心事、気になるところを列挙したものです」と語りました。
残り時間が10分になったところで、最後の演習となりました。
「西暦和暦変換機能のテストを考えます。どんなテストが必要か、マインドマップを使って考えてください」
すぐに仕様が理解できるように簡単なプログラムにしたそうです。さっそく参加者の皆さん、マインドマップを描き始めました。短い時間でしたが、会場の後ろから、参加者が真剣に取り組んでいる様子が見えました。
演習のあと、鈴木さんは「マインドマップの考え方ができる組織にはテストプロセスが重要になってきます。少し残念なことですが、テストがわかる、できるようになるころにはテスト担当を外されることが多いです。しかし、そのスキルはレビューに役立てることができます。そうして、テストプロセスの改善につとめてください」と語って締めくくりました。
テストプロセス、テスト観点についてはSNSでもしょっちゅう議論が繰り広げられているテーマです。そのお話をじっくり聞けたことは良かったです。自分の中のテストプロセス、テスト観点が変わっていけば、自分が描くマインドマップも変わってゆくのかもしれません。一度だけでなく、定期的に描いてみるのも面白そうですね。また、大西さんが基調講演でおっしゃった、「あいまい」な日本語の仕様をマインドマップで図示することで、あいまいさを減らすことができるかもしれない、とも思いました。
ただ、演習の時間をもう少しゆっくり取れたらよかったかも、と最後の演習の様子を見ていて思いました。演習付きチュートリアルをわずか90分で、というのはちょっと無理があったかもしれません。今後の反省点にしたいと思います。
「JaSST'13 Niigata」開催レポート第2回目はここまでです。次回は最終回、地元新潟のコミュニティの発表の様子をお届けします。
それから、JaSSTのサイトに「JaSST'13 Niigata」のレポートページが公開されました。当日の会場の様子や、登壇者の発表資料を掲載しています。