去年からU30テスト設計コンテストというコンテストイベントで、審査委員長をやらせて頂いています。今コンテストへの出場応募中ということで、今回その宣伝をしたいと思います。
テスト設計コンテストとは
テスト設計コンテストは、ASTERが開催しているテスト設計のコンテストです。2011年から毎年開催していて、毎回相当数のエントリーがあります。
テスト設計コンテストでは、指定された製品仕様書に対するテスト設計の優劣で優勝を競います。テスト設計はどこでもやっているようなブラックボックスのシステムテストが多いです。
審査は半年程度をかけた二段階制で、書類審査等で予選をして、通過チームで決勝を行います。
なお自分の担当するU30は、若手の方やコンテスト初心者の方が挑戦しやすくすることを目的に、30歳以下に限定しています。
申込みはこちらから。申し込み期限は9/29です。
テスト設計コンテストで得られるメリット
有料ですし作業量も大きいですが、テスト設計コンテストへの参加にはそれに見合う色々なメリットがあると感じています。かつて応募者側で何度か参戦した時に感じたものをベースに、メリットを列挙したいと思います。
●自分達のテスト設計に対して、様々な改善アドバイスをもらえる。
テスト設計コンテストでは、テスト設計をより良くするアドバイスをもらえます。
まず審査物に対して、採点結果と審査コメントがフィードバックされます(予選を勝ち抜けば、予選・決勝と二回フィードバック機会があります)。この審査コメントは、審査員が個々人で出した評価コメントで構成されます。審査者は、テストのコンサルタント、マネージャ、専業のテストエンジニア、開発者、テスト設計コンテスト優勝者など、様々な人が集まっています。その各々の視点で、長い時間を投じて、改善を促すために成果物の良いところ・悪いところを評しています。多種多様なプロのフィードバックのため、有益なアドバイスにいくつも巡り合う可能性があると感じます。
評価コメントは、例えば以下のような感じです(出場チーム以外は非公開なので、実例の一部を抜き取って、デフォルメして書いています。また審査員による個人差も大きいので、全く別物のコメントもあります)。
リスク分析から、仕様の抜け漏れを抽出している点、振る舞いモデルで仕様の矛盾を指摘している点は評価できます。リスク分析で用いているHAZOPを参考にしたガイドワード手法は、不十分な仕様に対して有効かつオリジナリティがあります。
テスト分析では、テストの厚み・テストの網羅基準の分析が不足しています。テストアーキテクチャレベルで分析されていないため、以降のテスト設計技法の選択の根拠が読み取れなくなっています。まず要求やリスクにもとづいてテストアーキテクチャレベルでテストの網羅基準や優先付けの方針をたて、各テスト設計に展開するステップを取ってみると良いでしょう。
テスト設計は概ね問題ありません。一点だけ、状態遷移モデルが誤っています。テスト技法を適用しやすくするために、本来複数に分けるべき状態を、一つに無理やりまとめてモデリングしてしまっていると感じます。構造モデリングをしっかりして、本質的な状態が何か分析すべきです。
ドキュメントはPFDで全体像が説明されている他、体系的に整理され理解しやすかったです。ただ形式が長大なExcel方眼紙であり保守性に劣ると感じます。自分達が現場で使いたいかという視点で改善すると良いかもしれません。
こういったものが10人弱程度分、各チームにフィードバックされます。
●テスト戦略やテスト設計の型と実例を学べる
テスト設計コンテストでは、テスト設計のやり方、実例、見本を学べる機会が豊富です。
例えば参加者向けのチュートリアルでは、仕様書を分析して戦略を立てテストケースを設計する一連の流れを、具体的に学べます。
また参加チームには、見本として過去の優勝チームのテスト設計成果物が共有されます。真似するだけでも知識の整理になります。
そして審査会場では、他チームの成果物の解説を聞いたり、参加者・審査員と交流したりする機会が複数あります。そこでは同じ題材を対象とした、様々なテスト設計のアプローチを学べます。参加者も、優勝を狙って本気を出しているテスト専業会社のチームや、独自のテスト手法を作っている方が力試しで個人参加しているチーム、学生の研究室チーム等などが混在しています。それらが個性を出し合って工夫しているので、触れられるテスト設計もバリエーション豊かです。こうして様々なアプローチを学ぶことは、知識を広げたり、新たな知見を得たりするのに有益だと思います。
●優勝すると、テストのコミュニティで名声が得られる場合がある
主観ですが、テスト設計コンテストの優勝チームは、その後表立って活躍する方が多いと感じています。例えばこれまでの優勝者も、コンテストネタで記事を連載したり、JaSSTなどのカンファレンスへ講演者として招待されたり、各地で請われてコンテスト成果物について解説する勉強会を開催したりと、色々引っ張りだこになっていました。
また、運営団体はテスト設計コンテストを結構重視しているため、国際標準規格を策定している研究者、国内トップのテストコンサルタント、大小様々なカンファレンス・シンポジウム等の運営者・技術委員、著名な技術書著者など、テスト業界で実績を持っている人達が多数審査に動員されています。守秘義務で表になることはありませんが、審査を通してそうした審査員に技術的高評価を持たれることは、テスト業界で活動する上で良い影響になるのではと感じています。なお、自分を含め審査員は、テスト設計コンテストで優勝することの凄さ・技術レベルの高さを、審査の中でいつも強く実感させられています。
●テスト設計の楽しみを感じられる
テスト設計コンテストでは、良いテスト設計を作る楽しさややりがいを感じることが多いと思います。
現場では、テスト設計は評価されにくい傾向があります。コンテストでは細かな観点で良し悪しが明示化されるため、作りがいが出てきます。審査が必要なコンテストという形式上、審査の枠・観点に合わせる窮屈さはあります。それでも世の中の沢山の技術を活用したり、独自の技術を生み出したり、技術要素を組み合わせて体系を構築したりする余地は多分に残っています。
またテスト設計コンテストでは、テスト設計が好きな人達が沢山参加していて、コンテストを通じて勉強会仲間になる機会もあります。テスト設計の同好の士ができるのも、楽しさを見つける下地になると思います。
募集について
以上宣伝でした。冒頭でも触れましたが、コンテストの応募は公式サイト(ASTER-テスト設計コンテスト)で9/29まで行っています。
誠意を尽くして審査しますので、興味の有る方は気軽にご応募頂ければと思います。