「WACATE 2011 夏」参加レポート(その4)――学んだことを「今すぐ」生かすことができなくても
こんにちは、第3バイオリンです。
「WACATE 2011 夏」参加レポートもいよいよ最終回です。今回は、クロージングセッションと後夜祭の様子、そして今回のWACATEで得られた気付きについてお送りします。
■クロージングセッション「コミュニケーションとしてのバグ報告――実データの分析、研究動向、私の経験から」
「WACATE 2011 夏」の最後を締めくくるのは奈良先端科学技術大学院大学の森崎 修司さんのセッションです。
森崎さんは、テキストベースによるバグ報告の難しさからお話を始めました。
システムテストでバグが見つかったとき、テストエンジニアは開発者にバグについて報告します。このとき、対面で報告する場合にはあまり角が立つことはありません。
しかし、メールやインシデントレポートだけで報告、つまりテキストだけで報告する場合は注意しなくてはなりません。例えば、題名にただ一言「デグレード」なんて書かれていたらどうでしょうか。おそらく、大抵の開発者は「ムキーっ」と腹が立つに違いありません。
他にも、テキストのまずさによるバグ報告の問題はよく起こっています。例を挙げると、バグ報告が開発とテストの間で行ったり来たりする「バグピンポン」と呼ばれる状態です。わざわざ名前がつくくらいですから、おそらく読者の皆さんにも経験ある、という方はいらっしゃるのではないでしょうか。
ここで森崎さんは「コンウェイの法則」について説明しました。コンウェイの法則とは、「製品の設計は組織のコミュニケーションの構造を反映したものになる」という説です。ソフトウェアもまた製品なので、ソフトウェアの品質は組織のコミュニケーションの構造の影響を受ける、というわけです。
そのため良いコミュニケーションができると品質が高くなる、というのが森崎さんのお考えです。例えば、昼食を一緒に食べられる距離(物理的なものだけではなく精神的にも)にいるチームはコミュニケーションが取れていて、バグも少ないという傾向があるそうです。
森崎さんは、過去にご自身が経験してきた、問題が起こりやすいインシデントレポートのパターンについて説明しました。例えば、バグ以外のこと(嫌味や開発者への攻撃など)が書いてあったり、モチベーションを下げるようなこと(理由なき要求、聞いてもいないウンチクなど)が書いてあったり。それ以前に、文章の記述が不十分、不正確という問題もあったそうです。
このようなインシデントレポートの多くは、配慮や文章力の欠如、信頼感の乏しさに原因があります。これらはすぐに身に付くものではありません。普段からのトレーニングが必要です。そうして少しずつ実績を積みながら信頼を得ることが大切、と森崎さんはおっしゃいました。
文章力はたくさん文章を書くこと、自分の文章を客観的に見つめることが一番のトレーニングになります。では、配慮はどのようにトレーニングすればいいのでしょうか。
森崎さんは、配慮を鍛えるための原理・原則として「『相手が長期的に一緒に仕事したい』と考えてくれるかどうか自問する」ことを提案しました。バグ報告をする目的は、目の前の相手をやり込めることでしょうか、それとも、ユーザーによりよいソフトウェアを提供することでしょうか。それを考えれば、いつの間にか「開発 VS テスト」のバトルになって肝心のバグのことが置き去りに……などということはなくなるでしょう。
最後に森崎さんは、「次の時代を築き上げるのは若手、中堅にあたる皆さんたちです。コミュニケーション力で次の時代を変えていきましょう」と締めくくりました。
わたしは「コンウェイの法則」というものを今まで知らなかったのですが、コミュニケーション力の高さと品質の高さが比例する、という考え方は興味深いと思いました。確かに、コミュニケーションがうまくいかなくてギスギスしたプロジェクトよりも、コミュニケーションがうまくいって、言うべきことや言いたいことが言えるプロジェクトのほうが、良いものを作れるような気がします。わたしを含めテストエンジニアは、何も開発を困らせたくてバグを報告しているわけではありません。ただ、わたしの場合、言葉や配慮が足りないばかりに困らせてしまう、ということは今でもたまにあります。わたしも開発者に「長く一緒に仕事したい」と思ってもらえるようなテストエンジニアになりたいと思います。
■後夜祭
WACATEが終わったあとは後夜祭、早い話が打ち上げです。横浜のアクアリウム居酒屋に行きました。きれいな熱帯魚が泳ぐ姿を見ながら魚料理(熱帯魚ではないです、念のため)を食べたり、初参加の方とも常連の方ともたくさんお話をしたりしました。中には、書籍をめぐってロシアンたこ焼きに興じるメンバーもいました。テストや品質の話でお酒が飲める仲間は貴重な存在です。
■学んだことを生かす、というけれど
参加レポート(その2)でもお話しましたが、わたしは今回ポジションペーパーに「WACATEで学んだことを仕事にフィードバックできるようになりたい」と書きました。わざわざこういうことを書く、ということは、今までフィードバックできていなかったということです。これまで3回も参加していたのにそれではダメだ、学んだことを仕事に生かせないなら一体何のために参加しているのか、という、焦りにも近い気持ちがありました。
そこで今回のWACATEの後に、さっそく会社で「インシデントレポートの書き方ガイドを作りましょう!」と提案してみたのですが……すでに作成されていました。ずっと前に誰かが作ったガイドがあったのですが、すっかりその存在を忘れていました(わたしだけでなく、その場にいた誰もが「あー、そういえばそんなのがあったねえ」というリアクションでした。これはこれで今後の課題となりそうです)。さすがに、わたしがポッと思いつくようなことは、すでに他の誰かが思いついて実践しているものです。
せっかく意気込んでいたところに水を差されたかたちになって少しガッカリしましたが、そのときふと、あることを思い出しました。以前Twitterであるフォロワーさんと会話したときのことです。そのときわたしは、自分の今後のあり方に悩んでいたのですが、フォロワーさんのある言葉をきっかけに、1年以上前にWACATEのセッションで聞いたことを思い出しました。そして「そうか、あのとき聞いた話はそういう意味だったんだ!」と唐突に理解する、という機会がありました。
学んだことをすぐに生かすことができるのはもちろん良いことです。しかし、あまり「今すぐ!」と焦る必要もないような気もします。
今回のWACATEで学んだことも、いきなり組織内に展開と考えずに、まずは個人レベルで取り入れてみようと思います。課内で「第3バイオリンさんのインシデントレポートが一番よく書けている」と言われるようになれば、後から配属されてきた人がわたしの書き方をお手本にして、それで今回学んだことが少しずつ広がっていく。そういう展開のしかたもあるのではないかと考えてみました。もちろんそうなるためには、まずはわたしがもっと精進する必要がありますが。頑張ります。
「WACATE 2011 夏」参加レポートはこれでおしまいです。今回のWACATEで出会ったすべての参加者、実行委員、講師の皆さん、それから、読んでくださった読者の皆さんに感謝いたします。
コメント
NAKA
インシデントレポートの書き方も時代によって変わってくると思います。
すでにあったとしても、それを更新していくようにすればいいように思います。
開発者はにムキーっ」と腹が立たれない、やるな、このテスト技術者は!
といわれるようなレポートを書きたいですね(^^)
第3バイオリン
NAKAさん
コメントありがとうございます。
他のコラムにもコメントをくださったみたいで、嬉しいと同時に少し驚きました。
(コメントが付くと自動的にメールが送信されるシステムなので)
コラムごとにお返事しますので、そちらもあわせてご覧ください。
>インシデントレポートの書き方も時代によって変わってくると思います。
>すでにあったとしても、それを更新していくようにすればいいように思います。
そうだと思います。インシデントレポートの書き方も進歩していると思います。
というより、進歩させなくてはいけないと思っています。
>開発者はにムキーっ」と腹が立たれない、やるな、このテスト技術者は!
>といわれるようなレポートを書きたいですね(^^)
私は昔、開発をやっていたのですが、起票者によって
「読みやすい/読みにくい」って、なんかあるんですよね。
やっぱり目指すなら「読みやすい」って言われるインシデントレポートですよね!
すと
「継続は力なり」これが全てではないでしょうか。
継続するには個人やチームとしての目的、目標が必要ですが…
「すでに社内にあった」ではなく、「社内に浸透させる」になると皆がHappyになれるのではないでしょうか。
第3バイオリン
すとさん
コメントありがとうございます。
>「継続は力なり」これが全てではないでしょうか。
>継続するには個人やチームとしての目的、目標が必要ですが…
ええ、今までは「今すぐ目に見える効果をドカーンと!」というのを狙っていたような気がします。
しかし、いきなりそんなことができるわけありません(汗)
それを目指そうとしていたから、焦りがあったのかもしれません。
少しずつ、個人レベルでできることを積み重ねていって、チームや部署の中に仲間を増やしていくのが一番だと思いました。
もちろん、目的や目標がないとモチベーションにも影響するし、
気がつけば何がしたいのかよくわからない…という状況にもなりかねないので、そこは注意が必要ですね。
>「すでに社内にあった」ではなく、「社内に浸透させる」になると皆がHappyになれるのではないでしょうか。
そうですね。社内にあったとしても、それが活用されていない、存在すら顧みられていないというのでは作った意味がありません。
実はこの提案のくだりのあと、上長に「書き方ガイドの内容に不足や、現状にそぐわない部分があったら修正案を出してくれるとありがたい」というお話がありました。
こちらのほうも、少しずつ取り組んでみようと思っています。
NAKA
今日は夏期休暇、最後の休みで、実家の近くにある図書館です。
図書館のパソコンは書き込み禁止になっていたので、携帯からです。
JSTQB ALシラバスにもインシデント管理が三頁ですがありますね。
P、84に
7.6インシデントのコミュニケーションでちゃんと定義されているのを見て嬉しくなって書き込みしています。
インシデント管理には、効果的なコミュニケーションを含む。
相手を非難するものではなく、客観的な情報の収集と解釈を支援するものとなる。
プロとしての関係を維持する上で必須である。
適切なコミュニケーションとツールによる支援の両方が必要となる。
私の経験ですが、インシデントレポートのタイトルも大切ですね。
「○○機能の画面がおかしい。」
ってレポートが上がって来たら、私はタイトルも具体的に書かせるようにしました。
「○○機能のタイトル画面の左側の文字が切れていて、仕様通り表示されていない」
とかに直させるのは、正しい情報を伝えるのにいいですね。
おかしい!
って書かれたら、何が面白いんだと、プログラマーを逆なでしてしまいますね。
欠陥ライフサイクルもこうしてちゃんと定義されたらなかなかいいなーって思いました。
私はレポートを回すやり方で回帰テストまでのプロセスを重視してましたが、同じ事ですね。
読めば、読むほど、シラバスは奥が深いように思います(^^)
試験まで、後一週間になりました、頑張りましょう!
第3バイオリン
NAKAさん
コメントありがとうございます。
>JSTQB ALシラバスにもインシデント管理が三頁ですがありますね。
>P、84に
>7.6インシデントのコミュニケーションでちゃんと定義されているのを見て嬉しくなって書き込みしています。
JSTQB ALシラバスって、テストエンジニア、テストマネージャー、テストチームの心得が書かれていて、
試験勉強のためだけではなく、読み物としても面白いですよね。
>「○○機能の画面がおかしい。」
>ってレポートが上がって来たら、私はタイトルも具体的に書かせるようにしました。
確かに、この書き方では開発者が見たときに
何がどうおかしいのかわからないだけでなく、自分への非難とも受け取れるでしょうね。
具体的に書くということが、単純に事実を明確に伝えるだけでなく、
余計な勘繰りや誤解を防ぐという効果ももたらすわけですね。
>試験まで、後一週間になりました、頑張りましょう!
はい!この週末が最後の追い込みです。頑張りましょう!