読者のみなさん、こんにちは。WACATE2015夏、参加者レポートを担当する浦山です。2012夏のレポート担当から早3年。この度、2度目のベストポジションペーパー賞(BPP賞)を受賞し、再度この機会をいただきました。どうぞ、最後までお付き合いください。
「WACATE(Workshop for Accelerating CApable Testing Engineers)とは、若手テストエンジニアによる若手テストエンジニアのためのワークショップです」と、公式サイトで謳っておりますが、入社間もない新社会人から酸いも甘いも噛み分けたベテランエンジニア、開発者やマネージャーまで、さまざまな方が参加されています。夏冬と年に2回開催しており、三浦の美しい海と山を眺めながら、週末の丸2日をかけてソフトウェアテストについて学び、語り合う合宿です。
2015年6月20日~6月21日に開催された今回のWACATE、テーマは「ワタシハソフトウェアテストチョットデキル」。主に、6つのセッションが行われました。
- ポジションペーパーセッション
- BPPセッション:ソフトウェアテストに関わる人のための Biased Position Talk
- コラボセッション:オリエンテーションとエンジニアのモチベーション
- コラボセッション:「ゆもつよメソッド」のワークショップ
- 夜のお楽しみ:ディナーセッション&分科会
- 招待講演:ソフトウェアテストチョットデキタ!―テスト設計コンテストで学んだこと―
このレポートでは「BPPセッション」「コラボセッション」「招待講演」を中心に、熱い合宿の様子をお伝えします。
BPPセッション:「ソフトウェアテストに関わる人のためのBiased Positioning Talk」
BPPセッションは、前回のWACATEでBPP賞を受賞した方が担当するセッションです。担当する金子 昌永氏は開発者です。開発者にとって、デバッグは余計な仕事でしかありません。そのため、以前は「バグを見つけるのが楽しい」という人の考えが理解できなかったそうですが、WACATEに参加し、テストに対する志やスキルの高い方々と話をするようになって、誤解が解けたと言います。BPPセッションでは、金子氏が参加者の立場や嗜好に関する質問を投げ、参加者に挙手で回答してもらうという形式を取り、参加者のポジションを解き明かしていきました。
たとえば、「あなたの職種は、品質を作る立場ですか?品質を明らかにする立場ですか?それ以外ですか?」という問いに対して、WACATE参加者の回答は「1.5:7:1.5」。テストエンジニアは開発者と密接に関わり合う職種ですが、WACATEでの開発者比率は低いようです。
「できる限り網羅したい派?影響範囲を見定めて効率よくテストをしたい派?」という問いに対しては、WACATE参加者の回答は「4:6」でした。私も効率よくテストをしたい派に挙手しました。少ないテストで多くのバグを見つけるテストを作るために技術を磨きたいと考えていますが、金子氏にとってこの結果は意外だったそうです。開発者目線とテストエンジニア目線、考えは人それぞれであり、聞いて初めてわかることがたくさんあると改めて認識しました。
コラボセッション:オリエンテーションとエンジニアのモチベーション
今回のWACATEは、コラボ企画ということで湯本 剛氏と松尾谷 徹氏による、ゆもつよメソッドのワークショップを中心に組み立てられています。ゆもつよメソッドとは、湯本氏が考案したテスト分析をターゲットにしたテスト設計技法です。オリエンテーションでは松尾谷氏より、ゆもつよメソッドを学ぶことによるスキル向上とモチベーションの必要性についてお話しいただきました。
モチベーションとスキルは、仕事の成果を左右する要素です。モチベーションが低いと、スキルがあっても成果を挙げることができません。一方で、モチベーションが高くてもスキルが低いと、成果を挙げる効率が悪くなってしまいます。スキルは経験を積むことで得ることができますが、モチベーションはどのように維持すればよいのでしょうか。
ここで、各自のモチベーションの移り変わりを見るために「人生やる気曲線」を書き、班のみんなで共有しました。一見すると、WACATE参加者のモチベーションは非常に高いように見えるのですが、これまでのやる気を線で表すと、常に高いわけではないということが見て取れます。私は、仕事がルーチンワークになっていた頃はモチベーションが低かったのですが、志やスキルの高い人と共に過ごすようになってからは高めを推移しています。それでも常に高いわけではなく、スキルのレベルの違いに打ちのめされたり、人間関係がうまくいかなかったりすると、容易に下がってしまいます。
「モチベーションを常に高く維持することは非常に難しく、外的要因に左右されやすいものである」と松尾谷氏はおっしゃっていました。まさに私も、環境や周囲の人に左右されながら推移しています。周りに振り回されず、自分でON-OFFを切り替えられるようになれば、必要な時に自分の力を出し切れるようになることでしょう。まずはモチベーションをコントロールできるようになり、ゆくゆくは、周りのモチベーションを上げられるような人を目指したいと思いました。
コラボセッション:「ゆもつよメソッド」のワークショップ
湯本氏は、長きにわたる経験の中で「ゆもつよメソッド」を考案、活用されてきました。ゆもつよメソッドのポイントは、「論理的機能構造」「テストカテゴリ[1]」「ドキュメントフォーマットと実施順序のルール化」「仕様項目[2]特定パターン」の4つです。今回は、ゆもつよメソッド最大のメリットである「テスト対象を網羅しているかがわかりやすい」という点を体感できる4つのワークを、延べ8時間かけて行いました。
1.業務経験に基づく方法で解いてみる
まず、技法を学ぶ前に、自由にテストケースを作成しました。制限時間は20分です。
私は、3色ボールペン法を用いながら仕様を分析しましたが、制限時間内では十分なテスト設計をすることができず、抜け漏れや重複の多いテストケースしか作ることができませんでした。この結果を班で共有し、YWT(やったこと・わかったこと・次にやること)を書き出し、ゆもつよメソッドの演習に入ります。
2.ゆもつよメソッドを試してみる
2つめのワークは、論理的機能構造の「入力調整」「出力調整」「変換」「貯蔵」に着目し、仕様項目と期待結果を特定していきました。テスト対象は組込み機器です。予めテストカテゴリが用意されているため、ゆもつよメソッドの肝の部分を実践できるようにワークが組み立てられています。
個人で挑戦した後、班で1つの表を作り上げます。寄せ集めてみると、名前の付け方が異なったり、粒度が違ったりしていて、簡単にはまとめられませんでした。ゆもつよメソッド特有の用語に慣れていなかったせいもあり、資料を見直しながら、理解を深めました。「この場合はどこに当てはまるのだろう?」「この時はどの切り口で考えるべきなのだろう?」とたくさんの疑問が上がりました。
3.ゆもつよメソッドの深いところを知る
3つめのワークは、論理的機能構造の「サポート」「貯蔵」にも目を向けて、仕様項目と期待結果を特定していきます。テスト対象は2つめと同じです。
新たな構造が見えたことで、前回のワークで行き場を失っていた仕様項目の行き先が見つかり、表がだいぶ整理されました。班のメンバーとも丸1日過ごしていることもあり、議論がより一層スムーズに進むようになった実感もありました。ゆもつよメソッドでは、仕様書に書かれていることを書き映すのではなく、関係者同士で共通の解釈ができるような名前をつけます。チームで実践する場合は、十分なコミュニケーションが取れるかどうかもゆもつよメソッドを使いこなす鍵になると感じました。
4.新たな演習にチャレンジ
最後は、テスト対象を業務システムに変えて、仕様項目と期待結果を特定していきます。論理的機能構造を使っているため、どのようなテスト対象でも活用することができるのがゆもつよメソッドのメリットのひとつです。
班としての基準ができあがってきたこともあり、今回はスムーズに作成することができました。組込み機器からガラッとテスト対象が変化しましたが、特に混乱も起きませんでした。ゆもつよメソッドを用いるとテスト対象を大きくとらえることができる、その強みを体感しました。
このときできあがった成果物を全体で共有したのですが、名前の付け方や粒度は班ごとに異なっていました。それでも、各班で納得しながら進められたというお話でしたので、意識合わせが重要な技法なのだということが目に見えて面白かったです。
招待講演:ソフトウェアテストチョットデキタ!―テスト設計コンテストで学んだこと―
2日目朝一のセッションは、テスト設計コンテスト’15で全国優勝を果たした「しなてす」による、テスト設計コンテストの報告セッションでした。私はこの「しなてす」に所属しており、チームメンバーの網中 茜氏と一緒に発表を担当しました。
テスト設計コンテストとは、ASTERが開催しているテスト設計の技術を競うコンテストで、年に1回開催されています。“テスト設計コンテスト全国優勝”というと、一流のテスト技術者が完璧なテスト設計を仕上げてこそ達成できると思っていました。しかし「しなてす」はWACATE2012夏に初参加したメンバーを中心に立ち上がったチームで、テストこそしていたもののテスト設計はど素人というところから始まっています。セッションでは、試行錯誤を重ねながら、3年かけて優勝を果たしたというストーリーを紹介しました。
WACATEをきっかけにエンジニア人生を加速させた「しなてす」は、「チーム発足から2年半でここまでできる」ということを実証しました。今回初めてWACATEに参加した皆さんにも、多くのつながりが生かし、「なんでも挑戦でき、どんどん失敗できる場」であるWACATEを盾に、いろんなチャンスを掴んでほしいと願っています。
優勝してもなお、審査員から多くの辛口コメントをいただいている「しなてす」。コンテスト二連覇に向けて、今年も挑戦します!
どっぷり浸かる夏のWACATEと加速
夏のWACATEは、ひとつのテーマを「狭く深く」集中的に取り組むことをコンセプトに掲げており、今回はゆもつよメソッドを2日かけて学びました。それでも、ゆもつよメソッドを使った仕様項目と期待結果を特定するところのみに留まりました。ゆもつよメソッドは使いこなすのが難しい一方で使いこなせれば一生の道具になるということがわかり、WACATE終了後、今回初めてWACATEに参加した方が中心となって「ゆもつよメソッド勉強会」が開催されることになりました。これも、2日間の合宿で生まれた成果のひとつではないかと思います。
このようにWACATEは、学習の機会だけではなく、継続して成長するためのきっかけとなっています。読者のみなさんも、テストに携わるさまざまなポジションの人たちが集まっているこの場を、一度覗いてみませんか。冬のWACATEは、いろんなテーマについて「広く浅く」多角的に取り組みます。私もBPPセッションを担当します。WACATE2015冬でお会いしましょう!