『ゲームテスト&QA』 その6

ドラクエ11のダウンロード待ち時間の間に、ブログ更新。

近所のツタヤで購入したのですが、ダウンロード版も最後の1個でした。売れてるようですね。僕の周りの従業員も先週末はドラクエ漬けだったみたいです。同世代の評判は良いので、楽しみ。

 

 

ゲームテスト&QA

ゲームテスト&QA

 

 

ゴールに向かって ~バグハンティングの上級テクニック~

全面的に同意出来る内容でした。この章に書いて有ることを実践すれば、間違いなく、優れたテスターになれるでしょう。といっても、特別難しいことは何もありませんので、そこの駆け出しゲームテスターのあなたも、ご安心ください。

 

 

この章では、優れたテスターとそうでないテスターの差を説明しています。題名は「上級テクニック」となってますが、別に特殊なスキルとかではなくて、文章力とか自己管理能力とか向上心だとかゲーム制作のテクノロジに対する興味だとか、そういう基本的なところで、優れてるかそうでないかが決まる、と。ゲームの上手い下手はあまり関係ありません。

 

基本的なところで差がつく、ということは、裏を返せば、「ゲームが好きだから」という理由だけで、この業界に入ってくる人が後を絶たないということです。もっと厳しく言うと、ゲーム以外に興味がない、ゲームを消費することしかできない人たちが多いのです。

 

僕はテスターの採用面接をすることもあるので、色んな人とお会いするのですが、ゲームを消費してるだけの人の多いことが気になってます。
ゲームが好きなのは良いのです。しかし、その好きなゲームについて、自分の言葉で熱く語ることすらできない人が沢山います。「どんなゲームが好きですか?それを私に勧めてみてください」と質問してみても、「好きなゲームはドラクエです。え~と…う~ん…」と、言葉が出てこないことがよくあります(まぁ、緊張してるということもあるでしょうけれども)。こういう人は、雇っても、だいたい勤怠が悪かったり、おしゃべりばっかりしたり、逆に全く報連相ができなかったりと、結果として仕事が長続きしない傾向にあります。

 

「ゲームが好きだからゲームテスターに応募しました!」という、動機は良いのですが、その後のこと、つまり自分自身のスキルとキャリアパスをちゃんと考えられるかどうかが、ゲームテストで結果を出して次につなげる人と、ずっとテスターでくすぶる人の差なのだと思います。

 

 

ここまで書いて思い出したけど、傾向として大卒の人は優れてますね。コミュニケーションや自己管理もちゃんとしてるし、自走してスキルを伸ばしていってくれます。まぁ、あくまで傾向であって、例外に当たる人(大卒じゃなくても優秀な人)はいくらでも思い浮かびますが。

 

メモ

・ゲームをテストすることは簡単ですが、プロのようにテストすることは難しい

 

・抜きん出た存在になるためには、強い意志と完璧な労働感を持ち合わせなければいけません

 

・簡単なバグは、二流のテストチームでも労せずしてみつけることができます。

 

・ゲーマーとテスターの違いは、素人俳優とジャック・ニコルソンやメリルストリープのような伝説の俳優を比較するようなものです。素人でも演技はできますが、魅力的で魂を揺さぶる事ができるのは伝説の俳優たちだけです。

 

・オーディオやビジュアルのチェックは、一人のテスターにまとめて割り当てると良い

 

・ゲームのテストを開始する前に知って置かなければ行けない一番重要なことは、「何が起こるべきなのか(「期待される動作」と呼びます)です

 

・(テスト対象の)ゲームについて、よく知ることが大事

 

・テストをするときは、楽しみすぎないように注意が必要です。

 

・テストをして給料をもらうのであって、遊んだりおしゃべりをして給料をもらうのではない

 

・優れたテスターになるためには、プログラミングやスクリプティングの基本的な理解、しっかりとした分析的・批判的思考能力、画像やビデオ編集ソフトに関する高度な知識、大学レベルの文章力が必要です

 

・プログラミングやスクリプティングを学ぶことで、(バグの発見という)結果だけに振り回されるのではなく、その根底にある原因を対象に出来るようになる。

 

・優れたテスターになるためには、「書く」技術を学ばなくてはいけません。文章力の優劣は、大きな違いをもたらします。

 

・3時間に1回の割合で、休憩を取りましょう。効率が下がります。

 

・何もかも詳しくなる必要はなく、何か一つのエキスパートになりましょう。

 

アドホックテストは自由形式のテストのことです。アドホックテストでは、他の方法では見つけられなかったバグが見つかることがあります。

 

・極めてタチの悪いバグは、アドホックテストを通じて見つけやすいようです。

 

・多くのテスターは、自分自身の評価に対して、「問題なし」(クビにならない程度)のレベルで満足している。

 

・細部に対する鋭い注意力と優れた文章力は、新人テスターに取って最も重要な能力です。

 

・ヒューマンスキルの欠如は、本質的に技術重視で2進法のゲーム業界において、もっとも大きな問題の一つです。

 

・優秀なテスターは、相手に敬意を示しながら自分の意見を主張できる。

結局は人を相手にする仕事

現状、ゲームQAの専門書や記事って非常に数が少ないので、独学するときは他業種に目を向けることが多いです。

 

最近参考になるなと思ったのは、医療の現場に関するものです。
医療とQAは、仕事の性質や、業務のフローなど、結構似通っている部分が多いと感じています(こんなことを言うと、医療現場の人からは反感買うと思いますが。背負ってる責任が違うから)。

 

似てると思ってる点を挙げると

  • 健康と品質、いずれも目に見えないし、明確な基準も存在してないものを相手にしている。
  • 病気もバグも、診断中(テスト中)に見逃すことは許されない。完璧を求められる緊張度の高い仕事である。
  • しかし、人の仕事である以上、完璧などないが、顧客はそれを理解しようとしない場合がある。
  • 患者は自分の健康状態のことを知ってるようで、実は知らない。開発チームもチーム自体の質を正確には知っていない(興味もない)。そのため、病気もバグも出続ける。
  • 治療よりも予防のほうが安いし効果的である。ソフトウェア品質も上流で不具合の作り込みを防ぐ方が、安いし品質も上がる。
  • しかし、予防をちゃんと出来る人間(チーム)はごく少数である。
  • インシデントが発生した場合、理由は複合的である。
  • 其の気になれば幾らでもお金をかけることができるが、だからといって、成功を保証するものではない
  • レビューが効果的

 

とりあず、ざっと思いつく限りだとこんなもんでしょうか。無理矢理感を感じるところもあるかと思いますが…。

 

どうすればエラーが出ないか?という研究は、医療の現場のほうが、ゲームQAの現場よりも、きっと進んでるはずで、そして、その成果はゲームQAにも活かせるのではないかなと、ちょっと期待してます。これから、折を見て調べてみたいと思っています。

 

 

ちなみに、軽くググってみたところ、このようなページがありました。
うん、不謹慎かもしれないけど、とても親近感ある。

チーム医療で防ぐ医療過誤

 

『ゲームテスト&QA』 その5

EVO2017の最終日を家で見てました。スト5が劇的やった。

 

自分が携わったゲームがユーザ参加型のイベントに使われたことがあるのですが、ユーザが夢中で楽しんでる姿を見るのは、やはり良いものでした。一生懸命不具合取り除いて、ユーザがバグに気を取られることなく楽しんでる姿をみると、ゲームQA冥利に尽きます。

 

ゲームテスト&QA

ゲームテスト&QA

 

 

CHAPTER 5 エンジン始動!バグ探しの要点

この章では、シューティング、2Dアクション、格闘ゲームRPGFPSなどなど、さまざまなジャンルのゲームQAの勘所を、ジャンルごとに説明しています(第二版があるなら、VRゲームも書いてほしいですなぁ)。不具合だけでなく、ユーザエクスペリエンス部分でもどのような指摘をすべきかも説明してあって、ゲームQAのお仕事は単なるバグだしだけじゃないということが伝わってきます。

 

テスターやテストリーダの立場でも有益だし、それよりも上流で、テスト計画や見積もりの参考にもなりそうな内容でした。

MMORPGのテストが一番難しい、というのは、覚えておきたいところです(僕はMMOもRPGもテストしたこと無いので、いつかしてみたい)。

 

また、不具合報告書の書き方も記してあって、テスト初心者におすすめしたい内容でした。

 

 

以下メモ

・ゲームをテストすることは、プレイすることとは大きく異なります

 

・2Dゲームをテストする際は、重点をゲームプレイに起きます

 

・3Dゲームをテストする際は、カメラについてレポートすることは、テスターの使命である

 

FPSでは、レベルデザインが理解しにくかったり、迷宮のようになっていてはいけません。プレイヤーを迷子にすることなど、あってはならないのです。

 

マルチプレイヤーFPSをテストするときは、ネットワーク接続に関連するバグに注意しなければなりません

 

RPGゲームのテストを始める際には、仕事量が実に多くなることを前提に準備をしてください。テストの難易度は「ハードコア」だと思って良いでしょう。

 

・ストラテジーゲーム(シヴィライゼーションみたいな)をテストするときは、ゲームバランスに注意すべき

 

パズルゲームで注意すべき点は、すべてプログアムに関する部分です。

 

MMOはゲームテスト界の頂点です。

 

・MMOでは、βテストでユーザに不具合を上手く見つけさせる仕組みを用意すると、うまくいく。例えば報酬を上げるとか

 

・ゲームのテストには大量の書類が伴うということを想像している人はあまり居ませんが、筆記力がなければ優れたゲームテスターになることはできません。

 

・不具合報告書のタイトルは、ジャーナリズムの基本である5W(誰が、何を、いつ、どこで、なぜ)を抑えればOK

 

・テスターは会話と筆記の両方で、明確かつ有効なコミュニケーションを取れなければいけません

 

・バグレポートには、常に正しいバージョンを記入していくことが重要です。

 

・私が求めるテスターは、プレイ中にバグを発見してレポートを提出したことがあり、「バグレポートの記入時に最も重要な項目は何か?」という質問に答えられるテスターです。この質問に対する答えから、回答者がどのようなテスターになるかわかります(一番の解答は「再現手順」です)

 

・ゲームをテストしているときは、自分が今何をしているのかを正確に把握していなければならないのです。ただプレイするのではなく、機能していない何かを見つけるのが仕事です。

 

 

 

 

仕組みでどうこうじゃなくて、マインドの問題かもしれない

実際に目にしたインシデントを振り返ってみるコーナー。

 

事例:一部のリソースが、実は最新じゃない状態でリリースしてしまった

 

凡ミスの類。
確かに不具合だけど、大した事ないんじゃない?と思うなかれ、ゲームだとコラボイベントなどで版元が絡んでると、かなり大問題になるのです。

 

リソースにも色々あります。ゲームだと、画像、音声、データ、ソースコードなど。
最近は、バージョン管理ツールを全ての部署で利用することもあるので、この手の不具合は、起こりにくくなってはいます。特にコードは。

 

しかし、画像や音声に関しては、外注してたり、こだわり派のデザイナが締め切り過ぎても(こっそり)手を加えたりで、管理が行き届かない現場も、よく見かけます。

スケジュール守りましょうね~、最新のものをこっそりコミットしたりはしないようにしましょうね~、と伝えても、こだわることが正義だと思いこんでたりもするので、あまり響かず同じ失敗を繰り返しがち。

 

 

「今、俺が見ているデータは最新なのか?」という保証は、結構難しい。

テストする段階で、諸々の素材はfixしてることが好ましいが、スケジュールがタイトな現場だと、仮素材でとりあえずテストを走らせつつ、fix次第、組み込むということも珍しくない。そして、fix素材アップしました、からの、やっぱ微調整しました、が繰り返されると、プログラマが更新し忘れたり、仕様となるドキュメントを更新し忘れたりで、ミスが入る余地が増えてしまう。

 

また、デザイナとプログラマは、別の管理方法を取ってる現場もあって、

①デザイナが最新データを共有サーバに上げる
プログラマそこからデータをとる
③ゲーム内フォーマットに加工して組み込む
プログラマ用のリポジトリにアップする

みたいな感じだと、最新の生素材から組み込みまでに複数のプロセス(しかも手作業の)が入るので、ここをミス無く運用するのは、難易度が高い。

 

これを防ぐにはどうしたらいいのか。
まぁ、余裕を持ったスケジュールを引いて、特定の日以降は素材の更新を認めない、というのが正攻法ではある。けど、そうも言ってられない場面もあるわけで、なので、大事なのは、「この画像・音素材が最新です」と記したドキュメントを作成し、それの更新を徹底することかなと思う。そのドキュメントがあれば、最新のビルドと素材の突き合わせを関係者全員が行うことができ、仮に素材の更新漏れがあったとしても、誰かが気づく可能性が高くなる。

 

しかし、ドキュメントの更新というのは、大抵が手作業で、忘れがちだしミスも起こりがち。つまり、「今、俺が見ているドキュメントは最新なのか?」という保証も難しいわけで、堂々巡りの様相を呈してくる。

 

解決策としては、ドキュメントの自動化とかかな?
それか、絵や音声に関しては、QA時に制作者に最終チェックしてもらうとか。作った人が、一番、細かいところまで知ってるからね。

ただ、後者の場合は、素材制作者がQAプロセスのボトルネックになりがちなので、そこがデメリット。「最終チェックしてください」と依頼をしても、全然見てくれなかったりね。

そこを解決するには、関係者が定期的に集まる場を強制的に設けて、そこで滞留してるタスクを動かすとかかなぁ。朝会とか夕会とか。この手の、ミーティング嫌う人多いけどね。

 

 

素材の更新ミス、みたいな単純な問題でも、それを徹底して防ぐのは難しいのです。

『ゲームテスト&QA』 その4

GW最終日。しくじり先生のアンミカが面白い。

 

GWは遊んでばかりいたので、罪悪感を少し紛らわすために、勉強用のこのブログを更新してみる

ゲームテスト&QA

ゲームテスト&QA

 

 

CHAPTER 4 計画の立案:バグのカテゴリ、ツール、ドキュメント

QAにまつわる職種の紹介から始まり、バグのカテゴリの説明、バグトラッキングツールの説明、テストに関連するドキュメントの解説など、実践的な話が多い章でした。

特にバグのカテゴリの説明のところは、新人に読ませるのにちょうど良さそうだし、QAリーダとしてBTSのバグの分類を設計するときにも参考になりそうでした。

 

以下メモ

・QAマネージャは、QAにおける縁の下の力持ち、スポットライトが当たることのない魔法使いのようなもの

 

・QAマネージャの責務は、スタッフが素晴らしい仕事が出来るような環境作りをするということ

 

・ゴシップや士気の低迷は驚くべき速さでその部署をだめにしてしまう

 

・リードテスターは、歩兵の集まりをチームとしてまとめる手助けをします

 

・フロアリーダは「非公式」なリードテスター。フロアリーダにあるのは、経験と開発プロセスに関する深い知識です。有能なフロアリーダーになるためには、技術的なスキルだけではなく、ソーシャルスキルも高めなければいけません。

 

・オーディオ系のバグは、ビジュアル系のバグと比べると見つけにくい。

 

・近い将来、物理演算のバグがテストプレイにおいて占める割合は、更に大きくなるでしょう。

 

・パフォーマンスに関する深刻なバグは、開発プロセスの最後の2ヶ月で修正しようとしても複雑すぎる可能性がある。

 

・ロード時間のバグテストは、非常に退屈。ゲームの全てのレベルを何度もロードして、其の所要時間をノートに書き留める必要がある。

 

・テストをする際には、常にパフォーマンスを意識することが重要です。「完璧」なゲームであっても、パフォーマンスの低さによって、其の名を汚すことがある。

 

・安定性に優れた製品は、バグを上手く隠して見つけにくくしているだけである。

 

・テスターと開発者の間でやり取りが行われることがありますが、これは業界ではあまり良いことだとは思われていません。優れたテスターは自動追尾機能付きミサイルの打ち上げのように、目前の仕事をこなして次へ次へと切り替えていきます。

 

 

 

 

 

 

 

 

 

 

『テスト担当者を悩ませる、10の難題克服法』 その12

年度末評価の時期です。

仕事は概ね想定通りの進捗だったんですが、一点、この半年で新しい人が一人も入らなかったのが、残念でした。

まぁ、人手は足りてるんですが、それはそれとして、人の流動が無いと、チームはいつか停滞しちゃいます。変化を嫌うチームができてしまう。

この業界、変化を拒んでたら、あっというまにワープアです。来年度は、人を入れつつ、異動を推奨しつつ、変化を楽しむチーム作りを進めていきたいなぁと思ってます。

 

ということで、メモの続き(ついに1位まできた)

 

テスト担当者を悩ませる、10の難題克服法

テスト担当者を悩ませる、10の難題克服法

 

 

12章 難題第1位 「NO」と言うこと

つまり、「この品質では、市場に出せませんよ」とステークホルダに言うことです。これが上手くできないと、テストチームも、そして会社も窮地に陥ることになります。

 

つい最近、同僚がまさしくこの状況に陥っておりました。納品日が近づいても収束しない不具合。テストチームは毎日レポートを出しているが、誰もそれに目を通さず、ただただ、目の前のバグ修正に追われる開発者。レポートを見れば、リリースに値しない品質だということは、明らかなのですが、納品日はずらすことが難しいため、とりあえず、インパクトの大きな不具合だけを修正し、残りはリリース後のアップデートで対応しようという方針になりました。

しかし、リリース後、ユーザから寄せられるのは、その細かな不具合へのクレームであり、開発チームはそれらの対応に追われることになります。そして、そのストレスは、テストチームへの批判というカタチで向けられるのでありました。

 

どうすれば、「今は、出すべきではない」という事実を、ステークホルダが納得してくれるのでしょうか。この本が出している結論は、「客観的なデータを集めること」と「誠実に伝えること」の2点です。

データは重要です。テストチームが主観で意見を伝えてしまうと、それは単なるプロダクトへの悪口に聞こえてしまいます。なので、不具合の数、クローズ数、インパクトの大きな不具合の割合といったことを、データとして出す必要があります。

そして、それを伝えるときは、誠実さが大事です。これは、医者が患者に症状を伝えるときのことをイメージしたら良いかもしれません。ふざけてもいけないし、過剰に不安を煽ってもいけません。

 

プロダクトにNoを言うためには、テストチームの役割とはなんなのかを、時間をかけて理解して貰う必要があります。そのためには、開発チームとしっかりコミュニケーションを取る必要があるのです。

 

あ、テストチームがリリース権限を持ってる組織もありますが、それでも結局やることは同じで、客観的なデータと、誠実なコミュニケーションが大事でしょう。合格・不合格、それぞれで、ちゃんと納得感があることが重要です。

 

以下メモ

・テスト担当者が直面する人間関係絡みの最大の難題は、ソフトウェアに問題があることを関係者に伝えることである。一般的な法則として、人は悪いニュースを聞きたがらない。

 

・テストレポートは、開発プロセスに組み込んでしまうのが、効果的である(定期的に報告をする)

 

・テスト結果を正確かつ客観的に報告することは、後で自分を守る最善の方法である。システムをリリースした後で、ソフトウェアに問題があるということで、テスト担当者が非難されることがある。そのような状況において、テスト報告は自分を守る優れた方法である。

 

・テストの評価と報告もテストプロセスの中に定義すべきである

 

・欠陥を見つけて報告することがテスト担当者の仕事であることを、関係者は理解する必要がある。実際、テスト担当者が事実上失敗する可能性があるのは、検出した欠陥を報告することに失敗した時だけである。

 

・四六時中ギシギシ行ってる車輪を人は無視するようになる(テストチームが常に否定的なニュースを伝えるようになると、開発チームはそれを無視するようになる)

 

・テスト報告書には、客観的な情報を記載すること

 

・悪いニュースだけではなく、肯定的に、正常に機能しているソフトウェアの部分を指摘することは、大いに結構である。

 

・裸の王様の新しい服の話は、ソフトウェアに問題があることを経営管理者に告げる勇気を誰も持っていない場合に、何が起こるのかの良い例えである。

・システム導入後のレビューは、非常に役に立つものである。鋭い目で過去を振り返って、プロジェクトの良かった点と悪かった点をドキュメントに記載しましょう

 

・組織が成熟する速さや深さは、上級経営管理者が成熟する速さや深さによって決まる

 

・改善の焦点を(プロダクトではなく)プロセスに合わせるだけで、殆どの組織において劇的な変化が見られる。

 

・コミュニケーションとは、自分が行っていることを聞き手に理解出来るように、他の人と情報を共有するプロセスの一部である。「話す」ことと「聞く」ことと「理解する」ことが全て、コミュニケーションのプロセスに関わる

 

 

 

 

『テスト担当者を悩ませる、10の難題克服法』 その11

年度末でございます。仕事は、半年前に立てた目標が、まぁまぁ達成され始めてて、細やかな充実感が得られたりしてます。

一方、私生活では、2017年は早寝早起きと目標を立てたのですが、一向に目標達成できる気配がありません。眠い。

 

ということで、この本のメモの続き

 

テスト担当者を悩ませる、10の難題克服法

テスト担当者を悩ませる、10の難題克服法

 

 

11章 難題第2位 どちらに転んでも損をする状況と戦うこと

品質悪くてテストが炎上して、とてもじゃないけどリリースできないが、経営層はさっさとリリースしたがっている。リリースを止めても経営層には睨まれるし、けどリリースしても品質悪くて経営層に詰められる。
という、前門の虎・後門の狼という状況のことです。

 

この状況はQAにとっては、非常に辛い状況で、モチベーションが上がりません。忙しくテストをし、QAとしての責任を果たそうとしても無視され、にもかかわらず、リリース後のサービスの評判が悪ければ、あらぬ罪を着せられるわけだし。

 

これも結局は、関連部署のQAに対する無理解から来ています。一言でいえば、コミュニケーション不足が引き起こす災害です。

この「どっちに転んでも損をする」状況に陥っている現場をたまに見かけますが、問題が起きてる現場の共通点は、QAから他部署へのコミュニケーションが控えめであること、ステークホルダが複数いること、開発現場に未熟な人が多いこと、開発のプロセスや雰囲気が固まってからQAがジョインしていること(つまりジョインが遅い)、が挙げられると思います。

解決策、というか、こういう現場に陥らないコツは、「QAの役割を正しく認識してもらうこと」、「プロダクトにとって都合の悪いことも、はっきり伝えること」に尽きるかなと思います。このとき、数値や本やネット記事なんかで、根拠も伝えられると良いかもしれません。

プロダクト側が聞く耳もたないなら、そうですね、転職の準備をしましょうw
そんな現場にいても、得るものは無いです。

 

以下メモ

・テスト担当者が直面した、どちらに転んでも損する状況には、下記のような影響がある
 ・組織のプロセスの成熟度を低く抑える
 ・テストプロセスをないがしろにし、其の基盤をそこなう
 ・テスト担当者のモラルを低下させる
 ・テストに関する誤った見方を助長する

 

・(テストは開発を遅らせる要因と認識されがちだが)実際には、テストが有効なプロセスとして機能していれば、最終的に開発プロセスの効率が上がり、リリースまでの時間が短縮される

 

・テスト担当者が欠陥の修正フローの制御ができなければ、テスト担当者はチェックして欠陥を見つけることに責任を負うだけで、ソフトウェアの品質の責任は負えない

 

・どちらに転んでも損をする状況では、テスト担当者は全ての欠陥を発見することを期待される

 

・実際には、プロジェクトに関与している誰もが、テストに責任がある。

 

・組織内の誰もがテストが演ずる役割を知っていることが、極めて重要である。そうでないと、テストについて、間違った安心感や責任感が持たれてしまう。

 

・テストチームの中には、苞の役割を宣伝するのに効果がある1ページのニュースレターを、四半期ごとに発行しているところがある。(他部署のテストに対する理解を深めるため)

 

・他部署の人間をテストチームで短期間仕事させることは、大きな効果がある。予め適切にテストサれていなかったソフトウェアをテストすると、どういうことになるのかについて、よく理解するようになる。

 

・品質は偶然に達成されるものではない。品質は、強い意図と、真剣な努力と、知的な方向付けと、巧みな実行の結果である。品質は多くの選択肢を賢く選択したことを表す。

 

・ソフトウェア開発の各ステップごとに、品質管理点をプロセスとして組み込むべきである。プロダクト開発の責任者が、品質管理にも責任を負うべきである。