山崎 崇 氏
トレンドマイクロ
製品開発本部 製品開発部
プロダクトQA課 QAエンジニア
山崎 崇 氏

 「限られた時間の中で,バグを発見するために最大限の効果を発揮する手順や手法を考えるのが楽しい」。2001年に新卒で入社して以来の8年間,トレンドマイクロでテスターとして働いている山崎 崇氏は,自分の仕事をこう語る。

 テスターの仕事は,開発したシステムが事前に決めた要件をきちんと満たしているかをチェックすること。具体的には,(1)バグ(不具合)を発見し,(2)再現条件を明らかにして,(3)障害レポートとしてプロジェクトマネジャーなどに報告する─といった作業をする。システムに存在する致命的なバグをテスターが見逃してしまうと,開発を改めてやり直す羽目になりかねない。最悪の場合は,実際に利用し始めたあとにバグが見つかってしまうことで,自分の会社と顧客の双方に損害を与えて大問題となる可能性もある。それだけに,テスターには高い能力が求められ,課せられる責任は重い。

 山崎氏は,ユーザー登録やライセンス管理といったトレンドマイクロ社内の業務システム,および取引先ブランドで提供するウイルス対策ソフトなどのテストを担当してきた。これらのシステムがダウンせずに稼働し続けているバックグラウンドには,山崎氏らテスターの頑張りがあるのだ。

ドキュメントのレビューから仕事が始まる

 バグを発見する仕事と聞くと,開発の最終段階でプログラマからコードを受け取ってテストする,というイメージが浮かぶ。だが,実際には,そんな単純な作業ではない。

 山崎氏によると,「要求定義や設計といったシステム開発における初期の段階からプロジェクトに参画し,アーキテクトやSE(システムエンジニア)が作成したドキュメントをレビューするところから始まる」という。要求や設計を検討している段階から「検証可能か」「検証するにはどうすればよいか」といったことをチェックしておかなければ,不具合を確実に発見するのが難しいからだ。

 実際のテスト作業は,実施するテストの「計画」から「設計」や「実装」,「実施」という手順を踏む。このような手順や手法は,最近ではだいぶ整備されてきた。その半面,テスターに求められるスキルレベルはますます高くなっている。「限られた時間の中で,100%すべてのケースを網羅できるわけではありません。特に,最近は短期開発の傾向が強く,テストに割り当てられる時間は限られています。一方で,システムは複雑化しています。テスターの腕が問われるのです」(山崎氏)。

 もともと山崎氏は,プログラマになるつもりでトレンドマイクロに入社した。だが,社内の研修でテスターという職種を知る。テストはプロセスや方法論がまだまだ未成熟。これは自分自身の力を発揮する余地が大きくて楽しそうだと感じた山崎氏は自ら志望して,この仕事に就いた。

 自分の創意工夫力が試せるテスターという仕事にやりがいを感じている山崎氏。今は「WACATE」というテスターのためのワークショップを取りまとめるなど,精力的に情報発信を続けている。

お仕事解説:テスター

開発者が気づかないバグを見つける

 開発中のシステムが,要求仕様や設計通りに動作するかをチェックする仕事。システムの品質を決める最後のとりでとなる。テストの計画・設計・実装・実施・管理などが実際の作業となる。組み込み開発の現場などでは,専門の職種としてテスターが位置付けられていることが多い。情報システムの開発現場では,SEやプログラマがアサインされてテスターとしての役割を果たすこともある。

必要なスキル

  • テスト技法の知識
    ホワイトボックステストやブラックボックステストなど,テストには様々な技法がある。必要に応じて使い分ける。
  • プログラミング能力
    テスト用のスクリプトを記述するためにプログラミングのスキルが必要。また,発見したバグを分析するためにも,ソースコードを読めなければならない。